diff --git a/.prettierrc.json b/.prettierrc.json new file mode 100644 index 0000000..ae863e1 --- /dev/null +++ b/.prettierrc.json @@ -0,0 +1,5 @@ +{ + "semi": false, + "singleQuote": true, + "jsxSingleQuote": true +} diff --git a/README.md b/README.md index db73336..1314cd2 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ The engine exposes useful JS bindings to the main ezkl repo that make hashing, e - [genWitness](#genWitness): Generate a witness from a given input. - [elgamalGenRandom](#elgamal-variables): Generate an ElGamal keypair from a random seed. -- [elgamalEncrypt](#elgamal-encrypt): Encypt an arbitrary message using the ElGamal public key and randomness. +- [elgamalEncrypt](#elgamal-encrypt): Encypt an arbitrary message using the ElGamal public key and randomness. - [elgamalDecrypt](#elgamal-decrypt): Decrypt a cipher text using the ElGamal secret key - [prove](#prove): Generate a proof - [verify](#verify): Verify a given proof @@ -35,22 +35,22 @@ As well as some helper functions that make it easier to work with the engine: To learn more about how to use these helper methods, check out the tests we wrote for them [here](https://github.com/zkonduit/ezkljs-engine/tree/main/tests/fieldElementUtils.test.ts) -The engine methods use web assembly in the backend to support running rust code in a browser/JS context. +The engine methods use web assembly in the backend to support running rust code in a browser/JS context. Non primitive data types passed to and returned from WASM bindings must come in a serialized (buffer) format. These serialize and deserialize methods make it easier to convert JS objects to and from a format that can be accepted by the engine methods. -- [serialize](#serialize): Convert the JS object representation of a given artifact into a format that can be accepted by the engine methods. -- [deserialize](#deserialize): Convert the serialized representation of a given artifact into a JS object. +- [serialize](#serialize): Convert the JS object representation of a given artifact into a format that can be accepted by the engine methods. +- [deserialize](#deserialize): Convert the serialized representation of a given artifact into a JS object. --- ### Nodejs vs Web targets -The engine has two targets: `nodejs` and `web`. The `nodejs` target is used for nodejs applications (e.i. nodejs serverside data processing) and the `web` target is used for browser applications (e.i. React front ends). From a peformance standpoint, the only +The engine has two targets: `nodejs` and `web`. The `nodejs` target is used for nodejs applications (e.i. nodejs serverside data processing) and the `web` target is used for browser applications (e.i. React front ends). From a peformance standpoint, the only difference between the two is that the web bundle supports multithreading via a web worker instance and nodejs does not. This readme will focus on documenting the web target. If you are interested in using the nodejs target, please refer to the unit tests -we wrote for [them](https://github.com/zkonduit/ezkljs-engine/tree/main/tests). +we wrote for [them](https://github.com/zkonduit/ezkljs-engine/tree/main/tests). If you just want to jump right into viewing an example application that demonstrates how to use all of the core engine bindings check out [this app](https://ezkljs-engine.vercel.app/). The code for which can be found [here](https://github.com/zkonduit/ezkljs-engine/tree/main/app) @@ -60,56 +60,55 @@ In order to use "SharedArrayBuffer" feature in all browsers, you need to ensure ```javascript const nextConfig = { - async headers() { - return [ - { - source: '/(.*)', - headers: [ - { - key: 'Cross-Origin-Embedder-Policy', - value: 'require-corp', - }, - { - key: 'Cross-Origin-Opener-Policy', - value: 'same-origin', - }, - ], - }, - ]; - }, - }; + async headers() { + return [ + { + source: '/(.*)', + headers: [ + { + key: 'Cross-Origin-Embedder-Policy', + value: 'require-corp', + }, + { + key: 'Cross-Origin-Opener-Policy', + value: 'same-origin', + }, + ], + }, + ] + }, +} ``` ### Engine Debugging -To make the errors returned by the engine comprehenadble, we recommend calling the `init_panic_hook` method before calling any of the other engine methods. -This will ensure that the engine errors are logged to the console in a readable format, otherwise if an error does throw it will be logged to the console as `RuntimeError: unreachable` +To make the errors returned by the engine comprehenadble, we recommend calling the `init_panic_hook` method before calling any of the other engine methods. +This will ensure that the engine errors are logged to the console in a readable format, otherwise if an error does throw it will be logged to the console as `RuntimeError: unreachable` -If you also want to print debug statments from the engine, you can call the `init_logger` method. This will print all debug statments to the console. +If you also want to print debug statments from the engine, you can call the `init_logger` method. This will print all debug statments to the console. ### Instantiating a new web assembly instance. -If you are using the web bundle, you will first need to initialize a web assembly module before you can use any of the methods exposed by the engine. To do this import the default export from `@ezkljs/engine/web/ezkl.js` and then call it. If you want to overide the default WASM memory size, you can pass in a WebAssembly.Memory object as the second argument. We highly recommend doing this if you want your application to be compatible with mobile browsers, as the default memory allocation is too large for iOS browsers. From our experimentation, we have found that the maximum memory allocation that iOS browsers can handle is 4096 mb (default is 65536 mb). +If you are using the web bundle, you will first need to initialize a web assembly module before you can use any of the methods exposed by the engine. To do this import the default export from `@ezkljs/engine/web/ezkl.js` and then call it. If you want to overide the default WASM memory size, you can pass in a WebAssembly.Memory object as the second argument. We highly recommend doing this if you want your application to be compatible with mobile browsers, as the default memory allocation is too large for iOS browsers. From our experimentation, we have found that the maximum memory allocation that iOS browsers can handle is 4096 mb (default is 65536 mb). ```typescript - import init, { init_panic_hook, init_logger } from '@ezkljs/engine/web/ezkl.js' export default function Home() { - useEffect(() => { async function run() { // Initialize the WASM module. Here we are overiding the default memory allocation with the recommend allocation for the best performance across all mobile browsers. - await init(undefined, new WebAssembly.Memory({initial:20,maximum:4096,shared:true})) + await init( + undefined, + new WebAssembly.Memory({ initial: 20, maximum: 4096, shared: true }), + ) // Initialize the panic hook and logger init_panic_hook() init_logger() } run() }) - } - ``` ### Generating a witness @@ -119,29 +118,26 @@ To generate a witness from a given input, you can use the `genWitness` method. Y ```typescript import { genWitness, deserialize } from '@ezkljs/engine/web' -// This is the code for the button that triggers the -// witness generation that we used in the example app. +// This is the code for the button that triggers the +// witness generation that we used in the example app. export async function handleGenWitnessButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = genWitness( - result['compiled_model'], - result['input'] - ) + let output = genWitness(result['compiled_model'], result['input']) let witness = deserialize(output) - console.log(JSON.stringify(witness, null, 2)) + console.log(JSON.stringify(witness, null, 2)) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } ``` @@ -186,18 +182,8 @@ Output: "2250248050743556928", "1228298028208591648" ], - [ - 0, - 0, - 0, - 0 - ], - [ - 0, - 0, - 0, - 0 - ] + [0, 0, 0, 0], + [0, 0, 0, 0] ] ], "processed_inputs": null, @@ -214,28 +200,28 @@ You can generate a random ElGamal keypair from a random seed to use for encrypti ```typescript import { elgamalGenRandom, deserialize } from '@ezkljs/engine/web' -// Function to generate a 256 bit seed in the browser -// using a cryptographically secure source of randomness. +// Function to generate a 256 bit seed in the browser +// using a cryptographically secure source of randomness. // DO NOT USE MATH.RANDOM AS ITS NOT A SECURE SOURCE OF RANDOMNESS function generate256BitSeed(): Uint8ClampedArray { - const uuid = self.crypto.randomUUID(); + const uuid = self.crypto.randomUUID() const buffer = new TextEncoder().encode(uuid) - let seed = self.crypto.getRandomValues(buffer); - seed = seed.slice(0, 32); - return new Uint8ClampedArray(seed.buffer); + let seed = self.crypto.getRandomValues(buffer) + seed = seed.slice(0, 32) + return new Uint8ClampedArray(seed.buffer) } // Function to convert the return buffer elgamalGenRandom into a JSON object function uint8ArrayToJsonObject(uint8Array) { - let string = new TextDecoder().decode(uint8Array); - let jsonObject = JSONBig.parse(string); - return jsonObject; + let string = new TextDecoder().decode(uint8Array) + let jsonObject = JSONBig.parse(string) + return jsonObject } const buffer = elgamalGenRandom(generate256BitSeed()) -// We can take a look at the serialized contents of the -// buffer returned by elgamalGenRandom by converting +// We can take a look at the serialized contents of the +// buffer returned by elgamalGenRandom by converting // the Uint8Array to a JSON object let elgamalVariables = deserialize(buffer) @@ -295,48 +281,43 @@ Output: ### Elgamal Encrypt Using the public key (pk) and randomness (r) from the previous step, you can encrypt an arbitrary message using the `elgamalEncrypt` method. -In the example app we use this [ElgamalZipFileDownload](https://github.com/zkonduit/ezkljs-engine/blob/main/app/Utils.tsx#L84) method to download the -r, sk and pk fields of the elgamalVariables as JSON files. +In the example app we use this [ElgamalZipFileDownload](https://github.com/zkonduit/ezkljs-engine/blob/main/app/Utils.tsx#L84) method to download the +r, sk and pk fields of the elgamalVariables as JSON files. -Once you have downloaded your Elgamal variables by clicking the "Generate" button at the top of the page, -you can unzip the "elgamal_var" file in your download folder. +Once you have downloaded your Elgamal variables by clicking the "Generate" button at the top of the page, +you can unzip the "elgamal_var" file in your download folder. After which you need to create a text file that contains a message you wish to encrypt. Since elgamal encrypt is a ZKP operation, we need to convert the message into -serialized field elements represented as u254s. We serialize the field elements -by breaking up each u254 field element into 4 u64s. +serialized field elements represented as u254s. We serialize the field elements +by breaking up each u254 field element into 4 u64s. For reference, check out the example message file [here](https://github.com/zkonduit/ezkljs-engine/tree/main/public/data/message.txt) - ```typescript import { elgamalEncrypt, deserialize } from '@ezkljs/engine/web' -// This is the code for the button that triggers the -// generation of the elgamal encyrption ciphertext. +// This is the code for the button that triggers the +// generation of the elgamal encyrption ciphertext. export async function handleGenElgamalEncryptionButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = elgamalEncrypt( - result['pk'], - result['message'], - result['r'] - ) + let output = elgamalEncrypt(result['pk'], result['message'], result['r']) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer let cipherText = deserialize(output) - console.log(JSON.stringify(cipherText, null, 2)) + console.log(JSON.stringify(cipherText, null, 2)) return { output: output, - executionTime: end - start + executionTime: end - start, } } ``` @@ -392,28 +373,25 @@ Method used in the example app: [handleGenElgamalDecryptionButton](https://githu ```typescript import { elgamalDecrypt, deserialize } from '@ezkljs/engine/web' -// This is the code for the button that triggers the -// generation of the elgamal decryption of the ciphertext. +// This is the code for the button that triggers the +// generation of the elgamal decryption of the ciphertext. export async function handleGenElgamalDecryptionButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = elgamalDecrypt( - result['cipher'], - result['sk'] - ) + let output = elgamalDecrypt(result['cipher'], result['sk']) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer let message = deserialize(output) - console.log(JSON.stringify(message, null, 2)) + console.log(JSON.stringify(message, null, 2)) return { output: output, - executionTime: end - start + executionTime: end - start, } } ``` @@ -422,22 +400,12 @@ Output: ```json [ - [ - 0, - 0, - 0, - 0 - ], - [ - 1, - 0, - 0, - 0 - ] + [0, 0, 0, 0], + [1, 0, 0, 0] ] ``` -And as you can see, the output matches the original message inside of message.txt that we encrypted :-) +And as you can see, the output matches the original message inside of message.txt that we encrypted :-) --- @@ -449,14 +417,14 @@ Method use in the example app [handleGenProofButton](https://github.com/zkonduit ```typescript import { prove, deserialize } from '@ezkljs/engine/web' -// This is the code for the button that triggers the +// This is the code for the button that triggers the // generation of a proof. export async function handleGenProofButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer let output = prove( result['data'], @@ -464,8 +432,8 @@ export async function handleGenProofButton( result['model'], result['srs'], ) - - const end = performance.now(); // End the timer + + const end = performance.now() // End the timer let proof = deserialize(output) @@ -474,7 +442,7 @@ export async function handleGenProofButton( return { output: output, - executionTime: end - start + executionTime: end - start, } } ``` @@ -518,7 +486,7 @@ Output: ### Verify -When the proof has been generated, you can verify it using the `verify` method. In addition to the proof, you will need to pass the file contents of the +When the proof has been generated, you can verify it using the `verify` method. In addition to the proof, you will need to pass the file contents of the verification key, circuit settings and srs files. If all the artifacts are correct, the verify method will return true. The method used in the example app: [handleVerifyButton](https://github.com/zkonduit/ezkljs-engine/blob/main/app/Utils.tsx#276) @@ -532,7 +500,7 @@ export async function handleVerifyButton( ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer let output = verify( result['proof'], @@ -541,13 +509,13 @@ export async function handleVerifyButton( result['srs'], ) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer console.log(output) return { output: output, - executionTime: end - start + executionTime: end - start, } } ``` @@ -560,10 +528,9 @@ true ### Hash -We can also use the engine to hash a given message using the Poseidon hash function. +We can also use the engine to hash a given message using the Poseidon hash function. Like with the elgamal encryption and decryption, we need to convert the message into -serialized field elements. - +serialized field elements. ```typescript import { hash, deserialize } from '@ezkljs/engine/web' @@ -578,6 +545,7 @@ export async function handleGenHashButton(message: File): Promise { return output } ``` + If you use the same message.txt file from the elgamal encryption example, you should get the following output: ```json @@ -592,5 +560,3 @@ If you use the same message.txt file from the elgamal encryption example, you sh ] ] ``` - - diff --git a/app/EngineContext.tsx b/app/EngineContext.tsx index 017e2c5..7d9165b 100644 --- a/app/EngineContext.tsx +++ b/app/EngineContext.tsx @@ -1,50 +1,54 @@ // Initialize the engine and util imports in the SharedResourcesProvider component: // Note: must import Uitls as a module instead of a component for engine to work (or else you will get 'self' is undefined wasm errors) 'use client' -import React, { createContext, useContext, useState, useEffect } from 'react'; -type Utils = typeof import("./Utils") -type Engine = typeof import("@ezkljs/engine/web/ezkl") +import React, { createContext, useContext, useState, useEffect } from 'react' +type Utils = typeof import('./Utils') +type Engine = typeof import('@ezkljs/engine/web/ezkl') interface SharedResources { - engine: Engine; - utils: Utils; + engine: Engine + utils: Utils } -const SharedResourcesContext = createContext(null); +const SharedResourcesContext = createContext(null) export const useSharedResources = (): SharedResources => { - const context = useContext(SharedResourcesContext); - if (!context) { - throw new Error('useSharedResources must be used within a SharedResourcesProvider'); - } - return context; -}; + const context = useContext(SharedResourcesContext) + if (!context) { + throw new Error( + 'useSharedResources must be used within a SharedResourcesProvider', + ) + } + return context +} interface SharedResourcesProviderProps { - children: React.ReactNode; + children: React.ReactNode } -export const SharedResourcesProvider: React.FC = ({ children }) => { - const [engine, setEngine] = useState(null); // Replace 'any' with the actual type of 'engine' - const [utils, setUtils] = useState(null); // Replace 'any' with the actual type of 'utils' +export const SharedResourcesProvider: React.FC< + SharedResourcesProviderProps +> = ({ children }) => { + const [engine, setEngine] = useState(null) // Replace 'any' with the actual type of 'engine' + const [utils, setUtils] = useState(null) // Replace 'any' with the actual type of 'utils' - useEffect(() => { - async function initializeResources() { - // Initialize the WASM module - const engine = await import("@ezkljs/engine/web/ezkl.js"); - setEngine(engine) - await (engine as any).default() - // For human readable wasm debug errors call this function - engine.init_panic_hook() - // Initialize the utils module - const utils = await import("./Utils"); - setUtils(utils) - } - initializeResources(); - }, []); + useEffect(() => { + async function initializeResources() { + // Initialize the WASM module + const engine = await import('@ezkljs/engine/web/ezkl.js') + setEngine(engine) + await (engine as any).default(undefined, new WebAssembly.Memory({ initial: 20, maximum: 4096, shared: true })) + // For human readable wasm debug errors call this function + engine.init_panic_hook() + // Initialize the utils module + const utils = await import('./Utils') + setUtils(utils) + } + initializeResources() + }, []) - return ( - - {children} - - ); -}; \ No newline at end of file + return ( + + {children} + + ) +} diff --git a/app/Utils.tsx b/app/Utils.tsx index 66fb87a..b9603bd 100644 --- a/app/Utils.tsx +++ b/app/Utils.tsx @@ -9,7 +9,7 @@ import { genWitness, deserialize, genVk, - genPk + genPk, } from '@ezkljs/engine/web' import localEVMVerify from '@ezkljs/verify' import { Hardfork } from '@ezkljs/verify' @@ -89,29 +89,28 @@ export function FileDownload({ export function handleFileDownload(fileName: string, buffer: Uint8Array) { // Create a blob from the buffer - const blob = new Blob([buffer], { type: 'application/octet-stream' }); + const blob = new Blob([buffer], { type: 'application/octet-stream' }) // Create an Object URL from the blob - const url = window.URL.createObjectURL(blob); + const url = window.URL.createObjectURL(blob) // Create an anchor element for the download - const a = document.createElement('a'); - a.href = url; - a.download = fileName; - document.body.appendChild(a); + const a = document.createElement('a') + a.href = url + a.download = fileName + document.body.appendChild(a) // Trigger the download by simulating a click on the anchor element - a.click(); + a.click() // Remove the anchor element after download - document.body.removeChild(a); + document.body.removeChild(a) // Free up the Object URL - window.URL.revokeObjectURL(url); + window.URL.revokeObjectURL(url) } export function ElgamalZipFileDownload(fileName: string, buffer: Uint8Array) { - const blob = new Blob([buffer], { type: 'application/octet-stream' }) const reader = new FileReader() @@ -128,10 +127,9 @@ export function ElgamalZipFileDownload(fileName: string, buffer: Uint8Array) { zip.file('sk.txt', JSONBig.stringify(elgamalVar.sk)) // Generate the zip file asynchronously - const content = await zip.generateAsync({ type: "blob" }) + const content = await zip.generateAsync({ type: 'blob' }) saveAs(content, fileName) - } } @@ -165,18 +163,15 @@ async function convertFilesToFilesSer( return filesSer } - interface Uint8ArrayResult { - output: Uint8Array; - executionTime: number; + output: Uint8Array + executionTime: number } -export async function handleGenProofButton( - files: T, -) { +export async function handleGenProofButton(files: T) { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer let output = prove( result['data'], @@ -185,11 +180,11 @@ export async function handleGenProofButton( result['srs'], ) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output, - executionTime: end - start + executionTime: end - start, } } @@ -203,19 +198,15 @@ export async function handleGenElgamalEncryptionButton( ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = elgamalEncrypt( - result['pk'], - result['message'], - result['r'] - ) + let output = elgamalEncrypt(result['pk'], result['message'], result['r']) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } @@ -223,40 +214,34 @@ export async function handleGenElgamalDecryptionButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = elgamalDecrypt( - result['cipher'], - result['sk'] - ) + let output = elgamalDecrypt(result['cipher'], result['sk']) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } export async function handleGenWitnessButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = genWitness( - result['compiled_onnx'], - result['input'], - ) + let output = genWitness(result['compiled_onnx'], result['input']) let witness = deserialize(output) console.log(JSON.stringify(witness, null, 2)) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } @@ -264,18 +249,15 @@ export async function handleGenVkButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = genVk( - result['compiled_onnx'], - result['srs'], - ) + let output = genVk(result['compiled_onnx'], result['srs']) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } @@ -283,43 +265,37 @@ export async function handleGenPkButton( files: T, ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer - let output = genPk( - result['vk'], - result['compiled_onnx'], - result['srs'], - ) + let output = genPk(result['vk'], result['compiled_onnx'], result['srs']) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } - interface HashResult { - output: Uint8ClampedArray; - executionTime: number; + output: Uint8ClampedArray + executionTime: number } - export async function handleGenHashButton(message: File): Promise { const message_hash = await readUploadedFileAsBuffer(message) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer const output = poseidonHash(message_hash) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } interface VerifyResult { - output: boolean; - executionTime: number; + output: boolean + executionTime: number } export async function handleVerifyButton( @@ -327,7 +303,7 @@ export async function handleVerifyButton( ): Promise { const result = await convertFilesToFilesSer(files) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer let output = verify( result['proof'], @@ -336,47 +312,47 @@ export async function handleVerifyButton( result['srs'], ) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } export async function handleEvmVerifyButton( files: T, - evmVersion: Hardfork + evmVersion: Hardfork, ): Promise { const result = await convertFilesToFilesSer(files) - console.log("evmVersion", evmVersion) + console.log('evmVersion', evmVersion) - const start = performance.now(); // Start the timer + const start = performance.now() // Start the timer let output = await localEVMVerify( result['proof'], new TextDecoder().decode(result['bytecodeVerifier']), - evmVersion + evmVersion, ) - const end = performance.now(); // End the timer + const end = performance.now() // End the timer return { output: output, - executionTime: end - start + executionTime: end - start, } } function stringToUint8Array(str: string): Uint8Array { - const encoder = new TextEncoder(); - const uint8Array = encoder.encode(str); - return uint8Array; + const encoder = new TextEncoder() + const uint8Array = encoder.encode(str) + return uint8Array } function generate256BitSeed(): Uint8ClampedArray { - const uuid = self.crypto.randomUUID(); - const buffer = stringToUint8Array(uuid); - let seed = self.crypto.getRandomValues(buffer); - seed = seed.slice(0, 32); - return new Uint8ClampedArray(seed.buffer); + const uuid = self.crypto.randomUUID() + const buffer = stringToUint8Array(uuid) + let seed = self.crypto.getRandomValues(buffer) + seed = seed.slice(0, 32) + return new Uint8ClampedArray(seed.buffer) } diff --git a/app/components/APINavColumn.tsx b/app/components/APINavColumn.tsx index 7ed4d9a..10aadd9 100644 --- a/app/components/APINavColumn.tsx +++ b/app/components/APINavColumn.tsx @@ -37,7 +37,7 @@ export default function APINavColumn() {
{/* Wide screen side nav */} @@ -100,4 +100,3 @@ function NavList() { ) } - diff --git a/app/components/Header.tsx b/app/components/Header.tsx index 94d2202..9865b53 100644 --- a/app/components/Header.tsx +++ b/app/components/Header.tsx @@ -1,8 +1,7 @@ 'use client' import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { faBars } from '@fortawesome/free-solid-svg-icons' -import Image from 'next/image'; - +import Image from 'next/image' import TopNav from './TopNav' @@ -32,11 +31,11 @@ export default function Header() { )} - EZKL Logo
{/* right */} diff --git a/app/components/Main.tsx b/app/components/Main.tsx index 69c6d06..708c80d 100644 --- a/app/components/Main.tsx +++ b/app/components/Main.tsx @@ -1,7 +1,7 @@ -import React from 'react'; +import React from 'react' export default function Main({ children }: { children: React.ReactNode }) { return ( -
+
{children}
) diff --git a/app/encryption/page.tsx b/app/encryption/page.tsx index b832c39..dc68462 100644 --- a/app/encryption/page.tsx +++ b/app/encryption/page.tsx @@ -1,481 +1,502 @@ // Example for pages/Page1.js 'use client' import { - FileInput, - Label, - Button, - Alert, - Spinner as _Spinner, - Modal + FileInput, + Label, + Button, + Alert, + Spinner as _Spinner, + Modal, } from 'flowbite-react' import React, { useEffect, useState } from 'react' import { formDataSchemaEncrypt, formDataSchemaDecrypt } from './parsers' -import { stringify } from "json-bigint"; -import { useSharedResources } from '../EngineContext'; +import { stringify } from 'json-bigint' +import { useSharedResources } from '../EngineContext' -type Utils = typeof import("../Utils") +type Utils = typeof import('../Utils') type Cipher = number[][][] type DecryptedCipher = number[][] function showFirstAndLast(str: string, show: number): string { - if (str.length <= show * 2) return str // If the string is already 10 characters or fewer, return it as is. - return str.slice(0, show) + ' . . . ' + str.slice(-show) + if (str.length <= show * 2) return str // If the string is already 10 characters or fewer, return it as is. + return str.slice(0, show) + ' . . . ' + str.slice(-show) } export default function Encryption() { - const { engine, utils } = useSharedResources(); - const [openModal, setOpenModal] = useState(); - const props = { openModal, setOpenModal }; - const [alertEncrypt, setAlertEncrypt] = useState('') - const [warningEncrypt, setWarningEncrypt] = useState('') - const [alertDecrypt, setAlertDecrypt] = useState('') - const [warningDecrypt, setWarningDecrypt] = useState('') - const [loading, setLoading] = useState(false) - const [cipherResult, setCipherResult] = useState('') - const [cipher, setCipher] = useState([] as Cipher) - const [bufferCipher, setBufferCipher] = useState(null) - const [bufferDecrypt, setBufferDecrypt] = useState(null) - const [decrypted, setDecrypted] = useState([] as DecryptedCipher) - const [decryptResult, setDecryptResult] = useState(''); - - const handleSubmitEncryption = async (e: React.FormEvent) => { - e.preventDefault() - const formData = new FormData(e.currentTarget) - - const formInputs = { - pk: formData.get('elgamal_pk'), - message: formData.get('elgamal_message'), - r: formData.get('elgamal_r'), - } - // Validate form has valid inputs (zod) - const validatedFormInputs = formDataSchemaEncrypt.safeParse(formInputs) - - if (warningEncrypt) setWarningEncrypt('') - - if (!validatedFormInputs.success) { - setAlertEncrypt('Please upload all files') - return - } - - // Clear alert and warning - if (alertEncrypt) setAlertEncrypt('') - - // Missing data - if ( - validatedFormInputs.data.message === null || - validatedFormInputs.data.pk === null || - validatedFormInputs.data.r === null - ) { - setAlertEncrypt('Please upload all files') - return - } - - setLoading(true) - - // create file object - const files = { - message: validatedFormInputs.data.message, - pk: validatedFormInputs.data.pk, - r: validatedFormInputs.data.r - } - /* ================== ENGINE API ====================== */ - utils.handleGenElgamalEncryptionButton(files as { [key: string]: File }) - .then(({ output, executionTime }) => { - setBufferCipher(output) - - - - // Update result based on the outcome - setCipherResult( - output - ? `Encryption generation successful. Execution time: ${executionTime} ms` - : "Encryption generation failed" - ) - // Deseralize proof buffer - // TODO - uncomment this line once a new engine bundle is relased - // with patch to web based serialize/deserialize methods. - const cipher = engine.deserialize(output) - console.log("cipher", cipher) - setCipher(cipher); - }) - .catch((error) => { - console.error('An error occurred:', error) - setWarningEncrypt(`Encryption failed: ${error}`) - }) - - setLoading(false) + const { engine, utils } = useSharedResources() + const [openModal, setOpenModal] = useState() + const props = { openModal, setOpenModal } + const [alertEncrypt, setAlertEncrypt] = useState('') + const [warningEncrypt, setWarningEncrypt] = useState('') + const [alertDecrypt, setAlertDecrypt] = useState('') + const [warningDecrypt, setWarningDecrypt] = useState('') + const [loading, setLoading] = useState(false) + const [cipherResult, setCipherResult] = useState('') + const [cipher, setCipher] = useState([] as Cipher) + const [bufferCipher, setBufferCipher] = useState(null) + const [bufferDecrypt, setBufferDecrypt] = useState(null) + const [decrypted, setDecrypted] = useState( + [] as DecryptedCipher, + ) + const [decryptResult, setDecryptResult] = useState('') + + const handleSubmitEncryption = async ( + e: React.FormEvent, + ) => { + e.preventDefault() + const formData = new FormData(e.currentTarget) + + const formInputs = { + pk: formData.get('elgamal_pk'), + message: formData.get('elgamal_message'), + r: formData.get('elgamal_r'), } - const handleSubmitDecrypt = async (e: React.FormEvent) => { - e.preventDefault() - const formData = new FormData(e.currentTarget) - - const formInputs = { - cipher: formData.get('cipher'), - sk: formData.get('elgamal_sk') - } - // Validate form has valid inputs (zod) - const validatedFormInputs = formDataSchemaDecrypt.safeParse(formInputs) - - if (warningDecrypt) setWarningDecrypt('') - - if (!validatedFormInputs.success) { - setAlertDecrypt('Please upload all files') - return - } - - // Clear alert and warning - if (alertDecrypt) setAlertDecrypt('') - - // Missing data - if ( - validatedFormInputs.data.cipher === null || - validatedFormInputs.data.sk === null - ) { - setAlertDecrypt('Please upload all files') - return - } - - setLoading(true) - - // create file object - const files = { - cipher: validatedFormInputs.data.cipher, - sk: validatedFormInputs.data.sk - } - /* ================== ENGINE API ====================== */ - utils.handleGenElgamalDecryptionButton(files as { [key: string]: File }) - .then(({ output, executionTime }) => { - setBufferDecrypt(output) - // Update result based on the outcome - setDecryptResult( - output - ? 'Decryption successful. Execution time: ' + executionTime + ' ms' - : 'Decryption failed' - ) - let decyptedCipher = engine.deserialize(output) - console.log("decyptedCipher", decyptedCipher) - setDecrypted(decyptedCipher) - }) - .catch((error) => { - console.error('An error occurred:', error) - setWarningDecrypt(`Decyption process failed with an error: ${error}`) - }) - - setLoading(false) + // Validate form has valid inputs (zod) + const validatedFormInputs = formDataSchemaEncrypt.safeParse(formInputs) + + if (warningEncrypt) setWarningEncrypt('') + + if (!validatedFormInputs.success) { + setAlertEncrypt('Please upload all files') + return } + // Clear alert and warning + if (alertEncrypt) setAlertEncrypt('') + + // Missing data + if ( + validatedFormInputs.data.message === null || + validatedFormInputs.data.pk === null || + validatedFormInputs.data.r === null + ) { + setAlertEncrypt('Please upload all files') + return + } - return ( -
- {bufferCipher && !warningEncrypt ? ( -
-

{cipherResult}

-
- - - - props.setOpenModal(undefined)} > - Cipher File Content: - -
-
{stringify(cipher, null, 6)}
-
-
-
-
-
- ) : bufferDecrypt && !warningDecrypt ? ( -
-

{decryptResult}

-
- - - - props.setOpenModal(undefined)} > - Decrypted Cipher File Content: - -
-
{stringify(decrypted, null, 5)}
-
-
-
-
+ setLoading(true) + + // create file object + const files = { + message: validatedFormInputs.data.message, + pk: validatedFormInputs.data.pk, + r: validatedFormInputs.data.r, + } + /* ================== ENGINE API ====================== */ + utils + .handleGenElgamalEncryptionButton(files as { [key: string]: File }) + .then(({ output, executionTime }) => { + setBufferCipher(output) + + // Update result based on the outcome + setCipherResult( + output + ? `Encryption generation successful. Execution time: ${executionTime} ms` + : 'Encryption generation failed', + ) + // Deseralize proof buffer + // TODO - uncomment this line once a new engine bundle is relased + // with patch to web based serialize/deserialize methods. + const cipher = engine.deserialize(output) + console.log('cipher', cipher) + setCipher(cipher) + }) + .catch((error) => { + console.error('An error occurred:', error) + setWarningEncrypt(`Encryption failed: ${error}`) + }) + + setLoading(false) + } + const handleSubmitDecrypt = async (e: React.FormEvent) => { + e.preventDefault() + const formData = new FormData(e.currentTarget) + + const formInputs = { + cipher: formData.get('cipher'), + sk: formData.get('elgamal_sk'), + } + // Validate form has valid inputs (zod) + const validatedFormInputs = formDataSchemaDecrypt.safeParse(formInputs) + + if (warningDecrypt) setWarningDecrypt('') + + if (!validatedFormInputs.success) { + setAlertDecrypt('Please upload all files') + return + } + + // Clear alert and warning + if (alertDecrypt) setAlertDecrypt('') + + // Missing data + if ( + validatedFormInputs.data.cipher === null || + validatedFormInputs.data.sk === null + ) { + setAlertDecrypt('Please upload all files') + return + } + + setLoading(true) + + // create file object + const files = { + cipher: validatedFormInputs.data.cipher, + sk: validatedFormInputs.data.sk, + } + /* ================== ENGINE API ====================== */ + utils + .handleGenElgamalDecryptionButton(files as { [key: string]: File }) + .then(({ output, executionTime }) => { + setBufferDecrypt(output) + // Update result based on the outcome + setDecryptResult( + output + ? 'Decryption successful. Execution time: ' + executionTime + ' ms' + : 'Decryption failed', + ) + let decyptedCipher = engine.deserialize(output) + console.log('decyptedCipher', decyptedCipher) + setDecrypted(decyptedCipher) + }) + .catch((error) => { + console.error('An error occurred:', error) + setWarningDecrypt(`Decyption process failed with an error: ${error}`) + }) + + setLoading(false) + } + + return ( +
+ {bufferCipher && !warningEncrypt ? ( +
+

{cipherResult}

+
+ + + + props.setOpenModal(undefined)} + > + Cipher File Content: + +
+
+                    {stringify(cipher, null, 6)}
+                  
- ) : loading ? ( - - ) : ( -
-
- -
-
- - -
- + + +
+
+ ) : bufferDecrypt && !warningDecrypt ? ( +
+

{decryptResult}

+
+ + + + props.setOpenModal(undefined)} + > + Decrypted Cipher File Content: + +
+
+                    {stringify(decrypted, null, 5)}
+                  
- - )} +
+
+
+
+ ) : loading ? ( + + ) : ( +
+
+ +
+
+ + +
+
- ); + )} +
+ ) } // UI Component function Spinner() { - return ( -
- <_Spinner size='3xl' className='w-28 lg:w-44' /> -
- ) + return ( +
+ <_Spinner size='3xl' className='w-28 lg:w-44' /> +
+ ) } async function populateWithSampleFiles() { - // Helper to assert that the element is not null - function assertElement(element: T | null): asserts element is T { - if (element === null) { - throw new Error('Element not found'); - } + // Helper to assert that the element is not null + function assertElement( + element: T | null, + ): asserts element is T { + if (element === null) { + throw new Error('Element not found') } - - // Names of the sample files in the public directory - const sampleFileNames: { [key: string]: string } = { - pk: 'pk.txt', - message: 'message.txt', - r: 'r.txt', - cipher: 'elgamal_cipher.txt', - sk: 'sk.txt' - - }; - - // Helper function to fetch and create a file object from a public URL - const fetchAndCreateFile = async (path: string, filename: string): Promise => { - const response = await fetch(path); - const blob = await response.blob(); - return new File([blob], filename, { type: blob.type }); - }; - - // Fetch each sample file and create a File object - const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => - fetchAndCreateFile(`/data/${filename}`, filename) - ); - - // Wait for all files to be fetched and created - const files = await Promise.all(filePromises); - - // Select the file input elements and assign the FileList to each - const pk = document.querySelector('#elgamal_pk'); - const message = document.querySelector('#elgamal_message'); - const r = document.querySelector('#elgamal_r'); - const cipher = document.querySelector('#cipher'); - const sk = document.querySelector('#elgamal_sk'); - - // Assert that the elements are not null - assertElement(pk); - assertElement(message); - assertElement(r); - assertElement(cipher); - assertElement(sk); - - // Create a new DataTransfer to hold the files - let dataTransfers: DataTransfer[] = []; - files.forEach( - (file, idx) => { - const dataTransfer = new DataTransfer(); - dataTransfer.items.add(file) - dataTransfers[idx] = dataTransfer; - } - - ); - - - pk.files = dataTransfers[0].files; - message.files = dataTransfers[1].files; - r.files = dataTransfers[2].files; - cipher.files = dataTransfers[3].files; - sk.files = dataTransfers[4].files; - - // // If the 'vk' file is different, you'd handle it separately - // const vkFile = await fetchAndCreateFile(`/${sampleFileNames.vk}`, sampleFileNames.vk); - // const vkDataTransfer = new DataTransfer(); - // vkDataTransfer.items.add(vkFile); - - // Trigger any onChange or update logic if necessary - // This part depends on your application. For example, you might need to call a state setter function if you're using React state to track file input values. + } + + // Names of the sample files in the public directory + const sampleFileNames: { [key: string]: string } = { + pk: 'pk.txt', + message: 'message.txt', + r: 'r.txt', + cipher: 'elgamal_cipher.txt', + sk: 'sk.txt', + } + + // Helper function to fetch and create a file object from a public URL + const fetchAndCreateFile = async ( + path: string, + filename: string, + ): Promise => { + const response = await fetch(path) + const blob = await response.blob() + return new File([blob], filename, { type: blob.type }) + } + + // Fetch each sample file and create a File object + const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => + fetchAndCreateFile(`/data/1l_mlp/${filename}`, filename), + ) + + // Wait for all files to be fetched and created + const files = await Promise.all(filePromises) + + // Select the file input elements and assign the FileList to each + const pk = document.querySelector('#elgamal_pk') + const message = document.querySelector('#elgamal_message') + const r = document.querySelector('#elgamal_r') + const cipher = document.querySelector('#cipher') + const sk = document.querySelector('#elgamal_sk') + + // Assert that the elements are not null + assertElement(pk) + assertElement(message) + assertElement(r) + assertElement(cipher) + assertElement(sk) + + // Create a new DataTransfer to hold the files + let dataTransfers: DataTransfer[] = [] + files.forEach((file, idx) => { + const dataTransfer = new DataTransfer() + dataTransfer.items.add(file) + dataTransfers[idx] = dataTransfer + }) + + pk.files = dataTransfers[0].files + message.files = dataTransfers[1].files + r.files = dataTransfers[2].files + cipher.files = dataTransfers[3].files + sk.files = dataTransfers[4].files + + // // If the 'vk' file is different, you'd handle it separately + // const vkFile = await fetchAndCreateFile(`/${sampleFileNames.vk}`, sampleFileNames.vk); + // const vkDataTransfer = new DataTransfer(); + // vkDataTransfer.items.add(vkFile); + + // Trigger any onChange or update logic if necessary + // This part depends on your application. For example, you might need to call a state setter function if you're using React state to track file input values. } - function ElgamalRandomVar({ utils }: { utils: Utils }) { - return ( -
-

Generate Random Elgamal Variables

-
- ) + return ( +
+

Generate Random Elgamal Variables

+
+ ) } function EncryptionArtifactForm({ - handleSubmit, - alert, - warning + handleSubmit, + alert, + warning, }: { - handleSubmit: (e: React.FormEvent) => void - alert: string - warning: string + handleSubmit: (e: React.FormEvent) => void + alert: string + warning: string }) { - return ( -
-

Encrypting

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* PK */} -
-
- {/* MESSAGE */} -
-
- {/* RANDOM SEED */} -
-
- -
+ return ( +
+

Encrypting

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* PK */} +
+
- ) + {/* MESSAGE */} +
+
+ {/* RANDOM SEED */} +
+
+ +
+
+ ) } function DecryptionArtifactForm({ - handleSubmit, - alert, - warning + handleSubmit, + alert, + warning, }: { - handleSubmit: (e: React.FormEvent) => void - alert: string - warning: string + handleSubmit: (e: React.FormEvent) => void + alert: string + warning: string }) { - return ( -
-

Decrypting

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* CIPHER */} -
-
- {/* SECRET KEY */} -
-
- -
+ return ( +
+

Decrypting

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* CIPHER */} +
+
+ {/* SECRET KEY */} +
+
- ) + +
+
+ ) } diff --git a/app/encryption/parsers.ts b/app/encryption/parsers.ts index b59b37c..f0099d8 100644 --- a/app/encryption/parsers.ts +++ b/app/encryption/parsers.ts @@ -1,17 +1,17 @@ import { z } from 'zod' const fileSchema = z.custom((value) => { - if (value === null) return false - return value instanceof File && value.name.trim() !== '' + if (value === null) return false + return value instanceof File && value.name.trim() !== '' }, "File name can't be empty") export const formDataSchemaEncrypt = z.object({ - pk: fileSchema, - message: fileSchema, - r: fileSchema + pk: fileSchema, + message: fileSchema, + r: fileSchema, }) export const formDataSchemaDecrypt = z.object({ - cipher: fileSchema, - sk: fileSchema + cipher: fileSchema, + sk: fileSchema, }) diff --git a/app/felt-utils/page.tsx b/app/felt-utils/page.tsx index 6c9e327..c9c4cf9 100644 --- a/app/felt-utils/page.tsx +++ b/app/felt-utils/page.tsx @@ -1,532 +1,479 @@ // Example for pages/Page1.js 'use client' import { - TextInput, - Label, - Button, - Alert, - Spinner as _Spinner, + TextInput, + Label, + Button, + Alert, + Spinner as _Spinner, } from 'flowbite-react' import React, { useState } from 'react' -import { formDataSchemaFloatToVecU64, formDataSchemaVecU64ToInt, formDataSchemaVecU64ToFloat, formDataSchemaVecU64ToFelt } from './parsers' -import { useSharedResources } from '../EngineContext'; -import { stringify } from "json-bigint"; +import { + formDataSchemaFloatToVecU64, + formDataSchemaVecU64ToInt, + formDataSchemaVecU64ToFloat, + formDataSchemaVecU64ToFelt, +} from './parsers' +import { useSharedResources } from '../EngineContext' +import { stringify } from 'json-bigint' -type Utils = typeof import("../Utils") -type Engine = typeof import("@ezkljs/engine/web/ezkl") +type Utils = typeof import('../Utils') +type Engine = typeof import('@ezkljs/engine/web/ezkl') type Cipher = number[][][] type DecryptedCipher = number[][] export default function FeltUtils() { - const { engine } = useSharedResources(); - - return ( -
-
-
- -
-
-
-
- -
-
-
-
- -
-
-
-
- -
-
+ const { engine } = useSharedResources() + + return ( +
+
+
+ +
+
+
+
+ +
+
+
+
+
- ); +
+
+
+ +
+
+
+ ) } -function FloatToVecU64Form({ - engine -}: { - engine: Engine -}) { - const [alertFloatToVecU64, setAlertFloatToVecU64] = useState('') - const [warningFloatToVecU64, setWarningFloatToVecU64] = useState('') - const [output, setOutput] = useState('') - - const handleSubmitFloatToVecU64 = async (e: React.FormEvent) => { - e.preventDefault() - const formData = new FormData(e.currentTarget) - - const formInputs = { - fp: formData.get('fp')?.toString(), - scale: formData.get('scale')?.toString() - } - - // Missing data - if ( - formInputs.fp === '' || - formInputs.scale === '' - ) { - setAlertFloatToVecU64("Please enter a value in all fields") - return - } - console.log("formInputs", formInputs) - // Validate form has valid inputs (zod) - const validatedFormInputs = formDataSchemaFloatToVecU64.safeParse(formInputs) - - if (warningFloatToVecU64) setWarningFloatToVecU64('') - - if (!validatedFormInputs.success) { - let alertString = '' - validatedFormInputs.error.issues.map((issue) => { - console.log("issue", issue) - alertString += issue.message + '\n' - }) - setAlertFloatToVecU64(alertString) - return - } - - // Clear alert and warning - if (alertFloatToVecU64) setAlertFloatToVecU64('') - setWarningFloatToVecU64('') - // Missing - if ( - validatedFormInputs.data.fp === null || - validatedFormInputs.data.scale === null - ) { - setAlertFloatToVecU64('Please upload all files') - return - } - - // create file object - const entries = { - fp: validatedFormInputs.data.fp, - scale: validatedFormInputs.data.scale - } - - console.log("entries", entries) - /* ================== ENGINE API ====================== */ - try { - const U64s = engine.floatToVecU64(parseFloat(entries.fp), entries.scale); - const deserializedU64s = engine.deserialize(U64s) - setOutput(stringify(deserializedU64s, null, 4)) - console.log("U64s", deserializedU64s) - } catch (error) { - console.error('An error occurred:', error) - setWarningFloatToVecU64(`Float to VecU64 generation failed: ${error}`) - } +function FloatToVecU64Form({ engine }: { engine: Engine }) { + const [alertFloatToVecU64, setAlertFloatToVecU64] = useState('') + const [warningFloatToVecU64, setWarningFloatToVecU64] = useState('') + const [output, setOutput] = useState('') + + const handleSubmitFloatToVecU64 = async ( + e: React.FormEvent, + ) => { + e.preventDefault() + const formData = new FormData(e.currentTarget) + + const formInputs = { + fp: formData.get('fp')?.toString(), + scale: formData.get('scale')?.toString(), + } + + // Missing data + if (formInputs.fp === '' || formInputs.scale === '') { + setAlertFloatToVecU64('Please enter a value in all fields') + return + } + console.log('formInputs', formInputs) + // Validate form has valid inputs (zod) + const validatedFormInputs = + formDataSchemaFloatToVecU64.safeParse(formInputs) + + if (warningFloatToVecU64) setWarningFloatToVecU64('') + + if (!validatedFormInputs.success) { + let alertString = '' + validatedFormInputs.error.issues.map((issue) => { + console.log('issue', issue) + alertString += issue.message + '\n' + }) + setAlertFloatToVecU64(alertString) + return + } + + // Clear alert and warning + if (alertFloatToVecU64) setAlertFloatToVecU64('') + setWarningFloatToVecU64('') + // Missing + if ( + validatedFormInputs.data.fp === null || + validatedFormInputs.data.scale === null + ) { + setAlertFloatToVecU64('Please upload all files') + return + } + + // create file object + const entries = { + fp: validatedFormInputs.data.fp, + scale: validatedFormInputs.data.scale, } - return ( -
-

Float {"->"} VecU64

- {alertFloatToVecU64 && ( - - {alertFloatToVecU64} - - )} - {warningFloatToVecU64 && ( - - {warningFloatToVecU64} - - )} -
- {/* FLOATING POINT */} -
-
- {/* SCALE */} -
-
- -
- {/* Output section */} - {output && ( -
-
{output}
-
- )} + console.log('entries', entries) + /* ================== ENGINE API ====================== */ + try { + const U64s = engine.floatToVecU64(parseFloat(entries.fp), entries.scale) + const deserializedU64s = engine.deserialize(U64s) + setOutput(stringify(deserializedU64s, null, 4)) + console.log('U64s', deserializedU64s) + } catch (error) { + console.error('An error occurred:', error) + setWarningFloatToVecU64(`Float to VecU64 generation failed: ${error}`) + } + } + + return ( +
+

Float {'->'} VecU64

+ {alertFloatToVecU64 && ( + + {alertFloatToVecU64} + + )} + {warningFloatToVecU64 && ( + + {warningFloatToVecU64} + + )} +
+ {/* FLOATING POINT */} +
+
+ {/* SCALE */} +
+
- ) + +
+ {/* Output section */} + {output && ( +
+
{output}
+
+ )} +
+ ) } -function VecU64ToFloatForm({ - engine -}: { - engine: Engine -}) { - const [alert, setAlert] = useState('') - const [warning, setWarning] = useState('') - const [output, setOutput] = useState('') - - const handleSubmit = async (e: React.FormEvent) => { - e.preventDefault() - const formData = new FormData(e.currentTarget) - - const formInputs = { - vecU64: formData.get('vecU64')?.toString(), - scale: formData.get('scale')?.toString() - } - console.log("formInputs", formInputs) - - // Missing data - if ( - formInputs.vecU64 === '' || - formInputs.scale === '' - ) { - setAlert("Please enter a value in all fields") - return - } - console.log("formInputs", formInputs) - // Validate form has valid inputs (zod) - const validatedFormInputs = formDataSchemaVecU64ToFloat.safeParse(formInputs) - - if (warning) setWarning('') - - if (!validatedFormInputs.success) { - let alertString = '' - validatedFormInputs.error.issues.map((issue) => { - console.log("issue", issue) - alertString += issue.message + '\n' - }) - setAlert(alertString) - return - } - - // Clear alert and warning - if (alert) setAlert('') - setWarning('') - // Missing - if ( - validatedFormInputs.data.vecU64 === null || - validatedFormInputs.data.scale === null - ) { - setAlert('Please upload all files') - return - } - - // create file object - const entries = { - vecU64: validatedFormInputs.data.vecU64, - scale: validatedFormInputs.data.scale - } - - console.log("entries", entries) - /* ================== ENGINE API ====================== */ - try { - - const float = engine.vecU64ToFloat(engine.serialize(entries.vecU64), entries.scale); - setOutput(stringify(float, null, 4)) - console.log("float", float) - } catch (error) { - console.error('An error occurred:', error) - setWarning(`VecU64 to Float generation failed: ${error}`) - } +function VecU64ToFloatForm({ engine }: { engine: Engine }) { + const [alert, setAlert] = useState('') + const [warning, setWarning] = useState('') + const [output, setOutput] = useState('') + + const handleSubmit = async (e: React.FormEvent) => { + e.preventDefault() + const formData = new FormData(e.currentTarget) + + const formInputs = { + vecU64: formData.get('vecU64')?.toString(), + scale: formData.get('scale')?.toString(), } + console.log('formInputs', formInputs) - return ( -
-

VecU64 {"->"} Float

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* vecU64 */} -
-
- {/* SCALE */} -
-
- -
- {/* Output section */} - {output && ( -
-
{output}
-
- )} + // Missing data + if (formInputs.vecU64 === '' || formInputs.scale === '') { + setAlert('Please enter a value in all fields') + return + } + console.log('formInputs', formInputs) + // Validate form has valid inputs (zod) + const validatedFormInputs = + formDataSchemaVecU64ToFloat.safeParse(formInputs) + + if (warning) setWarning('') + + if (!validatedFormInputs.success) { + let alertString = '' + validatedFormInputs.error.issues.map((issue) => { + console.log('issue', issue) + alertString += issue.message + '\n' + }) + setAlert(alertString) + return + } + + // Clear alert and warning + if (alert) setAlert('') + setWarning('') + // Missing + if ( + validatedFormInputs.data.vecU64 === null || + validatedFormInputs.data.scale === null + ) { + setAlert('Please upload all files') + return + } + + // create file object + const entries = { + vecU64: validatedFormInputs.data.vecU64, + scale: validatedFormInputs.data.scale, + } + + console.log('entries', entries) + /* ================== ENGINE API ====================== */ + try { + const float = engine.vecU64ToFloat( + engine.serialize(entries.vecU64), + entries.scale, + ) + setOutput(stringify(float, null, 4)) + console.log('float', float) + } catch (error) { + console.error('An error occurred:', error) + setWarning(`VecU64 to Float generation failed: ${error}`) + } + } + + return ( +
+

VecU64 {'->'} Float

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* vecU64 */} +
+
- ) + {/* SCALE */} +
+
+ +
+ {/* Output section */} + {output && ( +
+
{output}
+
+ )} +
+ ) } -function VecU64ToIntForm({ - engine -}: { - engine: Engine -}) { - const [alert, setAlert] = useState('') - const [warning, setWarning] = useState('') - const [output, setOutput] = useState('') - - const handleSubmit = async (e: React.FormEvent) => { - e.preventDefault() - const formData = new FormData(e.currentTarget) - - const formInputs = { - vecU64: formData.get('vecU64')?.toString() - } - - // Missing data - if ( - formInputs.vecU64 === '' - ) { - setAlert("Please enter a value in all fields") - return - } - console.log("formInputs", formInputs) - // Validate form has valid inputs (zod) - const validatedFormInputs = formDataSchemaVecU64ToInt.safeParse(formInputs) - - if (warning) setWarning('') - - if (!validatedFormInputs.success) { - let alertString = '' - validatedFormInputs.error.issues.map((issue) => { - console.log("issue", issue) - alertString += issue.message + '\n' - }) - setAlert(alertString) - return - } - - // Clear alert and warning - if (alert) setAlert('') - setWarning('') - // Missing - if ( - validatedFormInputs.data.vecU64 === null - ) { - setAlert('Please upload all files') - return - } - - // create file object - const entries = { - vecU64: validatedFormInputs.data.vecU64 - } - - console.log("entries", entries) - /* ================== ENGINE API ====================== */ - try { - const int = engine.vecU64ToInt(engine.serialize(entries.vecU64)); - const intDeserialized = engine.deserialize(int) - setOutput(intDeserialized.toString()) - console.log("int deserialized", intDeserialized.toString()) - console.log("int", int) - } catch (error) { - console.error('An error occurred:', error) - setWarning(`VecU64 to Int generation failed: ${error}`) - } +function VecU64ToIntForm({ engine }: { engine: Engine }) { + const [alert, setAlert] = useState('') + const [warning, setWarning] = useState('') + const [output, setOutput] = useState('') + + const handleSubmit = async (e: React.FormEvent) => { + e.preventDefault() + const formData = new FormData(e.currentTarget) + + const formInputs = { + vecU64: formData.get('vecU64')?.toString(), + } + + // Missing data + if (formInputs.vecU64 === '') { + setAlert('Please enter a value in all fields') + return + } + console.log('formInputs', formInputs) + // Validate form has valid inputs (zod) + const validatedFormInputs = formDataSchemaVecU64ToInt.safeParse(formInputs) + + if (warning) setWarning('') + + if (!validatedFormInputs.success) { + let alertString = '' + validatedFormInputs.error.issues.map((issue) => { + console.log('issue', issue) + alertString += issue.message + '\n' + }) + setAlert(alertString) + return } - return ( -
-

VecU64 {"->"} Int

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* vecU64 */} -
-
- -
- {/* Output section */} - {output && ( -
-
{output}
-
- )} + // Clear alert and warning + if (alert) setAlert('') + setWarning('') + // Missing + if (validatedFormInputs.data.vecU64 === null) { + setAlert('Please upload all files') + return + } + + // create file object + const entries = { + vecU64: validatedFormInputs.data.vecU64, + } + + console.log('entries', entries) + /* ================== ENGINE API ====================== */ + try { + const int = engine.vecU64ToInt(engine.serialize(entries.vecU64)) + const intDeserialized = engine.deserialize(int) + setOutput(intDeserialized.toString()) + console.log('int deserialized', intDeserialized.toString()) + console.log('int', int) + } catch (error) { + console.error('An error occurred:', error) + setWarning(`VecU64 to Int generation failed: ${error}`) + } + } + + return ( +
+

VecU64 {'->'} Int

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* vecU64 */} +
+
+ +
+ {/* Output section */} + {output && ( +
+
{output}
- ) + )} +
+ ) } -function VecU64ToFeltForm({ - engine -}: { - engine: Engine -}) { - const [alert, setAlert] = useState('') - const [warning, setWarning] = useState('') - const [output, setOutput] = useState('') - - const handleSubmit = async (e: React.FormEvent) => { - e.preventDefault() - const formData = new FormData(e.currentTarget) - - const formInputs = { - vecU64: formData.get('vecU64')?.toString() - } - - // Missing data - if ( - formInputs.vecU64 === '' - ) { - setAlert("Please enter a value in all fields") - return - } - console.log("formInputs", formInputs) - // Validate form has valid inputs (zod) - const validatedFormInputs = formDataSchemaVecU64ToFelt.safeParse(formInputs) - - if (warning) setWarning('') - - if (!validatedFormInputs.success) { - let alertString = '' - validatedFormInputs.error.issues.map((issue) => { - console.log("issue", issue) - alertString += issue.message + '\n' - }) - setAlert(alertString) - return - } - - // Clear alert and warning - if (alert) setAlert('') - setWarning('') - // Missing - if ( - validatedFormInputs.data.vecU64 === null - ) { - setAlert('Please upload all files') - return - } - - // create file object - const entries = { - vecU64: validatedFormInputs.data.vecU64 - } - - console.log("entries", entries) - /* ================== ENGINE API ====================== */ - try { - const hexFelt = engine.vecU64ToFelt(engine.serialize(entries.vecU64)); - setOutput(hexFelt) - console.log("felt", hexFelt) - } catch (error) { - console.error('An error occurred:', error) - setWarning(`VecU64 to Felt generation failed: ${error}`) - } +function VecU64ToFeltForm({ engine }: { engine: Engine }) { + const [alert, setAlert] = useState('') + const [warning, setWarning] = useState('') + const [output, setOutput] = useState('') + + const handleSubmit = async (e: React.FormEvent) => { + e.preventDefault() + const formData = new FormData(e.currentTarget) + + const formInputs = { + vecU64: formData.get('vecU64')?.toString(), + } + + // Missing data + if (formInputs.vecU64 === '') { + setAlert('Please enter a value in all fields') + return + } + console.log('formInputs', formInputs) + // Validate form has valid inputs (zod) + const validatedFormInputs = formDataSchemaVecU64ToFelt.safeParse(formInputs) + + if (warning) setWarning('') + + if (!validatedFormInputs.success) { + let alertString = '' + validatedFormInputs.error.issues.map((issue) => { + console.log('issue', issue) + alertString += issue.message + '\n' + }) + setAlert(alertString) + return + } + + // Clear alert and warning + if (alert) setAlert('') + setWarning('') + // Missing + if (validatedFormInputs.data.vecU64 === null) { + setAlert('Please upload all files') + return } - const formatOutput = (output: string) => { - const len = output.length; - const partLen = Math.ceil(len / 4); - const formattedOutput = [ - output.substring(0, partLen), - output.substring(partLen, partLen * 2), - output.substring(partLen * 2, partLen * 3), - output.substring(partLen * 3), - ].join('\n'); - return formattedOutput; - }; - - return ( -
-

VecU64 {"->"} Felt

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* vecU64 */} -
-
- -
- {/* Output section */} - {output && ( -
-
{formatOutput(output)}
-
- )} + + // create file object + const entries = { + vecU64: validatedFormInputs.data.vecU64, + } + + console.log('entries', entries) + /* ================== ENGINE API ====================== */ + try { + const hexFelt = engine.vecU64ToFelt(engine.serialize(entries.vecU64)) + setOutput(hexFelt) + console.log('felt', hexFelt) + } catch (error) { + console.error('An error occurred:', error) + setWarning(`VecU64 to Felt generation failed: ${error}`) + } + } + const formatOutput = (output: string) => { + const len = output.length + const partLen = Math.ceil(len / 4) + const formattedOutput = [ + output.substring(0, partLen), + output.substring(partLen, partLen * 2), + output.substring(partLen * 2, partLen * 3), + output.substring(partLen * 3), + ].join('\n') + return formattedOutput + } + + return ( +
+

VecU64 {'->'} Felt

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* vecU64 */} +
+
+ +
+ {/* Output section */} + {output && ( +
+
{formatOutput(output)}
- ) -} \ No newline at end of file + )} +
+ ) +} diff --git a/app/felt-utils/parsers.ts b/app/felt-utils/parsers.ts index a5a45af..3cbb517 100644 --- a/app/felt-utils/parsers.ts +++ b/app/felt-utils/parsers.ts @@ -1,59 +1,60 @@ import { z } from 'zod' const numberSchema = z.custom((value) => { - if (value === null) return false - // Non negative integer - if (typeof value === "string") { - let number = parseFloat(value) - return Number.isInteger(number) && number >= 0 - } -}, "Please enter a valid non-negative scale value") + if (value === null) return false + // Non negative integer + if (typeof value === 'string') { + let number = parseFloat(value) + return Number.isInteger(number) && number >= 0 + } +}, 'Please enter a valid non-negative scale value') const vecU64Schema = z.custom((value) => { - if (value === null) return false - // Non negative integer - if (typeof value === "string") { - try { - // parse the string as an array - let array = JSON.parse(value) - // check that the array is of length 4 - let length4 = array.length === 4 - // check that all elements are integers - let allIntegers = array.every((element: number) => Number.isInteger(element)) - // check that all elements are positive - let allPositive = array.every((element: number) => element >= 0) - return allIntegers && allPositive && length4 - } catch (e) { - console.log("error", e) - return false - } + if (value === null) return false + // Non negative integer + if (typeof value === 'string') { + try { + // parse the string as an array + let array = JSON.parse(value) + // check that the array is of length 4 + let length4 = array.length === 4 + // check that all elements are integers + let allIntegers = array.every((element: number) => + Number.isInteger(element), + ) + // check that all elements are positive + let allPositive = array.every((element: number) => element >= 0) + return allIntegers && allPositive && length4 + } catch (e) { + console.log('error', e) + return false } -}, "Please enter a valid vecU64 of length 4") + } +}, 'Please enter a valid vecU64 of length 4') const floatSchema = z.custom((value) => { - if (value === null) return false - console.log("value type", typeof value) - if (typeof value === "string") { - console.log("value is string") - return !Number.isNaN(parseFloat(value.toString())) - } -}, "Please enter a valid floating point value") + if (value === null) return false + console.log('value type', typeof value) + if (typeof value === 'string') { + console.log('value is string') + return !Number.isNaN(parseFloat(value.toString())) + } +}, 'Please enter a valid floating point value') export const formDataSchemaFloatToVecU64 = z.object({ - fp: floatSchema, - scale: numberSchema + fp: floatSchema, + scale: numberSchema, }) export const formDataSchemaVecU64ToFloat = z.object({ - vecU64: vecU64Schema, - scale: numberSchema + vecU64: vecU64Schema, + scale: numberSchema, }) export const formDataSchemaVecU64ToInt = z.object({ - vecU64: vecU64Schema + vecU64: vecU64Schema, }) export const formDataSchemaVecU64ToFelt = z.object({ - vecU64: vecU64Schema + vecU64: vecU64Schema, }) - diff --git a/app/gen-witness/page.tsx b/app/gen-witness/page.tsx index 4a7ba14..7f435e6 100644 --- a/app/gen-witness/page.tsx +++ b/app/gen-witness/page.tsx @@ -1,4 +1,3 @@ -// Example for pages/Page1.js 'use client' import { FileInput, @@ -6,17 +5,16 @@ import { Button, Alert, Spinner as _Spinner, - Modal + Modal, } from 'flowbite-react' import React, { useEffect, useState } from 'react' import { formDataSchema } from './parsers' -import { stringify } from "json-bigint"; -import { useSharedResources } from '../EngineContext'; +import { stringify } from 'json-bigint' +import { useSharedResources } from '../EngineContext' export default function GenWitness() { - const { engine, utils } = useSharedResources(); - const [openModal, setOpenModal] = useState(); - const props = { openModal, setOpenModal }; + const { engine, utils } = useSharedResources() + const [openModal, setOpenModal] = useState() const [alert, setAlert] = useState('') const [warning, setWarning] = useState('') const [loading, setLoading] = useState(false) @@ -24,14 +22,13 @@ export default function GenWitness() { const [witnessResult, setWitnessResult] = useState('') const [buffer, setBuffer] = useState(null) - const handleSubmit = async (e: React.FormEvent) => { e.preventDefault() const formData = new FormData(e.currentTarget) const formInputs = { compiled_onnx: formData.get('compiled_onnx'), - input: formData.get('input') + input: formData.get('input'), } // Validate form has valid inputs (zod) const validatedFormInputs = formDataSchema.safeParse(formInputs) @@ -57,13 +54,14 @@ export default function GenWitness() { let files = { compiled_onnx: validatedFormInputs.data.compiled_onnx, - input: validatedFormInputs.data.input + input: validatedFormInputs.data.input, } setLoading(true) /* ================== ENGINE API ====================== */ - utils.handleGenWitnessButton(files as { [key: string]: File }) + utils + .handleGenWitnessButton(files as { [key: string]: File }) .then(({ output, executionTime }) => { setBuffer(output) @@ -71,11 +69,11 @@ export default function GenWitness() { setWitnessResult( output ? `Witness generation successful. Execution time: ${executionTime} ms` - : "Witness generation failed" + : 'Witness generation failed', ) const witness = engine.deserialize(output) - console.log("witness", witness) - setWitness(witness); + console.log('witness', witness) + setWitness(witness) }) .catch((error) => { console.error('An error occurred:', error) @@ -85,51 +83,55 @@ export default function GenWitness() { setLoading(false) } - return ( -
+
{buffer && !warning ? ( -
+

{witnessResult}

-
+
- - props.setOpenModal(undefined)} > + setOpenModal(undefined)} + > Witness File Content: - -
-
{stringify(witness, null, 6)}
+ +
+
+                                        {stringify(witness, null, 6)}
+                                    
- ) : loading ? ( ) : (
- +
- ) - } -
- ); + )} +
+ ) } // UI Component function Spinner() { @@ -155,69 +156,63 @@ function Spinner() { async function populateWithSampleFiles() { // Helper to assert that the element is not null - function assertElement(element: T | null): asserts element is T { + function assertElement( + element: T | null, + ): asserts element is T { if (element === null) { - throw new Error('Element not found'); + throw new Error('Element not found') } } // Names of the sample files in the public directory const sampleFileNames: { [key: string]: string } = { compiled_onnx: 'test_network.compiled', - input: 'input.json' - }; + input: 'input.json', + } // Helper function to fetch and create a file object from a public URL - const fetchAndCreateFile = async (path: string, filename: string): Promise => { - const response = await fetch(path); - const blob = await response.blob(); - return new File([blob], filename, { type: blob.type }); - }; + const fetchAndCreateFile = async ( + path: string, + filename: string, + ): Promise => { + const response = await fetch(path) + const blob = await response.blob() + return new File([blob], filename, { type: blob.type }) + } // Fetch each sample file and create a File object const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => - fetchAndCreateFile(`/data/${filename}`, filename) - ); + fetchAndCreateFile(`/data/1l_mlp/${filename}`, filename), + ) // Wait for all files to be fetched and created - const files = await Promise.all(filePromises); + const files = await Promise.all(filePromises) // Select the file input elements and assign the FileList to each - const compiledOnnxInput = document.querySelector('#compiled_onnx'); - const input = document.querySelector('#input'); + const compiledOnnxInput = + document.querySelector('#compiled_onnx') + const input = document.querySelector('#input') // Assert that the elements are not null - assertElement(compiledOnnxInput); - assertElement(input); + assertElement(compiledOnnxInput) + assertElement(input) // Create a new DataTransfer to hold the files - let dataTransfers: DataTransfer[] = []; - files.forEach( - (file, idx) => { - const dataTransfer = new DataTransfer(); - dataTransfer.items.add(file) - dataTransfers[idx] = dataTransfer; - } - - ); - - - compiledOnnxInput.files = dataTransfers[0].files; - input.files = dataTransfers[1].files; - - // // If the 'vk' file is different, you'd handle it separately - // const vkFile = await fetchAndCreateFile(`/${sampleFileNames.vk}`, sampleFileNames.vk); - // const vkDataTransfer = new DataTransfer(); - // vkDataTransfer.items.add(vkFile); - - // Trigger any onChange or update logic if necessary - // This part depends on your application. For example, you might need to call a state setter function if you're using React state to track file input values. + let dataTransfers: DataTransfer[] = [] + files.forEach((file, idx) => { + const dataTransfer = new DataTransfer() + dataTransfer.items.add(file) + dataTransfers[idx] = dataTransfer + }) + + compiledOnnxInput.files = dataTransfers[0].files + input.files = dataTransfers[1].files } function WitnessArtifactForm({ handleSubmit, alert, - warning + warning, }: { handleSubmit: (e: React.FormEvent) => void alert: string @@ -242,21 +237,17 @@ function WitnessArtifactForm({ > {/* COMPILED ONNX */}
-
{/* INPUT */}
-
) } - -// const Modal = ({ isOpen, onClose, witness }: { isOpen: boolean, onClose: () => void, witness: object }) => { -// if (!isOpen) return null; - -// return ( -// -// ); -// }; - diff --git a/app/gen-witness/parsers.tsx b/app/gen-witness/parsers.tsx index 441cb04..8561dba 100644 --- a/app/gen-witness/parsers.tsx +++ b/app/gen-witness/parsers.tsx @@ -1,11 +1,11 @@ import { z } from 'zod' const fileSchema = z.custom((value) => { - if (value === null) return false - return value instanceof File && value.name.trim() !== '' + if (value === null) return false + return value instanceof File && value.name.trim() !== '' }, "File name can't be empty") export const formDataSchema = z.object({ - compiled_onnx: fileSchema, - input: fileSchema + compiled_onnx: fileSchema, + input: fileSchema, }) diff --git a/app/globals.css b/app/globals.css index c8ef308..1b4db80 100644 --- a/app/globals.css +++ b/app/globals.css @@ -28,4 +28,4 @@ body { rgb(var(--background-end-rgb)) ) rgb(var(--background-start-rgb)); -} \ No newline at end of file +} diff --git a/app/hashing/page.tsx b/app/hashing/page.tsx index 3361450..bb6b22a 100644 --- a/app/hashing/page.tsx +++ b/app/hashing/page.tsx @@ -6,19 +6,19 @@ import { Button, Alert, Spinner as _Spinner, - Modal + Modal, } from 'flowbite-react' import React, { useEffect, useState } from 'react' import { formDataSchema } from './parsers' -import { stringify } from "json-bigint"; -import { useSharedResources } from '../EngineContext'; +import { stringify } from 'json-bigint' +import { useSharedResources } from '../EngineContext' type Hash = number[][][] export default function Hashing() { - const { engine, utils } = useSharedResources(); - const [openModal, setOpenModal] = useState(); - const props = { openModal, setOpenModal }; + const { engine, utils } = useSharedResources() + const [openModal, setOpenModal] = useState() + const props = { openModal, setOpenModal } const [alert, setAlert] = useState('') const [warning, setWarning] = useState('') const [loading, setLoading] = useState(false) @@ -31,7 +31,7 @@ export default function Hashing() { const formData = new FormData(e.currentTarget) const formInputs = { - message: formData.get('message') + message: formData.get('message'), } // Validate form has valid inputs (zod) const validatedFormInputs = formDataSchema.safeParse(formInputs) @@ -47,9 +47,7 @@ export default function Hashing() { if (alert) setAlert('') // Missing data - if ( - validatedFormInputs.data.message === null - ) { + if (validatedFormInputs.data.message === null) { setAlert('Please upload all files') return } @@ -57,7 +55,8 @@ export default function Hashing() { setLoading(true) /* ================== ENGINE API ====================== */ - utils.handleGenHashButton(validatedFormInputs.data.message) + utils + .handleGenHashButton(validatedFormInputs.data.message) .then(({ output, executionTime }) => { setBuffer(output) @@ -65,11 +64,11 @@ export default function Hashing() { setHashResult( output ? `Hash generation successful. Execution time: ${executionTime} ms` - : "Hash generation failed" + : 'Hash generation failed', ) const hash = engine.deserialize(output) - console.log("hash", hash) - setHash(hash); + console.log('hash', hash) + setHash(hash) }) .catch((error) => { console.error('An error occurred:', error) @@ -79,39 +78,45 @@ export default function Hashing() { setLoading(false) } - return ( -
+
{buffer && !warning ? ( -
+

{hashResult}

-
+
- - props.setOpenModal(undefined)} > + props.setOpenModal(undefined)} + > Hash File Content: - -
-
{stringify(hash, null, 6)}
+ +
+
+                    {stringify(hash, null, 6)}
+                  
@@ -121,7 +126,11 @@ export default function Hashing() { ) : (
- +
- ); + ) } // UI Component function Spinner() { @@ -146,51 +155,52 @@ function Spinner() { async function populateWithSampleFiles() { // Helper to assert that the element is not null - function assertElement(element: T | null): asserts element is T { + function assertElement( + element: T | null, + ): asserts element is T { if (element === null) { - throw new Error('Element not found'); + throw new Error('Element not found') } } // Names of the sample files in the public directory const sampleFileNames: { [key: string]: string } = { - message: 'message.txt' - }; + message: 'message.txt', + } // Helper function to fetch and create a file object from a public URL - const fetchAndCreateFile = async (path: string, filename: string): Promise => { - const response = await fetch(path); - const blob = await response.blob(); - return new File([blob], filename, { type: blob.type }); - }; + const fetchAndCreateFile = async ( + path: string, + filename: string, + ): Promise => { + const response = await fetch(path) + const blob = await response.blob() + return new File([blob], filename, { type: blob.type }) + } // Fetch each sample file and create a File object const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => - fetchAndCreateFile(`/data/${filename}`, filename) - ); + fetchAndCreateFile(`/data/1l_mlp/${filename}`, filename), + ) // Wait for all files to be fetched and created - const files = await Promise.all(filePromises); + const files = await Promise.all(filePromises) // Select the file input elements and assign the FileList to each - const message = document.querySelector('#message'); + const message = document.querySelector('#message') // Assert that the elements are not null - assertElement(message); + assertElement(message) // Create a new DataTransfer to hold the files - let dataTransfers: DataTransfer[] = []; - files.forEach( - (file, idx) => { - const dataTransfer = new DataTransfer(); - dataTransfer.items.add(file) - dataTransfers[idx] = dataTransfer; - } + let dataTransfers: DataTransfer[] = [] + files.forEach((file, idx) => { + const dataTransfer = new DataTransfer() + dataTransfer.items.add(file) + dataTransfers[idx] = dataTransfer + }) - ); - - - message.files = dataTransfers[0].files; + message.files = dataTransfers[0].files // // If the 'vk' file is different, you'd handle it separately // const vkFile = await fetchAndCreateFile(`/${sampleFileNames.vk}`, sampleFileNames.vk); @@ -204,7 +214,7 @@ async function populateWithSampleFiles() { function HashingArtifactForm({ handleSubmit, alert, - warning + warning, }: { handleSubmit: (e: React.FormEvent) => void alert: string @@ -229,12 +239,8 @@ function HashingArtifactForm({ > {/* MESSAGE */}
-
-
-
- ) : loading ? ( - - ) : ( -
- - -
+ setLoading(true) - )} + // create file object + const files = { + proof: validatedFormInputs.data.proof, + bytecodeVerifier: validatedFormInputs.data.bytecode_verifier, + } + /* ================== ENGINE API ====================== */ + utils + .handleEvmVerifyButton( + files as { [key: string]: File }, + validatedFormInputs.data.evm_version as Hardfork, + ) + .then(({ output, executionTime }) => { + // Update result based on the outcome + setEvmVerifyResult( + output + ? 'In-browser EVM verification successful. Execution time: ' + + executionTime + + ' ms' + : 'In-browser EVM verification failed', + ) + }) + .catch((error) => { + console.error('An error occurred:', error) + setEvmVerifyResult('An error occurred: ' + error) + }) + + setLoading(false) + } + + return ( +
+ {evmVerifyResult && !warningVerify ? ( +
+

{evmVerifyResult}

+
+ +
- ); + ) : loading ? ( + + ) : ( +
+ + +
+ )} +
+ ) } // UI Component function Spinner() { - return ( -
- <_Spinner size='3xl' className='w-28 lg:w-44' /> -
- ) + return ( +
+ <_Spinner size='3xl' className='w-28 lg:w-44' /> +
+ ) } async function populateWithSampleFiles() { - // Helper to assert that the element is not null - function assertElement(element: T | null): asserts element is T { - if (element === null) { - throw new Error('Element not found'); - } + // Helper to assert that the element is not null + function assertElement( + element: T | null, + ): asserts element is T { + if (element === null) { + throw new Error('Element not found') } - - // Names of the sample files in the public directory - const sampleFileNames: { [key: string]: string } = { - proof: 'evm_verify.pf', - bytecode: 'bytecode.code' - }; - - // Helper function to fetch and create a file object from a public URL - const fetchAndCreateFile = async (path: string, filename: string): Promise => { - const response = await fetch(path); - const blob = await response.blob(); - return new File([blob], filename, { type: blob.type }); - }; - - // Fetch each sample file and create a File object - const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => - fetchAndCreateFile(`/data/${filename}`, filename) - ); - - // Wait for all files to be fetched and created - const files = await Promise.all(filePromises); - - // Select the file input elements and assign the FileList to each - const proof = document.querySelector('#proof'); - const bytecode = document.querySelector('#bytecode_verifier'); - - // Assert that the elements are not null - assertElement(proof); - assertElement(bytecode); - - // Create a new DataTransfer to hold the files - let dataTransfers: DataTransfer[] = []; - files.forEach( - (file, idx) => { - const dataTransfer = new DataTransfer(); - dataTransfer.items.add(file) - dataTransfers[idx] = dataTransfer; - } - - ); - - - proof.files = dataTransfers[0].files; - bytecode.files = dataTransfers[1].files; - - // // If the 'vk' file is different, you'd handle it separately - // const vkFile = await fetchAndCreateFile(`/${sampleFileNames.vk}`, sampleFileNames.vk); - // const vkDataTransfer = new DataTransfer(); - // vkDataTransfer.items.add(vkFile); - - // Trigger any onChange or update logic if necessary - // This part depends on your application. For example, you might need to call a state setter function if you're using React state to track file input values. + } + + // Names of the sample files in the public directory + const sampleFileNames: { [key: string]: string } = { + proof: 'evm_verify.pf', + bytecode: 'bytecode.code', + } + + // Helper function to fetch and create a file object from a public URL + const fetchAndCreateFile = async ( + path: string, + filename: string, + ): Promise => { + const response = await fetch(path) + const blob = await response.blob() + return new File([blob], filename, { type: blob.type }) + } + + // Fetch each sample file and create a File object + const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => + fetchAndCreateFile(`/data/1l_mlp/${filename}`, filename), + ) + + // Wait for all files to be fetched and created + const files = await Promise.all(filePromises) + + // Select the file input elements and assign the FileList to each + const proof = document.querySelector('#proof') + const bytecode = + document.querySelector('#bytecode_verifier') + + // Assert that the elements are not null + assertElement(proof) + assertElement(bytecode) + + // Create a new DataTransfer to hold the files + let dataTransfers: DataTransfer[] = [] + files.forEach((file, idx) => { + const dataTransfer = new DataTransfer() + dataTransfer.items.add(file) + dataTransfers[idx] = dataTransfer + }) + + proof.files = dataTransfers[0].files + bytecode.files = dataTransfers[1].files } function VerifyingArtifactForm({ - handleSubmit, - alert, - warning + handleSubmit, + alert, + warning, }: { - handleSubmit: (e: React.FormEvent) => void - alert: string - warning: string + handleSubmit: (e: React.FormEvent) => void + alert: string + warning: string }) { - const [selectedVersion, setSelectedVersion] = useState(Hardfork.Istanbul); - - const handleChange = (e: React.ChangeEvent) => { - const selectedValue = e.target.value as Hardfork; - setSelectedVersion(selectedValue); - - }; - return ( -
-

In-Browser Evm Verifying

- { - alert && ( - - {alert} - - ) - } - { - warning && ( - - {warning} - - ) - } -
- {/* PROOF */} -
-
- {/* VERIFIER BYTECODE */} -
-
- {/* EVM VERSION */} -
-
- -
-
- ) + const [selectedVersion, setSelectedVersion] = useState( + Hardfork.Istanbul, + ) + + const handleChange = (e: React.ChangeEvent) => { + const selectedValue = e.target.value as Hardfork + setSelectedVersion(selectedValue) + } + return ( +
+

In-Browser Evm Verifying

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* PROOF */} +
+
+ {/* VERIFIER BYTECODE */} +
+
+ {/* EVM VERSION */} +
+
+ +
+
+ ) } diff --git a/app/in-browser-evm-verify/parsers.ts b/app/in-browser-evm-verify/parsers.ts index d31059b..14636c5 100644 --- a/app/in-browser-evm-verify/parsers.ts +++ b/app/in-browser-evm-verify/parsers.ts @@ -1,17 +1,17 @@ import { z } from 'zod' const fileSchema = z.custom((value) => { - if (value === null) return false - return value instanceof File && value.name.trim() !== '' + if (value === null) return false + return value instanceof File && value.name.trim() !== '' }, "File name can't be empty") const textSchema = z.custom((value) => { - if (value === null) return false - return typeof value === "string" && value.trim() !== '' + if (value === null) return false + return typeof value === 'string' && value.trim() !== '' }, "Text can't be empty") export const formDataSchemaEvmVerify = z.object({ - proof: fileSchema, - bytecode_verifier: fileSchema, - evm_version: textSchema + proof: fileSchema, + bytecode_verifier: fileSchema, + evm_version: textSchema, }) diff --git a/app/layout.tsx b/app/layout.tsx index 1f76252..7bd77dc 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -1,9 +1,9 @@ -// import Header from './components/Header' +import Header from './components/Header' import './globals.css' import type { Metadata } from 'next' import APINavColumn from './components/APINavColumn' import Main from './components/Main' -import { SharedResourcesProvider } from './EngineContext'; +import { SharedResourcesProvider } from './EngineContext' export const metadata: Metadata = { title: 'Engine Example', @@ -19,8 +19,10 @@ export default function RootLayout({ + {/* */} +
{/* */} -
+
{/* */} diff --git a/app/page.tsx b/app/page.tsx index 6decac1..2358e6f 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -3,20 +3,22 @@ export default function Home() {

ZKML proving and verifying in browser and nodejs contexts can be quite - the pain to setup and maintain. There are alot of things that can go wrong, - from serialization, memory constraints, web assembly configuration and more. + the pain to setup and maintain. There are alot of things that can go + wrong, from serialization, memory constraints, web assembly + configuration and more.

- Luckily the EZKL Engine and EZKL Verify npm packages abstract away all of this complexity, - making it easy to integrate ZKML into any javascript project. + Luckily the EZKL Engine and EZKL Verify npm packages abstract away all + of this complexity, making it easy to integrate ZKML into any javascript + project.

Our simple, yet powerful APIs allow you to encrypt, hash, prove and verify ML inferences in a variety of ways.

- Check out the tabs to the right where you can demo the EZKL Engine - and EZKL Verify packages in action. + Check out the tabs to the right where you can demo the EZKL Engine and + EZKL Verify packages in action.

) diff --git a/app/prove/page.tsx b/app/prove/page.tsx index 467207f..5c71912 100644 --- a/app/prove/page.tsx +++ b/app/prove/page.tsx @@ -6,17 +6,17 @@ import { Button, Alert, Spinner as _Spinner, - Modal + Modal, } from 'flowbite-react' import React, { useState } from 'react' import { formDataSchemaProve } from './parsers' -import { stringify } from "json-bigint"; -import { useSharedResources } from '../EngineContext'; +import { stringify } from 'json-bigint' +import { useSharedResources } from '../EngineContext' export default function Prove() { - const { engine, utils } = useSharedResources(); - const [openModal, setOpenModal] = useState(); - const props = { openModal, setOpenModal }; + const { engine, utils } = useSharedResources() + const [openModal, setOpenModal] = useState() + const props = { openModal, setOpenModal } const [alertProof, setAlertProof] = useState('') const [warningProof, setWarningProof] = useState('') const [loading, setLoading] = useState(false) @@ -68,24 +68,23 @@ export default function Prove() { srs: validatedFormInputs.data.srs, } /* ================== ENGINE API ====================== */ - utils.handleGenProofButton(files as { [key: string]: File }) + utils + .handleGenProofButton(files as { [key: string]: File }) .then(({ output, executionTime }) => { setBuffer(output) - - // Update result based on the outcome setProofResult( output ? `Proof generation successful. Execution time: ${executionTime} ms` - : "Proof generation failed" + : 'Proof generation failed', ) // Deseralize proof buffer // TODO - uncomment this line once a new engine bundle is relased // with patch to web based serialize/deserialize methods. const proof = engine.deserialize(output) - console.log("proof", proof) - setProof(proof); + console.log('proof', proof) + setProof(proof) }) .catch((error) => { console.error('An error occurred:', error) @@ -96,30 +95,27 @@ export default function Prove() { } return ( -
+
{buffer && !warningProof ? ( -
+

{proofResult}

-
+
- props.setOpenModal(undefined)} > Proof File Content: - -
-
{stringify(proof, null, 6)}
+ +
+
+                    {stringify(proof, null, 6)}
+                  
@@ -140,7 +138,11 @@ export default function Prove() { ) : (
- +
- ); + ) } // UI Component function Spinner() { @@ -166,9 +168,11 @@ function Spinner() { async function populateWithSampleFiles() { // Helper to assert that the element is not null - function assertElement(element: T | null): asserts element is T { + function assertElement( + element: T | null, + ): asserts element is T { if (element === null) { - throw new Error('Element not found'); + throw new Error('Element not found') } } @@ -177,58 +181,58 @@ async function populateWithSampleFiles() { witness: 'test.witness.json', pk: 'test.provekey', compiled_onnx: 'test_network.compiled', - srs: 'kzg' - }; + srs: 'kzg', + } // Helper function to fetch and create a file object from a public URL - const fetchAndCreateFile = async (path: string, filename: string): Promise => { - const response = await fetch(path); - const blob = await response.blob(); - return new File([blob], filename, { type: blob.type }); - }; + const fetchAndCreateFile = async ( + path: string, + filename: string, + ): Promise => { + const response = await fetch(path) + const blob = await response.blob() + return new File([blob], filename, { type: blob.type }) + } // Fetch each sample file and create a File object const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => - fetchAndCreateFile(`/data/${filename}`, filename) - ); + fetchAndCreateFile(`/data/1l_mlp/${filename}`, filename), + ) // Wait for all files to be fetched and created - const files = await Promise.all(filePromises); + const files = await Promise.all(filePromises) // Select the file input elements and assign the FileList to each - const witness = document.querySelector('#witness'); - const pk = document.querySelector('#pk'); - const compiled_onnx = document.querySelector('#compiled_onnx'); - const srsProve = document.querySelector('#srs_prove'); + const witness = document.querySelector('#witness') + const pk = document.querySelector('#pk') + const compiled_onnx = + document.querySelector('#compiled_onnx') + const srsProve = document.querySelector('#srs_prove') // Assert that the elements are not null - assertElement(witness); - assertElement(pk); - assertElement(compiled_onnx); - assertElement(srsProve); + assertElement(witness) + assertElement(pk) + assertElement(compiled_onnx) + assertElement(srsProve) // Create a new DataTransfer to hold the files - let dataTransfers: DataTransfer[] = []; - files.forEach( - (file, idx) => { - const dataTransfer = new DataTransfer(); - dataTransfer.items.add(file) - dataTransfers[idx] = dataTransfer; - } - - ); - + let dataTransfers: DataTransfer[] = [] + files.forEach((file, idx) => { + const dataTransfer = new DataTransfer() + dataTransfer.items.add(file) + dataTransfers[idx] = dataTransfer + }) - witness.files = dataTransfers[0].files; - pk.files = dataTransfers[1].files; - compiled_onnx.files = dataTransfers[2].files; - srsProve.files = dataTransfers[3].files; + witness.files = dataTransfers[0].files + pk.files = dataTransfers[1].files + compiled_onnx.files = dataTransfers[2].files + srsProve.files = dataTransfers[3].files } function ProvingArtifactForm({ handleSubmit, alert, - warning + warning, }: { handleSubmit: (e: React.FormEvent) => void alert: string @@ -253,39 +257,27 @@ function ProvingArtifactForm({ > {/* WITNESS */}
-
{/* PK */}
-
{/* COMPILED ONNX MODEL */}
-
{/* SRS */}
-
- -
-
- ) : bufferPk && !warningGenPk ? ( -
-

{genPkResult}

-
- - -
-
- ) : loading ? ( - - ) : ( -
-
- - -
- -
- + setLoading(true) + console.log('hi') - )} + // create file object + const files = { + vk: validatedFormInputs.data.vk, + compiled_onnx: validatedFormInputs.data.compiled_onnx, + srs: validatedFormInputs.data.srs, + } + /* ================== ENGINE API ====================== */ + utils + .handleGenPkButton(files as { [key: string]: File }) + .then(({ output, executionTime }) => { + setBufferPk(output) + // Update result based on the outcome + setGenPkResult( + output + ? 'Pk generation successful. Execution time: ' + + executionTime + + ' ms' + : 'Pk generation failed', + ) + }) + .catch((error) => { + console.error('An error occurred:', error) + setWarningGenPk(`Pk process failed with an error: ${error}`) + }) + + setLoading(false) + } + + return ( +
+ {bufferVk && !warningGenVk ? ( +
+

{genVkResult}

+
+ + +
- ); + ) : bufferPk && !warningGenPk ? ( +
+

{genPkResult}

+
+ + +
+
+ ) : loading ? ( + + ) : ( +
+
+ + +
+ +
+ )} +
+ ) } // UI Component function Spinner() { - return ( -
- <_Spinner size='3xl' className='w-28 lg:w-44' /> -
- ) + return ( +
+ <_Spinner size='3xl' className='w-28 lg:w-44' /> +
+ ) } async function populateWithSampleFiles() { - // Helper to assert that the element is not null - function assertElement(element: T | null): asserts element is T { - if (element === null) { - throw new Error('Element not found'); - } + // Helper to assert that the element is not null + function assertElement( + element: T | null, + ): asserts element is T { + if (element === null) { + throw new Error('Element not found') } - - // Names of the sample files in the public directory - const sampleFileNames: { [key: string]: string } = { - compiled_onnx: 'test_network.compiled', - srs: 'kzg', - vk: 'test.key', - }; - - // Helper function to fetch and create a file object from a public URL - const fetchAndCreateFile = async (path: string, filename: string): Promise => { - const response = await fetch(path); - const blob = await response.blob(); - return new File([blob], filename, { type: blob.type }); - }; - - // Fetch each sample file and create a File object - const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => - fetchAndCreateFile(`/data/${filename}`, filename) - ); - - // Wait for all files to be fetched and created - const files = await Promise.all(filePromises); - - // Select the file input elements and assign the FileList to each - const compiledOnnxInputVk = document.querySelector('#compiled_onnx_vk'); - const srsInputVk = document.querySelector('#srs_vk'); - const compiledOnnxInputPk = document.querySelector('#compiled_onnx_pk'); - const srsInputPk = document.querySelector('#srs_pk'); - const vkInput = document.querySelector('#vk'); - - // Assert that the elements are not null - assertElement(compiledOnnxInputVk); - assertElement(srsInputVk); - assertElement(compiledOnnxInputPk); - assertElement(srsInputPk); - assertElement(vkInput); - - // Create a new DataTransfer to hold the files - let dataTransfers: DataTransfer[] = []; - files.forEach( - (file, idx) => { - const dataTransfer = new DataTransfer(); - dataTransfer.items.add(file) - dataTransfers[idx] = dataTransfer; - } - - ); - - - compiledOnnxInputVk.files = dataTransfers[0].files; - srsInputVk.files = dataTransfers[1].files; - compiledOnnxInputPk.files = dataTransfers[0].files; - srsInputPk.files = dataTransfers[1].files; - vkInput.files = dataTransfers[2].files; + } + + // Names of the sample files in the public directory + const sampleFileNames: { [key: string]: string } = { + compiled_onnx: 'test_network.compiled', + srs: 'kzg', + vk: 'test.key', + } + + // Helper function to fetch and create a file object from a public URL + const fetchAndCreateFile = async ( + path: string, + filename: string, + ): Promise => { + const response = await fetch(path) + const blob = await response.blob() + return new File([blob], filename, { type: blob.type }) + } + + // Fetch each sample file and create a File object + const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => + fetchAndCreateFile(`/data/1l_mlp/${filename}`, filename), + ) + + // Wait for all files to be fetched and created + const files = await Promise.all(filePromises) + + // Select the file input elements and assign the FileList to each + const compiledOnnxInputVk = + document.querySelector('#compiled_onnx_vk') + const srsInputVk = document.querySelector('#srs_vk') + const compiledOnnxInputPk = + document.querySelector('#compiled_onnx_pk') + const srsInputPk = document.querySelector('#srs_pk') + const vkInput = document.querySelector('#vk') + + // Assert that the elements are not null + assertElement(compiledOnnxInputVk) + assertElement(srsInputVk) + assertElement(compiledOnnxInputPk) + assertElement(srsInputPk) + assertElement(vkInput) + + // Create a new DataTransfer to hold the files + let dataTransfers: DataTransfer[] = [] + files.forEach((file, idx) => { + const dataTransfer = new DataTransfer() + dataTransfer.items.add(file) + dataTransfers[idx] = dataTransfer + }) + + compiledOnnxInputVk.files = dataTransfers[0].files + srsInputVk.files = dataTransfers[1].files + compiledOnnxInputPk.files = dataTransfers[0].files + srsInputPk.files = dataTransfers[1].files + vkInput.files = dataTransfers[2].files } - function GenVkArtifactForm({ - handleSubmit, - alert, - warning + handleSubmit, + alert, + warning, }: { - handleSubmit: (e: React.FormEvent) => void - alert: string - warning: string + handleSubmit: (e: React.FormEvent) => void + alert: string + warning: string }) { - return ( -
-

Generate Verifying Key

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* COMPILED ONNX MODEL */} -
-
- {/* SRS */} -
-
- -
+ return ( +
+

Generate Verifying Key

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* COMPILED ONNX MODEL */} +
+
+ {/* SRS */} +
+
- ) + +
+
+ ) } function GenPkArtifactForm({ - handleSubmit, - alert, - warning + handleSubmit, + alert, + warning, }: { - handleSubmit: (e: React.FormEvent) => void - alert: string - warning: string + handleSubmit: (e: React.FormEvent) => void + alert: string + warning: string }) { - return ( -
-

Generate Proving Key

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* VK */} -
-
- {/* COMPILED ONNX MODEL */} -
-
- {/* SRS */} -
-
- -
+ return ( +
+

Generate Proving Key

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* VK */} +
+
+ {/* COMPILED ONNX MODEL */} +
+
+ {/* SRS */} +
+
- ) + +
+
+ ) } diff --git a/app/setup/parsers.ts b/app/setup/parsers.ts index 367d886..d508c80 100644 --- a/app/setup/parsers.ts +++ b/app/setup/parsers.ts @@ -1,17 +1,17 @@ import { z } from 'zod' const fileSchema = z.custom((value) => { - if (value === null) return false - return value instanceof File && value.name.trim() !== '' + if (value === null) return false + return value instanceof File && value.name.trim() !== '' }, "File name can't be empty") export const formDataSchemaGenVk = z.object({ - compiled_onnx: fileSchema, - srs: fileSchema + compiled_onnx: fileSchema, + srs: fileSchema, }) export const formDataSchemaGenPk = z.object({ - vk: fileSchema, - compiled_onnx: fileSchema, - srs: fileSchema + vk: fileSchema, + compiled_onnx: fileSchema, + srs: fileSchema, }) diff --git a/app/verify/page.tsx b/app/verify/page.tsx index e1420e9..6e51eb9 100644 --- a/app/verify/page.tsx +++ b/app/verify/page.tsx @@ -1,254 +1,247 @@ // Example for pages/Page1.js 'use client' import { - FileInput, - Label, - Button, - Alert, - Spinner as _Spinner + FileInput, + Label, + Button, + Alert, + Spinner as _Spinner, } from 'flowbite-react' import React, { useState } from 'react' import { formDataSchemaVerify } from './parsers' -import { useSharedResources } from '../EngineContext'; +import { useSharedResources } from '../EngineContext' export default function Verify() { - const { utils } = useSharedResources(); - const [alertVerify, setAlertVerify] = useState('') - const [warningVerify, setWarningVerify] = useState('') - const [loading, setLoading] = useState(false) - const [verifyResult, setVerifyResult] = useState(''); - - const handleSubmitVerify = async (e: React.FormEvent) => { - e.preventDefault() - const formData = new FormData(e.currentTarget) - - const formInputs = { - proof: formData.get('proof'), - vk: formData.get('vk'), - settings: formData.get('settings'), - srs: formData.get('srs'), - } - // Validate form has valid inputs (zod) - const validatedFormInputs = formDataSchemaVerify.safeParse(formInputs) - - if (warningVerify) setWarningVerify('') - - if (!validatedFormInputs.success) { - setAlertVerify('Please upload all files') - return - } - - // Clear alert and warning - if (alertVerify) setAlertVerify('') - - // Missing data - if ( - validatedFormInputs.data.proof === null || - validatedFormInputs.data.vk === null || - validatedFormInputs.data.settings === null || - validatedFormInputs.data.srs === null - ) { - setAlertVerify('Please upload all files') - return - } - - setLoading(true) - - // create file object - const files = { - proof: validatedFormInputs.data.proof, - vk: validatedFormInputs.data.vk, - settings: validatedFormInputs.data.settings, - srs: validatedFormInputs.data.srs - } - /* ================== ENGINE API ====================== */ - utils.handleVerifyButton(files as { [key: string]: File }) - .then(({ output, executionTime }) => { - // Update result based on the outcome - setVerifyResult( - output - ? 'Verification successful. Execution time: ' + executionTime + ' ms' - : 'Verification failed' - ) - }) - .catch((error) => { - console.error('An error occurred:', error) - setWarningVerify(`Verification process failed with an error: ${error}`) - }) - - setLoading(false) + const { utils } = useSharedResources() + const [alertVerify, setAlertVerify] = useState('') + const [warningVerify, setWarningVerify] = useState('') + const [loading, setLoading] = useState(false) + const [verifyResult, setVerifyResult] = useState('') + + const handleSubmitVerify = async (e: React.FormEvent) => { + e.preventDefault() + const formData = new FormData(e.currentTarget) + + const formInputs = { + proof: formData.get('proof'), + vk: formData.get('vk'), + settings: formData.get('settings'), + srs: formData.get('srs'), } + // Validate form has valid inputs (zod) + const validatedFormInputs = formDataSchemaVerify.safeParse(formInputs) + if (warningVerify) setWarningVerify('') - return ( -
- {verifyResult && !warningVerify ? ( -
-

{verifyResult}

-
- -
-
- ) : loading ? ( - - ) : ( -
-
- -
- -
- )} + if (!validatedFormInputs.success) { + setAlertVerify('Please upload all files') + return + } + + // Clear alert and warning + if (alertVerify) setAlertVerify('') + + // Missing data + if ( + validatedFormInputs.data.proof === null || + validatedFormInputs.data.vk === null || + validatedFormInputs.data.settings === null || + validatedFormInputs.data.srs === null + ) { + setAlertVerify('Please upload all files') + return + } + + setLoading(true) + + // create file object + const files = { + proof: validatedFormInputs.data.proof, + vk: validatedFormInputs.data.vk, + settings: validatedFormInputs.data.settings, + srs: validatedFormInputs.data.srs, + } + /* ================== ENGINE API ====================== */ + utils + .handleVerifyButton(files as { [key: string]: File }) + .then(({ output, executionTime }) => { + // Update result based on the outcome + setVerifyResult( + output + ? 'Verification successful. Execution time: ' + + executionTime + + ' ms' + : 'Verification failed', + ) + }) + .catch((error) => { + console.error('An error occurred:', error) + setWarningVerify(`Verification process failed with an error: ${error}`) + }) + + setLoading(false) + } + + return ( +
+ {verifyResult && !warningVerify ? ( +
+

{verifyResult}

+
+ +
- ); + ) : loading ? ( + + ) : ( +
+
+ +
+ +
+ )} +
+ ) } // UI Component function Spinner() { - return ( -
- <_Spinner size='3xl' className='w-28 lg:w-44' /> -
- ) + return ( +
+ <_Spinner size='3xl' className='w-28 lg:w-44' /> +
+ ) } async function populateWithSampleFiles() { - // Helper to assert that the element is not null - function assertElement(element: T | null): asserts element is T { - if (element === null) { - throw new Error('Element not found'); - } + // Helper to assert that the element is not null + function assertElement( + element: T | null, + ): asserts element is T { + if (element === null) { + throw new Error('Element not found') } - - // Names of the sample files in the public directory - const sampleFileNames: { [key: string]: string } = { - srs: 'kzg', - proof: 'test.pf', - settings: 'settings.json', - vk: 'test.key' - }; - - // Helper function to fetch and create a file object from a public URL - const fetchAndCreateFile = async (path: string, filename: string): Promise => { - const response = await fetch(path); - const blob = await response.blob(); - return new File([blob], filename, { type: blob.type }); - }; - - // Fetch each sample file and create a File object - const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => - fetchAndCreateFile(`/data/${filename}`, filename) - ); - - // Wait for all files to be fetched and created - const files = await Promise.all(filePromises); - - // Select the file input elements and assign the FileList to each - const proof = document.querySelector('#proof'); - const settings = document.querySelector('#settings'); - const vk = document.querySelector('#vk'); - const srsVerify = document.querySelector('#srs_verify'); - - // Assert that the elements are not null - assertElement(proof); - assertElement(settings); - assertElement(vk); - assertElement(srsVerify); - - // Create a new DataTransfer to hold the files - let dataTransfers: DataTransfer[] = []; - files.forEach( - (file, idx) => { - const dataTransfer = new DataTransfer(); - dataTransfer.items.add(file) - dataTransfers[idx] = dataTransfer; - } - - ); - - srsVerify.files = dataTransfers[0].files; - proof.files = dataTransfers[1].files; - settings.files = dataTransfers[2].files; - vk.files = dataTransfers[3].files; + } + + // Names of the sample files in the public directory + const sampleFileNames: { [key: string]: string } = { + srs: 'kzg', + proof: 'test.pf', + settings: 'settings.json', + vk: 'test.key', + } + + // Helper function to fetch and create a file object from a public URL + const fetchAndCreateFile = async ( + path: string, + filename: string, + ): Promise => { + const response = await fetch(path) + const blob = await response.blob() + return new File([blob], filename, { type: blob.type }) + } + + // Fetch each sample file and create a File object + const filePromises = Object.entries(sampleFileNames).map(([key, filename]) => + fetchAndCreateFile(`/data/1l_mlp/${filename}`, filename), + ) + + // Wait for all files to be fetched and created + const files = await Promise.all(filePromises) + + // Select the file input elements and assign the FileList to each + const proof = document.querySelector('#proof') + const settings = document.querySelector('#settings') + const vk = document.querySelector('#vk') + const srsVerify = document.querySelector('#srs_verify') + + // Assert that the elements are not null + assertElement(proof) + assertElement(settings) + assertElement(vk) + assertElement(srsVerify) + + // Create a new DataTransfer to hold the files + let dataTransfers: DataTransfer[] = [] + files.forEach((file, idx) => { + const dataTransfer = new DataTransfer() + dataTransfer.items.add(file) + dataTransfers[idx] = dataTransfer + }) + + srsVerify.files = dataTransfers[0].files + proof.files = dataTransfers[1].files + settings.files = dataTransfers[2].files + vk.files = dataTransfers[3].files } function VerifyingArtifactForm({ - handleSubmit, - alert, - warning + handleSubmit, + alert, + warning, }: { - handleSubmit: (e: React.FormEvent) => void - alert: string - warning: string + handleSubmit: (e: React.FormEvent) => void + alert: string + warning: string }) { - return ( -
-

Verifying

- {alert && ( - - {alert} - - )} - {warning && ( - - {warning} - - )} -
- {/* PROOF */} -
-
- {/* SETTINGS */} -
-
- {/* VK */} -
-
- {/* SRS */} -
-
- -
+ return ( +
+

Verifying

+ {alert && ( + + {alert} + + )} + {warning && ( + + {warning} + + )} +
+ {/* PROOF */} +
+
+ {/* SETTINGS */} +
+
+ {/* VK */} +
+
+ {/* SRS */} +
+
- ) + +
+
+ ) } diff --git a/app/verify/parsers.tsx b/app/verify/parsers.tsx index 89da9e9..d73ed0e 100644 --- a/app/verify/parsers.tsx +++ b/app/verify/parsers.tsx @@ -1,20 +1,20 @@ import { z } from 'zod' const fileSchema = z.custom((value) => { - if (value === null) return false - return value instanceof File && value.name.trim() !== '' + if (value === null) return false + return value instanceof File && value.name.trim() !== '' }, "File name can't be empty") export const formDataSchemaProve = z.object({ - witness: fileSchema, - pk: fileSchema, - compiled_onnx: fileSchema, - srs: fileSchema + witness: fileSchema, + pk: fileSchema, + compiled_onnx: fileSchema, + srs: fileSchema, }) export const formDataSchemaVerify = z.object({ - proof: fileSchema, - vk: fileSchema, - settings: fileSchema, - srs: fileSchema + proof: fileSchema, + vk: fileSchema, + settings: fileSchema, + srs: fileSchema, }) diff --git a/jest.config.js b/jest.config.js index 9f81f01..87c30aa 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,4 +1,4 @@ module.exports = { - preset: 'ts-jest', - testEnvironment: 'node', - }; \ No newline at end of file + preset: 'ts-jest', + testEnvironment: 'node', +} diff --git a/next.config.js b/next.config.js index da174c3..ab974e9 100644 --- a/next.config.js +++ b/next.config.js @@ -19,8 +19,8 @@ const nextConfig = { }, ], }, - ]; + ] }, -}; +} module.exports = nextConfig diff --git a/package.json b/package.json index 5f11c84..58b2274 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "@types/react": "18.2.18", "@types/react-dom": "18.2.7", "autoprefixer": "10.4.14", - "axios": "^1.6.1", + "axios": "^1.6.2", "bufferutil": "^4.0.8", "copy-webpack-plugin": "^11.0.0", "env": "^0.0.2", @@ -49,9 +49,10 @@ "zustand": "^4.4.6" }, "devDependencies": { - "@types/jest": "^29.5.8", - "@typescript-eslint/eslint-plugin": "^6.10.0", - "@typescript-eslint/parser": "^6.10.0", - "jest": "^29.7.0" + "@types/jest": "^29.5.9", + "@typescript-eslint/eslint-plugin": "^6.12.0", + "@typescript-eslint/parser": "^6.12.0", + "jest": "^29.7.0", + "prettier": "^3.1.0" } -} \ No newline at end of file +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9b210e6..bd691e3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -39,8 +39,8 @@ dependencies: specifier: 10.4.14 version: 10.4.14(postcss@8.4.27) axios: - specifier: ^1.6.1 - version: 1.6.1 + specifier: ^1.6.2 + version: 1.6.2 bufferutil: specifier: ^4.0.8 version: 4.0.8 @@ -91,7 +91,7 @@ dependencies: version: 18.2.0(react@18.2.0) react-spring: specifier: ^9.7.3 - version: 9.7.3(@react-three/fiber@8.15.10)(konva@9.2.3)(react-dom@18.2.0)(react-konva@18.2.10)(react-native@0.72.6)(react-zdog@1.2.2)(react@18.2.0)(three@0.158.0)(zdog@1.1.3) + version: 9.7.3(@react-three/fiber@8.15.11)(konva@9.2.3)(react-dom@18.2.0)(react-konva@18.2.10)(react-native@0.72.7)(react-zdog@1.2.2)(react@18.2.0)(three@0.158.0)(zdog@1.1.3) solc: specifier: ^0.8.23 version: 0.8.23 @@ -119,65 +119,88 @@ dependencies: devDependencies: '@types/jest': - specifier: ^29.5.8 - version: 29.5.8 + specifier: ^29.5.9 + version: 29.5.9 '@typescript-eslint/eslint-plugin': - specifier: ^6.10.0 - version: 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.46.0)(typescript@5.1.6) + specifier: ^6.12.0 + version: 6.12.0(@typescript-eslint/parser@6.12.0)(eslint@8.46.0)(typescript@5.1.6) '@typescript-eslint/parser': - specifier: ^6.10.0 - version: 6.10.0(eslint@8.46.0)(typescript@5.1.6) + specifier: ^6.12.0 + version: 6.12.0(eslint@8.46.0)(typescript@5.1.6) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@20.4.5) + prettier: + specifier: ^3.1.0 + version: 3.1.0 packages: - /@aashutoshrathi/word-wrap@1.2.6: - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==, + } + engines: { node: '>=0.10.0' } /@adraffy/ens-normalize@1.10.0: - resolution: {integrity: sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q==} + resolution: + { + integrity: sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q==, + } dev: false /@alloc/quick-lru@5.2.0: - resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==, + } + engines: { node: '>=10' } dev: false /@ampproject/remapping@2.2.1: - resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==, + } + engines: { node: '>=6.0.0' } dependencies: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.20 - /@babel/code-frame@7.22.13: - resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} - engines: {node: '>=6.9.0'} + /@babel/code-frame@7.23.4: + resolution: + { + integrity: sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/highlight': 7.22.20 + '@babel/highlight': 7.23.4 chalk: 2.4.2 /@babel/compat-data@7.23.3: - resolution: {integrity: sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==, + } + engines: { node: '>=6.9.0' } /@babel/core@7.23.3: - resolution: {integrity: sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==, + } + engines: { node: '>=6.9.0' } dependencies: '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.22.13 - '@babel/generator': 7.23.3 + '@babel/code-frame': 7.23.4 + '@babel/generator': 7.23.4 '@babel/helper-compilation-targets': 7.22.15 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.3) - '@babel/helpers': 7.23.2 - '@babel/parser': 7.23.3 + '@babel/helpers': 7.23.4 + '@babel/parser': 7.23.4 '@babel/template': 7.22.15 - '@babel/traverse': 7.23.3 - '@babel/types': 7.23.3 + '@babel/traverse': 7.23.4 + '@babel/types': 7.23.4 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -186,32 +209,44 @@ packages: transitivePeerDependencies: - supports-color - /@babel/generator@7.23.3: - resolution: {integrity: sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg==} - engines: {node: '>=6.9.0'} + /@babel/generator@7.23.4: + resolution: + { + integrity: sha512-esuS49Cga3HcThFNebGhlgsrVLkvhqvYDTzgjfFFlHJcIfLe5jFmRRfCQ1KuBfc4Jrtn3ndLgKWAKjBE+IraYQ==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.20 jsesc: 2.5.2 /@babel/helper-annotate-as-pure@7.22.5: - resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 dev: false /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: - resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 dev: false /@babel/helper-compilation-targets@7.22.15: - resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==, + } + engines: { node: '>=6.9.0' } dependencies: '@babel/compat-data': 7.23.3 '@babel/helper-validator-option': 7.22.15 @@ -220,8 +255,11 @@ packages: semver: 6.3.1 /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.23.3): - resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -238,8 +276,11 @@ packages: dev: false /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.3): - resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -250,7 +291,10 @@ packages: dev: false /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.3): - resolution: {integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==} + resolution: + { + integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==, + } peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: @@ -265,38 +309,56 @@ packages: dev: false /@babel/helper-environment-visitor@7.22.20: - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==, + } + engines: { node: '>=6.9.0' } /@babel/helper-function-name@7.23.0: - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==, + } + engines: { node: '>=6.9.0' } dependencies: '@babel/template': 7.22.15 - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 /@babel/helper-hoist-variables@7.22.5: - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 /@babel/helper-member-expression-to-functions@7.23.0: - resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 dev: false /@babel/helper-module-imports@7.22.15: - resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -308,19 +370,28 @@ packages: '@babel/helper-validator-identifier': 7.22.20 /@babel/helper-optimise-call-expression@7.22.5: - resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 dev: false /@babel/helper-plugin-utils@7.22.5: - resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==, + } + engines: { node: '>=6.9.0' } /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.3): - resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -331,8 +402,11 @@ packages: dev: false /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.3): - resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -343,73 +417,106 @@ packages: dev: false /@babel/helper-simple-access@7.22.5: - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 /@babel/helper-skip-transparent-expression-wrappers@7.22.5: - resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 dev: false /@babel/helper-split-export-declaration@7.22.6: - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 - /@babel/helper-string-parser@7.22.5: - resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} - engines: {node: '>=6.9.0'} + /@babel/helper-string-parser@7.23.4: + resolution: + { + integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==, + } + engines: { node: '>=6.9.0' } /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==, + } + engines: { node: '>=6.9.0' } /@babel/helper-validator-option@7.22.15: - resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==, + } + engines: { node: '>=6.9.0' } /@babel/helper-wrap-function@7.22.20: - resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==, + } + engines: { node: '>=6.9.0' } dependencies: '@babel/helper-function-name': 7.23.0 '@babel/template': 7.22.15 - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 dev: false - /@babel/helpers@7.23.2: - resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} - engines: {node: '>=6.9.0'} + /@babel/helpers@7.23.4: + resolution: + { + integrity: sha512-HfcMizYz10cr3h29VqyfGL6ZWIjTwWfvYBMsBVGwpcbhNGe3wQ1ZXZRPzZoAHhd9OqHadHqjQ89iVKINXnbzuw==, + } + engines: { node: '>=6.9.0' } dependencies: '@babel/template': 7.22.15 - '@babel/traverse': 7.23.3 - '@babel/types': 7.23.3 + '@babel/traverse': 7.23.4 + '@babel/types': 7.23.4 transitivePeerDependencies: - supports-color - /@babel/highlight@7.22.20: - resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} - engines: {node: '>=6.9.0'} + /@babel/highlight@7.23.4: + resolution: + { + integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==, + } + engines: { node: '>=6.9.0' } dependencies: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - /@babel/parser@7.23.3: - resolution: {integrity: sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==} - engines: {node: '>=6.0.0'} + /@babel/parser@7.23.4: + resolution: + { + integrity: sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==, + } + engines: { node: '>=6.0.0' } hasBin: true dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -418,20 +525,26 @@ packages: dev: false /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.13.0 dependencies: '@babel/core': 7.23.3 '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.3) dev: false /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -441,8 +554,11 @@ packages: dev: false /@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.23.3): - resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==, + } + engines: { node: '>=6.9.0' } deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead. peerDependencies: '@babel/core': ^7.0.0-0 @@ -455,8 +571,11 @@ packages: dev: false /@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.23.3): - resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==, + } + engines: { node: '>=6.9.0' } deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. peerDependencies: '@babel/core': ^7.0.0-0 @@ -467,8 +586,11 @@ packages: dev: false /@babel/plugin-proposal-export-default-from@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-Q23MpLZfSGZL1kU7fWqV262q65svLSCIP5kZ/JCW/rKTCm/FrLjpvEd2kfUYMVeHh4QhV/xzyoRAHWrAZJrE3Q==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-Q23MpLZfSGZL1kU7fWqV262q65svLSCIP5kZ/JCW/rKTCm/FrLjpvEd2kfUYMVeHh4QhV/xzyoRAHWrAZJrE3Q==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -478,8 +600,11 @@ packages: dev: false /@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.23.3): - resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==, + } + engines: { node: '>=6.9.0' } deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead. peerDependencies: '@babel/core': ^7.0.0-0 @@ -490,8 +615,11 @@ packages: dev: false /@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.23.3): - resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==, + } + engines: { node: '>=6.9.0' } deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead. peerDependencies: '@babel/core': ^7.0.0-0 @@ -502,8 +630,11 @@ packages: dev: false /@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.23.3): - resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==, + } + engines: { node: '>=6.9.0' } deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. peerDependencies: '@babel/core': ^7.0.0-0 @@ -517,8 +648,11 @@ packages: dev: false /@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.23.3): - resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==, + } + engines: { node: '>=6.9.0' } deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead. peerDependencies: '@babel/core': ^7.0.0-0 @@ -529,8 +663,11 @@ packages: dev: false /@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.23.3): - resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==, + } + engines: { node: '>=6.9.0' } deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead. peerDependencies: '@babel/core': ^7.0.0-0 @@ -542,8 +679,11 @@ packages: dev: false /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.3): - resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -551,7 +691,10 @@ packages: dev: false /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.3): - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + resolution: + { + integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -559,7 +702,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} + resolution: + { + integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -567,7 +713,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.3): - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + resolution: + { + integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -575,8 +724,11 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.3): - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -585,7 +737,10 @@ packages: dev: false /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} + resolution: + { + integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -594,8 +749,11 @@ packages: dev: false /@babel/plugin-syntax-export-default-from@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-KeENO5ck1IeZ/l2lFZNy+mpobV3D2Zy5C1YFnWm+YuY5mQiAWc4yAp13dqgguwsBsFVLh4LPCEqCa5qW13N+hw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-KeENO5ck1IeZ/l2lFZNy+mpobV3D2Zy5C1YFnWm+YuY5mQiAWc4yAp13dqgguwsBsFVLh4LPCEqCa5qW13N+hw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -604,7 +762,10 @@ packages: dev: false /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} + resolution: + { + integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -613,8 +774,11 @@ packages: dev: false /@babel/plugin-syntax-flow@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-YZiAIpkJAwQXBJLIQbRFayR5c+gJ35Vcz3bg954k7cd73zqjvhacJuL9RbrzPz8qPmZdgqP6EUKwy0PCNhaaPA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-YZiAIpkJAwQXBJLIQbRFayR5c+gJ35Vcz3bg954k7cd73zqjvhacJuL9RbrzPz8qPmZdgqP6EUKwy0PCNhaaPA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -623,8 +787,11 @@ packages: dev: false /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -633,8 +800,11 @@ packages: dev: false /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -643,7 +813,10 @@ packages: dev: false /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.3): - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + resolution: + { + integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -651,7 +824,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + resolution: + { + integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -659,8 +835,11 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -668,7 +847,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.3): - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + resolution: + { + integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -676,7 +858,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + resolution: + { + integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -684,7 +869,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.3): - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + resolution: + { + integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -692,7 +880,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + resolution: + { + integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -700,7 +891,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + resolution: + { + integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -708,7 +902,10 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.3): - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + resolution: + { + integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -716,8 +913,11 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.3): - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -726,8 +926,11 @@ packages: dev: false /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.3): - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -735,8 +938,11 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -744,8 +950,11 @@ packages: '@babel/helper-plugin-utils': 7.22.5 /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.3): - resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -755,8 +964,11 @@ packages: dev: false /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -764,9 +976,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-async-generator-functions@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-59GsVNavGxAXCDDbakWSMJhajASb4kBCqDjqJsv+p5nKdbz7istmZ3HrX3L2LuiI80+zsOADCvooqQH3qGCucQ==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-async-generator-functions@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-efdkfPhHYTtn0G6n2ddrESE91fgXxjlqLsnUtPWnJs4a4mZIbUaK7ffqKIIUKXSHwcDvaCVX6GXkaJJFqtX7jw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -778,8 +993,11 @@ packages: dev: false /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -790,8 +1008,11 @@ packages: dev: false /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -799,9 +1020,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-block-scoping@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-QPZxHrThbQia7UdvfpaRRlq/J9ciz1J4go0k+lPBXbgaNeY7IQrBj/9ceWjvMMI07/ZBzHl/F0R/2K0qH7jCVw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -810,8 +1034,11 @@ packages: dev: false /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -820,9 +1047,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-class-static-block@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-PENDVxdr7ZxKPyi5Ffc0LjXdnJyrJxyqF5T5YjlVg4a0VFfQHW0r8iAtRiDXkfHlu1wwcvdtnndGYIeJLSuRMQ==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.12.0 dependencies: @@ -833,8 +1063,11 @@ packages: dev: false /@babel/plugin-transform-classes@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -851,8 +1084,11 @@ packages: dev: false /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -862,8 +1098,11 @@ packages: dev: false /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -872,8 +1111,11 @@ packages: dev: false /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -883,8 +1125,11 @@ packages: dev: false /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -892,9 +1137,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-dynamic-import@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-vTG+cTGxPFou12Rj7ll+eD5yWeNl5/8xvQvF08y5Gv3v4mZQoyFf8/n9zg4q5vvCWt5jmgymfzMAldO7orBn7A==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -904,8 +1152,11 @@ packages: dev: false /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -914,9 +1165,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-export-namespace-from@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-yCLhW34wpJWRdTxxWtFZASJisihrfyMOTOQexhVzA78jlU+dH7Dw+zQgcPepQ5F3C6bAIiblZZ+qBggJdHiBAg==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -926,8 +1180,11 @@ packages: dev: false /@babel/plugin-transform-flow-strip-types@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-26/pQTf9nQSNVJCrLB1IkHUKyPxR+lMrH2QDPG89+Znu9rAMbtrybdbWeE9bb7gzjmE5iXHEY+e0HUwM6Co93Q==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-26/pQTf9nQSNVJCrLB1IkHUKyPxR+lMrH2QDPG89+Znu9rAMbtrybdbWeE9bb7gzjmE5iXHEY+e0HUwM6Co93Q==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -937,8 +1194,11 @@ packages: dev: false /@babel/plugin-transform-for-of@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -947,8 +1207,11 @@ packages: dev: false /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -958,9 +1221,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-json-strings@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-H9Ej2OiISIZowZHaBwF0tsJOih1PftXJtE8EWqlEIwpc7LMTGq0rPOrywKLQ4nefzx8/HMR0D3JGXoMHYvhi0A==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -970,8 +1236,11 @@ packages: dev: false /@babel/plugin-transform-literals@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -979,9 +1248,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-logical-assignment-operators@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-+pD5ZbxofyOygEp+zZAfujY2ShNCXRpDRIPOiBmTO693hhyOEteZgl876Xs9SAHPQpcV0vz8LvA/T+w8AzyX8A==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -991,8 +1263,11 @@ packages: dev: false /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1001,8 +1276,11 @@ packages: dev: false /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1012,8 +1290,11 @@ packages: dev: false /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1024,8 +1305,11 @@ packages: dev: false /@babel/plugin-transform-modules-systemjs@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1037,8 +1321,11 @@ packages: dev: false /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1048,8 +1335,11 @@ packages: dev: false /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.3): - resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -1059,8 +1349,11 @@ packages: dev: false /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1068,9 +1361,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-nullish-coalescing-operator@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-xzg24Lnld4DYIdysyf07zJ1P+iIfJpxtVFOzX4g+bsJ3Ng5Le7rXx9KwqKzuyaUeRnt+I1EICwQITqc0E2PmpA==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1079,9 +1375,12 @@ packages: '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.3) dev: false - /@babel/plugin-transform-numeric-separator@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-s9GO7fIBi/BLsZ0v3Rftr6Oe4t0ctJ8h4CCXfPoEJwmvAPMyNrfkOOJzm6b9PX9YXcCJWWQd/sBF/N26eBiMVw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1090,9 +1389,12 @@ packages: '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.3) dev: false - /@babel/plugin-transform-object-rest-spread@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-VxHt0ANkDmu8TANdE9Kc0rndo/ccsmfe2Cx2y5sI4hu3AukHQ5wAu4cM7j3ba8B9548ijVyclBU+nuDQftZsog==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-object-rest-spread@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1105,8 +1407,11 @@ packages: dev: false /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1115,9 +1420,12 @@ packages: '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.3) dev: false - /@babel/plugin-transform-optional-catch-binding@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-LxYSb0iLjUamfm7f1D7GpiS4j0UAC8AOiehnsGAP8BEsIX8EOi3qV6bbctw8M7ZvLtcoZfZX5Z7rN9PlWk0m5A==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1126,9 +1434,12 @@ packages: '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.3) dev: false - /@babel/plugin-transform-optional-chaining@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-zvL8vIfIUgMccIAK1lxjvNv572JHFJIKb4MWBz5OGdBQA0fB0Xluix5rmOby48exiJc987neOmP/m9Fnpkz3Tg==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1139,8 +1450,11 @@ packages: dev: false /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1149,8 +1463,11 @@ packages: dev: false /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1159,9 +1476,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-private-property-in-object@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-a5m2oLNFyje2e/rGKjVfAELTVI5mbA0FeZpBnkOWWV7eSmKQ+T/XW0Vf+29ScLzSxX+rnsarvU0oie/4m6hkxA==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1173,8 +1493,11 @@ packages: dev: false /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1183,8 +1506,11 @@ packages: dev: false /@babel/plugin-transform-react-display-name@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1193,8 +1519,11 @@ packages: dev: false /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1203,8 +1532,11 @@ packages: dev: false /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1212,9 +1544,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.23.3): - resolution: {integrity: sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1223,12 +1558,15 @@ packages: '@babel/helper-module-imports': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.3) - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 dev: false /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1238,8 +1576,11 @@ packages: dev: false /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1247,9 +1588,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-runtime@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-XcQ3X58CKBdBnnZpPaQjgVMePsXtSZzHoku70q9tUAQp02ggPQNM04BF3RvlW1GSM/McbSOQAzEK4MXbS7/JFg==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-runtime@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-ITwqpb6V4btwUG0YJR82o2QvmWrLgDnx/p2A3CTPYGaRgULkDiC0DRA2C4jlRB9uXGUEfaSS/IGHfVW+ohzYDw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1265,8 +1609,11 @@ packages: dev: false /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1275,8 +1622,11 @@ packages: dev: false /@babel/plugin-transform-spread@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1286,8 +1636,11 @@ packages: dev: false /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1296,8 +1649,11 @@ packages: dev: false /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1306,8 +1662,11 @@ packages: dev: false /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1315,9 +1674,12 @@ packages: '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-typescript@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-ogV0yWnq38CFwH20l2Afz0dfKuZBx9o/Y2Rmh5vuSS0YD1hswgEgTfyTzuSrT2q9btmHRSqYoSfwFUVaC1M1Jw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-transform-typescript@7.23.4(@babel/core@7.23.3): + resolution: + { + integrity: sha512-39hCCOl+YUAyMOu6B9SmUTiHUU0t/CxJNUmY3qRdJujbqi+lrQcL11ysYUsAvFWPBdhihrv1z0oRG84Yr3dODQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1329,8 +1691,11 @@ packages: dev: false /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1339,8 +1704,11 @@ packages: dev: false /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1350,8 +1718,11 @@ packages: dev: false /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1361,8 +1732,11 @@ packages: dev: false /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -1372,8 +1746,11 @@ packages: dev: false /@babel/preset-env@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1405,25 +1782,25 @@ packages: '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.3) '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.3) '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-async-generator-functions': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-async-generator-functions': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-block-scoping': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-class-static-block': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-classes': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-dynamic-import': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-export-namespace-from': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-for-of': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-json-strings': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-logical-assignment-operators': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.3) @@ -1431,15 +1808,15 @@ packages: '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.3) '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-numeric-separator': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-object-rest-spread': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.23.3) + '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.23.3) + '@babel/plugin-transform-object-rest-spread': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-optional-catch-binding': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-optional-chaining': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.23.3) + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-private-property-in-object': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.23.3) @@ -1456,15 +1833,18 @@ packages: babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.3) babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.3) babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.3) - core-js-compat: 3.33.2 + core-js-compat: 3.33.3 semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false /@babel/preset-flow@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-7yn6hl8RIv+KNk6iIrGZ+D06VhVY35wLVf23Cz/mMu1zOr7u4MMP4j0nZ9tLf8+4ZFpnib8cFYgB/oYg9hfswA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-7yn6hl8RIv+KNk6iIrGZ+D06VhVY35wLVf23Cz/mMu1zOr7u4MMP4j0nZ9tLf8+4ZFpnib8cFYgB/oYg9hfswA==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1475,19 +1855,25 @@ packages: dev: false /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.3): - resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} + resolution: + { + integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==, + } peerDependencies: '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/core': 7.23.3 '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 esutils: 2.0.3 dev: false /@babel/preset-typescript@7.23.3(@babel/core@7.23.3): - resolution: {integrity: sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1496,12 +1882,15 @@ packages: '@babel/helper-validator-option': 7.22.15 '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-typescript': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-typescript': 7.23.4(@babel/core@7.23.3) dev: false /@babel/register@7.22.15(@babel/core@7.23.3): - resolution: {integrity: sha512-V3Q3EqoQdn65RCgTLwauZaTfd1ShhwPmbBv+1dkZV/HpCGMKVyn6oFcRlI7RaKqiDQjX2Qd3AuoEguBgdjIKlg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-V3Q3EqoQdn65RCgTLwauZaTfd1ShhwPmbBv+1dkZV/HpCGMKVyn6oFcRlI7RaKqiDQjX2Qd3AuoEguBgdjIKlg==, + } + engines: { node: '>=6.9.0' } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -1514,55 +1903,76 @@ packages: dev: false /@babel/regjsgen@0.8.0: - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} + resolution: + { + integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==, + } dev: false - /@babel/runtime@7.23.2: - resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==} - engines: {node: '>=6.9.0'} + /@babel/runtime@7.23.4: + resolution: + { + integrity: sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==, + } + engines: { node: '>=6.9.0' } dependencies: regenerator-runtime: 0.14.0 dev: false /@babel/template@7.22.15: - resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.22.13 - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 - - /@babel/traverse@7.23.3: - resolution: {integrity: sha512-+K0yF1/9yR0oHdE0StHuEj3uTPzwwbrLGfNOndVJVV2TqA5+j3oljJUb4nmB954FLGjNem976+B+eDuLIjesiQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.22.13 - '@babel/generator': 7.23.3 + resolution: + { + integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==, + } + engines: { node: '>=6.9.0' } + dependencies: + '@babel/code-frame': 7.23.4 + '@babel/parser': 7.23.4 + '@babel/types': 7.23.4 + + /@babel/traverse@7.23.4: + resolution: + { + integrity: sha512-IYM8wSUwunWTB6tFC2dkKZhxbIjHoWemdK+3f8/wq8aKhbUscxD5MX72ubd90fxvFknaLPeGw5ycU84V1obHJg==, + } + engines: { node: '>=6.9.0' } + dependencies: + '@babel/code-frame': 7.23.4 + '@babel/generator': 7.23.4 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 + '@babel/parser': 7.23.4 + '@babel/types': 7.23.4 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color - /@babel/types@7.23.3: - resolution: {integrity: sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==} - engines: {node: '>=6.9.0'} + /@babel/types@7.23.4: + resolution: + { + integrity: sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==, + } + engines: { node: '>=6.9.0' } dependencies: - '@babel/helper-string-parser': 7.22.5 + '@babel/helper-string-parser': 7.23.4 '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 /@bcoe/v8-coverage@0.2.3: - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + resolution: + { + integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==, + } /@eslint-community/eslint-utils@4.4.0(eslint@8.46.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: @@ -1570,18 +1980,24 @@ packages: eslint-visitor-keys: 3.4.3 /@eslint-community/regexpp@4.10.0: - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + resolution: + { + integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==, + } + engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } /@eslint/eslintrc@2.1.3: - resolution: {integrity: sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: ajv: 6.12.6 debug: 4.3.4 espree: 9.6.1 globals: 13.23.0 - ignore: 5.2.4 + ignore: 5.3.0 import-fresh: 3.3.0 js-yaml: 4.1.0 minimatch: 3.1.2 @@ -1589,13 +2005,19 @@ packages: transitivePeerDependencies: - supports-color - /@eslint/js@8.53.0: - resolution: {integrity: sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@eslint/js@8.54.0: + resolution: + { + integrity: sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } /@ethereumjs/block@5.0.1: - resolution: {integrity: sha512-DoQ/lVEO3NGl5sfxoWjl1zjPnQqAaFqlqq7aOmzB4qMe89nXm0mYTate2xDUruS7it8R8FHzXga16soV7qQykA==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-DoQ/lVEO3NGl5sfxoWjl1zjPnQqAaFqlqq7aOmzB4qMe89nXm0mYTate2xDUruS7it8R8FHzXga16soV7qQykA==, + } + engines: { node: '>=18' } dependencies: '@ethereumjs/common': 4.1.0 '@ethereumjs/rlp': 5.0.1 @@ -1609,8 +2031,11 @@ packages: dev: false /@ethereumjs/blockchain@7.0.1: - resolution: {integrity: sha512-JQoRpMHxAyMnlHSNe7H3EnM3mMZOHaBGkBmwLQ02Jv9zg9rnJ/g9r9LvW6yhjs7ifrKCn94j54yMv4i+W99XwA==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-JQoRpMHxAyMnlHSNe7H3EnM3mMZOHaBGkBmwLQ02Jv9zg9rnJ/g9r9LvW6yhjs7ifrKCn94j54yMv4i+W99XwA==, + } + engines: { node: '>=18' } dependencies: '@ethereumjs/block': 5.0.1 '@ethereumjs/common': 4.1.0 @@ -1621,7 +2046,7 @@ packages: '@ethereumjs/util': 9.0.1 debug: 4.3.4 ethereum-cryptography: 2.1.2 - lru-cache: 10.0.2 + lru-cache: 10.0.3 transitivePeerDependencies: - buffer - c-kzg @@ -1629,7 +2054,10 @@ packages: dev: false /@ethereumjs/common@4.1.0: - resolution: {integrity: sha512-XWdQvUjlQHVwh4uGEPFKHpsic69GOsMXEhlHrggS5ju/+2zAmmlz6B25TkCCymeElC9DUp13tH5Tc25Iuvtlcg==} + resolution: + { + integrity: sha512-XWdQvUjlQHVwh4uGEPFKHpsic69GOsMXEhlHrggS5ju/+2zAmmlz6B25TkCCymeElC9DUp13tH5Tc25Iuvtlcg==, + } dependencies: '@ethereumjs/util': 9.0.1 crc: 4.3.2 @@ -1639,8 +2067,11 @@ packages: dev: false /@ethereumjs/ethash@3.0.1: - resolution: {integrity: sha512-GEAOOqiYeHk6c0u7XCaKguYXlhBJYrQNgPJaJl4JPZSAOtUv5QwSpplWDwmbBvSYL6/JhJAkPRGtVrmLpjfFFg==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-GEAOOqiYeHk6c0u7XCaKguYXlhBJYrQNgPJaJl4JPZSAOtUv5QwSpplWDwmbBvSYL6/JhJAkPRGtVrmLpjfFFg==, + } + engines: { node: '>=18' } dependencies: '@ethereumjs/block': 5.0.1 '@ethereumjs/rlp': 5.0.1 @@ -1653,8 +2084,11 @@ packages: dev: false /@ethereumjs/evm@2.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-+4X9fw9X3pRnvbtJn02TDbwoTICc+W6ccNLgNx2IXiJkIArtUTK8xJ764MgmUvNIb14PuXAAUMEZ0l6UrZQcDw==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-+4X9fw9X3pRnvbtJn02TDbwoTICc+W6ccNLgNx2IXiJkIArtUTK8xJ764MgmUvNIb14PuXAAUMEZ0l6UrZQcDw==, + } + engines: { node: '>=18' } dependencies: '@ethereumjs/common': 4.1.0 '@ethereumjs/statemanager': 2.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.3) @@ -1673,13 +2107,19 @@ packages: dev: false /@ethereumjs/rlp@5.0.1: - resolution: {integrity: sha512-Ab/Hfzz+T9Zl+65Nkg+9xAmwKPLicsnQ4NW49pgvJp9ovefuic95cgOS9CbPc9izIEgsqm1UitV0uNveCvud9w==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-Ab/Hfzz+T9Zl+65Nkg+9xAmwKPLicsnQ4NW49pgvJp9ovefuic95cgOS9CbPc9izIEgsqm1UitV0uNveCvud9w==, + } + engines: { node: '>=18' } hasBin: true dev: false /@ethereumjs/statemanager@2.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-1wcaZJZq/TqnWWkdwNHOMt27M7SJQKa6J2XZ2hf8ivyPg+3kuf2FoZHCTha1JKPCGJtAttBLgklFnQ/S4sAgPg==} + resolution: + { + integrity: sha512-1wcaZJZq/TqnWWkdwNHOMt27M7SJQKa6J2XZ2hf8ivyPg+3kuf2FoZHCTha1JKPCGJtAttBLgklFnQ/S4sAgPg==, + } dependencies: '@ethereumjs/common': 4.1.0 '@ethereumjs/rlp': 5.0.1 @@ -1689,7 +2129,7 @@ packages: ethereum-cryptography: 2.1.2 ethers: 6.8.1(bufferutil@4.0.8)(utf-8-validate@6.0.3) js-sdsl: 4.4.2 - lru-cache: 10.0.2 + lru-cache: 10.0.3 transitivePeerDependencies: - buffer - bufferutil @@ -1699,22 +2139,28 @@ packages: dev: false /@ethereumjs/trie@6.0.1: - resolution: {integrity: sha512-fPdiTaT2aZ2b3LUdBAZVLKnlHz9CV3dR8zdBEX7eDWLOuQ2E9rM2smk2sGdyzXPr9Sf2gmeE1od+CjY0ea8ICg==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-fPdiTaT2aZ2b3LUdBAZVLKnlHz9CV3dR8zdBEX7eDWLOuQ2E9rM2smk2sGdyzXPr9Sf2gmeE1od+CjY0ea8ICg==, + } + engines: { node: '>=18' } dependencies: '@ethereumjs/rlp': 5.0.1 '@ethereumjs/util': 9.0.1 '@types/readable-stream': 2.3.15 ethereum-cryptography: 2.1.2 - lru-cache: 10.0.2 + lru-cache: 10.0.3 readable-stream: 3.6.2 transitivePeerDependencies: - c-kzg dev: false /@ethereumjs/tx@5.1.0: - resolution: {integrity: sha512-VUhw2+4yXArJZRWhPjmZFrN4WUjUo0qUZUszVpW2KzsGlqCFf67kwJcH9Rca5eS0CRHjr2qHJLpvYOjNuaXVdA==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-VUhw2+4yXArJZRWhPjmZFrN4WUjUo0qUZUszVpW2KzsGlqCFf67kwJcH9Rca5eS0CRHjr2qHJLpvYOjNuaXVdA==, + } + engines: { node: '>=18' } peerDependencies: c-kzg: ^2.1.2 peerDependenciesMeta: @@ -1730,8 +2176,11 @@ packages: dev: false /@ethereumjs/util@9.0.1: - resolution: {integrity: sha512-NdFFEzCc3H1sYkNnnySwLg6owdQMhjUc2jfuDyx8Xv162WSluCnnSKouKOSG3njGNEyy2I9NmF8zTRDwuqpZWA==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-NdFFEzCc3H1sYkNnnySwLg6owdQMhjUc2jfuDyx8Xv162WSluCnnSKouKOSG3njGNEyy2I9NmF8zTRDwuqpZWA==, + } + engines: { node: '>=18' } peerDependencies: c-kzg: ^2.1.2 peerDependenciesMeta: @@ -1743,8 +2192,11 @@ packages: dev: false /@ethereumjs/vm@7.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-AWLsz6GFWR8aRDHFjrLXsBVJ6qjP6jVJiuQeGY8JYbzwGIrKjgN/xxFtZwzyIpXgAXsX+WZYp8omRmkBlPA3zg==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-AWLsz6GFWR8aRDHFjrLXsBVJ6qjP6jVJiuQeGY8JYbzwGIrKjgN/xxFtZwzyIpXgAXsX+WZYp8omRmkBlPA3zg==, + } + engines: { node: '>=18' } dependencies: '@ethereumjs/block': 5.0.1 '@ethereumjs/blockchain': 7.0.1 @@ -1766,7 +2218,10 @@ packages: dev: false /@ethersproject/abi@5.7.0: - resolution: {integrity: sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==} + resolution: + { + integrity: sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==, + } dependencies: '@ethersproject/address': 5.7.0 '@ethersproject/bignumber': 5.7.0 @@ -1780,7 +2235,10 @@ packages: dev: false /@ethersproject/abstract-provider@5.7.0: - resolution: {integrity: sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==} + resolution: + { + integrity: sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==, + } dependencies: '@ethersproject/bignumber': 5.7.0 '@ethersproject/bytes': 5.7.0 @@ -1792,7 +2250,10 @@ packages: dev: false /@ethersproject/abstract-signer@5.7.0: - resolution: {integrity: sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==} + resolution: + { + integrity: sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==, + } dependencies: '@ethersproject/abstract-provider': 5.7.0 '@ethersproject/bignumber': 5.7.0 @@ -1802,7 +2263,10 @@ packages: dev: false /@ethersproject/address@5.7.0: - resolution: {integrity: sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==} + resolution: + { + integrity: sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==, + } dependencies: '@ethersproject/bignumber': 5.7.0 '@ethersproject/bytes': 5.7.0 @@ -1812,13 +2276,19 @@ packages: dev: false /@ethersproject/base64@5.7.0: - resolution: {integrity: sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==} + resolution: + { + integrity: sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==, + } dependencies: '@ethersproject/bytes': 5.7.0 dev: false /@ethersproject/bignumber@5.7.0: - resolution: {integrity: sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==} + resolution: + { + integrity: sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==, + } dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/logger': 5.7.0 @@ -1826,19 +2296,28 @@ packages: dev: false /@ethersproject/bytes@5.7.0: - resolution: {integrity: sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==} + resolution: + { + integrity: sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==, + } dependencies: '@ethersproject/logger': 5.7.0 dev: false /@ethersproject/constants@5.7.0: - resolution: {integrity: sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==} + resolution: + { + integrity: sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==, + } dependencies: '@ethersproject/bignumber': 5.7.0 dev: false /@ethersproject/hash@5.7.0: - resolution: {integrity: sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==} + resolution: + { + integrity: sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==, + } dependencies: '@ethersproject/abstract-signer': 5.7.0 '@ethersproject/address': 5.7.0 @@ -1852,37 +2331,55 @@ packages: dev: false /@ethersproject/keccak256@5.7.0: - resolution: {integrity: sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==} + resolution: + { + integrity: sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==, + } dependencies: '@ethersproject/bytes': 5.7.0 js-sha3: 0.8.0 dev: false /@ethersproject/logger@5.7.0: - resolution: {integrity: sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==} + resolution: + { + integrity: sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==, + } dev: false /@ethersproject/networks@5.7.1: - resolution: {integrity: sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==} + resolution: + { + integrity: sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==, + } dependencies: '@ethersproject/logger': 5.7.0 dev: false /@ethersproject/properties@5.7.0: - resolution: {integrity: sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==} + resolution: + { + integrity: sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==, + } dependencies: '@ethersproject/logger': 5.7.0 dev: false /@ethersproject/rlp@5.7.0: - resolution: {integrity: sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==} + resolution: + { + integrity: sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==, + } dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/logger': 5.7.0 dev: false /@ethersproject/signing-key@5.7.0: - resolution: {integrity: sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==} + resolution: + { + integrity: sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==, + } dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/logger': 5.7.0 @@ -1893,7 +2390,10 @@ packages: dev: false /@ethersproject/strings@5.7.0: - resolution: {integrity: sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==} + resolution: + { + integrity: sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==, + } dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/constants': 5.7.0 @@ -1901,7 +2401,10 @@ packages: dev: false /@ethersproject/transactions@5.7.0: - resolution: {integrity: sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==} + resolution: + { + integrity: sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==, + } dependencies: '@ethersproject/address': 5.7.0 '@ethersproject/bignumber': 5.7.0 @@ -1915,7 +2418,10 @@ packages: dev: false /@ethersproject/web@5.7.1: - resolution: {integrity: sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==} + resolution: + { + integrity: sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==, + } dependencies: '@ethersproject/base64': 5.7.0 '@ethersproject/bytes': 5.7.0 @@ -1925,21 +2431,30 @@ packages: dev: false /@ezkljs/engine@3.10.0: - resolution: {integrity: sha512-utI4dTk8Bo6J5gKgB+XOJPmvxFjA9zxx63NY+cH6mZRc69yoOb+yWgSKFyZiQvhvh/bmsjFdfRTUK8fi6vHVTw==} + resolution: + { + integrity: sha512-utI4dTk8Bo6J5gKgB+XOJPmvxFjA9zxx63NY+cH6mZRc69yoOb+yWgSKFyZiQvhvh/bmsjFdfRTUK8fi6vHVTw==, + } dependencies: '@types/json-bigint': 1.0.4 json-bigint: 1.0.0 dev: false /@ezkljs/engine@3.8.3: - resolution: {integrity: sha512-nvKw01fQ/fm+8x8Er/hdxkzYU9IrBWFnNKYnRbjsQmdNSIjG0gpQhzf9rnB9U0FJQqB8Wg6f9rUen2iIJt+4Gw==} + resolution: + { + integrity: sha512-nvKw01fQ/fm+8x8Er/hdxkzYU9IrBWFnNKYnRbjsQmdNSIjG0gpQhzf9rnB9U0FJQqB8Wg6f9rUen2iIJt+4Gw==, + } dependencies: '@types/json-bigint': 1.0.4 json-bigint: 1.0.0 dev: false /@ezkljs/verify@0.0.8(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-FrWNhzXFfq2N0LrXIbzJdgkhAMELVwFrFGQdIR1TOJntx96LTXgUy5dR1S31GH4MY9Buio3CjdKDoRcr6aKHtg==} + resolution: + { + integrity: sha512-FrWNhzXFfq2N0LrXIbzJdgkhAMELVwFrFGQdIR1TOJntx96LTXgUy5dR1S31GH4MY9Buio3CjdKDoRcr6aKHtg==, + } dependencies: '@ethereumjs/common': 4.1.0 '@ethereumjs/evm': 2.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.3) @@ -1960,20 +2475,29 @@ packages: dev: false /@floating-ui/core@1.5.0: - resolution: {integrity: sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==} + resolution: + { + integrity: sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==, + } dependencies: '@floating-ui/utils': 0.1.6 dev: false /@floating-ui/dom@1.5.3: - resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==} + resolution: + { + integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==, + } dependencies: '@floating-ui/core': 1.5.0 '@floating-ui/utils': 0.1.6 dev: false /@floating-ui/react-dom@2.0.4(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==} + resolution: + { + integrity: sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==, + } peerDependencies: react: '>=16.8.0' react-dom: '>=16.8.0' @@ -1984,7 +2508,10 @@ packages: dev: false /@floating-ui/react@0.24.8(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-AuYeDoaR8jtUlUXtZ1IJ/6jtBkGnSpJXbGNzokBL87VDJ8opMq1Bgrc0szhK482ReQY6KZsMoZCVSb4xwalkBA==} + resolution: + { + integrity: sha512-AuYeDoaR8jtUlUXtZ1IJ/6jtBkGnSpJXbGNzokBL87VDJ8opMq1Bgrc0szhK482ReQY6KZsMoZCVSb4xwalkBA==, + } peerDependencies: react: '>=16.8.0' react-dom: '>=16.8.0' @@ -1997,33 +2524,48 @@ packages: dev: false /@floating-ui/utils@0.1.6: - resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==} + resolution: + { + integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==, + } dev: false /@fortawesome/fontawesome-common-types@6.4.2: - resolution: {integrity: sha512-1DgP7f+XQIJbLFCTX1V2QnxVmpLdKdzzo2k8EmvDOePfchaIGQ9eCHj2up3/jNEbZuBqel5OxiaOJf37TWauRA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-1DgP7f+XQIJbLFCTX1V2QnxVmpLdKdzzo2k8EmvDOePfchaIGQ9eCHj2up3/jNEbZuBqel5OxiaOJf37TWauRA==, + } + engines: { node: '>=6' } requiresBuild: true dev: false /@fortawesome/fontawesome-svg-core@6.4.2: - resolution: {integrity: sha512-gjYDSKv3TrM2sLTOKBc5rH9ckje8Wrwgx1CxAPbN5N3Fm4prfi7NsJVWd1jklp7i5uSCVwhZS5qlhMXqLrpAIg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-gjYDSKv3TrM2sLTOKBc5rH9ckje8Wrwgx1CxAPbN5N3Fm4prfi7NsJVWd1jklp7i5uSCVwhZS5qlhMXqLrpAIg==, + } + engines: { node: '>=6' } requiresBuild: true dependencies: '@fortawesome/fontawesome-common-types': 6.4.2 dev: false /@fortawesome/free-solid-svg-icons@6.4.2: - resolution: {integrity: sha512-sYwXurXUEQS32fZz9hVCUUv/xu49PEJEyUOsA51l6PU/qVgfbTb2glsTEaJngVVT8VqBATRIdh7XVgV1JF1LkA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-sYwXurXUEQS32fZz9hVCUUv/xu49PEJEyUOsA51l6PU/qVgfbTb2glsTEaJngVVT8VqBATRIdh7XVgV1JF1LkA==, + } + engines: { node: '>=6' } requiresBuild: true dependencies: '@fortawesome/fontawesome-common-types': 6.4.2 dev: false /@fortawesome/react-fontawesome@0.2.0(@fortawesome/fontawesome-svg-core@6.4.2)(react@18.2.0): - resolution: {integrity: sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==} + resolution: + { + integrity: sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==, + } peerDependencies: '@fortawesome/fontawesome-svg-core': ~1 || ~6 react: '>=16.3' @@ -2034,18 +2576,27 @@ packages: dev: false /@hapi/hoek@9.3.0: - resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} + resolution: + { + integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==, + } dev: false /@hapi/topo@5.1.0: - resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} + resolution: + { + integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==, + } dependencies: '@hapi/hoek': 9.3.0 dev: false /@humanwhocodes/config-array@0.11.13: - resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} - engines: {node: '>=10.10.0'} + resolution: + { + integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==, + } + engines: { node: '>=10.10.0' } dependencies: '@humanwhocodes/object-schema': 2.0.1 debug: 4.3.4 @@ -2054,15 +2605,24 @@ packages: - supports-color /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} + resolution: + { + integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==, + } + engines: { node: '>=12.22' } /@humanwhocodes/object-schema@2.0.1: - resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} + resolution: + { + integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==, + } /@istanbuljs/load-nyc-config@1.1.0: - resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==, + } + engines: { node: '>=8' } dependencies: camelcase: 5.3.1 find-up: 4.1.0 @@ -2071,12 +2631,18 @@ packages: resolve-from: 5.0.0 /@istanbuljs/schema@0.1.3: - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==, + } + engines: { node: '>=8' } /@jest/console@29.7.0: - resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 '@types/node': 20.4.5 @@ -2086,8 +2652,11 @@ packages: slash: 3.0.0 /@jest/core@29.7.0: - resolution: {integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -2128,15 +2697,21 @@ packages: - ts-node /@jest/create-cache-key-function@29.7.0: - resolution: {integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 dev: false /@jest/environment@29.7.0: - resolution: {integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 @@ -2144,14 +2719,20 @@ packages: jest-mock: 29.7.0 /@jest/expect-utils@29.7.0: - resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: jest-get-type: 29.6.3 /@jest/expect@29.7.0: - resolution: {integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: expect: 29.7.0 jest-snapshot: 29.7.0 @@ -2159,8 +2740,11 @@ packages: - supports-color /@jest/fake-timers@29.7.0: - resolution: {integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 @@ -2170,8 +2754,11 @@ packages: jest-util: 29.7.0 /@jest/globals@29.7.0: - resolution: {integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/environment': 29.7.0 '@jest/expect': 29.7.0 @@ -2181,8 +2768,11 @@ packages: - supports-color /@jest/reporters@29.7.0: - resolution: {integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -2217,22 +2807,31 @@ packages: - supports-color /@jest/schemas@29.6.3: - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@sinclair/typebox': 0.27.8 /@jest/source-map@29.6.3: - resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jridgewell/trace-mapping': 0.3.20 callsites: 3.1.0 graceful-fs: 4.2.11 /@jest/test-result@29.7.0: - resolution: {integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/console': 29.7.0 '@jest/types': 29.6.3 @@ -2240,8 +2839,11 @@ packages: collect-v8-coverage: 1.0.2 /@jest/test-sequencer@29.7.0: - resolution: {integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/test-result': 29.7.0 graceful-fs: 4.2.11 @@ -2249,8 +2851,11 @@ packages: slash: 3.0.0 /@jest/transform@29.7.0: - resolution: {integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@babel/core': 7.23.3 '@jest/types': 29.6.3 @@ -2271,83 +2876,119 @@ packages: - supports-color /@jest/types@26.6.2: - resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} - engines: {node: '>= 10.14.2'} + resolution: + { + integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==, + } + engines: { node: '>= 10.14.2' } dependencies: '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 '@types/node': 20.4.5 - '@types/yargs': 15.0.18 + '@types/yargs': 15.0.19 chalk: 4.1.2 dev: false /@jest/types@27.5.1: - resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + resolution: + { + integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==, + } + engines: { node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 } dependencies: '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 '@types/node': 20.4.5 - '@types/yargs': 16.0.8 + '@types/yargs': 16.0.9 chalk: 4.1.2 dev: false /@jest/types@29.6.3: - resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 '@types/node': 20.4.5 - '@types/yargs': 17.0.31 + '@types/yargs': 17.0.32 chalk: 4.1.2 /@jridgewell/gen-mapping@0.3.3: - resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==, + } + engines: { node: '>=6.0.0' } dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.20 /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==, + } + engines: { node: '>=6.0.0' } /@jridgewell/set-array@1.1.2: - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==, + } + engines: { node: '>=6.0.0' } /@jridgewell/source-map@0.3.5: - resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} + resolution: + { + integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==, + } dependencies: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.20 dev: false /@jridgewell/sourcemap-codec@1.4.15: - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + resolution: + { + integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==, + } /@jridgewell/trace-mapping@0.3.20: - resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} + resolution: + { + integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==, + } dependencies: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 /@next/env@14.0.0: - resolution: {integrity: sha512-cIKhxkfVELB6hFjYsbtEeTus2mwrTC+JissfZYM0n+8Fv+g8ucUfOlm3VEDtwtwydZ0Nuauv3bl0qF82nnCAqA==} + resolution: + { + integrity: sha512-cIKhxkfVELB6hFjYsbtEeTus2mwrTC+JissfZYM0n+8Fv+g8ucUfOlm3VEDtwtwydZ0Nuauv3bl0qF82nnCAqA==, + } dev: false /@next/eslint-plugin-next@13.4.12: - resolution: {integrity: sha512-6rhK9CdxEgj/j1qvXIyLTWEaeFv7zOK8yJMulz3Owel0uek0U9MJCGzmKgYxM3aAUBo3gKeywCZKyQnJKto60A==} + resolution: + { + integrity: sha512-6rhK9CdxEgj/j1qvXIyLTWEaeFv7zOK8yJMulz3Owel0uek0U9MJCGzmKgYxM3aAUBo3gKeywCZKyQnJKto60A==, + } dependencies: glob: 7.1.7 dev: false /@next/swc-darwin-arm64@14.0.0: - resolution: {integrity: sha512-HQKi159jCz4SRsPesVCiNN6tPSAFUkOuSkpJsqYTIlbHLKr1mD6be/J0TvWV6fwJekj81bZV9V/Tgx3C2HO9lA==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-HQKi159jCz4SRsPesVCiNN6tPSAFUkOuSkpJsqYTIlbHLKr1mD6be/J0TvWV6fwJekj81bZV9V/Tgx3C2HO9lA==, + } + engines: { node: '>= 10' } cpu: [arm64] os: [darwin] requiresBuild: true @@ -2355,8 +2996,11 @@ packages: optional: true /@next/swc-darwin-x64@14.0.0: - resolution: {integrity: sha512-4YyQLMSaCgX/kgC1jjF3s3xSoBnwHuDhnF6WA1DWNEYRsbOOPWjcYhv8TKhRe2ApdOam+VfQSffC4ZD+X4u1Cg==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-4YyQLMSaCgX/kgC1jjF3s3xSoBnwHuDhnF6WA1DWNEYRsbOOPWjcYhv8TKhRe2ApdOam+VfQSffC4ZD+X4u1Cg==, + } + engines: { node: '>= 10' } cpu: [x64] os: [darwin] requiresBuild: true @@ -2364,8 +3008,11 @@ packages: optional: true /@next/swc-linux-arm64-gnu@14.0.0: - resolution: {integrity: sha512-io7fMkJ28Glj7SH8yvnlD6naIhRDnDxeE55CmpQkj3+uaA2Hko6WGY2pT5SzpQLTnGGnviK85cy8EJ2qsETj/g==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-io7fMkJ28Glj7SH8yvnlD6naIhRDnDxeE55CmpQkj3+uaA2Hko6WGY2pT5SzpQLTnGGnviK85cy8EJ2qsETj/g==, + } + engines: { node: '>= 10' } cpu: [arm64] os: [linux] requiresBuild: true @@ -2373,8 +3020,11 @@ packages: optional: true /@next/swc-linux-arm64-musl@14.0.0: - resolution: {integrity: sha512-nC2h0l1Jt8LEzyQeSs/BKpXAMe0mnHIMykYALWaeddTqCv5UEN8nGO3BG8JAqW/Y8iutqJsaMe2A9itS0d/r8w==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-nC2h0l1Jt8LEzyQeSs/BKpXAMe0mnHIMykYALWaeddTqCv5UEN8nGO3BG8JAqW/Y8iutqJsaMe2A9itS0d/r8w==, + } + engines: { node: '>= 10' } cpu: [arm64] os: [linux] requiresBuild: true @@ -2382,8 +3032,11 @@ packages: optional: true /@next/swc-linux-x64-gnu@14.0.0: - resolution: {integrity: sha512-Wf+WjXibJQ7hHXOdNOmSMW5bxeJHVf46Pwb3eLSD2L76NrytQlif9NH7JpHuFlYKCQGfKfgSYYre5rIfmnSwQw==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-Wf+WjXibJQ7hHXOdNOmSMW5bxeJHVf46Pwb3eLSD2L76NrytQlif9NH7JpHuFlYKCQGfKfgSYYre5rIfmnSwQw==, + } + engines: { node: '>= 10' } cpu: [x64] os: [linux] requiresBuild: true @@ -2391,8 +3044,11 @@ packages: optional: true /@next/swc-linux-x64-musl@14.0.0: - resolution: {integrity: sha512-WTZb2G7B+CTsdigcJVkRxfcAIQj7Lf0ipPNRJ3vlSadU8f0CFGv/ST+sJwF5eSwIe6dxKoX0DG6OljDBaad+rg==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-WTZb2G7B+CTsdigcJVkRxfcAIQj7Lf0ipPNRJ3vlSadU8f0CFGv/ST+sJwF5eSwIe6dxKoX0DG6OljDBaad+rg==, + } + engines: { node: '>= 10' } cpu: [x64] os: [linux] requiresBuild: true @@ -2400,8 +3056,11 @@ packages: optional: true /@next/swc-win32-arm64-msvc@14.0.0: - resolution: {integrity: sha512-7R8/x6oQODmNpnWVW00rlWX90sIlwluJwcvMT6GXNIBOvEf01t3fBg0AGURNKdTJg2xNuP7TyLchCL7Lh2DTiw==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-7R8/x6oQODmNpnWVW00rlWX90sIlwluJwcvMT6GXNIBOvEf01t3fBg0AGURNKdTJg2xNuP7TyLchCL7Lh2DTiw==, + } + engines: { node: '>= 10' } cpu: [arm64] os: [win32] requiresBuild: true @@ -2409,8 +3068,11 @@ packages: optional: true /@next/swc-win32-ia32-msvc@14.0.0: - resolution: {integrity: sha512-RLK1nELvhCnxaWPF07jGU4x3tjbyx2319q43loZELqF0+iJtKutZ+Lk8SVmf/KiJkYBc7Cragadz7hb3uQvz4g==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-RLK1nELvhCnxaWPF07jGU4x3tjbyx2319q43loZELqF0+iJtKutZ+Lk8SVmf/KiJkYBc7Cragadz7hb3uQvz4g==, + } + engines: { node: '>= 10' } cpu: [ia32] os: [win32] requiresBuild: true @@ -2418,8 +3080,11 @@ packages: optional: true /@next/swc-win32-x64-msvc@14.0.0: - resolution: {integrity: sha512-g6hLf1SUko+hnnaywQQZzzb3BRecQsoKkF3o/C+F+dOA4w/noVAJngUVkfwF0+2/8FzNznM7ofM6TGZO9svn7w==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-g6hLf1SUko+hnnaywQQZzzb3BRecQsoKkF3o/C+F+dOA4w/noVAJngUVkfwF0+2/8FzNznM7ofM6TGZO9svn7w==, + } + engines: { node: '>= 10' } cpu: [x64] os: [win32] requiresBuild: true @@ -2427,53 +3092,80 @@ packages: optional: true /@noble/curves@1.1.0: - resolution: {integrity: sha512-091oBExgENk/kGj3AZmtBDMpxQPDtxQABR2B9lb1JbVTs6ytdzZNwvhxQ4MWasRNEzlbEH8jCWFCwhF/Obj5AA==} + resolution: + { + integrity: sha512-091oBExgENk/kGj3AZmtBDMpxQPDtxQABR2B9lb1JbVTs6ytdzZNwvhxQ4MWasRNEzlbEH8jCWFCwhF/Obj5AA==, + } dependencies: '@noble/hashes': 1.3.1 dev: false /@noble/curves@1.2.0: - resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} + resolution: + { + integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==, + } dependencies: '@noble/hashes': 1.3.2 dev: false /@noble/hashes@1.3.1: - resolution: {integrity: sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==} - engines: {node: '>= 16'} + resolution: + { + integrity: sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==, + } + engines: { node: '>= 16' } dev: false /@noble/hashes@1.3.2: - resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} - engines: {node: '>= 16'} + resolution: + { + integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==, + } + engines: { node: '>= 16' } dev: false /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, + } + engines: { node: '>= 8' } dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, + } + engines: { node: '>= 8' } /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, + } + engines: { node: '>= 8' } dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 /@popperjs/core@2.11.8: - resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} + resolution: + { + integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==, + } dev: false - /@react-native-community/cli-clean@11.3.7: - resolution: {integrity: sha512-twtsv54ohcRyWVzPXL3F9VHGb4Qhn3slqqRs3wEuRzjR7cTmV2TIO2b1VhaqF4HlCgNd+cGuirvLtK2JJyaxMg==} + /@react-native-community/cli-clean@11.3.10: + resolution: + { + integrity: sha512-g6QjW+DSqoWRHzmIQW3AH22k1AnynWuOdy2YPwYEGgPddTeXZtJphIpEVwDOiC0L4mZv2VmiX33/cGNUwO0cIA==, + } dependencies: - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-tools': 11.3.10 chalk: 4.1.2 execa: 5.1.1 prompts: 2.4.2 @@ -2481,10 +3173,13 @@ packages: - encoding dev: false - /@react-native-community/cli-config@11.3.7: - resolution: {integrity: sha512-FDBLku9xskS+bx0YFJFLCmUJhEZ4/MMSC9qPYOGBollWYdgE7k/TWI0IeYFmMALAnbCdKQAYP5N29N55Tad8lg==} + /@react-native-community/cli-config@11.3.10: + resolution: + { + integrity: sha512-YYu14nm1JYLS6mDRBz78+zDdSFudLBFpPkhkOoj4LuBhNForQBIqFFHzQbd9/gcguJxfW3vlYSnudfaUI7oGLg==, + } dependencies: - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-tools': 11.3.10 chalk: 4.1.2 cosmiconfig: 5.2.1 deepmerge: 4.3.1 @@ -2494,21 +3189,27 @@ packages: - encoding dev: false - /@react-native-community/cli-debugger-ui@11.3.7: - resolution: {integrity: sha512-aVmKuPKHZENR8SrflkMurZqeyLwbKieHdOvaZCh1Nn/0UC5CxWcyST2DB2XQboZwsvr3/WXKJkSUO+SZ1J9qTQ==} + /@react-native-community/cli-debugger-ui@11.3.10: + resolution: + { + integrity: sha512-kyitGV3RsjlXIioq9lsuawha2GUBPCTAyXV6EBlm3qlyF3dMniB3twEvz+fIOid/e1ZeucH3Tzy5G3qcP8yWoA==, + } dependencies: serve-static: 1.15.0 transitivePeerDependencies: - supports-color dev: false - /@react-native-community/cli-doctor@11.3.7: - resolution: {integrity: sha512-YEHUqWISOHnsl5+NM14KHelKh68Sr5/HeEZvvNdIcvcKtZic3FU7Xd1WcbNdo3gCq5JvzGFfufx02Tabh5zmrg==} + /@react-native-community/cli-doctor@11.3.10: + resolution: + { + integrity: sha512-DpMsfCWKZ15L9nFK/SyDvpl5v6MjV+arMHMC1i8kR+DOmf2xWmp/pgMywKk0/u50yGB9GwxBHt3i/S/IMK5Ylg==, + } dependencies: - '@react-native-community/cli-config': 11.3.7 - '@react-native-community/cli-platform-android': 11.3.7 - '@react-native-community/cli-platform-ios': 11.3.7 - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-config': 11.3.10 + '@react-native-community/cli-platform-android': 11.3.10 + '@react-native-community/cli-platform-ios': 11.3.10 + '@react-native-community/cli-tools': 11.3.10 chalk: 4.1.2 command-exists: 1.2.9 envinfo: 7.11.0 @@ -2527,11 +3228,14 @@ packages: - encoding dev: false - /@react-native-community/cli-hermes@11.3.7: - resolution: {integrity: sha512-chkKd8n/xeZkinRvtH6QcYA8rjNOKU3S3Lw/3Psxgx+hAYV0Gyk95qJHTalx7iu+PwjOOqqvCkJo5jCkYLkoqw==} + /@react-native-community/cli-hermes@11.3.10: + resolution: + { + integrity: sha512-vqINuzAlcHS9ImNwJtT43N7kfBQ7ro9A8O1Gpc5TQ0A8V36yGG8eoCHeauayklVVgMZpZL6f6mcoLLr9IOgBZQ==, + } dependencies: - '@react-native-community/cli-platform-android': 11.3.7 - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-platform-android': 11.3.10 + '@react-native-community/cli-tools': 11.3.10 chalk: 4.1.2 hermes-profile-transformer: 0.0.6 ip: 1.1.8 @@ -2539,10 +3243,13 @@ packages: - encoding dev: false - /@react-native-community/cli-platform-android@11.3.7: - resolution: {integrity: sha512-WGtXI/Rm178UQb8bu1TAeFC/RJvYGnbHpULXvE20GkmeJ1HIrMjkagyk6kkY3Ej25JAP2R878gv+TJ/XiRhaEg==} + /@react-native-community/cli-platform-android@11.3.10: + resolution: + { + integrity: sha512-RGu9KuDIXnrcNkacSHj5ETTQtp/D/835L6veE2jMigO21p//gnKAjw3AVLCysGr8YXYfThF8OSOALrwNc94puQ==, + } dependencies: - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-tools': 11.3.10 chalk: 4.1.2 execa: 5.1.1 glob: 7.2.3 @@ -2551,10 +3258,13 @@ packages: - encoding dev: false - /@react-native-community/cli-platform-ios@11.3.7: - resolution: {integrity: sha512-Z/8rseBput49EldX7MogvN6zJlWzZ/4M97s2P+zjS09ZoBU7I0eOKLi0N9wx+95FNBvGQQ/0P62bB9UaFQH2jw==} + /@react-native-community/cli-platform-ios@11.3.10: + resolution: + { + integrity: sha512-JjduMrBM567/j4Hvjsff77dGSLMA0+p9rr0nShlgnKPcc+0J4TDy0hgWpUceM7OG00AdDjpetAPupz0kkAh4cQ==, + } dependencies: - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-tools': 11.3.10 chalk: 4.1.2 execa: 5.1.1 fast-xml-parser: 4.3.2 @@ -2564,11 +3274,14 @@ packages: - encoding dev: false - /@react-native-community/cli-plugin-metro@11.3.7(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-0WhgoBVGF1f9jXcuagQmtxpwpfP+2LbLZH4qMyo6OtYLWLG13n2uRep+8tdGzfNzl1bIuUTeE9yZSAdnf9LfYQ==} + /@react-native-community/cli-plugin-metro@11.3.10(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3): + resolution: + { + integrity: sha512-ZYAc5Hc+QVqJgj1XFbpKnIPbSJ9xKcBnfQrRhR+jFyt2DWx85u4bbzY1GSVc/USs0UbSUXv4dqPbnmOJz52EYQ==, + } dependencies: - '@react-native-community/cli-server-api': 11.3.7(bufferutil@4.0.8)(utf-8-validate@6.0.3) - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-server-api': 11.3.10(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@react-native-community/cli-tools': 11.3.10 chalk: 4.1.2 execa: 5.1.1 metro: 0.76.8(bufferutil@4.0.8)(utf-8-validate@6.0.3) @@ -2586,11 +3299,14 @@ packages: - utf-8-validate dev: false - /@react-native-community/cli-server-api@11.3.7(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-yoFyGdvR3HxCnU6i9vFqKmmSqFzCbnFSnJ29a+5dppgPRetN+d//O8ard/YHqHzToFnXutAFf2neONn23qcJAg==} + /@react-native-community/cli-server-api@11.3.10(bufferutil@4.0.8)(utf-8-validate@6.0.3): + resolution: + { + integrity: sha512-WEwHWIpqx3gA6Da+lrmq8+z78E1XbxxjBlvHAXevhjJj42N4SO417eZiiUVrFzEFVVJSUee9n9aRa0kUR+0/2w==, + } dependencies: - '@react-native-community/cli-debugger-ui': 11.3.7 - '@react-native-community/cli-tools': 11.3.7 + '@react-native-community/cli-debugger-ui': 11.3.10 + '@react-native-community/cli-tools': 11.3.10 compression: 1.7.4 connect: 3.7.0 errorhandler: 1.5.1 @@ -2605,8 +3321,11 @@ packages: - utf-8-validate dev: false - /@react-native-community/cli-tools@11.3.7: - resolution: {integrity: sha512-peyhP4TV6Ps1hk+MBHTFaIR1eI3u+OfGBvr5r0wPwo3FAJvldRinMgcB/TcCcOBXVORu7ba1XYjkubPeYcqAyA==} + /@react-native-community/cli-tools@11.3.10: + resolution: + { + integrity: sha512-4kCuCwVcGagSrNg9vxMNVhynwpByuC/J5UnKGEet3HuqmoDhQW15m18fJXiehA8J+u9WBvHduefy9nZxO0C06Q==, + } dependencies: appdirsjs: 1.2.7 chalk: 4.1.2 @@ -2621,26 +3340,32 @@ packages: - encoding dev: false - /@react-native-community/cli-types@11.3.7: - resolution: {integrity: sha512-OhSr/TiDQkXjL5YOs8+hvGSB+HltLn5ZI0+A3DCiMsjUgTTsYh+Z63OtyMpNjrdCEFcg0MpfdU2uxstCS6Dc5g==} + /@react-native-community/cli-types@11.3.10: + resolution: + { + integrity: sha512-0FHK/JE7bTn0x1y8Lk5m3RISDHIBQqWLltO2Mf7YQ6cAeKs8iNOJOeKaHJEY+ohjsOyCziw+XSC4cY57dQrwNA==, + } dependencies: joi: 17.11.0 dev: false - /@react-native-community/cli@11.3.7(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-Ou8eDlF+yh2rzXeCTpMPYJ2fuqsusNOhmpYPYNQJQ2h6PvaF30kPomflgRILems+EBBuggRtcT+I+1YH4o/q6w==} - engines: {node: '>=16'} + /@react-native-community/cli@11.3.10(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3): + resolution: + { + integrity: sha512-bIx0t5s9ewH1PlcEcuQUD+UnVrCjPGAfjhVR5Gew565X60nE+GTIHRn70nMv9G4he/amBF+Z+vf5t8SNZEWMwg==, + } + engines: { node: '>=16' } hasBin: true dependencies: - '@react-native-community/cli-clean': 11.3.7 - '@react-native-community/cli-config': 11.3.7 - '@react-native-community/cli-debugger-ui': 11.3.7 - '@react-native-community/cli-doctor': 11.3.7 - '@react-native-community/cli-hermes': 11.3.7 - '@react-native-community/cli-plugin-metro': 11.3.7(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3) - '@react-native-community/cli-server-api': 11.3.7(bufferutil@4.0.8)(utf-8-validate@6.0.3) - '@react-native-community/cli-tools': 11.3.7 - '@react-native-community/cli-types': 11.3.7 + '@react-native-community/cli-clean': 11.3.10 + '@react-native-community/cli-config': 11.3.10 + '@react-native-community/cli-debugger-ui': 11.3.10 + '@react-native-community/cli-doctor': 11.3.10 + '@react-native-community/cli-hermes': 11.3.10 + '@react-native-community/cli-plugin-metro': 11.3.10(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@react-native-community/cli-server-api': 11.3.10(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@react-native-community/cli-tools': 11.3.10 + '@react-native-community/cli-types': 11.3.10 chalk: 4.1.2 commander: 9.5.0 execa: 5.1.1 @@ -2658,15 +3383,21 @@ packages: dev: false /@react-native/assets-registry@0.72.0: - resolution: {integrity: sha512-Im93xRJuHHxb1wniGhBMsxLwcfzdYreSZVQGDoMJgkd6+Iky61LInGEHnQCTN0fKNYF1Dvcofb4uMmE1RQHXHQ==} + resolution: + { + integrity: sha512-Im93xRJuHHxb1wniGhBMsxLwcfzdYreSZVQGDoMJgkd6+Iky61LInGEHnQCTN0fKNYF1Dvcofb4uMmE1RQHXHQ==, + } dev: false /@react-native/codegen@0.72.7(@babel/preset-env@7.23.3): - resolution: {integrity: sha512-O7xNcGeXGbY+VoqBGNlZ3O05gxfATlwE1Q1qQf5E38dK+tXn5BY4u0jaQ9DPjfE8pBba8g/BYI1N44lynidMtg==} + resolution: + { + integrity: sha512-O7xNcGeXGbY+VoqBGNlZ3O05gxfATlwE1Q1qQf5E38dK+tXn5BY4u0jaQ9DPjfE8pBba8g/BYI1N44lynidMtg==, + } peerDependencies: '@babel/preset-env': ^7.1.6 dependencies: - '@babel/parser': 7.23.3 + '@babel/parser': 7.23.4 '@babel/preset-env': 7.23.3(@babel/core@7.23.3) flow-parser: 0.206.0 jscodeshift: 0.14.0(@babel/preset-env@7.23.3) @@ -2676,29 +3407,44 @@ packages: dev: false /@react-native/gradle-plugin@0.72.11: - resolution: {integrity: sha512-P9iRnxiR2w7EHcZ0mJ+fmbPzMby77ZzV6y9sJI3lVLJzF7TLSdbwcQyD3lwMsiL+q5lKUHoZJS4sYmih+P2HXw==} + resolution: + { + integrity: sha512-P9iRnxiR2w7EHcZ0mJ+fmbPzMby77ZzV6y9sJI3lVLJzF7TLSdbwcQyD3lwMsiL+q5lKUHoZJS4sYmih+P2HXw==, + } dev: false /@react-native/js-polyfills@0.72.1: - resolution: {integrity: sha512-cRPZh2rBswFnGt5X5EUEPs0r+pAsXxYsifv/fgy9ZLQokuT52bPH+9xjDR+7TafRua5CttGW83wP4TntRcWNDA==} + resolution: + { + integrity: sha512-cRPZh2rBswFnGt5X5EUEPs0r+pAsXxYsifv/fgy9ZLQokuT52bPH+9xjDR+7TafRua5CttGW83wP4TntRcWNDA==, + } dev: false /@react-native/normalize-colors@0.72.0: - resolution: {integrity: sha512-285lfdqSXaqKuBbbtP9qL2tDrfxdOFtIMvkKadtleRQkdOxx+uzGvFr82KHmc/sSiMtfXGp7JnFYWVh4sFl7Yw==} + resolution: + { + integrity: sha512-285lfdqSXaqKuBbbtP9qL2tDrfxdOFtIMvkKadtleRQkdOxx+uzGvFr82KHmc/sSiMtfXGp7JnFYWVh4sFl7Yw==, + } dev: false - /@react-native/virtualized-lists@0.72.8(react-native@0.72.6): - resolution: {integrity: sha512-J3Q4Bkuo99k7mu+jPS9gSUSgq+lLRSI/+ahXNwV92XgJ/8UgOTxu2LPwhJnBk/sQKxq7E8WkZBnBiozukQMqrw==} + /@react-native/virtualized-lists@0.72.8(react-native@0.72.7): + resolution: + { + integrity: sha512-J3Q4Bkuo99k7mu+jPS9gSUSgq+lLRSI/+ahXNwV92XgJ/8UgOTxu2LPwhJnBk/sQKxq7E8WkZBnBiozukQMqrw==, + } peerDependencies: react-native: '*' dependencies: invariant: 2.2.4 nullthrows: 1.1.1 - react-native: 0.72.6(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3) + react-native: 0.72.7(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3) dev: false /@react-spring/animated@9.7.3(react@18.2.0): - resolution: {integrity: sha512-5CWeNJt9pNgyvuSzQH+uy2pvTg8Y4/OisoscZIR8/ZNLIOI+CatFBhGZpDGTF/OzdNFsAoGk3wiUYTwoJ0YIvw==} + resolution: + { + integrity: sha512-5CWeNJt9pNgyvuSzQH+uy2pvTg8Y4/OisoscZIR8/ZNLIOI+CatFBhGZpDGTF/OzdNFsAoGk3wiUYTwoJ0YIvw==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -2708,7 +3454,10 @@ packages: dev: false /@react-spring/core@9.7.3(react@18.2.0): - resolution: {integrity: sha512-IqFdPVf3ZOC1Cx7+M0cXf4odNLxDC+n7IN3MDcVCTIOSBfqEcBebSv+vlY5AhM0zw05PDbjKrNmBpzv/AqpjnQ==} + resolution: + { + integrity: sha512-IqFdPVf3ZOC1Cx7+M0cXf4odNLxDC+n7IN3MDcVCTIOSBfqEcBebSv+vlY5AhM0zw05PDbjKrNmBpzv/AqpjnQ==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -2719,7 +3468,10 @@ packages: dev: false /@react-spring/konva@9.7.3(konva@9.2.3)(react-konva@18.2.10)(react@18.2.0): - resolution: {integrity: sha512-R9sY6SiPGYqz1383P5qppg5z57YfChVknOC1UxxaGxpw+WiZa8fZ4zmZobslrw+os3/+HAXZv8O+EvU/nQpf7g==} + resolution: + { + integrity: sha512-R9sY6SiPGYqz1383P5qppg5z57YfChVknOC1UxxaGxpw+WiZa8fZ4zmZobslrw+os3/+HAXZv8O+EvU/nQpf7g==, + } peerDependencies: konva: '>=2.6' react: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -2734,8 +3486,11 @@ packages: react-konva: 18.2.10(konva@9.2.3)(react-dom@18.2.0)(react@18.2.0) dev: false - /@react-spring/native@9.7.3(react-native@0.72.6)(react@18.2.0): - resolution: {integrity: sha512-4mpxX3FuEBCUT6ae2fjhxcJW6bhr2FBwFf274eXB7n+U30Gdg8Wo2qYwcUnmiAA0S3dvP8vLTazx3+CYWFShnA==} + /@react-spring/native@9.7.3(react-native@0.72.7)(react@18.2.0): + resolution: + { + integrity: sha512-4mpxX3FuEBCUT6ae2fjhxcJW6bhr2FBwFf274eXB7n+U30Gdg8Wo2qYwcUnmiAA0S3dvP8vLTazx3+CYWFShnA==, + } peerDependencies: react: ^16.8.0 || >=17.0.0 || >=18.0.0 react-native: '>=0.58' @@ -2745,11 +3500,14 @@ packages: '@react-spring/shared': 9.7.3(react@18.2.0) '@react-spring/types': 9.7.3 react: 18.2.0 - react-native: 0.72.6(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3) + react-native: 0.72.7(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3) dev: false /@react-spring/shared@9.7.3(react@18.2.0): - resolution: {integrity: sha512-NEopD+9S5xYyQ0pGtioacLhL2luflh6HACSSDUZOwLHoxA5eku1UPuqcJqjwSD6luKjjLfiLOspxo43FUHKKSA==} + resolution: + { + integrity: sha512-NEopD+9S5xYyQ0pGtioacLhL2luflh6HACSSDUZOwLHoxA5eku1UPuqcJqjwSD6luKjjLfiLOspxo43FUHKKSA==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -2757,8 +3515,11 @@ packages: react: 18.2.0 dev: false - /@react-spring/three@9.7.3(@react-three/fiber@8.15.10)(react@18.2.0)(three@0.158.0): - resolution: {integrity: sha512-Q1p512CqUlmMK8UMBF/Rj79qndhOWq4XUTayxMP9S892jiXzWQuj+xC3Xvm59DP/D4JXusXpxxqfgoH+hmOktA==} + /@react-spring/three@9.7.3(@react-three/fiber@8.15.11)(react@18.2.0)(three@0.158.0): + resolution: + { + integrity: sha512-Q1p512CqUlmMK8UMBF/Rj79qndhOWq4XUTayxMP9S892jiXzWQuj+xC3Xvm59DP/D4JXusXpxxqfgoH+hmOktA==, + } peerDependencies: '@react-three/fiber': '>=6.0' react: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -2768,17 +3529,23 @@ packages: '@react-spring/core': 9.7.3(react@18.2.0) '@react-spring/shared': 9.7.3(react@18.2.0) '@react-spring/types': 9.7.3 - '@react-three/fiber': 8.15.10(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0)(three@0.158.0) + '@react-three/fiber': 8.15.11(react-dom@18.2.0)(react-native@0.72.7)(react@18.2.0)(three@0.158.0) react: 18.2.0 three: 0.158.0 dev: false /@react-spring/types@9.7.3: - resolution: {integrity: sha512-Kpx/fQ/ZFX31OtlqVEFfgaD1ACzul4NksrvIgYfIFq9JpDHFwQkMVZ10tbo0FU/grje4rcL4EIrjekl3kYwgWw==} + resolution: + { + integrity: sha512-Kpx/fQ/ZFX31OtlqVEFfgaD1ACzul4NksrvIgYfIFq9JpDHFwQkMVZ10tbo0FU/grje4rcL4EIrjekl3kYwgWw==, + } dev: false /@react-spring/web@9.7.3(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-BXt6BpS9aJL/QdVqEIX9YoUy8CE6TJrU0mNCqSoxdXlIeNcEBWOfIyE6B14ENNsyQKS3wOWkiJfco0tCr/9tUg==} + resolution: + { + integrity: sha512-BXt6BpS9aJL/QdVqEIX9YoUy8CE6TJrU0mNCqSoxdXlIeNcEBWOfIyE6B14ENNsyQKS3wOWkiJfco0tCr/9tUg==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -2792,7 +3559,10 @@ packages: dev: false /@react-spring/zdog@9.7.3(react-dom@18.2.0)(react-zdog@1.2.2)(react@18.2.0)(zdog@1.1.3): - resolution: {integrity: sha512-L+yK/1PvNi9n8cldiJ309k4LdxcPkeWE0W18l1zrP1IBIyd5NB5EPA8DMsGr9gtNnnIujtEzZk+4JIOjT8u/tw==} + resolution: + { + integrity: sha512-L+yK/1PvNi9n8cldiJ309k4LdxcPkeWE0W18l1zrP1IBIyd5NB5EPA8DMsGr9gtNnnIujtEzZk+4JIOjT8u/tw==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -2809,8 +3579,11 @@ packages: zdog: 1.1.3 dev: false - /@react-three/fiber@8.15.10(react-dom@18.2.0)(react-native@0.72.6)(react@18.2.0)(three@0.158.0): - resolution: {integrity: sha512-mFTq3OvZfMh0+n6ttM9JidOF1U+e5KcBARqQHDlBdz+IadekQ6fY421wEnCyZ3vDqAE2CohWTSUdXeytSZxXwg==} + /@react-three/fiber@8.15.11(react-dom@18.2.0)(react-native@0.72.7)(react@18.2.0)(three@0.158.0): + resolution: + { + integrity: sha512-jOJjrjVMBJQwIK6Uirc3bErUCTiclbS2alJG1eU8pV1jIwDZwPwcfHzSi2TautxoA4ddMt5DmlpatK4rIqM4jA==, + } peerDependencies: expo: '>=43.0' expo-asset: '>=8.4' @@ -2834,15 +3607,15 @@ packages: react-native: optional: true dependencies: - '@babel/runtime': 7.23.2 + '@babel/runtime': 7.23.4 '@types/react-reconciler': 0.26.7 - '@types/webxr': 0.5.8 + '@types/webxr': 0.5.9 base64-js: 1.5.1 buffer: 6.0.3 its-fine: 1.1.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-native: 0.72.6(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3) + react-native: 0.72.7(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3) react-reconciler: 0.27.0(react@18.2.0) react-use-measure: 2.1.1(react-dom@18.2.0)(react@18.2.0) scheduler: 0.21.0 @@ -2852,15 +3625,24 @@ packages: dev: false /@rushstack/eslint-patch@1.5.1: - resolution: {integrity: sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==} + resolution: + { + integrity: sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==, + } dev: false /@scure/base@1.1.3: - resolution: {integrity: sha512-/+SgoRjLq7Xlf0CWuLHq2LUZeL/w65kfzAPG5NH9pcmBhs+nunQTn4gvdwgMTIXnt9b2C/1SeL2XiysZEyIC9Q==} + resolution: + { + integrity: sha512-/+SgoRjLq7Xlf0CWuLHq2LUZeL/w65kfzAPG5NH9pcmBhs+nunQTn4gvdwgMTIXnt9b2C/1SeL2XiysZEyIC9Q==, + } dev: false /@scure/bip32@1.3.1: - resolution: {integrity: sha512-osvveYtyzdEVbt3OfwwXFr4P2iVBL5u1Q3q4ONBfDY/UpOuXmOlbgwc1xECEboY8wIays8Yt6onaWMUdUbfl0A==} + resolution: + { + integrity: sha512-osvveYtyzdEVbt3OfwwXFr4P2iVBL5u1Q3q4ONBfDY/UpOuXmOlbgwc1xECEboY8wIays8Yt6onaWMUdUbfl0A==, + } dependencies: '@noble/curves': 1.1.0 '@noble/hashes': 1.3.1 @@ -2868,220 +3650,349 @@ packages: dev: false /@scure/bip39@1.2.1: - resolution: {integrity: sha512-Z3/Fsz1yr904dduJD0NpiyRHhRYHdcnyh73FZWiV+/qhWi83wNJ3NWolYqCEN+ZWsUz2TWwajJggcRE9r1zUYg==} + resolution: + { + integrity: sha512-Z3/Fsz1yr904dduJD0NpiyRHhRYHdcnyh73FZWiV+/qhWi83wNJ3NWolYqCEN+ZWsUz2TWwajJggcRE9r1zUYg==, + } dependencies: '@noble/hashes': 1.3.1 '@scure/base': 1.1.3 dev: false /@sideway/address@4.1.4: - resolution: {integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==} + resolution: + { + integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==, + } dependencies: '@hapi/hoek': 9.3.0 dev: false /@sideway/formula@3.0.1: - resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} + resolution: + { + integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==, + } dev: false /@sideway/pinpoint@2.0.0: - resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} + resolution: + { + integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==, + } dev: false /@sinclair/typebox@0.27.8: - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + resolution: + { + integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==, + } /@sinonjs/commons@3.0.0: - resolution: {integrity: sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==} + resolution: + { + integrity: sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==, + } dependencies: type-detect: 4.0.8 /@sinonjs/fake-timers@10.3.0: - resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} + resolution: + { + integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==, + } dependencies: '@sinonjs/commons': 3.0.0 /@swc/helpers@0.5.2: - resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} + resolution: + { + integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==, + } dependencies: tslib: 2.6.2 dev: false - /@types/babel__core@7.20.4: - resolution: {integrity: sha512-mLnSC22IC4vcWiuObSRjrLd9XcBTGf59vUSoq2jkQDJ/QQ8PMI9rSuzE+aEV8karUMbskw07bKYoUJCKTUaygg==} + /@types/babel__core@7.20.5: + resolution: + { + integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==, + } dependencies: - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 + '@babel/parser': 7.23.4 + '@babel/types': 7.23.4 '@types/babel__generator': 7.6.7 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.4 /@types/babel__generator@7.6.7: - resolution: {integrity: sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==} + resolution: + { + integrity: sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==, + } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 /@types/babel__template@7.4.4: - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + resolution: + { + integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==, + } dependencies: - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 + '@babel/parser': 7.23.4 + '@babel/types': 7.23.4 /@types/babel__traverse@7.20.4: - resolution: {integrity: sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==} + resolution: + { + integrity: sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==, + } dependencies: - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 /@types/debug@4.1.12: - resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + resolution: + { + integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==, + } dependencies: '@types/ms': 0.7.34 dev: false /@types/eslint-scope@3.7.7: - resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} + resolution: + { + integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==, + } dependencies: '@types/eslint': 8.44.7 '@types/estree': 1.0.5 dev: false /@types/eslint@8.44.7: - resolution: {integrity: sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==} + resolution: + { + integrity: sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==, + } dependencies: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 dev: false /@types/estree@1.0.5: - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + resolution: + { + integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==, + } dev: false /@types/file-saver@2.0.7: - resolution: {integrity: sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A==} + resolution: + { + integrity: sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A==, + } dev: false /@types/graceful-fs@4.1.9: - resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==} + resolution: + { + integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==, + } dependencies: '@types/node': 20.4.5 /@types/istanbul-lib-coverage@2.0.6: - resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + resolution: + { + integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==, + } /@types/istanbul-lib-report@3.0.3: - resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==} + resolution: + { + integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==, + } dependencies: '@types/istanbul-lib-coverage': 2.0.6 /@types/istanbul-reports@3.0.4: - resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} + resolution: + { + integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==, + } dependencies: '@types/istanbul-lib-report': 3.0.3 - /@types/jest@29.5.8: - resolution: {integrity: sha512-fXEFTxMV2Co8ZF5aYFJv+YeA08RTYJfhtN5c9JSv/mFEMe+xxjufCb+PHL+bJcMs/ebPUsBu+UNTEz+ydXrR6g==} + /@types/jest@29.5.9: + resolution: + { + integrity: sha512-zJeWhqBwVoPm83sP8h1/SVntwWTu5lZbKQGCvBjxQOyEWnKnsaomt2y7SlV4KfwlrHAHHAn00Sh4IAWaIsGOgQ==, + } dependencies: expect: 29.7.0 pretty-format: 29.7.0 dev: true /@types/json-bigint@1.0.4: - resolution: {integrity: sha512-ydHooXLbOmxBbubnA7Eh+RpBzuaIiQjh8WGJYQB50JFGFrdxW7JzVlyEV7fAXw0T2sqJ1ysTneJbiyNLqZRAag==} + resolution: + { + integrity: sha512-ydHooXLbOmxBbubnA7Eh+RpBzuaIiQjh8WGJYQB50JFGFrdxW7JzVlyEV7fAXw0T2sqJ1ysTneJbiyNLqZRAag==, + } dev: false /@types/json-schema@7.0.15: - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + resolution: + { + integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==, + } /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + resolution: + { + integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==, + } dev: false /@types/ms@0.7.34: - resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + resolution: + { + integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==, + } dev: false /@types/node@18.15.13: - resolution: {integrity: sha512-N+0kuo9KgrUQ1Sn/ifDXsvg0TTleP7rIy4zOBGECxAljqvqfqpTfzx0Q1NUedOixRMBfe2Whhb056a42cWs26Q==} + resolution: + { + integrity: sha512-N+0kuo9KgrUQ1Sn/ifDXsvg0TTleP7rIy4zOBGECxAljqvqfqpTfzx0Q1NUedOixRMBfe2Whhb056a42cWs26Q==, + } dev: false /@types/node@20.4.5: - resolution: {integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==} + resolution: + { + integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==, + } - /@types/prop-types@15.7.10: - resolution: {integrity: sha512-mxSnDQxPqsZxmeShFH+uwQ4kO4gcJcGahjjMFeLbKE95IAZiiZyiEepGZjtXJ7hN/yfu0bu9xN2ajcU0JcxX6A==} + /@types/prop-types@15.7.11: + resolution: + { + integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==, + } dev: false /@types/react-dom@18.2.7: - resolution: {integrity: sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==} + resolution: + { + integrity: sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==, + } dependencies: '@types/react': 18.2.18 dev: false /@types/react-reconciler@0.26.7: - resolution: {integrity: sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==} + resolution: + { + integrity: sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==, + } dependencies: '@types/react': 18.2.18 dev: false /@types/react-reconciler@0.28.8: - resolution: {integrity: sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==} + resolution: + { + integrity: sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==, + } dependencies: '@types/react': 18.2.18 dev: false /@types/react@18.2.18: - resolution: {integrity: sha512-da4NTSeBv/P34xoZPhtcLkmZuJ+oYaCxHmyHzwaDQo9RQPBeXV+06gEk2FpqEcsX9XrnNLvRpVh6bdavDSjtiQ==} + resolution: + { + integrity: sha512-da4NTSeBv/P34xoZPhtcLkmZuJ+oYaCxHmyHzwaDQo9RQPBeXV+06gEk2FpqEcsX9XrnNLvRpVh6bdavDSjtiQ==, + } dependencies: - '@types/prop-types': 15.7.10 - '@types/scheduler': 0.16.6 + '@types/prop-types': 15.7.11 + '@types/scheduler': 0.16.7 csstype: 3.1.2 dev: false /@types/readable-stream@2.3.15: - resolution: {integrity: sha512-oM5JSKQCcICF1wvGgmecmHldZ48OZamtMxcGGVICOJA8o8cahXC1zEVAif8iwoc5j8etxFaRFnf095+CDsuoFQ==} + resolution: + { + integrity: sha512-oM5JSKQCcICF1wvGgmecmHldZ48OZamtMxcGGVICOJA8o8cahXC1zEVAif8iwoc5j8etxFaRFnf095+CDsuoFQ==, + } dependencies: '@types/node': 20.4.5 safe-buffer: 5.1.2 dev: false - /@types/scheduler@0.16.6: - resolution: {integrity: sha512-Vlktnchmkylvc9SnwwwozTv04L/e1NykF5vgoQ0XTmI8DD+wxfjQuHuvHS3p0r2jz2x2ghPs2h1FVeDirIteWA==} + /@types/scheduler@0.16.7: + resolution: + { + integrity: sha512-8g25Nl3AuB1KulTlSUsUhUo/oBgBU6XIXQ+XURpeioEbEJvkO7qI4vDfREv3vJYHHzqXjcAHvoJy4pTtSQNZtA==, + } dev: false - /@types/semver@7.5.5: - resolution: {integrity: sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg==} + /@types/semver@7.5.6: + resolution: + { + integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==, + } dev: true /@types/stack-utils@2.0.3: - resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} + resolution: + { + integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==, + } - /@types/webxr@0.5.8: - resolution: {integrity: sha512-9vRpV4nMzuZIdJiu/nHUk1AQV0cguaBI32DIauJXBxpvG3wiXk3VD+kQKx111V7I/YvAoGyJZTyhaWODYEbZ0w==} + /@types/webxr@0.5.9: + resolution: + { + integrity: sha512-Oe31JXBe25ptNQeoOBqYAN8Em1AXm/WJxh4GgNFEMAv9yoa/xyMAyBw1YY6OgksNBPHJAWmRlsbSgxsLiAWM3Q==, + } dev: false /@types/yargs-parser@21.0.3: - resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} + resolution: + { + integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==, + } - /@types/yargs@15.0.18: - resolution: {integrity: sha512-DDi2KmvAnNsT/EvU8jp1UR7pOJojBtJ3GLZ/uw1MUq4VbbESppPWoHUY4h0OB4BbEbGJiyEsmUcuZDZtoR+ZwQ==} + /@types/yargs@15.0.19: + resolution: + { + integrity: sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==, + } dependencies: '@types/yargs-parser': 21.0.3 dev: false - /@types/yargs@16.0.8: - resolution: {integrity: sha512-1GwLEkmFafeb/HbE6pC7tFlgYSQ4Iqh2qlWCq8xN+Qfaiaxr2PcLfuhfRFRYqI6XJyeFoLYyKnhFbNsst9FMtQ==} + /@types/yargs@16.0.9: + resolution: + { + integrity: sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==, + } dependencies: '@types/yargs-parser': 21.0.3 dev: false - /@types/yargs@17.0.31: - resolution: {integrity: sha512-bocYSx4DI8TmdlvxqGpVNXOgCNR1Jj0gNPhhAY+iz1rgKDAaYrAYdFYnhDV1IFuiuVc9HkOwyDcFxaTElF3/wg==} + /@types/yargs@17.0.32: + resolution: + { + integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==, + } dependencies: '@types/yargs-parser': 21.0.3 - /@typescript-eslint/eslint-plugin@6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-uoLj4g2OTL8rfUQVx2AFO1hp/zja1wABJq77P6IclQs6I/m9GLrm7jCdgzZkvWdDCQf1uEvoa8s8CupsgWQgVg==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/eslint-plugin@6.12.0(@typescript-eslint/parser@6.12.0)(eslint@8.46.0)(typescript@5.1.6): + resolution: + { + integrity: sha512-XOpZ3IyJUIV1b15M7HVOpgQxPPF7lGXgsfcEIu3yDxFPaf/xZKt7s9QO/pbk7vpWQyVulpJbu4E5LwpZiQo4kA==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha eslint: ^7.0.0 || ^8.0.0 @@ -3091,15 +4002,15 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 6.10.0(eslint@8.46.0)(typescript@5.1.6) - '@typescript-eslint/scope-manager': 6.10.0 - '@typescript-eslint/type-utils': 6.10.0(eslint@8.46.0)(typescript@5.1.6) - '@typescript-eslint/utils': 6.10.0(eslint@8.46.0)(typescript@5.1.6) - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/parser': 6.12.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/scope-manager': 6.12.0 + '@typescript-eslint/type-utils': 6.12.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/utils': 6.12.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/visitor-keys': 6.12.0 debug: 4.3.4 eslint: 8.46.0 graphemer: 1.4.0 - ignore: 5.2.4 + ignore: 5.3.0 natural-compare: 1.4.0 semver: 7.5.4 ts-api-utils: 1.0.3(typescript@5.1.6) @@ -3109,8 +4020,11 @@ packages: dev: true /@typescript-eslint/parser@5.62.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 typescript: '*' @@ -3128,9 +4042,12 @@ packages: - supports-color dev: false - /@typescript-eslint/parser@6.10.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-+sZwIj+s+io9ozSxIWbNB5873OSdfeBEH/FR0re14WLI6BaKuSOnnwCJ2foUiu8uXf4dRp1UqHP0vrZ1zXGrog==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/parser@6.12.0(eslint@8.46.0)(typescript@5.1.6): + resolution: + { + integrity: sha512-s8/jNFPKPNRmXEnNXfuo1gemBdVmpQsK1pcu+QIvuNJuhFzGrpD7WjOcvDc/+uEdfzSYpNu7U/+MmbScjoQ6vg==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: eslint: ^7.0.0 || ^8.0.0 typescript: '*' @@ -3138,10 +4055,10 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.10.0 - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.1.6) - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/scope-manager': 6.12.0 + '@typescript-eslint/types': 6.12.0 + '@typescript-eslint/typescript-estree': 6.12.0(typescript@5.1.6) + '@typescript-eslint/visitor-keys': 6.12.0 debug: 4.3.4 eslint: 8.46.0 typescript: 5.1.6 @@ -3149,23 +4066,32 @@ packages: - supports-color /@typescript-eslint/scope-manager@5.62.0: - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 dev: false - /@typescript-eslint/scope-manager@6.10.0: - resolution: {integrity: sha512-TN/plV7dzqqC2iPNf1KrxozDgZs53Gfgg5ZHyw8erd6jd5Ta/JIEcdCheXFt9b1NYb93a1wmIIVW/2gLkombDg==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/scope-manager@6.12.0: + resolution: + { + integrity: sha512-5gUvjg+XdSj8pcetdL9eXJzQNTl3RD7LgUiYTl8Aabdi8hFkaGSYnaS6BLc0BGNaDH+tVzVwmKtWvu0jLgWVbw==, + } + engines: { node: ^16.0.0 || >=18.0.0 } dependencies: - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/types': 6.12.0 + '@typescript-eslint/visitor-keys': 6.12.0 - /@typescript-eslint/type-utils@6.10.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-wYpPs3hgTFblMYwbYWPT3eZtaDOjbLyIYuqpwuLBBqhLiuvJ+9sEp2gNRJEtR5N/c9G1uTtQQL5AhV0fEPJYcg==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/type-utils@6.12.0(eslint@8.46.0)(typescript@5.1.6): + resolution: + { + integrity: sha512-WWmRXxhm1X8Wlquj+MhsAG4dU/Blvf1xDgGaYCzfvStP2NwPQh6KBvCDbiOEvaE0filhranjIlK/2fSTVwtBng==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: eslint: ^7.0.0 || ^8.0.0 typescript: '*' @@ -3173,8 +4099,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.1.6) - '@typescript-eslint/utils': 6.10.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/typescript-estree': 6.12.0(typescript@5.1.6) + '@typescript-eslint/utils': 6.12.0(eslint@8.46.0)(typescript@5.1.6) debug: 4.3.4 eslint: 8.46.0 ts-api-utils: 1.0.3(typescript@5.1.6) @@ -3184,17 +4110,26 @@ packages: dev: true /@typescript-eslint/types@5.62.0: - resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dev: false - /@typescript-eslint/types@6.10.0: - resolution: {integrity: sha512-36Fq1PWh9dusgo3vH7qmQAj5/AZqARky1Wi6WpINxB6SkQdY5vQoT2/7rW7uBIsPDcvvGCLi4r10p0OJ7ITAeg==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/types@6.12.0: + resolution: + { + integrity: sha512-MA16p/+WxM5JG/F3RTpRIcuOghWO30//VEOvzubM8zuOOBYXsP+IfjoCXXiIfy2Ta8FRh9+IO9QLlaFQUU+10Q==, + } + engines: { node: ^16.0.0 || >=18.0.0 } /@typescript-eslint/typescript-estree@5.62.0(typescript@5.1.6): - resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } peerDependencies: typescript: '*' peerDependenciesMeta: @@ -3213,17 +4148,20 @@ packages: - supports-color dev: false - /@typescript-eslint/typescript-estree@6.10.0(typescript@5.1.6): - resolution: {integrity: sha512-ek0Eyuy6P15LJVeghbWhSrBCj/vJpPXXR+EpaRZqou7achUWL8IdYnMSC5WHAeTWswYQuP2hAZgij/bC9fanBg==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/typescript-estree@6.12.0(typescript@5.1.6): + resolution: + { + integrity: sha512-vw9E2P9+3UUWzhgjyyVczLWxZ3GuQNT7QpnIY3o5OMeLO/c8oHljGc8ZpryBMIyympiAAaKgw9e5Hl9dCWFOYw==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/types': 6.12.0 + '@typescript-eslint/visitor-keys': 6.12.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -3233,18 +4171,21 @@ packages: transitivePeerDependencies: - supports-color - /@typescript-eslint/utils@6.10.0(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-v+pJ1/RcVyRc0o4wAGux9x42RHmAjIGzPRo538Z8M1tVx6HOnoQBCX/NoadHQlZeC+QO2yr4nNSFWOoraZCAyg==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/utils@6.12.0(eslint@8.46.0)(typescript@5.1.6): + resolution: + { + integrity: sha512-LywPm8h3tGEbgfyjYnu3dauZ0U7R60m+miXgKcZS8c7QALO9uWJdvNoP+duKTk2XMWc7/Q3d/QiCuLN9X6SWyQ==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) '@types/json-schema': 7.0.15 - '@types/semver': 7.5.5 - '@typescript-eslint/scope-manager': 6.10.0 - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.1.6) + '@types/semver': 7.5.6 + '@typescript-eslint/scope-manager': 6.12.0 + '@typescript-eslint/types': 6.12.0 + '@typescript-eslint/typescript-estree': 6.12.0(typescript@5.1.6) eslint: 8.46.0 semver: 7.5.4 transitivePeerDependencies: @@ -3253,41 +4194,62 @@ packages: dev: true /@typescript-eslint/visitor-keys@5.62.0: - resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: '@typescript-eslint/types': 5.62.0 eslint-visitor-keys: 3.4.3 dev: false - /@typescript-eslint/visitor-keys@6.10.0: - resolution: {integrity: sha512-xMGluxQIEtOM7bqFCo+rCMh5fqI+ZxV5RUUOa29iVPz1OgCZrtc7rFnz5cLUazlkPKYqX+75iuDq7m0HQ48nCg==} - engines: {node: ^16.0.0 || >=18.0.0} + /@typescript-eslint/visitor-keys@6.12.0: + resolution: + { + integrity: sha512-rg3BizTZHF1k3ipn8gfrzDXXSFKyOEB5zxYXInQ6z0hUvmQlhaZQzK+YmHmNViMA9HzW5Q9+bPPt90bU6GQwyw==, + } + engines: { node: ^16.0.0 || >=18.0.0 } dependencies: - '@typescript-eslint/types': 6.10.0 + '@typescript-eslint/types': 6.12.0 eslint-visitor-keys: 3.4.3 /@webassemblyjs/ast@1.11.6: - resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==} + resolution: + { + integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==, + } dependencies: '@webassemblyjs/helper-numbers': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 dev: false /@webassemblyjs/floating-point-hex-parser@1.11.6: - resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} + resolution: + { + integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==, + } dev: false /@webassemblyjs/helper-api-error@1.11.6: - resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} + resolution: + { + integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==, + } dev: false /@webassemblyjs/helper-buffer@1.11.6: - resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} + resolution: + { + integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==, + } dev: false /@webassemblyjs/helper-numbers@1.11.6: - resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} + resolution: + { + integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==, + } dependencies: '@webassemblyjs/floating-point-hex-parser': 1.11.6 '@webassemblyjs/helper-api-error': 1.11.6 @@ -3295,11 +4257,17 @@ packages: dev: false /@webassemblyjs/helper-wasm-bytecode@1.11.6: - resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} + resolution: + { + integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==, + } dev: false /@webassemblyjs/helper-wasm-section@1.11.6: - resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} + resolution: + { + integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==, + } dependencies: '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/helper-buffer': 1.11.6 @@ -3308,23 +4276,35 @@ packages: dev: false /@webassemblyjs/ieee754@1.11.6: - resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} + resolution: + { + integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==, + } dependencies: '@xtuc/ieee754': 1.2.0 dev: false /@webassemblyjs/leb128@1.11.6: - resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} + resolution: + { + integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==, + } dependencies: '@xtuc/long': 4.2.2 dev: false /@webassemblyjs/utf8@1.11.6: - resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} + resolution: + { + integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==, + } dev: false /@webassemblyjs/wasm-edit@1.11.6: - resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} + resolution: + { + integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==, + } dependencies: '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/helper-buffer': 1.11.6 @@ -3337,7 +4317,10 @@ packages: dev: false /@webassemblyjs/wasm-gen@1.11.6: - resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} + resolution: + { + integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==, + } dependencies: '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/helper-wasm-bytecode': 1.11.6 @@ -3347,7 +4330,10 @@ packages: dev: false /@webassemblyjs/wasm-opt@1.11.6: - resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} + resolution: + { + integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==, + } dependencies: '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/helper-buffer': 1.11.6 @@ -3356,7 +4342,10 @@ packages: dev: false /@webassemblyjs/wasm-parser@1.11.6: - resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} + resolution: + { + integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==, + } dependencies: '@webassemblyjs/ast': 1.11.6 '@webassemblyjs/helper-api-error': 1.11.6 @@ -3367,37 +4356,55 @@ packages: dev: false /@webassemblyjs/wast-printer@1.11.6: - resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} + resolution: + { + integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==, + } dependencies: '@webassemblyjs/ast': 1.11.6 '@xtuc/long': 4.2.2 dev: false /@xtuc/ieee754@1.2.0: - resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} + resolution: + { + integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==, + } dev: false /@xtuc/long@4.2.2: - resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} + resolution: + { + integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==, + } dev: false /abort-controller@3.0.0: - resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} - engines: {node: '>=6.5'} + resolution: + { + integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==, + } + engines: { node: '>=6.5' } dependencies: event-target-shim: 5.0.1 dev: false /accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==, + } + engines: { node: '>= 0.6' } dependencies: mime-types: 2.1.35 negotiator: 0.6.3 dev: false /acorn-import-assertions@1.9.0(acorn@8.11.2): - resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} + resolution: + { + integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==, + } peerDependencies: acorn: ^8 dependencies: @@ -3405,23 +4412,35 @@ packages: dev: false /acorn-jsx@5.3.2(acorn@8.11.2): - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + resolution: + { + integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==, + } peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: acorn: 8.11.2 /acorn@8.11.2: - resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} - engines: {node: '>=0.4.0'} + resolution: + { + integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==, + } + engines: { node: '>=0.4.0' } hasBin: true /aes-js@4.0.0-beta.5: - resolution: {integrity: sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==} + resolution: + { + integrity: sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==, + } dev: false /ajv-formats@2.1.1(ajv@8.12.0): - resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} + resolution: + { + integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==, + } peerDependencies: ajv: ^8.0.0 peerDependenciesMeta: @@ -3432,7 +4451,10 @@ packages: dev: false /ajv-keywords@3.5.2(ajv@6.12.6): - resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} + resolution: + { + integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==, + } peerDependencies: ajv: ^6.9.1 dependencies: @@ -3440,7 +4462,10 @@ packages: dev: false /ajv-keywords@5.1.0(ajv@8.12.0): - resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==} + resolution: + { + integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==, + } peerDependencies: ajv: ^8.8.2 dependencies: @@ -3449,7 +4474,10 @@ packages: dev: false /ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + resolution: + { + integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, + } dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 @@ -3457,7 +4485,10 @@ packages: uri-js: 4.4.1 /ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} + resolution: + { + integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==, + } dependencies: fast-deep-equal: 3.1.3 json-schema-traverse: 1.0.0 @@ -3466,17 +4497,26 @@ packages: dev: false /anser@1.4.10: - resolution: {integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==} + resolution: + { + integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==, + } dev: false /ansi-escapes@4.3.2: - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, + } + engines: { node: '>=8' } dependencies: type-fest: 0.21.3 /ansi-fragments@0.2.1: - resolution: {integrity: sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==} + resolution: + { + integrity: sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==, + } dependencies: colorette: 1.4.0 slice-ansi: 2.1.0 @@ -3484,80 +4524,125 @@ packages: dev: false /ansi-regex@4.1.1: - resolution: {integrity: sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==, + } + engines: { node: '>=6' } dev: false /ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, + } + engines: { node: '>=8' } /ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, + } + engines: { node: '>=4' } dependencies: color-convert: 1.9.3 /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, + } + engines: { node: '>=8' } dependencies: color-convert: 2.0.1 /ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==, + } + engines: { node: '>=10' } /any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + resolution: + { + integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==, + } dev: false /anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, + } + engines: { node: '>= 8' } dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 /appdirsjs@1.2.7: - resolution: {integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==} + resolution: + { + integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==, + } dev: false /arg@5.0.2: - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + resolution: + { + integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==, + } dev: false /argparse@1.0.10: - resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + resolution: + { + integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==, + } dependencies: sprintf-js: 1.0.3 /argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + resolution: + { + integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, + } /aria-hidden@1.2.3: - resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==, + } + engines: { node: '>=10' } dependencies: tslib: 2.6.2 dev: false /aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + resolution: + { + integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==, + } dependencies: dequal: 2.0.3 dev: false /array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + resolution: + { + integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==, + } dependencies: call-bind: 1.0.5 is-array-buffer: 3.0.2 dev: false /array-includes@3.1.7: - resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -3567,12 +4652,18 @@ packages: dev: false /array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, + } + engines: { node: '>=8' } /array.prototype.findlastindex@1.2.3: - resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -3582,8 +4673,11 @@ packages: dev: false /array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -3592,8 +4686,11 @@ packages: dev: false /array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -3602,7 +4699,10 @@ packages: dev: false /array.prototype.tosorted@1.1.2: - resolution: {integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==} + resolution: + { + integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==, + } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -3612,8 +4712,11 @@ packages: dev: false /arraybuffer.prototype.slice@1.0.2: - resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==, + } + engines: { node: '>= 0.4' } dependencies: array-buffer-byte-length: 1.0.0 call-bind: 1.0.5 @@ -3625,52 +4728,79 @@ packages: dev: false /asap@2.0.6: - resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + resolution: + { + integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==, + } dev: false /ast-types-flow@0.0.8: - resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + resolution: + { + integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==, + } dev: false /ast-types@0.15.2: - resolution: {integrity: sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==, + } + engines: { node: '>=4' } dependencies: tslib: 2.6.2 dev: false /astral-regex@1.0.0: - resolution: {integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==, + } + engines: { node: '>=4' } dev: false /async-limiter@1.0.1: - resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} + resolution: + { + integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==, + } dev: false /async@3.2.5: - resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==} + resolution: + { + integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==, + } dev: false /asynciterator.prototype@1.0.0: - resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} + resolution: + { + integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==, + } dependencies: has-symbols: 1.0.3 dev: false /asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + resolution: + { + integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==, + } dev: false /autoprefixer@10.4.14(postcss@8.4.27): - resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==} - engines: {node: ^10 || ^12 || >=14} + resolution: + { + integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==, + } + engines: { node: ^10 || ^12 || >=14 } hasBin: true peerDependencies: postcss: ^8.1.0 dependencies: browserslist: 4.22.1 - caniuse-lite: 1.0.30001561 + caniuse-lite: 1.0.30001563 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.0 @@ -3679,17 +4809,26 @@ packages: dev: false /available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==, + } + engines: { node: '>= 0.4' } dev: false /axe-core@4.7.0: - resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==, + } + engines: { node: '>=4' } dev: false - /axios@1.6.1: - resolution: {integrity: sha512-vfBmhDpKafglh0EldBEbVuoe7DyAavGSLWhuSm5ZSEKQnHhBf0xAAwybbNH1IkrJNGnS/VG4I5yxig1pCEXE4g==} + /axios@1.6.2: + resolution: + { + integrity: sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==, + } dependencies: follow-redirects: 1.15.3 form-data: 4.0.0 @@ -3699,13 +4838,19 @@ packages: dev: false /axobject-query@3.2.1: - resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} + resolution: + { + integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==, + } dependencies: dequal: 2.0.3 dev: false /babel-core@7.0.0-bridge.0(@babel/core@7.23.3): - resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} + resolution: + { + integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==, + } peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -3713,14 +4858,17 @@ packages: dev: false /babel-jest@29.7.0(@babel/core@7.23.3): - resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } peerDependencies: '@babel/core': ^7.8.0 dependencies: '@babel/core': 7.23.3 '@jest/transform': 29.7.0 - '@types/babel__core': 7.20.4 + '@types/babel__core': 7.20.5 babel-plugin-istanbul: 6.1.1 babel-preset-jest: 29.6.3(@babel/core@7.23.3) chalk: 4.1.2 @@ -3730,8 +4878,11 @@ packages: - supports-color /babel-plugin-istanbul@6.1.1: - resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==, + } + engines: { node: '>=8' } dependencies: '@babel/helper-plugin-utils': 7.22.5 '@istanbuljs/load-nyc-config': 1.1.0 @@ -3742,16 +4893,22 @@ packages: - supports-color /babel-plugin-jest-hoist@29.6.3: - resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@babel/template': 7.22.15 - '@babel/types': 7.23.3 - '@types/babel__core': 7.20.4 + '@babel/types': 7.23.4 + '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.4 /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.3): - resolution: {integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==} + resolution: + { + integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==, + } peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: @@ -3764,19 +4921,25 @@ packages: dev: false /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.23.3): - resolution: {integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==} + resolution: + { + integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==, + } peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/core': 7.23.3 '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.3) - core-js-compat: 3.33.2 + core-js-compat: 3.33.3 transitivePeerDependencies: - supports-color dev: false /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.23.3): - resolution: {integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==} + resolution: + { + integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==, + } peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: @@ -3787,11 +4950,17 @@ packages: dev: false /babel-plugin-syntax-trailing-function-commas@7.0.0-beta.0: - resolution: {integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==} + resolution: + { + integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==, + } dev: false /babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.23.3): - resolution: {integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==} + resolution: + { + integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==, + } dependencies: '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.23.3) transitivePeerDependencies: @@ -3799,7 +4968,10 @@ packages: dev: false /babel-preset-current-node-syntax@1.0.1(@babel/core@7.23.3): - resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} + resolution: + { + integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==, + } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -3818,7 +4990,10 @@ packages: '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.3) /babel-preset-fbjs@3.4.0(@babel/core@7.23.3): - resolution: {integrity: sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow==} + resolution: + { + integrity: sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow==, + } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -3831,7 +5006,7 @@ packages: '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.3) '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-block-scoping': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-classes': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.3) @@ -3845,7 +5020,7 @@ packages: '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.3) + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.3) @@ -3853,8 +5028,11 @@ packages: dev: false /babel-preset-jest@29.6.3(@babel/core@7.23.3): - resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -3863,28 +5041,46 @@ packages: babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.3) /balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + resolution: + { + integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, + } /base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + resolution: + { + integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==, + } dev: false /bigint-crypto-utils@3.3.0: - resolution: {integrity: sha512-jOTSb+drvEDxEq6OuUybOAv/xxoh3cuYRUIPyu8sSHQNKM303UQ2R1DAo45o1AkcIXw6fzbaFI1+xGGdaXs2lg==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-jOTSb+drvEDxEq6OuUybOAv/xxoh3cuYRUIPyu8sSHQNKM303UQ2R1DAo45o1AkcIXw6fzbaFI1+xGGdaXs2lg==, + } + engines: { node: '>=14.0.0' } dev: false /bignumber.js@9.1.2: - resolution: {integrity: sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==} + resolution: + { + integrity: sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==, + } dev: false /binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, + } + engines: { node: '>=8' } dev: false /bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + resolution: + { + integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, + } dependencies: buffer: 5.7.1 inherits: 2.0.4 @@ -3892,90 +5088,135 @@ packages: dev: false /bn.js@4.12.0: - resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} + resolution: + { + integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==, + } dev: false /bn.js@5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} + resolution: + { + integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==, + } dev: false /brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + resolution: + { + integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, + } dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 /braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, + } + engines: { node: '>=8' } dependencies: fill-range: 7.0.1 /brorand@1.1.0: - resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} + resolution: + { + integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==, + } dev: false /browserslist@4.22.1: - resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + resolution: + { + integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==, + } + engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } hasBin: true dependencies: - caniuse-lite: 1.0.30001561 - electron-to-chromium: 1.4.581 + caniuse-lite: 1.0.30001563 + electron-to-chromium: 1.4.589 node-releases: 2.0.13 update-browserslist-db: 1.0.13(browserslist@4.22.1) /bs-logger@0.2.6: - resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==, + } + engines: { node: '>= 6' } dependencies: fast-json-stable-stringify: 2.1.0 dev: false /bser@2.1.1: - resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + resolution: + { + integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==, + } dependencies: node-int64: 0.4.0 /buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + resolution: + { + integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==, + } /buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + resolution: + { + integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==, + } dependencies: base64-js: 1.5.1 ieee754: 1.2.1 dev: false /buffer@6.0.3: - resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + resolution: + { + integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==, + } dependencies: base64-js: 1.5.1 ieee754: 1.2.1 dev: false /bufferutil@4.0.8: - resolution: {integrity: sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==} - engines: {node: '>=6.14.2'} + resolution: + { + integrity: sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==, + } + engines: { node: '>=6.14.2' } requiresBuild: true dependencies: - node-gyp-build: 4.6.1 + node-gyp-build: 4.7.0 dev: false /busboy@1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} + resolution: + { + integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==, + } + engines: { node: '>=10.16.0' } dependencies: streamsearch: 1.1.0 dev: false /bytes@3.0.0: - resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==, + } + engines: { node: '>= 0.8' } dev: false /call-bind@1.0.5: - resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} + resolution: + { + integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==, + } dependencies: function-bind: 1.1.2 get-intrinsic: 1.2.2 @@ -3983,66 +5224,102 @@ packages: dev: false /caller-callsite@2.0.0: - resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==, + } + engines: { node: '>=4' } dependencies: callsites: 2.0.0 dev: false /caller-path@2.0.0: - resolution: {integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==, + } + engines: { node: '>=4' } dependencies: caller-callsite: 2.0.0 dev: false /callsites@2.0.0: - resolution: {integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==, + } + engines: { node: '>=4' } dev: false /callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, + } + engines: { node: '>=6' } /camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==, + } + engines: { node: '>= 6' } dev: false /camelcase@5.3.1: - resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==, + } + engines: { node: '>=6' } /camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - - /caniuse-lite@1.0.30001561: - resolution: {integrity: sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==} + resolution: + { + integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==, + } + engines: { node: '>=10' } + + /caniuse-lite@1.0.30001563: + resolution: + { + integrity: sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==, + } /chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, + } + engines: { node: '>=4' } dependencies: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 /chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, + } + engines: { node: '>=10' } dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 /char-regex@1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==, + } + engines: { node: '>=10' } /chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} + resolution: + { + integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, + } + engines: { node: '>= 8.10.0' } dependencies: anymatch: 3.1.3 braces: 3.0.2 @@ -4056,43 +5333,70 @@ packages: dev: false /chrome-trace-event@1.0.3: - resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} - engines: {node: '>=6.0'} + resolution: + { + integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==, + } + engines: { node: '>=6.0' } dev: false /ci-info@2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} + resolution: + { + integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==, + } dev: false /ci-info@3.9.0: - resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==, + } + engines: { node: '>=8' } /cjs-module-lexer@1.2.3: - resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==} + resolution: + { + integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==, + } /classnames@2.3.2: - resolution: {integrity: sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==} + resolution: + { + integrity: sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==, + } dev: false /cli-cursor@3.1.0: - resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==, + } + engines: { node: '>=8' } dependencies: restore-cursor: 3.1.0 dev: false /cli-spinners@2.9.1: - resolution: {integrity: sha512-jHgecW0pxkonBJdrKsqxgRX9AcG+u/5k0Q7WPDfi8AogLAdwxEkyYYNWwZ5GvVFoFx2uiY1eNcSK00fh+1+FyQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-jHgecW0pxkonBJdrKsqxgRX9AcG+u/5k0Q7WPDfi8AogLAdwxEkyYYNWwZ5GvVFoFx2uiY1eNcSK00fh+1+FyQ==, + } + engines: { node: '>=6' } dev: false /client-only@0.0.1: - resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + resolution: + { + integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==, + } dev: false /cliui@6.0.0: - resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} + resolution: + { + integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==, + } dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 @@ -4100,16 +5404,22 @@ packages: dev: false /cliui@8.0.1: - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==, + } + engines: { node: '>=12' } dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 7.0.0 /clone-deep@4.0.1: - resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==, + } + engines: { node: '>=6' } dependencies: is-plain-object: 2.0.4 kind-of: 6.0.3 @@ -4117,86 +5427,140 @@ packages: dev: false /clone@1.0.4: - resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} - engines: {node: '>=0.8'} + resolution: + { + integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==, + } + engines: { node: '>=0.8' } dev: false /co@4.6.0: - resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} - engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + resolution: + { + integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==, + } + engines: { iojs: '>= 1.0.0', node: '>= 0.12.0' } /collect-v8-coverage@1.0.2: - resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==} + resolution: + { + integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==, + } /color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + resolution: + { + integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, + } dependencies: color-name: 1.1.3 /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} + resolution: + { + integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, + } + engines: { node: '>=7.0.0' } dependencies: color-name: 1.1.4 /color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + resolution: + { + integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, + } /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + resolution: + { + integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, + } /colorette@1.4.0: - resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + resolution: + { + integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==, + } dev: false /combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, + } + engines: { node: '>= 0.8' } dependencies: delayed-stream: 1.0.0 dev: false /command-exists@1.2.9: - resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + resolution: + { + integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==, + } dev: false /commander@2.13.0: - resolution: {integrity: sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==} + resolution: + { + integrity: sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==, + } dev: false /commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + resolution: + { + integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==, + } dev: false /commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==, + } + engines: { node: '>= 6' } dev: false /commander@8.3.0: - resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} - engines: {node: '>= 12'} + resolution: + { + integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==, + } + engines: { node: '>= 12' } dev: false /commander@9.5.0: - resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} - engines: {node: ^12.20.0 || >=14} + resolution: + { + integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==, + } + engines: { node: ^12.20.0 || >=14 } dev: false /commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} + resolution: + { + integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==, + } dev: false /compressible@2.0.18: - resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==, + } + engines: { node: '>= 0.6' } dependencies: mime-db: 1.52.0 dev: false /compression@1.7.4: - resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==, + } + engines: { node: '>= 0.8.0' } dependencies: accepts: 1.3.8 bytes: 3.0.0 @@ -4210,11 +5574,17 @@ packages: dev: false /concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + resolution: + { + integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, + } /connect@3.7.0: - resolution: {integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==} - engines: {node: '>= 0.10.0'} + resolution: + { + integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==, + } + engines: { node: '>= 0.10.0' } dependencies: debug: 2.6.9 finalhandler: 1.1.2 @@ -4225,11 +5595,17 @@ packages: dev: false /convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + resolution: + { + integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==, + } /copy-webpack-plugin@11.0.0(webpack@5.89.0): - resolution: {integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==} - engines: {node: '>= 14.15.0'} + resolution: + { + integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==, + } + engines: { node: '>= 14.15.0' } peerDependencies: webpack: ^5.1.0 dependencies: @@ -4242,19 +5618,28 @@ packages: webpack: 5.89.0 dev: false - /core-js-compat@3.33.2: - resolution: {integrity: sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw==} + /core-js-compat@3.33.3: + resolution: + { + integrity: sha512-cNzGqFsh3Ot+529GIXacjTJ7kegdt5fPXxCBVS1G0iaZpuo/tBz399ymceLJveQhFFZ8qThHiP3fzuoQjKN2ow==, + } dependencies: browserslist: 4.22.1 dev: false /core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + resolution: + { + integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==, + } dev: false /cosmiconfig@5.2.1: - resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==, + } + engines: { node: '>=4' } dependencies: import-fresh: 2.0.0 is-directory: 0.3.1 @@ -4263,8 +5648,11 @@ packages: dev: false /crc@4.3.2: - resolution: {integrity: sha512-uGDHf4KLLh2zsHa8D8hIQ1H/HtFQhyHrc0uhHBcoKGol/Xnb+MPYfUMw7cvON6ze/GUESTudKayDcJC5HnJv1A==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-uGDHf4KLLh2zsHa8D8hIQ1H/HtFQhyHrc0uhHBcoKGol/Xnb+MPYfUMw7cvON6ze/GUESTudKayDcJC5HnJv1A==, + } + engines: { node: '>=12' } peerDependencies: buffer: '>=6.0.3' peerDependenciesMeta: @@ -4273,8 +5661,11 @@ packages: dev: false /create-jest@29.7.0(@types/node@20.4.5): - resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } hasBin: true dependencies: '@jest/types': 29.6.3 @@ -4291,37 +5682,58 @@ packages: - ts-node /cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, + } + engines: { node: '>= 8' } dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 /cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==, + } + engines: { node: '>=4' } hasBin: true dev: false /csstype@3.1.2: - resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} + resolution: + { + integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==, + } dev: false /damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + resolution: + { + integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==, + } dev: false /dayjs@1.11.10: - resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} + resolution: + { + integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==, + } dev: false /debounce@1.2.1: - resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==} + resolution: + { + integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==, + } dev: false /debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} + resolution: + { + integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==, + } peerDependencies: supports-color: '*' peerDependenciesMeta: @@ -4332,7 +5744,10 @@ packages: dev: false /debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + resolution: + { + integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==, + } peerDependencies: supports-color: '*' peerDependenciesMeta: @@ -4343,8 +5758,11 @@ packages: dev: false /debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} + resolution: + { + integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, + } + engines: { node: '>=6.0' } peerDependencies: supports-color: '*' peerDependenciesMeta: @@ -4354,12 +5772,18 @@ packages: ms: 2.1.2 /decamelize@1.2.0: - resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==, + } + engines: { node: '>=0.10.0' } dev: false /dedent@1.5.1: - resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==} + resolution: + { + integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==, + } peerDependencies: babel-plugin-macros: ^3.1.0 peerDependenciesMeta: @@ -4367,21 +5791,33 @@ packages: optional: true /deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + resolution: + { + integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, + } /deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==, + } + engines: { node: '>=0.10.0' } /defaults@1.0.4: - resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + resolution: + { + integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==, + } dependencies: clone: 1.0.4 dev: false /define-data-property@1.1.1: - resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==, + } + engines: { node: '>= 0.4' } dependencies: get-intrinsic: 1.2.2 gopd: 1.0.1 @@ -4389,8 +5825,11 @@ packages: dev: false /define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==, + } + engines: { node: '>= 0.4' } dependencies: define-data-property: 1.1.1 has-property-descriptors: 1.0.1 @@ -4398,21 +5837,33 @@ packages: dev: false /delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} + resolution: + { + integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==, + } + engines: { node: '>=0.4.0' } dev: false /denodeify@1.2.1: - resolution: {integrity: sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==} + resolution: + { + integrity: sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==, + } dev: false /depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==, + } + engines: { node: '>= 0.8' } dev: false - /deprecated-react-native-prop-types@4.1.0: - resolution: {integrity: sha512-WfepZHmRbbdTvhcolb8aOKEvQdcmTMn5tKLbqbXmkBvjFjRVWAYqsXk/DBsV8TZxws8SdGHLuHaJrHSQUPRdfw==} + /deprecated-react-native-prop-types@4.2.3: + resolution: + { + integrity: sha512-2rLTiMKidIFFYpIVM69UnQKngLqQfL6I11Ch8wGSBftS18FUXda+o2we2950X+1dmbgps28niI3qwyH4eX3Z1g==, + } dependencies: '@react-native/normalize-colors': 0.72.0 invariant: 2.2.4 @@ -4420,63 +5871,102 @@ packages: dev: false /dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} + 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} + resolution: + { + integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==, + } + engines: { node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16 } dev: false /detect-newline@3.1.0: - resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==, + } + engines: { node: '>=8' } /didyoumean@1.2.2: - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + resolution: + { + integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==, + } dev: false /diff-sequences@29.6.3: - resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } /dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, + } + engines: { node: '>=8' } dependencies: path-type: 4.0.0 /dlv@1.1.3: - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + resolution: + { + integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==, + } dev: false /doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==, + } + engines: { node: '>=0.10.0' } dependencies: esutils: 2.0.3 dev: false /doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==, + } + engines: { node: '>=6.0.0' } dependencies: esutils: 2.0.3 /easy-bem@1.1.1: - resolution: {integrity: sha512-GJRqdiy2h+EXy6a8E6R+ubmqUM08BK0FWNq41k24fup6045biQ8NXxoXimiwegMQvFFV3t1emADdGNL1TlS61A==} + resolution: + { + integrity: sha512-GJRqdiy2h+EXy6a8E6R+ubmqUM08BK0FWNq41k24fup6045biQ8NXxoXimiwegMQvFFV3t1emADdGNL1TlS61A==, + } dev: false /ee-first@1.1.1: - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + resolution: + { + integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==, + } dev: false - /electron-to-chromium@1.4.581: - resolution: {integrity: sha512-6uhqWBIapTJUxgPTCHH9sqdbxIMPt7oXl0VcAL1kOtlU6aECdcMncCrX5Z7sHQ/invtrC9jUQUef7+HhO8vVFw==} + /electron-to-chromium@1.4.589: + resolution: + { + integrity: sha512-zF6y5v/YfoFIgwf2dDfAqVlPPsyQeWNpEWXbAlDUS8Ax4Z2VoiiZpAPC0Jm9hXEkJm2vIZpwB6rc4KnLTQffbQ==, + } /elliptic@6.5.4: - resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} + resolution: + { + integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==, + } dependencies: bn.js: 4.12.0 brorand: 1.1.0 @@ -4488,62 +5978,95 @@ packages: dev: false /emittery@0.13.1: - resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==, + } + engines: { node: '>=12' } /emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + resolution: + { + integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, + } /emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + resolution: + { + integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==, + } dev: false /encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==, + } + engines: { node: '>= 0.8' } dev: false /enhanced-resolve@5.15.0: - resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==} - engines: {node: '>=10.13.0'} + resolution: + { + integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==, + } + engines: { node: '>=10.13.0' } dependencies: graceful-fs: 4.2.11 tapable: 2.2.1 dev: false /env@0.0.2: - resolution: {integrity: sha512-yP8LfjO4ughSHD/3HgLPinWzexmaOGvRfs2TFx0SZhOm7j1xPi9evjuGcLiNVHIGLmcsgMak4eDbBzlYqGIVxw==} - engines: {node: '>= 0.5.9'} + resolution: + { + integrity: sha512-yP8LfjO4ughSHD/3HgLPinWzexmaOGvRfs2TFx0SZhOm7j1xPi9evjuGcLiNVHIGLmcsgMak4eDbBzlYqGIVxw==, + } + engines: { node: '>= 0.5.9' } dev: false /envinfo@7.11.0: - resolution: {integrity: sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg==, + } + engines: { node: '>=4' } hasBin: true dev: false /error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + resolution: + { + integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==, + } dependencies: is-arrayish: 0.2.1 /error-stack-parser@2.1.4: - resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + resolution: + { + integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==, + } dependencies: stackframe: 1.3.4 dev: false /errorhandler@1.5.1: - resolution: {integrity: sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==, + } + engines: { node: '>= 0.8' } dependencies: accepts: 1.3.8 escape-html: 1.0.3 dev: false /es-abstract@1.22.3: - resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==, + } + engines: { node: '>= 0.4' } dependencies: array-buffer-byte-length: 1.0.0 arraybuffer.prototype.slice: 1.0.2 @@ -4587,7 +6110,10 @@ packages: dev: false /es-iterator-helpers@1.0.15: - resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} + resolution: + { + integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==, + } dependencies: asynciterator.prototype: 1.0.0 call-bind: 1.0.5 @@ -4605,13 +6131,19 @@ packages: safe-array-concat: 1.0.1 dev: false - /es-module-lexer@1.4.0: - resolution: {integrity: sha512-lcCr3v3OLezdfFyx9r5NRYHOUTQNnFEQ9E87Mx8Kc+iqyJNkO7MJoB4GQRTlIMw9kLLTwGw0OAkm4BQQud/d9g==} + /es-module-lexer@1.4.1: + resolution: + { + integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==, + } dev: false /es-set-tostringtag@2.0.2: - resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==, + } + engines: { node: '>= 0.4' } dependencies: get-intrinsic: 1.2.2 has-tostringtag: 1.0.0 @@ -4619,14 +6151,20 @@ packages: dev: false /es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} + resolution: + { + integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==, + } dependencies: hasown: 2.0.0 dev: false /es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==, + } + engines: { node: '>= 0.4' } dependencies: is-callable: 1.2.7 is-date-object: 1.0.5 @@ -4634,27 +6172,45 @@ packages: dev: false /escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==, + } + engines: { node: '>=6' } /escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + resolution: + { + integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==, + } dev: false /escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} + resolution: + { + integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, + } + engines: { node: '>=0.8.0' } /escape-string-regexp@2.0.0: - resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==, + } + engines: { node: '>=8' } /escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==, + } + engines: { node: '>=10' } /eslint-config-next@13.4.12(eslint@8.46.0)(typescript@5.1.6): - resolution: {integrity: sha512-ZF0r5vxKaVazyZH/37Au/XItiG7qUOBw+HaH3PeyXltIMwXorsn6bdrl0Nn9N5v5v9spc+6GM2ryjugbjF6X2g==} + resolution: + { + integrity: sha512-ZF0r5vxKaVazyZH/37Au/XItiG7qUOBw+HaH3PeyXltIMwXorsn6bdrl0Nn9N5v5v9spc+6GM2ryjugbjF6X2g==, + } peerDependencies: eslint: ^7.23.0 || ^8.0.0 typescript: '>=3.3.1' @@ -4668,7 +6224,7 @@ packages: eslint: 8.46.0 eslint-import-resolver-node: 0.3.9 eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.0)(eslint@8.46.0) - eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint@8.46.0) + eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.12.0)(eslint@8.46.0) eslint-plugin-jsx-a11y: 6.8.0(eslint@8.46.0) eslint-plugin-react: 7.33.2(eslint@8.46.0) eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.46.0) @@ -4679,7 +6235,10 @@ packages: dev: false /eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + resolution: + { + integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==, + } dependencies: debug: 3.2.7 is-core-module: 2.13.1 @@ -4689,8 +6248,11 @@ packages: dev: false /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.0)(eslint@8.46.0): - resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} - engines: {node: ^14.18.0 || >=16.0.0} + resolution: + { + integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==, + } + engines: { node: ^14.18.0 || >=16.0.0 } peerDependencies: eslint: '*' eslint-plugin-import: '*' @@ -4699,7 +6261,7 @@ packages: enhanced-resolve: 5.15.0 eslint: 8.46.0 eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.46.0) - eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint@8.46.0) + eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.12.0)(eslint@8.46.0) fast-glob: 3.3.2 get-tsconfig: 4.7.2 is-core-module: 2.13.1 @@ -4712,8 +6274,11 @@ packages: dev: false /eslint-module-utils@2.8.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.46.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==, + } + engines: { node: '>=4' } peerDependencies: '@typescript-eslint/parser': '*' eslint: '*' @@ -4741,9 +6306,12 @@ packages: - supports-color dev: false - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint@8.46.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-node@0.3.9)(eslint@8.46.0): + resolution: + { + integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==, + } + engines: { node: '>=4' } peerDependencies: '@typescript-eslint/parser': '*' eslint: '*' @@ -4762,7 +6330,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.10.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/parser': 6.12.0(eslint@8.46.0)(typescript@5.1.6) debug: 3.2.7 eslint: 8.46.0 eslint-import-resolver-node: 0.3.9 @@ -4770,9 +6338,12 @@ packages: - supports-color dev: false - /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.10.0)(eslint@8.46.0): - resolution: {integrity: sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==} - engines: {node: '>=4'} + /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.12.0)(eslint@8.46.0): + resolution: + { + integrity: sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==, + } + engines: { node: '>=4' } peerDependencies: '@typescript-eslint/parser': '*' eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 @@ -4780,7 +6351,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.10.0(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/parser': 6.12.0(eslint@8.46.0)(typescript@5.1.6) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 @@ -4789,7 +6360,7 @@ packages: doctrine: 2.1.0 eslint: 8.46.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint@8.46.0) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.12.0)(eslint-import-resolver-node@0.3.9)(eslint@8.46.0) hasown: 2.0.0 is-core-module: 2.13.1 is-glob: 4.0.3 @@ -4806,12 +6377,15 @@ packages: dev: false /eslint-plugin-jsx-a11y@6.8.0(eslint@8.46.0): - resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==, + } + engines: { node: '>=4.0' } peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: - '@babel/runtime': 7.23.2 + '@babel/runtime': 7.23.4 aria-query: 5.3.0 array-includes: 3.1.7 array.prototype.flatmap: 1.3.2 @@ -4831,8 +6405,11 @@ packages: dev: false /eslint-plugin-react-hooks@5.0.0-canary-7118f5dd7-20230705(eslint@8.46.0): - resolution: {integrity: sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==, + } + engines: { node: '>=10' } peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: @@ -4840,8 +6417,11 @@ packages: dev: false /eslint-plugin-react@7.33.2(eslint@8.46.0): - resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==, + } + engines: { node: '>=4' } peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: @@ -4865,33 +6445,45 @@ packages: dev: false /eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} + resolution: + { + integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==, + } + engines: { node: '>=8.0.0' } dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 dev: false /eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 /eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } /eslint@8.46.0: - resolution: {integrity: sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } hasBin: true dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) '@eslint-community/regexpp': 4.10.0 '@eslint/eslintrc': 2.1.3 - '@eslint/js': 8.53.0 + '@eslint/js': 8.54.0 '@humanwhocodes/config-array': 0.11.13 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 @@ -4912,7 +6504,7 @@ packages: glob-parent: 6.0.2 globals: 13.23.0 graphemer: 1.4.0 - ignore: 5.2.4 + ignore: 5.3.0 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 @@ -4929,50 +6521,77 @@ packages: - supports-color /espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: acorn: 8.11.2 acorn-jsx: 5.3.2(acorn@8.11.2) eslint-visitor-keys: 3.4.3 /esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==, + } + engines: { node: '>=4' } hasBin: true /esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} - engines: {node: '>=0.10'} + resolution: + { + integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==, + } + engines: { node: '>=0.10' } dependencies: estraverse: 5.3.0 /esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==, + } + engines: { node: '>=4.0' } dependencies: estraverse: 5.3.0 /estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==, + } + engines: { node: '>=4.0' } dev: false /estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==, + } + engines: { node: '>=4.0' } /esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==, + } + engines: { node: '>=0.10.0' } /etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==, + } + engines: { node: '>= 0.6' } dev: false /ethereum-cryptography@2.1.2: - resolution: {integrity: sha512-Z5Ba0T0ImZ8fqXrJbpHcbpAvIswRte2wGNR/KePnu8GbbvgJ47lMxT/ZZPG6i9Jaht4azPDop4HaM00J0J59ug==} + resolution: + { + integrity: sha512-Z5Ba0T0ImZ8fqXrJbpHcbpAvIswRte2wGNR/KePnu8GbbvgJ47lMxT/ZZPG6i9Jaht4azPDop4HaM00J0J59ug==, + } dependencies: '@noble/curves': 1.1.0 '@noble/hashes': 1.3.1 @@ -4981,8 +6600,11 @@ packages: dev: false /ethers@6.8.1(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-iEKm6zox5h1lDn6scuRWdIdFJUCGg3+/aQWu0F4K0GVyEZiktFkqrJbRjTn1FlYEPz7RKA707D6g5Kdk6j7Ljg==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-iEKm6zox5h1lDn6scuRWdIdFJUCGg3+/aQWu0F4K0GVyEZiktFkqrJbRjTn1FlYEPz7RKA707D6g5Kdk6j7Ljg==, + } + engines: { node: '>=14.0.0' } dependencies: '@adraffy/ens-normalize': 1.10.0 '@noble/curves': 1.2.0 @@ -4997,18 +6619,27 @@ packages: dev: false /event-target-shim@5.0.1: - resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==, + } + engines: { node: '>=6' } dev: false /events@3.3.0: - resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} - engines: {node: '>=0.8.x'} + resolution: + { + integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==, + } + engines: { node: '>=0.8.x' } dev: false /execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==, + } + engines: { node: '>=10' } dependencies: cross-spawn: 7.0.3 get-stream: 6.0.1 @@ -5021,12 +6652,18 @@ packages: strip-final-newline: 2.0.0 /exit@0.1.2: - resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==, + } + engines: { node: '>= 0.8.0' } /expect@29.7.0: - resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/expect-utils': 29.7.0 jest-get-type: 29.6.3 @@ -5035,11 +6672,17 @@ packages: jest-util: 29.7.0 /fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + resolution: + { + integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, + } /fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} + resolution: + { + integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==, + } + engines: { node: '>=8.6.0' } dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 @@ -5048,47 +6691,74 @@ packages: micromatch: 4.0.5 /fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + resolution: + { + integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==, + } /fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + resolution: + { + integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==, + } /fast-xml-parser@4.3.2: - resolution: {integrity: sha512-rmrXUXwbJedoXkStenj1kkljNF7ugn5ZjR9FJcwmCfcCbtOMDghPajbc+Tck6vE6F5XsDmx+Pr2le9fw8+pXBg==} + resolution: + { + integrity: sha512-rmrXUXwbJedoXkStenj1kkljNF7ugn5ZjR9FJcwmCfcCbtOMDghPajbc+Tck6vE6F5XsDmx+Pr2le9fw8+pXBg==, + } hasBin: true dependencies: strnum: 1.0.5 dev: false /fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} + resolution: + { + integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, + } dependencies: reusify: 1.0.4 /fb-watchman@2.0.2: - resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} + resolution: + { + integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==, + } dependencies: bser: 2.1.1 /file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} + resolution: + { + integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==, + } + engines: { node: ^10.12.0 || >=12.0.0 } dependencies: - flat-cache: 3.1.1 + flat-cache: 3.2.0 /file-saver@2.0.5: - resolution: {integrity: sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==} + resolution: + { + integrity: sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==, + } dev: false /fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, + } + engines: { node: '>=8' } dependencies: to-regex-range: 5.0.1 /finalhandler@1.1.2: - resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==, + } + engines: { node: '>= 0.8' } dependencies: debug: 2.6.9 encodeurl: 1.0.2 @@ -5102,8 +6772,11 @@ packages: dev: false /find-cache-dir@2.1.0: - resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==, + } + engines: { node: '>=6' } dependencies: commondir: 1.0.1 make-dir: 2.1.0 @@ -5111,48 +6784,72 @@ packages: dev: false /find-up@3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==, + } + engines: { node: '>=6' } dependencies: locate-path: 3.0.0 dev: false /find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==, + } + engines: { node: '>=8' } dependencies: locate-path: 5.0.0 path-exists: 4.0.0 /find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==, + } + engines: { node: '>=10' } dependencies: locate-path: 6.0.0 path-exists: 4.0.0 - /flat-cache@3.1.1: - resolution: {integrity: sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==} - engines: {node: '>=12.0.0'} + /flat-cache@3.2.0: + resolution: + { + integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==, + } + engines: { node: ^10.12.0 || >=12.0.0 } dependencies: flatted: 3.2.9 keyv: 4.5.4 rimraf: 3.0.2 /flatted@3.2.9: - resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} + resolution: + { + integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==, + } /flow-enums-runtime@0.0.5: - resolution: {integrity: sha512-PSZF9ZuaZD03sT9YaIs0FrGJ7lSUw7rHZIex+73UYVXg46eL/wxN5PaVcPJFudE2cJu5f0fezitV5aBkLHPUOQ==} + resolution: + { + integrity: sha512-PSZF9ZuaZD03sT9YaIs0FrGJ7lSUw7rHZIex+73UYVXg46eL/wxN5PaVcPJFudE2cJu5f0fezitV5aBkLHPUOQ==, + } dev: false /flow-parser@0.206.0: - resolution: {integrity: sha512-HVzoK3r6Vsg+lKvlIZzaWNBVai+FXTX1wdYhz/wVlH13tb/gOdLXmlTqy6odmTBhT5UoWUbq0k8263Qhr9d88w==} - engines: {node: '>=0.4.0'} + resolution: + { + integrity: sha512-HVzoK3r6Vsg+lKvlIZzaWNBVai+FXTX1wdYhz/wVlH13tb/gOdLXmlTqy6odmTBhT5UoWUbq0k8263Qhr9d88w==, + } + engines: { node: '>=0.4.0' } dev: false /flowbite-react@0.5.0(react-dom@18.2.0)(react@18.2.0)(tailwindcss@3.3.3): - resolution: {integrity: sha512-OoJ0Dbv0ZuunTkPwa802wL3kalUWQ7YBh1t4It5uVfAYs5KUvOqhXIygdlVMawnmq3+xkMPbUZkWh1sDxVb3nw==} + resolution: + { + integrity: sha512-OoJ0Dbv0ZuunTkPwa802wL3kalUWQ7YBh1t4It5uVfAYs5KUvOqhXIygdlVMawnmq3+xkMPbUZkWh1sDxVb3nw==, + } peerDependencies: react: ^18 react-dom: ^18 @@ -5162,22 +6859,28 @@ packages: flowbite: 1.8.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-icons: 4.11.0(react@18.2.0) + react-icons: 4.12.0(react@18.2.0) react-indiana-drag-scroll: 2.2.0(react-dom@18.2.0)(react@18.2.0) tailwind-merge: 1.14.0 tailwindcss: 3.3.3 dev: false /flowbite@1.8.1: - resolution: {integrity: sha512-lXTcO8a6dRTPFpINyOLcATCN/pK1Of/jY4PryklPllAiqH64tSDUsOdQpar3TO59ZXWwugm2e92oaqwH6X90Xg==} + resolution: + { + integrity: sha512-lXTcO8a6dRTPFpINyOLcATCN/pK1Of/jY4PryklPllAiqH64tSDUsOdQpar3TO59ZXWwugm2e92oaqwH6X90Xg==, + } dependencies: '@popperjs/core': 2.11.8 mini-svg-data-uri: 1.4.4 dev: false /follow-redirects@1.15.3: - resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==, + } + engines: { node: '>=4.0' } peerDependencies: debug: '*' peerDependenciesMeta: @@ -5186,14 +6889,20 @@ packages: dev: false /for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + resolution: + { + integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==, + } dependencies: is-callable: 1.2.7 dev: false /form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==, + } + engines: { node: '>= 6' } dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 @@ -5201,17 +6910,26 @@ packages: dev: false /fraction.js@4.3.7: - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + resolution: + { + integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==, + } dev: false /fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==, + } + engines: { node: '>= 0.6' } dev: false /fs-extra@8.1.0: - resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} - engines: {node: '>=6 <7 || >=8'} + resolution: + { + integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==, + } + engines: { node: '>=6 <7 || >=8' } dependencies: graceful-fs: 4.2.11 jsonfile: 4.0.0 @@ -5219,25 +6937,40 @@ packages: dev: false /fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + resolution: + { + integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, + } /fs@0.0.1-security: - resolution: {integrity: sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==} + resolution: + { + integrity: sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==, + } dev: false /fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + resolution: + { + integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, + } + engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } os: [darwin] requiresBuild: true optional: true /function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + resolution: + { + integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, + } /function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -5246,19 +6979,31 @@ packages: dev: false /functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + resolution: + { + integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==, + } dev: false /gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, + } + engines: { node: '>=6.9.0' } /get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} + resolution: + { + integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==, + } + engines: { node: 6.* || 8.* || >= 10.* } /get-intrinsic@1.2.2: - resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} + resolution: + { + integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==, + } dependencies: function-bind: 1.1.2 has-proto: 1.0.1 @@ -5267,45 +7012,69 @@ packages: dev: false /get-package-type@0.1.0: - resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} - engines: {node: '>=8.0.0'} + resolution: + { + integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==, + } + engines: { node: '>=8.0.0' } /get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, + } + engines: { node: '>=10' } /get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 dev: false /get-tsconfig@4.7.2: - resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} + resolution: + { + integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==, + } dependencies: resolve-pkg-maps: 1.0.0 dev: false /glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, + } + engines: { node: '>= 6' } dependencies: is-glob: 4.0.3 /glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} + resolution: + { + integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==, + } + engines: { node: '>=10.13.0' } dependencies: is-glob: 4.0.3 /glob-to-regexp@0.4.1: - resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + resolution: + { + integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==, + } dev: false /glob@7.1.6: - resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} + resolution: + { + integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==, + } dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -5316,7 +7085,10 @@ packages: dev: false /glob@7.1.7: - resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} + resolution: + { + integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==, + } dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -5327,7 +7099,10 @@ packages: dev: false /glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + resolution: + { + integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==, + } dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -5337,128 +7112,194 @@ packages: path-is-absolute: 1.0.1 /globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==, + } + engines: { node: '>=4' } /globals@13.23.0: - resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==, + } + engines: { node: '>=8' } dependencies: type-fest: 0.20.2 /globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==, + } + engines: { node: '>= 0.4' } dependencies: define-properties: 1.2.1 dev: false /globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==, + } + engines: { node: '>=10' } dependencies: array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.3.2 - ignore: 5.2.4 + ignore: 5.3.0 merge2: 1.4.1 slash: 3.0.0 /globby@13.2.2: - resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + resolution: + { + integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==, + } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } dependencies: dir-glob: 3.0.1 fast-glob: 3.3.2 - ignore: 5.2.4 + ignore: 5.3.0 merge2: 1.4.1 slash: 4.0.0 dev: false /gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + resolution: + { + integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==, + } dependencies: get-intrinsic: 1.2.2 dev: false /graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + resolution: + { + integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, + } /graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + resolution: + { + integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==, + } /has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + resolution: + { + integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==, + } dev: false /has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, + } + engines: { node: '>=4' } /has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, + } + engines: { node: '>=8' } /has-property-descriptors@1.0.1: - resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} + resolution: + { + integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==, + } dependencies: get-intrinsic: 1.2.2 dev: false /has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==, + } + engines: { node: '>= 0.4' } dev: false /has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==, + } + engines: { node: '>= 0.4' } dev: false /has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==, + } + engines: { node: '>= 0.4' } dependencies: has-symbols: 1.0.3 dev: false /hash.js@1.1.7: - resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} + resolution: + { + integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==, + } dependencies: inherits: 2.0.4 minimalistic-assert: 1.0.1 dev: false /hasown@2.0.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==, + } + engines: { node: '>= 0.4' } dependencies: function-bind: 1.1.2 /hermes-estree@0.12.0: - resolution: {integrity: sha512-+e8xR6SCen0wyAKrMT3UD0ZCCLymKhRgjEB5sS28rKiFir/fXgLoeRilRUssFCILmGHb+OvHDUlhxs0+IEyvQw==} + resolution: + { + integrity: sha512-+e8xR6SCen0wyAKrMT3UD0ZCCLymKhRgjEB5sS28rKiFir/fXgLoeRilRUssFCILmGHb+OvHDUlhxs0+IEyvQw==, + } dev: false /hermes-parser@0.12.0: - resolution: {integrity: sha512-d4PHnwq6SnDLhYl3LHNHvOg7nQ6rcI7QVil418REYksv0Mh3cEkHDcuhGxNQ3vgnLSLl4QSvDrFCwQNYdpWlzw==} + resolution: + { + integrity: sha512-d4PHnwq6SnDLhYl3LHNHvOg7nQ6rcI7QVil418REYksv0Mh3cEkHDcuhGxNQ3vgnLSLl4QSvDrFCwQNYdpWlzw==, + } dependencies: hermes-estree: 0.12.0 dev: false /hermes-profile-transformer@0.0.6: - resolution: {integrity: sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==, + } + engines: { node: '>=8' } dependencies: source-map: 0.7.4 dev: false /highlight.js@11.9.0: - resolution: {integrity: sha512-fJ7cW7fQGCYAkgv4CPfwFHrfd/cLS4Hau96JuJ+ZTOWhjnhoeN1ub1tFmALm/+lW5z4WCAuAV9bm05AP0mS6Gw==} - engines: {node: '>=12.0.0'} + resolution: + { + integrity: sha512-fJ7cW7fQGCYAkgv4CPfwFHrfd/cLS4Hau96JuJ+ZTOWhjnhoeN1ub1tFmALm/+lW5z4WCAuAV9bm05AP0mS6Gw==, + } + engines: { node: '>=12.0.0' } dev: false /hmac-drbg@1.0.1: - resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} + resolution: + { + integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==, + } dependencies: hash.js: 1.1.7 minimalistic-assert: 1.0.1 @@ -5466,11 +7307,17 @@ packages: dev: false /html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + resolution: + { + integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==, + } /http-errors@2.0.0: - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==, + } + engines: { node: '>= 0.8' } dependencies: depd: 2.0.0 inherits: 2.0.4 @@ -5480,68 +7327,104 @@ packages: dev: false /human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} + resolution: + { + integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==, + } + engines: { node: '>=10.17.0' } /ieee754@1.2.1: - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + resolution: + { + integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, + } dev: false - /ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} + /ignore@5.3.0: + resolution: + { + integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==, + } + engines: { node: '>= 4' } /image-size@1.0.2: - resolution: {integrity: sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==, + } + engines: { node: '>=14.0.0' } hasBin: true dependencies: queue: 6.0.2 dev: false /immediate@3.0.6: - resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} + resolution: + { + integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==, + } dev: false /import-fresh@2.0.0: - resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==, + } + engines: { node: '>=4' } dependencies: caller-path: 2.0.0 resolve-from: 3.0.0 dev: false /import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, + } + engines: { node: '>=6' } dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 /import-local@3.1.0: - resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==, + } + engines: { node: '>=8' } hasBin: true dependencies: pkg-dir: 4.2.0 resolve-cwd: 3.0.0 /imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} + resolution: + { + integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, + } + engines: { node: '>=0.8.19' } /inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + resolution: + { + integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, + } dependencies: once: 1.4.0 wrappy: 1.0.2 /inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + resolution: + { + integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, + } /internal-slot@1.0.6: - resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==, + } + engines: { node: '>= 0.4' } dependencies: get-intrinsic: 1.2.2 hasown: 2.0.0 @@ -5549,17 +7432,26 @@ packages: dev: false /invariant@2.2.4: - resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + resolution: + { + integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==, + } dependencies: loose-envify: 1.4.0 dev: false /ip@1.1.8: - resolution: {integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==} + resolution: + { + integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==, + } dev: false /is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} + resolution: + { + integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==, + } dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 @@ -5567,226 +7459,349 @@ packages: dev: false /is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + resolution: + { + integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==, + } /is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==, + } + engines: { node: '>= 0.4' } dependencies: has-tostringtag: 1.0.0 dev: false /is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + resolution: + { + integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==, + } dependencies: has-bigints: 1.0.2 dev: false /is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, + } + engines: { node: '>=8' } dependencies: binary-extensions: 2.2.0 dev: false /is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 has-tostringtag: 1.0.0 dev: false /is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==, + } + engines: { node: '>= 0.4' } dev: false /is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + resolution: + { + integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==, + } dependencies: hasown: 2.0.0 /is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==, + } + engines: { node: '>= 0.4' } dependencies: has-tostringtag: 1.0.0 dev: false /is-directory@0.3.1: - resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==, + } + engines: { node: '>=0.10.0' } dev: false /is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, + } + engines: { node: '>=0.10.0' } /is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} + resolution: + { + integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==, + } dependencies: call-bind: 1.0.5 dev: false /is-fullwidth-code-point@2.0.0: - resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==, + } + engines: { node: '>=4' } dev: false /is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==, + } + engines: { node: '>=8' } /is-generator-fn@2.1.0: - resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==, + } + engines: { node: '>=6' } /is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==, + } + engines: { node: '>= 0.4' } dependencies: has-tostringtag: 1.0.0 dev: false /is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, + } + engines: { node: '>=0.10.0' } dependencies: is-extglob: 2.1.1 /is-interactive@1.0.0: - resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==, + } + engines: { node: '>=8' } dev: false /is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} + resolution: + { + integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==, + } dev: false /is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==, + } + engines: { node: '>= 0.4' } dev: false /is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==, + } + engines: { node: '>= 0.4' } dependencies: has-tostringtag: 1.0.0 dev: false /is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} + resolution: + { + integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, + } + engines: { node: '>=0.12.0' } /is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==, + } + engines: { node: '>=8' } /is-plain-object@2.0.4: - resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==, + } + engines: { node: '>=0.10.0' } dependencies: isobject: 3.0.1 dev: false /is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 has-tostringtag: 1.0.0 dev: false /is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} + resolution: + { + integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==, + } dev: false /is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} + resolution: + { + integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==, + } dependencies: call-bind: 1.0.5 dev: false /is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==, + } + engines: { node: '>=8' } /is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==, + } + engines: { node: '>= 0.4' } dependencies: has-tostringtag: 1.0.0 dev: false /is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==, + } + engines: { node: '>= 0.4' } dependencies: has-symbols: 1.0.3 dev: false /is-typed-array@1.1.12: - resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==, + } + engines: { node: '>= 0.4' } dependencies: which-typed-array: 1.1.13 dev: false /is-unicode-supported@0.1.0: - resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==, + } + engines: { node: '>=10' } dev: false /is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} + resolution: + { + integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==, + } dev: false /is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + resolution: + { + integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==, + } dependencies: call-bind: 1.0.5 dev: false /is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} + resolution: + { + integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==, + } dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 dev: false /is-wsl@1.1.0: - resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==, + } + engines: { node: '>=4' } dev: false /isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + resolution: + { + integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==, + } dev: false /isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + resolution: + { + integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==, + } dev: false /isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + resolution: + { + integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, + } /isobject@3.0.1: - resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==, + } + engines: { node: '>=0.10.0' } dev: false /istanbul-lib-coverage@3.2.2: - resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==, + } + engines: { node: '>=8' } /istanbul-lib-instrument@5.2.1: - resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==, + } + engines: { node: '>=8' } dependencies: '@babel/core': 7.23.3 - '@babel/parser': 7.23.3 + '@babel/parser': 7.23.4 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 6.3.1 @@ -5794,11 +7809,14 @@ packages: - supports-color /istanbul-lib-instrument@6.0.1: - resolution: {integrity: sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==, + } + engines: { node: '>=10' } dependencies: '@babel/core': 7.23.3 - '@babel/parser': 7.23.3 + '@babel/parser': 7.23.4 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 7.5.4 @@ -5806,16 +7824,22 @@ packages: - supports-color /istanbul-lib-report@3.0.1: - resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==, + } + engines: { node: '>=10' } dependencies: istanbul-lib-coverage: 3.2.2 make-dir: 4.0.0 supports-color: 7.2.0 /istanbul-lib-source-maps@4.0.1: - resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==, + } + engines: { node: '>=10' } dependencies: debug: 4.3.4 istanbul-lib-coverage: 3.2.2 @@ -5824,14 +7848,20 @@ packages: - supports-color /istanbul-reports@3.1.6: - resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==, + } + engines: { node: '>=8' } dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 /iterator.prototype@1.1.2: - resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} + resolution: + { + integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==, + } dependencies: define-properties: 1.2.1 get-intrinsic: 1.2.2 @@ -5841,7 +7871,10 @@ packages: dev: false /its-fine@1.1.1(react@18.2.0): - resolution: {integrity: sha512-v1Ia1xl20KbuSGlwoaGsW0oxsw8Be+TrXweidxD9oT/1lAh6O3K3/GIM95Tt6WCiv6W+h2M7RB1TwdoAjQyyKw==} + resolution: + { + integrity: sha512-v1Ia1xl20KbuSGlwoaGsW0oxsw8Be+TrXweidxD9oT/1lAh6O3K3/GIM95Tt6WCiv6W+h2M7RB1TwdoAjQyyKw==, + } peerDependencies: react: '>=18.0' dependencies: @@ -5850,16 +7883,22 @@ packages: dev: false /jest-changed-files@29.7.0: - resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: execa: 5.1.1 jest-util: 29.7.0 p-limit: 3.1.0 /jest-circus@29.7.0: - resolution: {integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/environment': 29.7.0 '@jest/expect': 29.7.0 @@ -5886,8 +7925,11 @@ packages: - supports-color /jest-cli@29.7.0(@types/node@20.4.5): - resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -5913,8 +7955,11 @@ packages: - ts-node /jest-config@29.7.0(@types/node@20.4.5): - resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } peerDependencies: '@types/node': '*' ts-node: '>=9.0.0' @@ -5952,8 +7997,11 @@ packages: - supports-color /jest-diff@29.7.0: - resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: chalk: 4.1.2 diff-sequences: 29.6.3 @@ -5961,14 +8009,20 @@ packages: pretty-format: 29.7.0 /jest-docblock@29.7.0: - resolution: {integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: detect-newline: 3.1.0 /jest-each@29.7.0: - resolution: {integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 @@ -5977,8 +8031,11 @@ packages: pretty-format: 29.7.0 /jest-environment-node@29.7.0: - resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 @@ -5988,12 +8045,18 @@ packages: jest-util: 29.7.0 /jest-get-type@29.6.3: - resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } /jest-haste-map@29.7.0: - resolution: {integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 @@ -6010,15 +8073,21 @@ packages: fsevents: 2.3.3 /jest-leak-detector@29.7.0: - resolution: {integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: jest-get-type: 29.6.3 pretty-format: 29.7.0 /jest-matcher-utils@29.7.0: - resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: chalk: 4.1.2 jest-diff: 29.7.0 @@ -6026,10 +8095,13 @@ packages: pretty-format: 29.7.0 /jest-message-util@29.7.0: - resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: - '@babel/code-frame': 7.22.13 + '@babel/code-frame': 7.23.4 '@jest/types': 29.6.3 '@types/stack-utils': 2.0.3 chalk: 4.1.2 @@ -6040,16 +8112,22 @@ packages: stack-utils: 2.0.6 /jest-mock@29.7.0: - resolution: {integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 '@types/node': 20.4.5 jest-util: 29.7.0 /jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): - resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==, + } + engines: { node: '>=6' } peerDependencies: jest-resolve: '*' peerDependenciesMeta: @@ -6059,17 +8137,26 @@ packages: jest-resolve: 29.7.0 /jest-regex-util@27.5.1: - resolution: {integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + resolution: + { + integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==, + } + engines: { node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 } dev: false /jest-regex-util@29.6.3: - resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } /jest-resolve-dependencies@29.7.0: - resolution: {integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: jest-regex-util: 29.6.3 jest-snapshot: 29.7.0 @@ -6077,8 +8164,11 @@ packages: - supports-color /jest-resolve@29.7.0: - resolution: {integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: chalk: 4.1.2 graceful-fs: 4.2.11 @@ -6091,8 +8181,11 @@ packages: slash: 3.0.0 /jest-runner@29.7.0: - resolution: {integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/console': 29.7.0 '@jest/environment': 29.7.0 @@ -6119,8 +8212,11 @@ packages: - supports-color /jest-runtime@29.7.0: - resolution: {integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 @@ -6148,14 +8244,17 @@ packages: - supports-color /jest-snapshot@29.7.0: - resolution: {integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@babel/core': 7.23.3 - '@babel/generator': 7.23.3 + '@babel/generator': 7.23.4 '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.3) '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.3) - '@babel/types': 7.23.3 + '@babel/types': 7.23.4 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 @@ -6175,8 +8274,11 @@ packages: - supports-color /jest-util@27.5.1: - resolution: {integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + resolution: + { + integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==, + } + engines: { node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 } dependencies: '@jest/types': 27.5.1 '@types/node': 20.4.5 @@ -6187,8 +8289,11 @@ packages: dev: false /jest-util@29.7.0: - resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 '@types/node': 20.4.5 @@ -6198,8 +8303,11 @@ packages: picomatch: 2.3.1 /jest-validate@29.7.0: - resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/types': 29.6.3 camelcase: 6.3.0 @@ -6209,8 +8317,11 @@ packages: pretty-format: 29.7.0 /jest-watcher@29.7.0: - resolution: {integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 @@ -6222,8 +8333,11 @@ packages: string-length: 4.0.2 /jest-worker@27.5.1: - resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} - engines: {node: '>= 10.13.0'} + resolution: + { + integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==, + } + engines: { node: '>= 10.13.0' } dependencies: '@types/node': 20.4.5 merge-stream: 2.0.0 @@ -6231,8 +8345,11 @@ packages: dev: false /jest-worker@29.7.0: - resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@types/node': 20.4.5 jest-util: 29.7.0 @@ -6240,8 +8357,11 @@ packages: supports-color: 8.1.1 /jest@29.7.0(@types/node@20.4.5): - resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -6260,12 +8380,18 @@ packages: - ts-node /jiti@1.21.0: - resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} + resolution: + { + integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==, + } hasBin: true dev: false /joi@17.11.0: - resolution: {integrity: sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==} + resolution: + { + integrity: sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==, + } dependencies: '@hapi/hoek': 9.3.0 '@hapi/topo': 5.1.0 @@ -6275,45 +8401,69 @@ packages: dev: false /js-sdsl@4.4.2: - resolution: {integrity: sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==} + resolution: + { + integrity: sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==, + } dev: false /js-sha3@0.8.0: - resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + resolution: + { + integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==, + } dev: false /js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + resolution: + { + integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, + } /js-yaml@3.14.1: - resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + resolution: + { + integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==, + } hasBin: true dependencies: argparse: 1.0.10 esprima: 4.0.1 /js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + resolution: + { + integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==, + } hasBin: true dependencies: argparse: 2.0.1 /jsc-android@250231.0.0: - resolution: {integrity: sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw==} + resolution: + { + integrity: sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw==, + } dev: false /jsc-safe-url@0.2.4: - resolution: {integrity: sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==} + resolution: + { + integrity: sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==, + } dev: false /jscodeshift@0.14.0(@babel/preset-env@7.23.3): - resolution: {integrity: sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==} + resolution: + { + integrity: sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==, + } hasBin: true peerDependencies: '@babel/preset-env': ^7.1.6 dependencies: '@babel/core': 7.23.3 - '@babel/parser': 7.23.3 + '@babel/parser': 7.23.4 '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.3) '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.23.3) '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.23.3) @@ -6337,62 +8487,101 @@ packages: dev: false /jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} + resolution: + { + integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==, + } hasBin: true dev: false /jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==, + } + engines: { node: '>=4' } hasBin: true /json-bigint@1.0.0: - resolution: {integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==} + resolution: + { + integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==, + } dependencies: bignumber.js: 9.1.2 dev: false /json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + resolution: + { + integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==, + } /json-parse-better-errors@1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} + resolution: + { + integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==, + } dev: false /json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + resolution: + { + integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==, + } /json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + resolution: + { + integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==, + } /json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + resolution: + { + integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==, + } dev: false /json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + resolution: + { + integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==, + } /json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + resolution: + { + integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==, + } hasBin: true dependencies: minimist: 1.2.8 dev: false /json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==, + } + engines: { node: '>=6' } hasBin: true /jsonfile@4.0.0: - resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + resolution: + { + integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==, + } optionalDependencies: graceful-fs: 4.2.11 dev: false /jsx-ast-utils@3.3.5: - resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==, + } + engines: { node: '>=4.0' } dependencies: array-includes: 3.1.7 array.prototype.flat: 1.3.2 @@ -6401,7 +8590,10 @@ packages: dev: false /jszip@3.10.1: - resolution: {integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==} + resolution: + { + integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==, + } dependencies: lie: 3.3.0 pako: 1.0.11 @@ -6410,109 +8602,180 @@ packages: dev: false /keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + resolution: + { + integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==, + } dependencies: json-buffer: 3.0.1 /kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==, + } + engines: { node: '>=0.10.0' } dev: false /kleur@3.0.3: - resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==, + } + engines: { node: '>=6' } /konva@9.2.3: - resolution: {integrity: sha512-oQ6VQ6kUL9IlhOGuEKKhxqnv6g/t8jZpVuWahQQ6hCqAsO8Ydi1zFGv7ef4EOq5GoPNq/d6Fyj/3i5Y/a5NooA==} + resolution: + { + integrity: sha512-oQ6VQ6kUL9IlhOGuEKKhxqnv6g/t8jZpVuWahQQ6hCqAsO8Ydi1zFGv7ef4EOq5GoPNq/d6Fyj/3i5Y/a5NooA==, + } dev: false /language-subtag-registry@0.3.22: - resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} + resolution: + { + integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==, + } dev: false /language-tags@1.0.9: - resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} - engines: {node: '>=0.10'} + resolution: + { + integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==, + } + engines: { node: '>=0.10' } dependencies: language-subtag-registry: 0.3.22 dev: false /leven@3.1.0: - resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==, + } + engines: { node: '>=6' } /levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==, + } + engines: { node: '>= 0.8.0' } dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 /lie@3.3.0: - resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==} + resolution: + { + integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==, + } dependencies: immediate: 3.0.6 dev: false /lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==, + } + engines: { node: '>=10' } + dev: false + + /lilconfig@3.0.0: + resolution: + { + integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==, + } + engines: { node: '>=14' } dev: false /lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + resolution: + { + integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==, + } /loader-runner@4.3.0: - resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} - engines: {node: '>=6.11.5'} + resolution: + { + integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==, + } + engines: { node: '>=6.11.5' } dev: false /locate-path@3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==, + } + engines: { node: '>=6' } dependencies: p-locate: 3.0.0 path-exists: 3.0.0 dev: false /locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==, + } + engines: { node: '>=8' } dependencies: p-locate: 4.1.0 /locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==, + } + engines: { node: '>=10' } dependencies: p-locate: 5.0.0 /lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + resolution: + { + integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==, + } dev: false /lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} + resolution: + { + integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==, + } dev: false /lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + resolution: + { + integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==, + } /lodash.throttle@4.1.1: - resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} + resolution: + { + integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==, + } dev: false /log-symbols@4.1.0: - resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==, + } + engines: { node: '>=10' } dependencies: chalk: 4.1.2 is-unicode-supported: 0.1.0 dev: false /logkitty@0.7.1: - resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==} + resolution: + { + integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==, + } hasBin: true dependencies: ansi-fragments: 0.2.1 @@ -6521,72 +8784,109 @@ packages: dev: false /loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + resolution: + { + integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==, + } hasBin: true dependencies: js-tokens: 4.0.0 dev: false - /lru-cache@10.0.2: - resolution: {integrity: sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==} - engines: {node: 14 || >=16.14} - dependencies: - semver: 7.5.4 + /lru-cache@10.0.3: + resolution: + { + integrity: sha512-B7gr+F6MkqB3uzINHXNctGieGsRTMwIBgxkp0yq/5BwcuDzD4A8wQpHQW6vDAm1uKSLQghmRdD9sKqf2vJ1cEg==, + } + engines: { node: 14 || >=16.14 } dev: false /lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + resolution: + { + integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==, + } dependencies: yallist: 3.1.1 /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, + } + engines: { node: '>=10' } dependencies: yallist: 4.0.0 /make-dir@2.1.0: - resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==, + } + engines: { node: '>=6' } dependencies: pify: 4.0.1 semver: 5.7.2 dev: false /make-dir@4.0.0: - resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==, + } + engines: { node: '>=10' } dependencies: semver: 7.5.4 /make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + resolution: + { + integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, + } dev: false /makeerror@1.0.12: - resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} + resolution: + { + integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==, + } dependencies: tmpl: 1.0.5 /memoize-one@5.2.1: - resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} + resolution: + { + integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==, + } dev: false /memorystream@0.3.1: - resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} - engines: {node: '>= 0.10.0'} + resolution: + { + integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==, + } + engines: { node: '>= 0.10.0' } dev: false /merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + resolution: + { + integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, + } /merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, + } + engines: { node: '>= 8' } /metro-babel-transformer@0.76.8: - resolution: {integrity: sha512-Hh6PW34Ug/nShlBGxkwQJSgPGAzSJ9FwQXhUImkzdsDgVu6zj5bx258J8cJVSandjNoQ8nbaHK6CaHlnbZKbyA==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-Hh6PW34Ug/nShlBGxkwQJSgPGAzSJ9FwQXhUImkzdsDgVu6zj5bx258J8cJVSandjNoQ8nbaHK6CaHlnbZKbyA==, + } + engines: { node: '>=16' } dependencies: '@babel/core': 7.23.3 hermes-parser: 0.12.0 @@ -6596,21 +8896,30 @@ packages: dev: false /metro-cache-key@0.76.8: - resolution: {integrity: sha512-buKQ5xentPig9G6T37Ww/R/bC+/V1MA5xU/D8zjnhlelsrPG6w6LtHUS61ID3zZcMZqYaELWk5UIadIdDsaaLw==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-buKQ5xentPig9G6T37Ww/R/bC+/V1MA5xU/D8zjnhlelsrPG6w6LtHUS61ID3zZcMZqYaELWk5UIadIdDsaaLw==, + } + engines: { node: '>=16' } dev: false /metro-cache@0.76.8: - resolution: {integrity: sha512-QBJSJIVNH7Hc/Yo6br/U/qQDUpiUdRgZ2ZBJmvAbmAKp2XDzsapnMwK/3BGj8JNWJF7OLrqrYHsRsukSbUBpvQ==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-QBJSJIVNH7Hc/Yo6br/U/qQDUpiUdRgZ2ZBJmvAbmAKp2XDzsapnMwK/3BGj8JNWJF7OLrqrYHsRsukSbUBpvQ==, + } + engines: { node: '>=16' } dependencies: metro-core: 0.76.8 rimraf: 3.0.2 dev: false /metro-config@0.76.8(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-SL1lfKB0qGHALcAk2zBqVgQZpazDYvYFGwCK1ikz0S6Y/CM2i2/HwuZN31kpX6z3mqjv/6KvlzaKoTb1otuSAA==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-SL1lfKB0qGHALcAk2zBqVgQZpazDYvYFGwCK1ikz0S6Y/CM2i2/HwuZN31kpX6z3mqjv/6KvlzaKoTb1otuSAA==, + } + engines: { node: '>=16' } dependencies: connect: 3.7.0 cosmiconfig: 5.2.1 @@ -6627,16 +8936,22 @@ packages: dev: false /metro-core@0.76.8: - resolution: {integrity: sha512-sl2QLFI3d1b1XUUGxwzw/KbaXXU/bvFYrSKz6Sg19AdYGWFyzsgZ1VISRIDf+HWm4R/TJXluhWMEkEtZuqi3qA==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-sl2QLFI3d1b1XUUGxwzw/KbaXXU/bvFYrSKz6Sg19AdYGWFyzsgZ1VISRIDf+HWm4R/TJXluhWMEkEtZuqi3qA==, + } + engines: { node: '>=16' } dependencies: lodash.throttle: 4.1.1 metro-resolver: 0.76.8 dev: false /metro-file-map@0.76.8: - resolution: {integrity: sha512-A/xP1YNEVwO1SUV9/YYo6/Y1MmzhL4ZnVgcJC3VmHp/BYVOXVStzgVbWv2wILe56IIMkfXU+jpXrGKKYhFyHVw==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-A/xP1YNEVwO1SUV9/YYo6/Y1MmzhL4ZnVgcJC3VmHp/BYVOXVStzgVbWv2wILe56IIMkfXU+jpXrGKKYhFyHVw==, + } + engines: { node: '>=16' } dependencies: anymatch: 3.1.3 debug: 2.6.9 @@ -6657,8 +8972,11 @@ packages: dev: false /metro-inspector-proxy@0.76.8(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-Us5o5UEd4Smgn1+TfHX4LvVPoWVo9VsVMn4Ldbk0g5CQx3Gu0ygc/ei2AKPGTwsOZmKxJeACj7yMH2kgxQP/iw==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-Us5o5UEd4Smgn1+TfHX4LvVPoWVo9VsVMn4Ldbk0g5CQx3Gu0ygc/ei2AKPGTwsOZmKxJeACj7yMH2kgxQP/iw==, + } + engines: { node: '>=16' } hasBin: true dependencies: connect: 3.7.0 @@ -6674,22 +8992,31 @@ packages: dev: false /metro-minify-terser@0.76.8: - resolution: {integrity: sha512-Orbvg18qXHCrSj1KbaeSDVYRy/gkro2PC7Fy2tDSH1c9RB4aH8tuMOIXnKJE+1SXxBtjWmQ5Yirwkth2DyyEZA==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-Orbvg18qXHCrSj1KbaeSDVYRy/gkro2PC7Fy2tDSH1c9RB4aH8tuMOIXnKJE+1SXxBtjWmQ5Yirwkth2DyyEZA==, + } + engines: { node: '>=16' } dependencies: terser: 5.24.0 dev: false /metro-minify-uglify@0.76.8: - resolution: {integrity: sha512-6l8/bEvtVaTSuhG1FqS0+Mc8lZ3Bl4RI8SeRIifVLC21eeSDp4CEBUWSGjpFyUDfi6R5dXzYaFnSgMNyfxADiQ==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-6l8/bEvtVaTSuhG1FqS0+Mc8lZ3Bl4RI8SeRIifVLC21eeSDp4CEBUWSGjpFyUDfi6R5dXzYaFnSgMNyfxADiQ==, + } + engines: { node: '>=16' } dependencies: uglify-es: 3.3.9 dev: false /metro-react-native-babel-preset@0.76.8(@babel/core@7.23.3): - resolution: {integrity: sha512-Ptza08GgqzxEdK8apYsjTx2S8WDUlS2ilBlu9DR1CUcHmg4g3kOkFylZroogVAUKtpYQNYwAvdsjmrSdDNtiAg==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-Ptza08GgqzxEdK8apYsjTx2S8WDUlS2ilBlu9DR1CUcHmg4g3kOkFylZroogVAUKtpYQNYwAvdsjmrSdDNtiAg==, + } + engines: { node: '>=16' } peerDependencies: '@babel/core': '*' dependencies: @@ -6709,7 +9036,7 @@ packages: '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.3) '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-block-scoping': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-classes': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.3) @@ -6720,14 +9047,14 @@ packages: '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.3) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.3) + '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-runtime': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-runtime': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.3) '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.23.3) - '@babel/plugin-transform-typescript': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-typescript': 7.23.4(@babel/core@7.23.3) '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.23.3) '@babel/template': 7.22.15 babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.23.3) @@ -6737,8 +9064,11 @@ packages: dev: false /metro-react-native-babel-transformer@0.76.8(@babel/core@7.23.3): - resolution: {integrity: sha512-3h+LfS1WG1PAzhq8QF0kfXjxuXetbY/lgz8vYMQhgrMMp17WM1DNJD0gjx8tOGYbpbBC1qesJ45KMS4o5TA73A==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-3h+LfS1WG1PAzhq8QF0kfXjxuXetbY/lgz8vYMQhgrMMp17WM1DNJD0gjx8tOGYbpbBC1qesJ45KMS4o5TA73A==, + } + engines: { node: '>=16' } peerDependencies: '@babel/core': '*' dependencies: @@ -6752,24 +9082,33 @@ packages: dev: false /metro-resolver@0.76.8: - resolution: {integrity: sha512-KccOqc10vrzS7ZhG2NSnL2dh3uVydarB7nOhjreQ7C4zyWuiW9XpLC4h47KtGQv3Rnv/NDLJYeDqaJ4/+140HQ==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-KccOqc10vrzS7ZhG2NSnL2dh3uVydarB7nOhjreQ7C4zyWuiW9XpLC4h47KtGQv3Rnv/NDLJYeDqaJ4/+140HQ==, + } + engines: { node: '>=16' } dev: false /metro-runtime@0.76.8: - resolution: {integrity: sha512-XKahvB+iuYJSCr3QqCpROli4B4zASAYpkK+j3a0CJmokxCDNbgyI4Fp88uIL6rNaZfN0Mv35S0b99SdFXIfHjg==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-XKahvB+iuYJSCr3QqCpROli4B4zASAYpkK+j3a0CJmokxCDNbgyI4Fp88uIL6rNaZfN0Mv35S0b99SdFXIfHjg==, + } + engines: { node: '>=16' } dependencies: - '@babel/runtime': 7.23.2 + '@babel/runtime': 7.23.4 react-refresh: 0.4.3 dev: false /metro-source-map@0.76.8: - resolution: {integrity: sha512-Hh0ncPsHPVf6wXQSqJqB3K9Zbudht4aUtNpNXYXSxH+pteWqGAXnjtPsRAnCsCWl38wL0jYF0rJDdMajUI3BDw==} - engines: {node: '>=16'} - dependencies: - '@babel/traverse': 7.23.3 - '@babel/types': 7.23.3 + resolution: + { + integrity: sha512-Hh0ncPsHPVf6wXQSqJqB3K9Zbudht4aUtNpNXYXSxH+pteWqGAXnjtPsRAnCsCWl38wL0jYF0rJDdMajUI3BDw==, + } + engines: { node: '>=16' } + dependencies: + '@babel/traverse': 7.23.4 + '@babel/types': 7.23.4 invariant: 2.2.4 metro-symbolicate: 0.76.8 nullthrows: 1.1.1 @@ -6781,8 +9120,11 @@ packages: dev: false /metro-symbolicate@0.76.8: - resolution: {integrity: sha512-LrRL3uy2VkzrIXVlxoPtqb40J6Bf1mlPNmUQewipc3qfKKFgtPHBackqDy1YL0njDsWopCKcfGtFYLn0PTUn3w==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-LrRL3uy2VkzrIXVlxoPtqb40J6Bf1mlPNmUQewipc3qfKKFgtPHBackqDy1YL0njDsWopCKcfGtFYLn0PTUn3w==, + } + engines: { node: '>=16' } hasBin: true dependencies: invariant: 2.2.4 @@ -6796,26 +9138,32 @@ packages: dev: false /metro-transform-plugins@0.76.8: - resolution: {integrity: sha512-PlkGTQNqS51Bx4vuufSQCdSn2R2rt7korzngo+b5GCkeX5pjinPjnO2kNhQ8l+5bO0iUD/WZ9nsM2PGGKIkWFA==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-PlkGTQNqS51Bx4vuufSQCdSn2R2rt7korzngo+b5GCkeX5pjinPjnO2kNhQ8l+5bO0iUD/WZ9nsM2PGGKIkWFA==, + } + engines: { node: '>=16' } dependencies: '@babel/core': 7.23.3 - '@babel/generator': 7.23.3 + '@babel/generator': 7.23.4 '@babel/template': 7.22.15 - '@babel/traverse': 7.23.3 + '@babel/traverse': 7.23.4 nullthrows: 1.1.1 transitivePeerDependencies: - supports-color dev: false /metro-transform-worker@0.76.8(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-mE1fxVAnJKmwwJyDtThildxxos9+DGs9+vTrx2ktSFMEVTtXS/bIv2W6hux1pqivqAfyJpTeACXHk5u2DgGvIQ==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-mE1fxVAnJKmwwJyDtThildxxos9+DGs9+vTrx2ktSFMEVTtXS/bIv2W6hux1pqivqAfyJpTeACXHk5u2DgGvIQ==, + } + engines: { node: '>=16' } dependencies: '@babel/core': 7.23.3 - '@babel/generator': 7.23.3 - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 + '@babel/generator': 7.23.4 + '@babel/parser': 7.23.4 + '@babel/types': 7.23.4 babel-preset-fbjs: 3.4.0(@babel/core@7.23.3) metro: 0.76.8(bufferutil@4.0.8)(utf-8-validate@6.0.3) metro-babel-transformer: 0.76.8 @@ -6832,17 +9180,20 @@ packages: dev: false /metro@0.76.8(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-oQA3gLzrrYv3qKtuWArMgHPbHu8odZOD9AoavrqSFllkPgOtmkBvNNDLCELqv5SjBfqjISNffypg+5UGG3y0pg==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-oQA3gLzrrYv3qKtuWArMgHPbHu8odZOD9AoavrqSFllkPgOtmkBvNNDLCELqv5SjBfqjISNffypg+5UGG3y0pg==, + } + engines: { node: '>=16' } hasBin: true dependencies: - '@babel/code-frame': 7.22.13 + '@babel/code-frame': 7.23.4 '@babel/core': 7.23.3 - '@babel/generator': 7.23.3 - '@babel/parser': 7.23.3 + '@babel/generator': 7.23.4 + '@babel/parser': 7.23.4 '@babel/template': 7.22.15 - '@babel/traverse': 7.23.3 - '@babel/types': 7.23.3 + '@babel/traverse': 7.23.4 + '@babel/types': 7.23.4 accepts: 1.3.8 async: 3.2.5 chalk: 4.1.2 @@ -6892,82 +9243,130 @@ packages: dev: false /micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} + resolution: + { + integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, + } + engines: { node: '>=8.6' } dependencies: braces: 3.0.2 picomatch: 2.3.1 /mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==, + } + engines: { node: '>= 0.6' } dev: false /mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==, + } + engines: { node: '>= 0.6' } dependencies: mime-db: 1.52.0 dev: false /mime@1.6.0: - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==, + } + engines: { node: '>=4' } hasBin: true dev: false /mime@2.6.0: - resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} - engines: {node: '>=4.0.0'} + resolution: + { + integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==, + } + engines: { node: '>=4.0.0' } hasBin: true dev: false /mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, + } + engines: { node: '>=6' } /mini-svg-data-uri@1.4.4: - resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} + resolution: + { + integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==, + } hasBin: true dev: false /minimalistic-assert@1.0.1: - resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + resolution: + { + integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==, + } dev: false /minimalistic-crypto-utils@1.0.1: - resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + resolution: + { + integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==, + } dev: false /minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + resolution: + { + integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, + } dependencies: brace-expansion: 1.1.11 /minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + resolution: + { + integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, + } dev: false /mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + resolution: + { + integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==, + } hasBin: true dependencies: minimist: 1.2.8 dev: false /ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} + resolution: + { + integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==, + } dev: false /ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + resolution: + { + integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, + } /ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + resolution: + { + integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, + } dev: false /mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + resolution: + { + integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==, + } dependencies: any-promise: 1.3.0 object-assign: 4.1.1 @@ -6975,32 +9374,50 @@ packages: dev: false /n@9.2.0: - resolution: {integrity: sha512-R8mFN2OWwNVc+r1f9fDzcT34DnDwUIHskrpTesZ6SdluaXBBnRtTu5tlfaSPloBi1Z/eGJoPO9nhyawWPad5UQ==} + resolution: + { + integrity: sha512-R8mFN2OWwNVc+r1f9fDzcT34DnDwUIHskrpTesZ6SdluaXBBnRtTu5tlfaSPloBi1Z/eGJoPO9nhyawWPad5UQ==, + } os: ['!win32'] hasBin: true dev: false /nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + resolution: + { + integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==, + } + engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 } hasBin: true dev: false /natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + resolution: + { + integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, + } /negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==, + } + engines: { node: '>= 0.6' } dev: false /neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + resolution: + { + integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==, + } dev: false /next@14.0.0(@babel/core@7.23.3)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-J0jHKBJpB9zd4+c153sair0sz44mbaCHxggs8ryVXSFBuBqJ8XdE9/ozoV85xGh2VnSjahwntBZZgsihL9QznA==} - engines: {node: '>=18.17.0'} + resolution: + { + integrity: sha512-J0jHKBJpB9zd4+c153sair0sz44mbaCHxggs8ryVXSFBuBqJ8XdE9/ozoV85xGh2VnSjahwntBZZgsihL9QznA==, + } + engines: { node: '>=18.17.0' } hasBin: true peerDependencies: '@opentelemetry/api': ^1.1.0 @@ -7016,7 +9433,7 @@ packages: '@next/env': 14.0.0 '@swc/helpers': 0.5.2 busboy: 1.6.0 - caniuse-lite: 1.0.30001561 + caniuse-lite: 1.0.30001563 postcss: 8.4.31 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -7038,24 +9455,36 @@ packages: dev: false /nocache@3.0.4: - resolution: {integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==} - engines: {node: '>=12.0.0'} + resolution: + { + integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==, + } + engines: { node: '>=12.0.0' } dev: false /node-abort-controller@3.1.1: - resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==} + resolution: + { + integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==, + } dev: false /node-dir@0.1.17: - resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} - engines: {node: '>= 0.10.5'} + resolution: + { + integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==, + } + engines: { node: '>= 0.10.5' } dependencies: minimatch: 3.1.2 dev: false /node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} - engines: {node: 4.x || >=6.0.0} + resolution: + { + integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==, + } + engines: { node: 4.x || >=6.0.0 } peerDependencies: encoding: ^0.1.0 peerDependenciesMeta: @@ -7065,68 +9494,110 @@ packages: whatwg-url: 5.0.0 dev: false - /node-gyp-build@4.6.1: - resolution: {integrity: sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==} + /node-gyp-build@4.7.0: + resolution: + { + integrity: sha512-PbZERfeFdrHQOOXiAKOY0VPbykZy90ndPKk0d+CFDegTKmWp1VgOTz2xACVbr1BjCWxrQp68CXtvNsveFhqDJg==, + } hasBin: true dev: false /node-int64@0.4.0: - resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} + resolution: + { + integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==, + } /node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + resolution: + { + integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==, + } /node-stream-zip@1.15.0: - resolution: {integrity: sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==} - engines: {node: '>=0.12.0'} + resolution: + { + integrity: sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==, + } + engines: { node: '>=0.12.0' } dev: false /normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, + } + engines: { node: '>=0.10.0' } /normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==, + } + engines: { node: '>=0.10.0' } dev: false /npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==, + } + engines: { node: '>=8' } dependencies: path-key: 3.1.1 /nullthrows@1.1.1: - resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} + resolution: + { + integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==, + } dev: false /ob1@0.76.8: - resolution: {integrity: sha512-dlBkJJV5M/msj9KYA9upc+nUWVwuOFFTbu28X6kZeGwcuW+JxaHSBZ70SYQnk5M+j5JbNLR6yKHmgW4M5E7X5g==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-dlBkJJV5M/msj9KYA9upc+nUWVwuOFFTbu28X6kZeGwcuW+JxaHSBZ70SYQnk5M+j5JbNLR6yKHmgW4M5E7X5g==, + } + engines: { node: '>=16' } dev: false /object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, + } + engines: { node: '>=0.10.0' } dev: false /object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==, + } + engines: { node: '>= 6' } dev: false /object-inspect@1.13.1: - resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} + resolution: + { + integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==, + } dev: false /object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==, + } + engines: { node: '>= 0.4' } dev: false /object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -7135,8 +9606,11 @@ packages: dev: false /object.entries@1.1.7: - resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -7144,8 +9618,11 @@ packages: dev: false /object.fromentries@2.0.7: - resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -7153,7 +9630,10 @@ packages: dev: false /object.groupby@1.0.1: - resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} + resolution: + { + integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==, + } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -7162,15 +9642,21 @@ packages: dev: false /object.hasown@1.1.3: - resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==} + resolution: + { + integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==, + } dependencies: define-properties: 1.2.1 es-abstract: 1.22.3 dev: false /object.values@1.1.7: - resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -7178,45 +9664,66 @@ packages: dev: false /on-finished@2.3.0: - resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==, + } + engines: { node: '>= 0.8' } dependencies: ee-first: 1.1.1 dev: false /on-finished@2.4.1: - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==, + } + engines: { node: '>= 0.8' } dependencies: ee-first: 1.1.1 dev: false /on-headers@1.0.2: - resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==, + } + engines: { node: '>= 0.8' } dev: false /once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + resolution: + { + integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, + } dependencies: wrappy: 1.0.2 /onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==, + } + engines: { node: '>=6' } dependencies: mimic-fn: 2.1.0 /open@6.4.0: - resolution: {integrity: sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==, + } + engines: { node: '>=8' } dependencies: is-wsl: 1.1.0 dev: false /optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==, + } + engines: { node: '>= 0.8.0' } dependencies: '@aashutoshrathi/word-wrap': 1.2.6 deep-is: 0.1.4 @@ -7226,8 +9733,11 @@ packages: type-check: 0.4.0 /ora@5.4.1: - resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==, + } + engines: { node: '>=10' } dependencies: bl: 4.1.0 chalk: 4.1.2 @@ -7241,138 +9751,216 @@ packages: dev: false /os-tmpdir@1.0.2: - resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==, + } + engines: { node: '>=0.10.0' } dev: false /p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==, + } + engines: { node: '>=6' } dependencies: p-try: 2.2.0 /p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==, + } + engines: { node: '>=10' } dependencies: yocto-queue: 0.1.0 /p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==, + } + engines: { node: '>=6' } dependencies: p-limit: 2.3.0 dev: false /p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==, + } + engines: { node: '>=8' } dependencies: p-limit: 2.3.0 /p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==, + } + engines: { node: '>=10' } dependencies: p-limit: 3.1.0 /p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==, + } + engines: { node: '>=6' } /pako@1.0.11: - resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} + resolution: + { + integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==, + } dev: false /parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==, + } + engines: { node: '>=6' } dependencies: callsites: 3.1.0 /parse-json@4.0.0: - resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==, + } + engines: { node: '>=4' } dependencies: error-ex: 1.3.2 json-parse-better-errors: 1.0.2 dev: false /parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==, + } + engines: { node: '>=8' } dependencies: - '@babel/code-frame': 7.22.13 + '@babel/code-frame': 7.23.4 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 /parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==, + } + engines: { node: '>= 0.8' } dev: false /path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==, + } + engines: { node: '>=4' } dev: false /path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==, + } + engines: { node: '>=8' } /path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, + } + engines: { node: '>=0.10.0' } /path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, + } + engines: { node: '>=8' } /path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + resolution: + { + integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, + } /path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, + } + engines: { node: '>=8' } /picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + resolution: + { + integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==, + } /picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} + resolution: + { + integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, + } + engines: { node: '>=8.6' } /pify@2.3.0: - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==, + } + engines: { node: '>=0.10.0' } dev: false /pify@4.0.1: - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==, + } + engines: { node: '>=6' } dev: false /pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==, + } + engines: { node: '>= 6' } /pkg-dir@3.0.0: - resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==, + } + engines: { node: '>=6' } dependencies: find-up: 3.0.0 dev: false /pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==, + } + engines: { node: '>=8' } dependencies: find-up: 4.1.0 /postcss-import@15.1.0(postcss@8.4.27): - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==, + } + engines: { node: '>=14.0.0' } peerDependencies: postcss: ^8.0.0 dependencies: @@ -7383,8 +9971,11 @@ packages: dev: false /postcss-js@4.0.1(postcss@8.4.27): - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} + resolution: + { + integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==, + } + engines: { node: ^12 || ^14 || >= 16 } peerDependencies: postcss: ^8.4.21 dependencies: @@ -7392,9 +9983,12 @@ packages: postcss: 8.4.27 dev: false - /postcss-load-config@4.0.1(postcss@8.4.27): - resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} - engines: {node: '>= 14'} + /postcss-load-config@4.0.2(postcss@8.4.27): + resolution: + { + integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==, + } + engines: { node: '>= 14' } peerDependencies: postcss: '>=8.0.9' ts-node: '>=9.0.0' @@ -7404,14 +9998,17 @@ packages: ts-node: optional: true dependencies: - lilconfig: 2.1.0 + lilconfig: 3.0.0 postcss: 8.4.27 yaml: 2.3.4 dev: false /postcss-nested@6.0.1(postcss@8.4.27): - resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} - engines: {node: '>=12.0'} + resolution: + { + integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==, + } + engines: { node: '>=12.0' } peerDependencies: postcss: ^8.2.14 dependencies: @@ -7420,20 +10017,29 @@ packages: dev: false /postcss-selector-parser@6.0.13: - resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==, + } + engines: { node: '>=4' } dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 dev: false /postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + resolution: + { + integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==, + } dev: false /postcss@8.4.27: - resolution: {integrity: sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==} - engines: {node: ^10 || ^12 || >=14} + resolution: + { + integrity: sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==, + } + engines: { node: ^10 || ^12 || >=14 } dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -7441,8 +10047,11 @@ packages: dev: false /postcss@8.4.31: - resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} - engines: {node: ^10 || ^12 || >=14} + resolution: + { + integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==, + } + engines: { node: ^10 || ^12 || >=14 } dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -7450,12 +10059,27 @@ packages: dev: false /prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==, + } + engines: { node: '>= 0.8.0' } + + /prettier@3.1.0: + resolution: + { + integrity: sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==, + } + engines: { node: '>=14' } + hasBin: true + dev: true /pretty-format@26.6.2: - resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==, + } + engines: { node: '>= 10' } dependencies: '@jest/types': 26.6.2 ansi-regex: 5.0.1 @@ -7464,32 +10088,47 @@ packages: dev: false /pretty-format@29.7.0: - resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 react-is: 18.2.0 /process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + resolution: + { + integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==, + } dev: false /promise@8.3.0: - resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==} + resolution: + { + integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==, + } dependencies: asap: 2.0.6 dev: false /prompts@2.4.2: - resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==, + } + engines: { node: '>= 6' } dependencies: kleur: 3.0.3 sisteransi: 1.0.5 /prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + resolution: + { + integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==, + } dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 @@ -7497,38 +10136,62 @@ packages: dev: false /proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + resolution: + { + integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==, + } dev: false /punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==, + } + engines: { node: '>=6' } /pure-rand@6.0.4: - resolution: {integrity: sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==} + resolution: + { + integrity: sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==, + } /queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + resolution: + { + integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, + } /queue@6.0.2: - resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} + resolution: + { + integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==, + } dependencies: inherits: 2.0.4 dev: false /randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + resolution: + { + integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==, + } dependencies: safe-buffer: 5.2.1 dev: false /range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==, + } + engines: { node: '>= 0.6' } dev: false /react-devtools-core@4.28.5(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-cq/o30z9W2Wb4rzBefjv5fBalHU0rJGZCHAkf/RHSBWSSYwh8PlQTqqOJmgIIbBtpj27T6FIPXeomIjZtCNVqA==} + resolution: + { + integrity: sha512-cq/o30z9W2Wb4rzBefjv5fBalHU0rJGZCHAkf/RHSBWSSYwh8PlQTqqOJmgIIbBtpj27T6FIPXeomIjZtCNVqA==, + } dependencies: shell-quote: 1.8.1 ws: 7.5.9(bufferutil@4.0.8)(utf-8-validate@6.0.3) @@ -7538,7 +10201,10 @@ packages: dev: false /react-dom@18.2.0(react@18.2.0): - resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + resolution: + { + integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==, + } peerDependencies: react: ^18.2.0 dependencies: @@ -7547,8 +10213,11 @@ packages: scheduler: 0.23.0 dev: false - /react-icons@4.11.0(react@18.2.0): - resolution: {integrity: sha512-V+4khzYcE5EBk/BvcuYRq6V/osf11ODUM2J8hg2FDSswRrGvqiYUYPRy4OdrWaQOBj4NcpJfmHZLNaD+VH0TyA==} + /react-icons@4.12.0(react@18.2.0): + resolution: + { + integrity: sha512-IBaDuHiShdZqmfc/TwHu6+d6k2ltNCf3AszxNmjJc1KUfXdEeRJOKyNvLmAHaarhzGmTSVygNdyu8/opXv2gaw==, + } peerDependencies: react: '*' dependencies: @@ -7556,8 +10225,11 @@ packages: dev: false /react-indiana-drag-scroll@2.2.0(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-+W/3B2OQV0FrbdnsoIo4dww/xpH0MUQJz6ziQb7H+oBko3OCbXuzDFYnho6v6yhGrYDNWYPuFUewb89IONEl/A==} - engines: {node: '>=8', npm: '>=5'} + resolution: + { + integrity: sha512-+W/3B2OQV0FrbdnsoIo4dww/xpH0MUQJz6ziQb7H+oBko3OCbXuzDFYnho6v6yhGrYDNWYPuFUewb89IONEl/A==, + } + engines: { node: '>=8', npm: '>=5' } peerDependencies: react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 react-dom: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 @@ -7570,18 +10242,30 @@ packages: dev: false /react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + resolution: + { + integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==, + } dev: false /react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + resolution: + { + integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==, + } dev: false /react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} + resolution: + { + integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==, + } /react-konva@18.2.10(konva@9.2.3)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-ohcX1BJINL43m4ynjZ24MxFI1syjBdrXhqVxYVDw2rKgr3yuS0x/6m1Y2Z4sl4T/gKhfreBx8KHisd0XC6OT1g==} + resolution: + { + integrity: sha512-ohcX1BJINL43m4ynjZ24MxFI1syjBdrXhqVxYVDw2rKgr3yuS0x/6m1Y2Z4sl4T/gKhfreBx8KHisd0XC6OT1g==, + } peerDependencies: konva: ^8.0.1 || ^7.2.5 || ^9.0.0 react: '>=18.0.0' @@ -7596,27 +10280,30 @@ packages: scheduler: 0.23.0 dev: false - /react-native@0.72.6(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-RafPY2gM7mcrFySS8TL8x+TIO3q7oAlHpzEmC7Im6pmXni6n1AuufGaVh0Narbr1daxstw7yW7T9BKW5dpVc2A==} - engines: {node: '>=16'} + /react-native@0.72.7(@babel/core@7.23.3)(@babel/preset-env@7.23.3)(bufferutil@4.0.8)(react@18.2.0)(utf-8-validate@6.0.3): + resolution: + { + integrity: sha512-dqVFojOO9rOvyFbbM3/v9/GJR355OSuBhEY4NQlMIRc2w0Xch5MT/2uPoq3+OvJ+5h7a8LFAco3fucSffG0FbA==, + } + engines: { node: '>=16' } hasBin: true peerDependencies: react: 18.2.0 dependencies: '@jest/create-cache-key-function': 29.7.0 - '@react-native-community/cli': 11.3.7(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3) - '@react-native-community/cli-platform-android': 11.3.7 - '@react-native-community/cli-platform-ios': 11.3.7 + '@react-native-community/cli': 11.3.10(@babel/core@7.23.3)(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@react-native-community/cli-platform-android': 11.3.10 + '@react-native-community/cli-platform-ios': 11.3.10 '@react-native/assets-registry': 0.72.0 '@react-native/codegen': 0.72.7(@babel/preset-env@7.23.3) '@react-native/gradle-plugin': 0.72.11 '@react-native/js-polyfills': 0.72.1 '@react-native/normalize-colors': 0.72.0 - '@react-native/virtualized-lists': 0.72.8(react-native@0.72.6) + '@react-native/virtualized-lists': 0.72.8(react-native@0.72.7) abort-controller: 3.0.0 anser: 1.4.10 base64-js: 1.5.1 - deprecated-react-native-prop-types: 4.1.0 + deprecated-react-native-prop-types: 4.2.3 event-target-shim: 5.0.1 flow-enums-runtime: 0.0.5 invariant: 2.2.4 @@ -7650,8 +10337,11 @@ packages: dev: false /react-reconciler@0.27.0(react@18.2.0): - resolution: {integrity: sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==, + } + engines: { node: '>=0.10.0' } peerDependencies: react: ^18.0.0 dependencies: @@ -7661,8 +10351,11 @@ packages: dev: false /react-reconciler@0.29.0(react@18.2.0): - resolution: {integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==, + } + engines: { node: '>=0.10.0' } peerDependencies: react: ^18.2.0 dependencies: @@ -7672,12 +10365,18 @@ packages: dev: false /react-refresh@0.4.3: - resolution: {integrity: sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==, + } + engines: { node: '>=0.10.0' } dev: false /react-shallow-renderer@16.15.0(react@18.2.0): - resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} + resolution: + { + integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==, + } peerDependencies: react: ^16.0.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -7686,16 +10385,19 @@ packages: react-is: 18.2.0 dev: false - /react-spring@9.7.3(@react-three/fiber@8.15.10)(konva@9.2.3)(react-dom@18.2.0)(react-konva@18.2.10)(react-native@0.72.6)(react-zdog@1.2.2)(react@18.2.0)(three@0.158.0)(zdog@1.1.3): - resolution: {integrity: sha512-oTxDpFV5gzq7jQX6+bU0SVq+vX8VnuuT5c8Zwn6CpDErOPvCmV+DRkPiEBtaL3Ozgzwiy5yFx83N0h303j/r3A==} + /react-spring@9.7.3(@react-three/fiber@8.15.11)(konva@9.2.3)(react-dom@18.2.0)(react-konva@18.2.10)(react-native@0.72.7)(react-zdog@1.2.2)(react@18.2.0)(three@0.158.0)(zdog@1.1.3): + resolution: + { + integrity: sha512-oTxDpFV5gzq7jQX6+bU0SVq+vX8VnuuT5c8Zwn6CpDErOPvCmV+DRkPiEBtaL3Ozgzwiy5yFx83N0h303j/r3A==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: '@react-spring/core': 9.7.3(react@18.2.0) '@react-spring/konva': 9.7.3(konva@9.2.3)(react-konva@18.2.10)(react@18.2.0) - '@react-spring/native': 9.7.3(react-native@0.72.6)(react@18.2.0) - '@react-spring/three': 9.7.3(@react-three/fiber@8.15.10)(react@18.2.0)(three@0.158.0) + '@react-spring/native': 9.7.3(react-native@0.72.7)(react@18.2.0) + '@react-spring/three': 9.7.3(@react-three/fiber@8.15.11)(react@18.2.0)(three@0.158.0) '@react-spring/web': 9.7.3(react-dom@18.2.0)(react@18.2.0) '@react-spring/zdog': 9.7.3(react-dom@18.2.0)(react-zdog@1.2.2)(react@18.2.0)(zdog@1.1.3) react: 18.2.0 @@ -7711,7 +10413,10 @@ packages: dev: false /react-use-measure@2.1.1(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-nocZhN26cproIiIduswYpV5y5lQpSQS1y/4KuvUCjSKmw7ZWIS/+g3aFnX3WdBkyuGUtTLif3UTqnLLhbDoQig==} + resolution: + { + integrity: sha512-nocZhN26cproIiIduswYpV5y5lQpSQS1y/4KuvUCjSKmw7ZWIS/+g3aFnX3WdBkyuGUtTLif3UTqnLLhbDoQig==, + } peerDependencies: react: '>=16.13' react-dom: '>=16.13' @@ -7722,7 +10427,10 @@ packages: dev: false /react-zdog@1.2.2: - resolution: {integrity: sha512-Ix7ALha91aOEwiHuxumCeYbARS5XNpc/w0v145oGkM6poF/CvhKJwzLhM5sEZbtrghMA+psAhOJkCTzJoseicA==} + resolution: + { + integrity: sha512-Ix7ALha91aOEwiHuxumCeYbARS5XNpc/w0v145oGkM6poF/CvhKJwzLhM5sEZbtrghMA+psAhOJkCTzJoseicA==, + } dependencies: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -7730,20 +10438,29 @@ packages: dev: false /react@18.2.0: - resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==, + } + engines: { node: '>=0.10.0' } dependencies: loose-envify: 1.4.0 dev: false /read-cache@1.0.0: - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + resolution: + { + integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==, + } dependencies: pify: 2.3.0 dev: false /readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + resolution: + { + integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==, + } dependencies: core-util-is: 1.0.3 inherits: 2.0.4 @@ -7755,8 +10472,11 @@ packages: dev: false /readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==, + } + engines: { node: '>= 6' } dependencies: inherits: 2.0.4 string_decoder: 1.3.0 @@ -7764,19 +10484,28 @@ packages: dev: false /readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} + resolution: + { + integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, + } + engines: { node: '>=8.10.0' } dependencies: picomatch: 2.3.1 dev: false /readline@1.3.0: - resolution: {integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==} + resolution: + { + integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==, + } dev: false /recast@0.21.5: - resolution: {integrity: sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==} - engines: {node: '>= 4'} + resolution: + { + integrity: sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==, + } + engines: { node: '>= 4' } dependencies: ast-types: 0.15.2 esprima: 4.0.1 @@ -7785,8 +10514,11 @@ packages: dev: false /reflect.getprototypeof@1.0.4: - resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -7797,33 +10529,51 @@ packages: dev: false /regenerate-unicode-properties@10.1.1: - resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==, + } + engines: { node: '>=4' } dependencies: regenerate: 1.4.2 dev: false /regenerate@1.4.2: - resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} + resolution: + { + integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==, + } dev: false /regenerator-runtime@0.13.11: - resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} + resolution: + { + integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==, + } dev: false /regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} + resolution: + { + integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==, + } dev: false /regenerator-transform@0.15.2: - resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} + resolution: + { + integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==, + } dependencies: - '@babel/runtime': 7.23.2 + '@babel/runtime': 7.23.4 dev: false /regexp.prototype.flags@1.5.1: - resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -7831,8 +10581,11 @@ packages: dev: false /regexpu-core@5.3.2: - resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==, + } + engines: { node: '>=4' } dependencies: '@babel/regjsgen': 0.8.0 regenerate: 1.4.2 @@ -7843,58 +10596,94 @@ packages: dev: false /regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} + resolution: + { + integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==, + } hasBin: true dependencies: jsesc: 0.5.0 dev: false /require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==, + } + engines: { node: '>=0.10.0' } /require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==, + } + engines: { node: '>=0.10.0' } dev: false /require-main-filename@2.0.0: - resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} + resolution: + { + integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==, + } dev: false /resize-observer-polyfill@1.5.1: - resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} + resolution: + { + integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==, + } dev: false /resolve-cwd@3.0.0: - resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==, + } + engines: { node: '>=8' } dependencies: resolve-from: 5.0.0 /resolve-from@3.0.0: - resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==, + } + engines: { node: '>=4' } dev: false /resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==, + } + engines: { node: '>=4' } /resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==, + } + engines: { node: '>=8' } /resolve-pkg-maps@1.0.0: - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + resolution: + { + integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==, + } dev: false /resolve.exports@2.0.2: - resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==, + } + engines: { node: '>=10' } /resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + resolution: + { + integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==, + } hasBin: true dependencies: is-core-module: 2.13.1 @@ -7902,7 +10691,10 @@ packages: supports-preserve-symlinks-flag: 1.0.0 /resolve@2.0.0-next.5: - resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + resolution: + { + integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==, + } hasBin: true dependencies: is-core-module: 2.13.1 @@ -7911,44 +10703,65 @@ packages: dev: false /restore-cursor@3.1.0: - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==, + } + engines: { node: '>=8' } dependencies: onetime: 5.1.2 signal-exit: 3.0.7 dev: false /reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + resolution: + { + integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, + } + engines: { iojs: '>=1.0.0', node: '>=0.10.0' } /rimraf@2.6.3: - resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} + resolution: + { + integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==, + } hasBin: true dependencies: glob: 7.2.3 dev: false /rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + resolution: + { + integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==, + } hasBin: true dependencies: glob: 7.2.3 /run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + resolution: + { + integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, + } dependencies: queue-microtask: 1.2.3 /rustbn-wasm@0.2.0: - resolution: {integrity: sha512-FThvYFNTqrEKGqXuseeg0zR7yROh/6U1617mCHF68OVqrN1tNKRN7Tdwy4WayPVsCmmK+eMxtIZX1qL6JxTkMg==} + resolution: + { + integrity: sha512-FThvYFNTqrEKGqXuseeg0zR7yROh/6U1617mCHF68OVqrN1tNKRN7Tdwy4WayPVsCmmK+eMxtIZX1qL6JxTkMg==, + } dependencies: '@scure/base': 1.1.3 dev: false /safe-array-concat@1.0.1: - resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} - engines: {node: '>=0.4'} + resolution: + { + integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==, + } + engines: { node: '>=0.4' } dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 @@ -7957,15 +10770,24 @@ packages: dev: false /safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + resolution: + { + integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==, + } dev: false /safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + resolution: + { + integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, + } dev: false /safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} + resolution: + { + integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==, + } dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 @@ -7973,26 +10795,38 @@ packages: dev: false /scheduler@0.21.0: - resolution: {integrity: sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==} + resolution: + { + integrity: sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==, + } dependencies: loose-envify: 1.4.0 dev: false /scheduler@0.23.0: - resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + resolution: + { + integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==, + } dependencies: loose-envify: 1.4.0 dev: false /scheduler@0.24.0-canary-efb381bbf-20230505: - resolution: {integrity: sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==} + resolution: + { + integrity: sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==, + } dependencies: loose-envify: 1.4.0 dev: false /schema-utils@3.3.0: - resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} - engines: {node: '>= 10.13.0'} + resolution: + { + integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==, + } + engines: { node: '>= 10.13.0' } dependencies: '@types/json-schema': 7.0.15 ajv: 6.12.6 @@ -8000,8 +10834,11 @@ packages: dev: false /schema-utils@4.2.0: - resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} - engines: {node: '>= 12.13.0'} + resolution: + { + integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==, + } + engines: { node: '>= 12.13.0' } dependencies: '@types/json-schema': 7.0.15 ajv: 8.12.0 @@ -8010,24 +10847,36 @@ packages: dev: false /semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + resolution: + { + integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==, + } hasBin: true dev: false /semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + resolution: + { + integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==, + } hasBin: true /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==, + } + engines: { node: '>=10' } hasBin: true dependencies: lru-cache: 6.0.0 /send@0.18.0: - resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==, + } + engines: { node: '>= 0.8.0' } dependencies: debug: 2.6.9 depd: 2.0.0 @@ -8047,19 +10896,28 @@ packages: dev: false /serialize-error@2.1.0: - resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==, + } + engines: { node: '>=0.10.0' } dev: false /serialize-javascript@6.0.1: - resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==} + resolution: + { + integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==, + } dependencies: randombytes: 2.1.0 dev: false /serve-static@1.15.0: - resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==, + } + engines: { node: '>= 0.8.0' } dependencies: encodeurl: 1.0.2 escape-html: 1.0.3 @@ -8070,12 +10928,18 @@ packages: dev: false /set-blocking@2.0.0: - resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + resolution: + { + integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==, + } dev: false /set-function-length@1.1.1: - resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==, + } + engines: { node: '>= 0.4' } dependencies: define-data-property: 1.1.1 get-intrinsic: 1.2.2 @@ -8084,8 +10948,11 @@ packages: dev: false /set-function-name@2.0.1: - resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==, + } + engines: { node: '>= 0.4' } dependencies: define-data-property: 1.1.1 functions-have-names: 1.2.3 @@ -8093,36 +10960,57 @@ packages: dev: false /setimmediate@1.0.5: - resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + resolution: + { + integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==, + } dev: false /setprototypeof@1.2.0: - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + resolution: + { + integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==, + } dev: false /shallow-clone@3.0.1: - resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==, + } + engines: { node: '>=8' } dependencies: kind-of: 6.0.3 dev: false /shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, + } + engines: { node: '>=8' } dependencies: shebang-regex: 3.0.0 /shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, + } + engines: { node: '>=8' } /shell-quote@1.8.1: - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} + resolution: + { + integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==, + } dev: false /side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} + resolution: + { + integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==, + } dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 @@ -8130,23 +11018,38 @@ packages: dev: false /signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + resolution: + { + integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==, + } /sisteransi@1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + resolution: + { + integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==, + } /slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, + } + engines: { node: '>=8' } /slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==, + } + engines: { node: '>=12' } dev: false /slice-ansi@2.1.0: - resolution: {integrity: sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==, + } + engines: { node: '>=6' } dependencies: ansi-styles: 3.2.1 astral-regex: 1.0.0 @@ -8154,8 +11057,11 @@ packages: dev: false /solc@0.8.23: - resolution: {integrity: sha512-uqe69kFWfJc3cKdxj+Eg9CdW1CP3PLZDPeyJStQVWL8Q9jjjKD0VuRAKBFR8mrWiq5A7gJqERxJFYJsklrVsfA==} - engines: {node: '>=10.0.0'} + resolution: + { + integrity: sha512-uqe69kFWfJc3cKdxj+Eg9CdW1CP3PLZDPeyJStQVWL8Q9jjjKD0VuRAKBFR8mrWiq5A7gJqERxJFYJsklrVsfA==, + } + engines: { node: '>=10.0.0' } hasBin: true dependencies: command-exists: 1.2.9 @@ -8171,89 +11077,137 @@ packages: dev: false /source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==, + } + engines: { node: '>=0.10.0' } dev: false /source-map-support@0.5.13: - resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} + resolution: + { + integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==, + } dependencies: buffer-from: 1.1.2 source-map: 0.6.1 /source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + resolution: + { + integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==, + } dependencies: buffer-from: 1.1.2 source-map: 0.6.1 dev: false /source-map@0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} + 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'} + resolution: + { + integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, + } + engines: { node: '>=0.10.0' } /source-map@0.7.4: - resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==, + } + engines: { node: '>= 8' } dev: false /sprintf-js@1.0.3: - resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + resolution: + { + integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==, + } /stack-utils@2.0.6: - resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==, + } + engines: { node: '>=10' } dependencies: escape-string-regexp: 2.0.0 /stackframe@1.3.4: - resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} + resolution: + { + integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==, + } dev: false /stacktrace-parser@0.1.10: - resolution: {integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==, + } + engines: { node: '>=6' } dependencies: type-fest: 0.7.1 dev: false /statuses@1.5.0: - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==, + } + engines: { node: '>= 0.6' } dev: false /statuses@2.0.1: - resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==, + } + engines: { node: '>= 0.8' } dev: false /streamsearch@1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} + resolution: + { + integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==, + } + engines: { node: '>=10.0.0' } dev: false /string-length@4.0.2: - resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==, + } + engines: { node: '>=10' } dependencies: char-regex: 1.0.2 strip-ansi: 6.0.1 /string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==, + } + engines: { node: '>=8' } dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 /string.prototype.matchall@4.0.10: - resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} + resolution: + { + integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==, + } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -8267,8 +11221,11 @@ packages: dev: false /string.prototype.trim@1.2.8: - resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -8276,7 +11233,10 @@ packages: dev: false /string.prototype.trimend@1.0.7: - resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} + resolution: + { + integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==, + } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -8284,7 +11244,10 @@ packages: dev: false /string.prototype.trimstart@1.0.7: - resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} + resolution: + { + integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==, + } dependencies: call-bind: 1.0.5 define-properties: 1.2.1 @@ -8292,54 +11255,84 @@ packages: dev: false /string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + resolution: + { + integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==, + } dependencies: safe-buffer: 5.1.2 dev: false /string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + resolution: + { + integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, + } dependencies: safe-buffer: 5.2.1 dev: false /strip-ansi@5.2.0: - resolution: {integrity: sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==, + } + engines: { node: '>=6' } dependencies: ansi-regex: 4.1.1 dev: false /strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, + } + engines: { node: '>=8' } dependencies: ansi-regex: 5.0.1 /strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==, + } + engines: { node: '>=4' } dev: false /strip-bom@4.0.0: - resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==, + } + engines: { node: '>=8' } /strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==, + } + engines: { node: '>=6' } /strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, + } + engines: { node: '>=8' } /strnum@1.0.5: - resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} + resolution: + { + integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==, + } dev: false /styled-jsx@5.1.1(@babel/core@7.23.3)(react@18.2.0): - resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} - engines: {node: '>= 12.0.0'} + resolution: + { + integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==, + } + engines: { node: '>= 12.0.0' } peerDependencies: '@babel/core': '*' babel-plugin-macros: '*' @@ -8356,8 +11349,11 @@ packages: dev: false /sucrase@3.34.0: - resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==, + } + engines: { node: '>=8' } hasBin: true dependencies: '@jridgewell/gen-mapping': 0.3.3 @@ -8370,33 +11366,51 @@ packages: dev: false /sudo-prompt@9.2.1: - resolution: {integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==} + resolution: + { + integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==, + } dev: false /supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, + } + engines: { node: '>=4' } dependencies: has-flag: 3.0.0 /supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, + } + engines: { node: '>=8' } dependencies: has-flag: 4.0.0 /supports-color@8.1.1: - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==, + } + engines: { node: '>=10' } dependencies: has-flag: 4.0.0 /supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, + } + engines: { node: '>= 0.4' } /suspend-react@0.1.3(react@18.2.0): - resolution: {integrity: sha512-aqldKgX9aZqpoDp3e8/BZ8Dm7x1pJl+qI3ZKxDN0i/IQTWUwBx/ManmlVJ3wowqbno6c2bmiIfs+Um6LbsjJyQ==} + resolution: + { + integrity: sha512-aqldKgX9aZqpoDp3e8/BZ8Dm7x1pJl+qI3ZKxDN0i/IQTWUwBx/ManmlVJ3wowqbno6c2bmiIfs+Um6LbsjJyQ==, + } peerDependencies: react: '>=17.0' dependencies: @@ -8404,16 +11418,25 @@ packages: dev: false /tabbable@6.2.0: - resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} + resolution: + { + integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==, + } dev: false /tailwind-merge@1.14.0: - resolution: {integrity: sha512-3mFKyCo/MBcgyOTlrY8T7odzZFx+w+qKSMAmdFzRvqBfLlSigU6TZnlFHK0lkMwj9Bj8OYU+9yW9lmGuS0QEnQ==} + resolution: + { + integrity: sha512-3mFKyCo/MBcgyOTlrY8T7odzZFx+w+qKSMAmdFzRvqBfLlSigU6TZnlFHK0lkMwj9Bj8OYU+9yW9lmGuS0QEnQ==, + } dev: false /tailwindcss@3.3.3: - resolution: {integrity: sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==, + } + engines: { node: '>=14.0.0' } hasBin: true dependencies: '@alloc/quick-lru': 5.2.0 @@ -8433,7 +11456,7 @@ packages: 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-load-config: 4.0.2(postcss@8.4.27) postcss-nested: 6.0.1(postcss@8.4.27) postcss-selector-parser: 6.0.13 resolve: 1.22.8 @@ -8443,20 +11466,29 @@ packages: dev: false /tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==, + } + engines: { node: '>=6' } dev: false /temp@0.8.4: - resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==, + } + engines: { node: '>=6.0.0' } dependencies: rimraf: 2.6.3 dev: false /terser-webpack-plugin@5.3.9(webpack@5.89.0): - resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} - engines: {node: '>= 10.13.0'} + resolution: + { + integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==, + } + engines: { node: '>= 10.13.0' } peerDependencies: '@swc/core': '*' esbuild: '*' @@ -8479,8 +11511,11 @@ packages: dev: false /terser@5.24.0: - resolution: {integrity: sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==, + } + engines: { node: '>=10' } hasBin: true dependencies: '@jridgewell/source-map': 0.3.5 @@ -8490,88 +11525,136 @@ packages: dev: false /test-exclude@6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==, + } + engines: { node: '>=8' } dependencies: '@istanbuljs/schema': 0.1.3 glob: 7.2.3 minimatch: 3.1.2 /text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + resolution: + { + integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==, + } /thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} + resolution: + { + integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==, + } + engines: { node: '>=0.8' } dependencies: thenify: 3.3.1 dev: false /thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + resolution: + { + integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==, + } dependencies: any-promise: 1.3.0 dev: false /three@0.158.0: - resolution: {integrity: sha512-TALj4EOpdDPF1henk2Q+s17K61uEAAWQ7TJB68nr7FKxqwyDr3msOt5IWdbGm4TaWKjrtWS8DJJWe9JnvsWOhQ==} + resolution: + { + integrity: sha512-TALj4EOpdDPF1henk2Q+s17K61uEAAWQ7TJB68nr7FKxqwyDr3msOt5IWdbGm4TaWKjrtWS8DJJWe9JnvsWOhQ==, + } dev: false /throat@5.0.0: - resolution: {integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==} + resolution: + { + integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==, + } dev: false /through2@2.0.5: - resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} + resolution: + { + integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==, + } dependencies: readable-stream: 2.3.8 xtend: 4.0.2 dev: false /tmp@0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} + resolution: + { + integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==, + } + engines: { node: '>=0.6.0' } dependencies: os-tmpdir: 1.0.2 dev: false /tmpl@1.0.5: - resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} + resolution: + { + integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==, + } /to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, + } + engines: { node: '>=4' } /to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} + resolution: + { + integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, + } + engines: { node: '>=8.0' } dependencies: is-number: 7.0.0 /toidentifier@1.0.1: - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} - engines: {node: '>=0.6'} + resolution: + { + integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==, + } + engines: { node: '>=0.6' } dev: false /tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + resolution: + { + integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==, + } dev: false /ts-api-utils@1.0.3(typescript@5.1.6): - resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} - engines: {node: '>=16.13.0'} + resolution: + { + integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==, + } + engines: { node: '>=16.13.0' } peerDependencies: typescript: '>=4.2.0' dependencies: typescript: 5.1.6 /ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + resolution: + { + integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==, + } dev: false /ts-jest@29.1.1(@babel/core@7.23.3)(jest@29.7.0)(typescript@5.1.6): - resolution: {integrity: sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } hasBin: true peerDependencies: '@babel/core': '>=7.0.0-beta.0 <8' @@ -8604,7 +11687,10 @@ packages: dev: false /tsconfig-paths@3.14.2: - resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} + resolution: + { + integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==, + } dependencies: '@types/json5': 0.0.29 json5: 1.0.2 @@ -8613,20 +11699,32 @@ packages: dev: false /tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + resolution: + { + integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==, + } dev: false /tslib@2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} + resolution: + { + integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==, + } dev: false /tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + resolution: + { + integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==, + } dev: false /tsutils@3.21.0(typescript@5.1.6): - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==, + } + engines: { node: '>= 6' } peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: @@ -8635,31 +11733,49 @@ packages: dev: false /type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==, + } + engines: { node: '>= 0.8.0' } dependencies: prelude-ls: 1.2.1 /type-detect@4.0.8: - resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==, + } + engines: { node: '>=4' } /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==, + } + engines: { node: '>=10' } /type-fest@0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==, + } + engines: { node: '>=10' } /type-fest@0.7.1: - resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==, + } + engines: { node: '>=8' } dev: false /typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 get-intrinsic: 1.2.2 @@ -8667,8 +11783,11 @@ packages: dev: false /typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==, + } + engines: { node: '>= 0.4' } dependencies: call-bind: 1.0.5 for-each: 0.3.3 @@ -8677,8 +11796,11 @@ packages: dev: false /typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==, + } + engines: { node: '>= 0.4' } dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.5 @@ -8688,7 +11810,10 @@ packages: dev: false /typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + resolution: + { + integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==, + } dependencies: call-bind: 1.0.5 for-each: 0.3.3 @@ -8696,13 +11821,19 @@ packages: dev: false /typescript@5.1.6: - resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} - engines: {node: '>=14.17'} + resolution: + { + integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==, + } + engines: { node: '>=14.17' } hasBin: true /uglify-es@3.3.9: - resolution: {integrity: sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==} - engines: {node: '>=0.8.0'} + resolution: + { + integrity: sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==, + } + engines: { node: '>=0.8.0' } deprecated: support for ECMAScript is superseded by `uglify-js` as of v3.13.0 hasBin: true dependencies: @@ -8711,7 +11842,10 @@ packages: dev: false /unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + resolution: + { + integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==, + } dependencies: call-bind: 1.0.5 has-bigints: 1.0.2 @@ -8720,40 +11854,61 @@ packages: dev: false /unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==, + } + engines: { node: '>=4' } dev: false /unicode-match-property-ecmascript@2.0.0: - resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==, + } + engines: { node: '>=4' } dependencies: unicode-canonical-property-names-ecmascript: 2.0.0 unicode-property-aliases-ecmascript: 2.1.0 dev: false /unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==, + } + engines: { node: '>=4' } dev: false /unicode-property-aliases-ecmascript@2.1.0: - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==, + } + engines: { node: '>=4' } dev: false /universalify@0.1.2: - resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} - engines: {node: '>= 4.0.0'} + resolution: + { + integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==, + } + engines: { node: '>= 4.0.0' } dev: false /unpipe@1.0.0: - resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==, + } + engines: { node: '>= 0.8' } dev: false /update-browserslist-db@1.0.13(browserslist@4.22.1): - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + resolution: + { + integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==, + } hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -8763,12 +11918,18 @@ packages: picocolors: 1.0.0 /uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + resolution: + { + integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, + } dependencies: punycode: 2.3.1 /use-sync-external-store@1.2.0(react@18.2.0): - resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} + resolution: + { + integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -8776,70 +11937,106 @@ packages: dev: false /utf-8-validate@6.0.3: - resolution: {integrity: sha512-uIuGf9TWQ/y+0Lp+KGZCMuJWc3N9BHA+l/UmHd/oUHwJJDeysyTRxNQVkbzsIWfGFbRe3OcgML/i0mvVRPOyDA==} - engines: {node: '>=6.14.2'} + resolution: + { + integrity: sha512-uIuGf9TWQ/y+0Lp+KGZCMuJWc3N9BHA+l/UmHd/oUHwJJDeysyTRxNQVkbzsIWfGFbRe3OcgML/i0mvVRPOyDA==, + } + engines: { node: '>=6.14.2' } requiresBuild: true dependencies: - node-gyp-build: 4.6.1 + node-gyp-build: 4.7.0 dev: false /util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + resolution: + { + integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, + } dev: false /utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} + resolution: + { + integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==, + } + engines: { node: '>= 0.4.0' } dev: false /v8-to-istanbul@9.1.3: - resolution: {integrity: sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==} - engines: {node: '>=10.12.0'} + resolution: + { + integrity: sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==, + } + engines: { node: '>=10.12.0' } dependencies: '@jridgewell/trace-mapping': 0.3.20 '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 /vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==, + } + engines: { node: '>= 0.8' } dev: false /vlq@1.0.1: - resolution: {integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==} + resolution: + { + integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==, + } dev: false /walker@1.0.8: - resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} + resolution: + { + integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==, + } dependencies: makeerror: 1.0.12 /watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} + resolution: + { + integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==, + } + engines: { node: '>=10.13.0' } dependencies: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 dev: false /wcwidth@1.0.1: - resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + resolution: + { + integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==, + } dependencies: defaults: 1.0.4 dev: false /webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + resolution: + { + integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, + } dev: false /webpack-sources@3.2.3: - resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} - engines: {node: '>=10.13.0'} + resolution: + { + integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==, + } + engines: { node: '>=10.13.0' } dev: false /webpack@5.89.0: - resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==} - engines: {node: '>=10.13.0'} + resolution: + { + integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==, + } + engines: { node: '>=10.13.0' } hasBin: true peerDependencies: webpack-cli: '*' @@ -8857,7 +12054,7 @@ packages: browserslist: 4.22.1 chrome-trace-event: 1.0.3 enhanced-resolve: 5.15.0 - es-module-lexer: 1.4.0 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -8878,18 +12075,27 @@ packages: dev: false /whatwg-fetch@3.6.19: - resolution: {integrity: sha512-d67JP4dHSbm2TrpFj8AbO8DnL1JXL5J9u0Kq2xW6d0TFDbCA3Muhdt8orXC22utleTVj7Prqt82baN6RBvnEgw==} + resolution: + { + integrity: sha512-d67JP4dHSbm2TrpFj8AbO8DnL1JXL5J9u0Kq2xW6d0TFDbCA3Muhdt8orXC22utleTVj7Prqt82baN6RBvnEgw==, + } dev: false /whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + resolution: + { + integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==, + } dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 dev: false /which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + resolution: + { + integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==, + } dependencies: is-bigint: 1.0.4 is-boolean-object: 1.1.2 @@ -8899,8 +12105,11 @@ packages: dev: false /which-builtin-type@1.1.3: - resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==, + } + engines: { node: '>= 0.4' } dependencies: function.prototype.name: 1.1.6 has-tostringtag: 1.0.0 @@ -8917,7 +12126,10 @@ packages: dev: false /which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} + resolution: + { + integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==, + } dependencies: is-map: 2.0.2 is-set: 2.0.2 @@ -8926,12 +12138,18 @@ packages: dev: false /which-module@2.0.1: - resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} + resolution: + { + integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==, + } dev: false /which-typed-array@1.1.13: - resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==, + } + engines: { node: '>= 0.4' } dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.5 @@ -8941,15 +12159,21 @@ packages: dev: false /which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, + } + engines: { node: '>= 8' } hasBin: true dependencies: isexe: 2.0.0 /wrap-ansi@6.2.0: - resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==, + } + engines: { node: '>=8' } dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 @@ -8957,18 +12181,27 @@ packages: dev: false /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} + 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 /wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + resolution: + { + integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, + } /write-file-atomic@2.4.3: - resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} + resolution: + { + integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==, + } dependencies: graceful-fs: 4.2.11 imurmurhash: 0.1.4 @@ -8976,14 +12209,20 @@ packages: dev: false /write-file-atomic@4.0.2: - resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + resolution: + { + integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==, + } + engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } dependencies: imurmurhash: 0.1.4 signal-exit: 3.0.7 /ws@6.2.2(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==} + resolution: + { + integrity: sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==, + } peerDependencies: bufferutil: ^4.0.1 utf-8-validate: ^5.0.2 @@ -8999,8 +12238,11 @@ packages: dev: false /ws@7.5.9(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} - engines: {node: '>=8.3.0'} + resolution: + { + integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==, + } + engines: { node: '>=8.3.0' } peerDependencies: bufferutil: ^4.0.1 utf-8-validate: ^5.0.2 @@ -9015,8 +12257,11 @@ packages: dev: false /ws@8.14.2(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} - engines: {node: '>=10.0.0'} + resolution: + { + integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==, + } + engines: { node: '>=10.0.0' } peerDependencies: bufferutil: ^4.0.1 utf-8-validate: '>=5.0.2' @@ -9031,8 +12276,11 @@ packages: dev: false /ws@8.5.0(bufferutil@4.0.8)(utf-8-validate@6.0.3): - resolution: {integrity: sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==} - engines: {node: '>=10.0.0'} + resolution: + { + integrity: sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==, + } + engines: { node: '>=10.0.0' } peerDependencies: bufferutil: ^4.0.1 utf-8-validate: ^5.0.2 @@ -9047,44 +12295,71 @@ packages: dev: false /xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} + resolution: + { + integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==, + } + engines: { node: '>=0.4' } dev: false /y18n@4.0.3: - resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} + resolution: + { + integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==, + } dev: false /y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==, + } + engines: { node: '>=10' } /yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + resolution: + { + integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==, + } /yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + resolution: + { + integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, + } /yaml@2.3.4: - resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==, + } + engines: { node: '>= 14' } dev: false /yargs-parser@18.1.3: - resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==, + } + engines: { node: '>=6' } dependencies: camelcase: 5.3.1 decamelize: 1.2.0 dev: false /yargs-parser@21.1.1: - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==, + } + engines: { node: '>=12' } /yargs@15.4.1: - resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==, + } + engines: { node: '>=8' } dependencies: cliui: 6.0.0 decamelize: 1.2.0 @@ -9100,8 +12375,11 @@ packages: dev: false /yargs@17.7.2: - resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==, + } + engines: { node: '>=12' } dependencies: cliui: 8.0.1 escalade: 3.1.1 @@ -9112,20 +12390,32 @@ packages: yargs-parser: 21.1.1 /yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==, + } + engines: { node: '>=10' } /zdog@1.1.3: - resolution: {integrity: sha512-raRj6r0gPzopFm5XWBJZr/NuV4EEnT4iE+U3dp5FV5pCb588Gmm3zLIp/j9yqqcMiHH8VNQlerLTgOqL7krh6w==} + resolution: + { + integrity: sha512-raRj6r0gPzopFm5XWBJZr/NuV4EEnT4iE+U3dp5FV5pCb588Gmm3zLIp/j9yqqcMiHH8VNQlerLTgOqL7krh6w==, + } dev: false /zod@3.22.4: - resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} + resolution: + { + integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==, + } dev: false /zustand@3.7.2(react@18.2.0): - resolution: {integrity: sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==} - engines: {node: '>=12.7.0'} + resolution: + { + integrity: sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==, + } + engines: { node: '>=12.7.0' } peerDependencies: react: '>=16.8' peerDependenciesMeta: @@ -9136,8 +12426,11 @@ packages: dev: false /zustand@4.4.6(@types/react@18.2.18)(react@18.2.0): - resolution: {integrity: sha512-Rb16eW55gqL4W2XZpJh0fnrATxYEG3Apl2gfHTyDSE965x/zxslTikpNch0JgNjJA9zK6gEFW8Fl6d1rTZaqgg==} - engines: {node: '>=12.7.0'} + resolution: + { + integrity: sha512-Rb16eW55gqL4W2XZpJh0fnrATxYEG3Apl2gfHTyDSE965x/zxslTikpNch0JgNjJA9zK6gEFW8Fl6d1rTZaqgg==, + } + engines: { node: '>=12.7.0' } peerDependencies: '@types/react': '>=16.8' immer: '>=9.0' diff --git a/public/data/1l_mlp/input.json b/public/data/1l_mlp/input.json index ce73001..8a280aa 100644 --- a/public/data/1l_mlp/input.json +++ b/public/data/1l_mlp/input.json @@ -1,23 +1,5 @@ { - "input_data": [ - [ - 1.5417295, - 0.5346153, - 1.2172532 - ] - ], - "input_shapes": [ - [ - 1, - 3 - ] - ], - "output_data": [ - [ - 0.28125, - 0.65625, - 0.0, - 0.0 - ] - ] -} \ No newline at end of file + "input_data": [[1.5417295, 0.5346153, 1.2172532]], + "input_shapes": [[1, 3]], + "output_data": [[0.28125, 0.65625, 0.0, 0.0]] +} diff --git a/public/data/1l_mlp/settings.json b/public/data/1l_mlp/settings.json index 8c31f54..f639fc5 100644 --- a/public/data/1l_mlp/settings.json +++ b/public/data/1l_mlp/settings.json @@ -1 +1,26 @@ -{"run_args":{"tolerance":{"val":0.0,"scale":1.0},"input_scale":2,"param_scale":2,"scale_rebase_multiplier":1,"lookup_range":[-32,12],"logrows":6,"num_inner_cols":1,"variables":[["batch_size",1]],"input_visibility":"Private","output_visibility":"Public","param_visibility":"Private"},"num_rows":31,"total_assignments":31,"total_const_size":0,"model_instance_shapes":[[1,4]],"model_output_scales":[2],"model_input_scales":[2],"module_sizes":{"kzg":[],"poseidon":[0,[0]],"elgamal":[0,[0]]},"required_lookups":[{"Div":{"denom":4.0}},"ReLU"],"check_mode":"UNSAFE","version":"0.0.0","num_blinding_factors":null} \ No newline at end of file +{ + "run_args": { + "tolerance": { "val": 0.0, "scale": 1.0 }, + "input_scale": 2, + "param_scale": 2, + "scale_rebase_multiplier": 1, + "lookup_range": [-32, 12], + "logrows": 6, + "num_inner_cols": 1, + "variables": [["batch_size", 1]], + "input_visibility": "Private", + "output_visibility": "Public", + "param_visibility": "Private" + }, + "num_rows": 31, + "total_assignments": 31, + "total_const_size": 0, + "model_instance_shapes": [[1, 4]], + "model_output_scales": [2], + "model_input_scales": [2], + "module_sizes": { "kzg": [], "poseidon": [0, [0]], "elgamal": [0, [0]] }, + "required_lookups": [{ "Div": { "denom": 4.0 } }, "ReLU"], + "check_mode": "UNSAFE", + "version": "0.0.0", + "num_blinding_factors": null +} diff --git a/public/data/1l_mlp/test.witness.json b/public/data/1l_mlp/test.witness.json index 398f2c2..22c4010 100644 --- a/public/data/1l_mlp/test.witness.json +++ b/public/data/1l_mlp/test.witness.json @@ -1 +1,37 @@ -{"inputs":[[[14385415396251402209,2429374486035521128,12558163205804149944,2583518171365219058],[6425625360762666998,7924344314350639699,14762033076929465436,2023505479389396574],[1949230679015292902,16913946402569752895,5177146667339417225,1571765431670520771]]],"outputs":[[[12436184717236109307,3962172157175319849,7381016538464732718,1011752739694698287],[7959790035488735211,12951774245394433045,16242874202584236123,560012691975822483],[0,0,0,0],[0,0,0,0]]],"processed_inputs":null,"processed_params":null,"processed_outputs":null,"max_lookup_inputs":6,"min_lookup_inputs":-16} \ No newline at end of file +{ + "inputs": [ + [ + [ + 14385415396251402209, 2429374486035521128, 12558163205804149944, + 2583518171365219058 + ], + [ + 6425625360762666998, 7924344314350639699, 14762033076929465436, + 2023505479389396574 + ], + [ + 1949230679015292902, 16913946402569752895, 5177146667339417225, + 1571765431670520771 + ] + ] + ], + "outputs": [ + [ + [ + 12436184717236109307, 3962172157175319849, 7381016538464732718, + 1011752739694698287 + ], + [ + 7959790035488735211, 12951774245394433045, 16242874202584236123, + 560012691975822483 + ], + [0, 0, 0, 0], + [0, 0, 0, 0] + ] + ], + "processed_inputs": null, + "processed_params": null, + "processed_outputs": null, + "max_lookup_inputs": 6, + "min_lookup_inputs": -16 +} diff --git a/public/data/mnist/input.json b/public/data/mnist/input.json index ca9d83c..001dbf9 100644 --- a/public/data/mnist/input.json +++ b/public/data/mnist/input.json @@ -1,804 +1,154 @@ { - "input_data": [ - [ - 0.08416175, - 0.0023718774, - 0.062897526, - 0.070623845, - 0.091048494, - 0.05947814, - 0.052230705, - 0.050272256, - 0.046552844, - 0.08782017, - 0.026480807, - 0.099729024, - 0.0600094, - 0.052038092, - 0.053479876, - 0.07504749, - 0.09191407, - 0.057398748, - 0.023068655, - 0.08289857, - 0.006811631, - 0.0077840807, - 0.013606233, - 0.00946905, - 0.031639643, - 0.09186701, - 0.03361494, - 0.0063040494, - 0.03296115, - 0.009137827, - 0.06971485, - 0.05891828, - 0.069937564, - 0.077203624, - 0.03807878, - 0.0027600229, - 0.061425842, - 0.080418505, - 0.06568346, - 0.010897654, - 0.06595685, - 0.00806163, - 0.0025667727, - 0.08265985, - 0.07471176, - 0.022030277, - 0.081381164, - 0.07960696, - 0.0207689, - 0.0320184, - 0.002954185, - 0.02485965, - 0.058869075, - 0.07421909, - 0.069243304, - 0.089619696, - 0.0454096, - 0.0602287, - 0.01683755, - 0.07551147, - 0.016106993, - 0.032272775, - 0.07390757, - 0.06305944, - 0.062222224, - 0.07468819, - 0.0790697, - 0.0587458, - 0.08284946, - 0.09264171, - 0.037043024, - 0.03155718, - 0.045932926, - 0.07133372, - 0.07069507, - 0.004428047, - 0.09276748, - 0.045413803, - 0.032827284, - 0.006013119, - 0.009420902, - 0.083469905, - 0.08867165, - 0.063306876, - 0.05788632, - 0.08377584, - 0.029004836, - 0.06940404, - 0.06791013, - 0.07006122, - 0.04044616, - 0.056098033, - 0.06857769, - 0.0052953064, - 0.087107964, - 0.024928873, - 0.09680929, - 0.04294157, - 0.041224223, - 0.032705303, - 0.087033845, - 0.025036812, - 0.021749223, - 0.08896025, - 0.02190863, - 0.09714662, - 0.052559163, - 0.024378521, - 0.028092368, - 0.05088469, - 0.08304401, - 0.08119408, - 0.05549253, - 0.021153374, - 0.0161039, - 0.0033424557, - 0.023857845, - 0.07509135, - 0.08270938, - 0.004841495, - 0.048770573, - 0.068548314, - 0.0017254651, - 0.050804984, - 0.008694852, - 0.03382602, - 0.06082877, - 0.03696341, - 0.0913142, - 0.0003115773, - 0.047661025, - 0.065345, - 0.03076532, - 0.0047517777, - 0.07236621, - 0.03059364, - 0.057285424, - 0.01974271, - 0.013850624, - 0.024588663, - 0.097636126, - 0.029057747, - 0.032200564, - 0.09026933, - 0.029831732, - 0.07787924, - 0.001913315, - 0.07434028, - 0.0031199933, - 0.06700843, - 0.0016371667, - 0.07860773, - 0.065911815, - 0.09686463, - 0.05296554, - 0.075234845, - 0.02161364, - 0.07138013, - 0.019521965, - 0.027951283, - 0.05722297, - 0.0018655182, - 0.069701366, - 0.0247934, - 0.04528317, - 0.011939508, - 0.06907542, - 0.06514448, - 0.09875827, - 0.08839118, - 0.05486243, - 0.06314859, - 0.09442133, - 0.04934104, - 0.013923997, - 0.07456451, - 0.078196965, - 0.00845021, - 0.01708793, - 0.030427087, - 0.08493322, - 0.068992995, - 0.07438978, - 0.08362417, - 0.03590963, - 0.08515747, - 0.09754839, - 0.009068364, - 0.08520157, - 0.02434705, - 0.031403482, - 0.04951304, - 0.049716234, - 0.023628188, - 0.08973846, - 0.051107444, - 0.067541525, - 0.03712091, - 0.061130054, - 0.0052584945, - 0.011114455, - 0.07007075, - 0.07588199, - 0.052278813, - 0.009371335, - 0.07906349, - 0.03802985, - 0.029666841, - 0.035668638, - 0.06537416, - 0.089792065, - 0.06428178, - 0.060795557, - 0.09193196, - 0.07470639, - 0.03711403, - 0.062298637, - 0.0019276321, - 0.011647469, - 0.08197396, - 0.04693059, - 0.09390069, - 0.086118884, - 0.078639776, - 0.027006967, - 0.09743268, - 0.026061017, - 0.036010332, - 0.09793582, - 0.0010184884, - 0.0134107, - 0.09014341, - 0.03328628, - 0.09773343, - 0.012918902, - 0.0906054, - 0.028776092, - 0.026965434, - 0.01284296, - 0.015721202, - 0.036219478, - 0.058518022, - 0.0025458515, - 0.0880089, - 0.058324933, - 0.015757192, - 0.028383149, - 0.02879317, - 0.051337875, - 0.0354661, - 0.015504295, - 0.094665945, - 0.09910195, - 0.005779332, - 0.07927365, - 0.026873743, - 0.00054904225, - 0.038398046, - 0.010052276, - 0.016067667, - 0.07664506, - 0.012933916, - 0.062393427, - 0.018536681, - 0.028886145, - 0.040428955, - 0.08120113, - 0.04708306, - 0.06818022, - 0.033184167, - 0.0892952, - 0.05480842, - 0.09157414, - 0.08749857, - 0.0472143, - 0.01624087, - 0.03399067, - 0.08591258, - 0.03490105, - 0.011649328, - 0.079539396, - 0.07125553, - 0.07468983, - 0.044722736, - 0.06357516, - 0.018569088, - 0.06490347, - 0.01585191, - 0.04021847, - 0.0049003423, - 0.092359506, - 0.0021926283, - 0.067620866, - 0.03480242, - 0.05362649, - 0.052857, - 0.00017579795, - 0.086880066, - 0.040516745, - 0.037588336, - 0.05497638, - 0.061065, - 0.022081792, - 0.0034811317, - 0.09235429, - 0.071943045, - 0.04593992, - 0.038042333, - 0.0058047953, - 0.00042179227, - 0.09274406, - 0.029044872, - 0.09431006, - 0.037879802, - 0.0028103113, - 0.04880119, - 0.06640204, - 0.046697266, - 0.05971886, - 0.038684536, - 0.014634651, - 0.0059097647, - 0.048788585, - 0.041636813, - 0.06073577, - 0.08359948, - 0.05206418, - 0.065559514, - 0.052583385, - 0.035694398, - 0.092754, - 0.045934387, - 0.044256657, - 0.0050959946, - 0.06350902, - 0.00079329015, - 0.015629357, - 0.023053437, - 0.028823955, - 0.027322698, - 0.09649008, - 0.014005035, - 0.0054814457, - 0.024411196, - 0.08704606, - 0.08162253, - 0.0548502, - 0.013829005, - 0.055375826, - 0.014343309, - 0.07641623, - 0.04601065, - 0.04866525, - 0.038767453, - 0.08737482, - 0.08164973, - 0.099916495, - 0.03598513, - 0.021796197, - 0.06665872, - 0.067757025, - 0.061268277, - 0.04928999, - 0.027419198, - 0.03291245, - 0.07736917, - 0.0738767, - 0.0043335794, - 0.030935496, - 0.079988085, - 0.00864808, - 0.03497651, - 0.06901788, - 0.08210178, - 0.029802157, - 0.06970847, - 0.09749382, - 0.020391745, - 0.07740192, - 0.013242262, - 0.07998245, - 0.070681445, - 0.054233897, - 0.03231146, - 0.0960718, - 0.01879608, - 0.08932721, - 0.05390318, - 0.022942496, - 0.054500557, - 0.0637348, - 0.085419446, - 0.051813554, - 0.046900995, - 0.079383954, - 0.084218554, - 0.061584737, - 0.05255584, - 0.08211157, - 0.036432393, - 0.0023331225, - 0.043989606, - 0.016537113, - 0.020593261, - 0.022175496, - 0.0547007, - 0.06934004, - 0.0063562575, - 0.06901788, - 0.024148881, - 0.023063535, - 0.03795303, - 0.042843074, - 0.034802448, - 0.007931179, - 0.039438795, - 0.0045825723, - 0.022481555, - 0.00008517504, - 0.019903457, - 0.010023695, - 0.00401178, - 0.09628031, - 0.0872758, - 0.073757306, - 0.058475733, - 0.017364193, - 0.018842626, - 0.073559806, - 0.077488475, - 0.06341403, - 0.021138972, - 0.00086557865, - 0.05259235, - 0.06982245, - 0.07134877, - 0.03570075, - 0.040136762, - 0.046625473, - 0.0908668, - 0.064786896, - 0.031401634, - 0.09453562, - 0.045345094, - 0.011580509, - 0.05049339, - 0.0060759606, - 0.05576196, - 0.069873296, - 0.06500232, - 0.08749171, - 0.045009192, - 0.02192353, - 0.09717652, - 0.011628789, - 0.023627473, - 0.07167842, - 0.03655689, - 0.00992195, - 0.062263843, - 0.030106151, - 0.075271435, - 0.08846577, - 0.04428051, - 0.048869636, - 0.0645578, - 0.034424312, - 0.07433688, - 0.03275766, - 0.03287809, - 0.058091998, - 0.020575434, - 0.01765318, - 0.00043589473, - 0.082247786, - 0.09620472, - 0.052930087, - 0.0103198355, - 0.08697388, - 0.09426332, - 0.055535413, - 0.028950257, - 0.00363338, - 0.01611123, - 0.07229875, - 0.024679238, - 0.05714162, - 0.060926627, - 0.00914368, - 0.03530701, - 0.027335394, - 0.05076238, - 0.033344567, - 0.07432186, - 0.09269963, - 0.06572669, - 0.06066255, - 0.039443847, - 0.066008314, - 0.028225048, - 0.078966975, - 0.07715965, - 0.04088169, - 0.07379312, - 0.08961239, - 0.026464118, - 0.03095069, - 0.092371084, - 0.022910392, - 0.09044479, - 0.021467108, - 0.014521271, - 0.07783339, - 0.036275268, - 0.09472193, - 0.012532878, - 0.09678929, - 0.07157531, - 0.09665289, - 0.040850606, - 0.04226057, - 0.061360992, - 0.09848456, - 0.03374482, - 0.06915849, - 0.06654435, - 0.05670012, - 0.07838938, - 0.055854436, - 0.06918086, - 0.010458595, - 0.018076187, - 0.038214076, - 0.07603127, - 0.024022419, - 0.089104556, - 0.069743074, - 0.083607994, - 0.09371854, - 0.07724674, - 0.07225676, - 0.06548789, - 0.098934785, - 0.046184838, - 0.05728462, - 0.08063544, - 0.0833377, - 0.017427474, - 0.0048962417, - 0.087668255, - 0.08731153, - 0.042689364, - 0.09471585, - 0.04492904, - 0.027651256, - 0.08759125, - 0.06278667, - 0.032325607, - 0.015079558, - 0.06664791, - 0.05366966, - 0.074117556, - 0.053637113, - 0.044514865, - 0.037959673, - 0.032164156, - 0.008967775, - 0.07226078, - 0.020238727, - 0.05338908, - 0.09948867, - 0.097442694, - 0.033669766, - 0.0139490245, - 0.09647588, - 0.050035357, - 0.043933313, - 0.0040406766, - 0.052268952, - 0.052568715, - 0.066735946, - 0.030453885, - 0.018347317, - 0.07680857, - 0.046095725, - 0.09735262, - 0.032607067, - 0.0561841, - 0.078013845, - 0.09624715, - 0.0067913174, - 0.04506404, - 0.09850978, - 0.04722311, - 0.049688518, - 0.013791668, - 0.03841139, - 0.09717976, - 0.048000462, - 0.09582411, - 0.057870757, - 0.009721041, - 0.04059712, - 0.027814662, - 0.044197626, - 0.08494218, - 0.068458244, - 0.06865237, - 0.035384227, - 0.035119917, - 0.0014469922, - 0.06747875, - 0.011526972, - 0.059339046, - 0.09946751, - 0.029161816, - 0.08563929, - 0.013220805, - 0.0130800605, - 0.08682514, - 0.0026526095, - 0.024007602, - 0.042884815, - 0.0016457498, - 0.038826134, - 0.029622948, - 0.092063345, - 0.08853093, - 0.08579532, - 0.05740533, - 0.037569582, - 0.093338504, - 0.037887778, - 0.026895279, - 0.012127317, - 0.08102171, - 0.07128212, - 0.083832555, - 0.01040817, - 0.012880343, - 0.067742355, - 0.023410464, - 0.02355507, - 0.033754922, - 0.069985695, - 0.03458474, - 0.0009336054, - 0.09962534, - 0.027581383, - 0.0070503294, - 0.03726715, - 0.0860189, - 0.022456795, - 0.008489156, - 0.014327603, - 0.092389114, - 0.030231846, - 0.034236062, - 0.041026082, - 0.035246927, - 0.08349572, - 0.024635315, - 0.016486669, - 0.0075792433, - 0.038704008, - 0.03596157, - 0.004387182, - 0.00830847, - 0.08544835, - 0.07415318, - 0.014629382, - 0.025899095, - 0.023593515, - 0.09962813, - 0.08387443, - 0.04872009, - 0.010762602, - 0.08904078, - 0.07732275, - 0.049653627, - 0.002126521, - 0.07827368, - 0.060574155, - 0.029526144, - 0.03292814, - 0.013605702, - 0.07197627, - 0.08380023, - 0.014560497, - 0.04541185, - 0.039731026, - 0.066244595, - 0.0074393633, - 0.020672286, - 0.06901037, - 0.02176397, - 0.055994023, - 0.03295345, - 0.06006151, - 0.07034043, - 0.016760945, - 0.045478977, - 0.032862633, - 0.025086893, - 0.053483963, - 0.02420652, - 0.044568207, - 0.0847556, - 0.023151178, - 0.02695403, - 0.024798984, - 0.06586484, - 0.068034716, - 0.08522362, - 0.07343409, - 0.04427554, - 0.008678985, - 0.017140096, - 0.008277804, - 0.031494867, - 0.048871603, - 0.00280841, - 0.029550219, - 0.059875797, - 0.03953148, - 0.07980997, - 0.061504643, - 0.026000053, - 0.009833485, - 0.021643644, - 0.080291264, - 0.09075825, - 0.085376106, - 0.07334238, - 0.0068784417, - 0.088653766, - 0.069428824, - 0.053739365, - 0.06057724, - 0.087979116, - 0.06244427, - 0.09494982, - 0.08411278, - 0.07237132, - 0.07551756, - 0.03690317, - 0.040865213, - 0.069508545, - 0.02388947, - 0.0727196, - 0.08563005, - 0.050196763, - 0.0891728, - 0.02931456, - 0.08588966, - 0.0903831, - 0.087135054, - 0.07697115, - 0.09106482, - 0.07894994, - 0.09390003, - 0.068581626, - 0.0012029171, - 0.0813266, - 0.074630365, - 0.05043755, - 0.06656685, - 0.05548228, - 0.02964148, - 0.087716654, - 0.09632796, - 0.06670126, - 0.025372852, - 0.019457562, - 0.06371032, - 0.028254861, - 0.0025097847, - 0.08936894, - 0.013841391, - 0.007039583, - 0.04903484, - 0.011485494, - 0.014440769, - 0.034969147 - ] - ], - "output_data": [ - [ - 0.02734375, - -0.010009766, - 0.10852051, - 0.1519165, - 0.13574219, - 0.031677246, - 0.0435791, - 0.14544678, - -0.09136963, - -0.026245117 - ] + "input_data": [ + [ + 0.08416175, 0.0023718774, 0.062897526, 0.070623845, 0.091048494, + 0.05947814, 0.052230705, 0.050272256, 0.046552844, 0.08782017, + 0.026480807, 0.099729024, 0.0600094, 0.052038092, 0.053479876, 0.07504749, + 0.09191407, 0.057398748, 0.023068655, 0.08289857, 0.006811631, + 0.0077840807, 0.013606233, 0.00946905, 0.031639643, 0.09186701, + 0.03361494, 0.0063040494, 0.03296115, 0.009137827, 0.06971485, 0.05891828, + 0.069937564, 0.077203624, 0.03807878, 0.0027600229, 0.061425842, + 0.080418505, 0.06568346, 0.010897654, 0.06595685, 0.00806163, + 0.0025667727, 0.08265985, 0.07471176, 0.022030277, 0.081381164, + 0.07960696, 0.0207689, 0.0320184, 0.002954185, 0.02485965, 0.058869075, + 0.07421909, 0.069243304, 0.089619696, 0.0454096, 0.0602287, 0.01683755, + 0.07551147, 0.016106993, 0.032272775, 0.07390757, 0.06305944, 0.062222224, + 0.07468819, 0.0790697, 0.0587458, 0.08284946, 0.09264171, 0.037043024, + 0.03155718, 0.045932926, 0.07133372, 0.07069507, 0.004428047, 0.09276748, + 0.045413803, 0.032827284, 0.006013119, 0.009420902, 0.083469905, + 0.08867165, 0.063306876, 0.05788632, 0.08377584, 0.029004836, 0.06940404, + 0.06791013, 0.07006122, 0.04044616, 0.056098033, 0.06857769, 0.0052953064, + 0.087107964, 0.024928873, 0.09680929, 0.04294157, 0.041224223, + 0.032705303, 0.087033845, 0.025036812, 0.021749223, 0.08896025, + 0.02190863, 0.09714662, 0.052559163, 0.024378521, 0.028092368, 0.05088469, + 0.08304401, 0.08119408, 0.05549253, 0.021153374, 0.0161039, 0.0033424557, + 0.023857845, 0.07509135, 0.08270938, 0.004841495, 0.048770573, + 0.068548314, 0.0017254651, 0.050804984, 0.008694852, 0.03382602, + 0.06082877, 0.03696341, 0.0913142, 0.0003115773, 0.047661025, 0.065345, + 0.03076532, 0.0047517777, 0.07236621, 0.03059364, 0.057285424, 0.01974271, + 0.013850624, 0.024588663, 0.097636126, 0.029057747, 0.032200564, + 0.09026933, 0.029831732, 0.07787924, 0.001913315, 0.07434028, + 0.0031199933, 0.06700843, 0.0016371667, 0.07860773, 0.065911815, + 0.09686463, 0.05296554, 0.075234845, 0.02161364, 0.07138013, 0.019521965, + 0.027951283, 0.05722297, 0.0018655182, 0.069701366, 0.0247934, 0.04528317, + 0.011939508, 0.06907542, 0.06514448, 0.09875827, 0.08839118, 0.05486243, + 0.06314859, 0.09442133, 0.04934104, 0.013923997, 0.07456451, 0.078196965, + 0.00845021, 0.01708793, 0.030427087, 0.08493322, 0.068992995, 0.07438978, + 0.08362417, 0.03590963, 0.08515747, 0.09754839, 0.009068364, 0.08520157, + 0.02434705, 0.031403482, 0.04951304, 0.049716234, 0.023628188, 0.08973846, + 0.051107444, 0.067541525, 0.03712091, 0.061130054, 0.0052584945, + 0.011114455, 0.07007075, 0.07588199, 0.052278813, 0.009371335, 0.07906349, + 0.03802985, 0.029666841, 0.035668638, 0.06537416, 0.089792065, 0.06428178, + 0.060795557, 0.09193196, 0.07470639, 0.03711403, 0.062298637, + 0.0019276321, 0.011647469, 0.08197396, 0.04693059, 0.09390069, + 0.086118884, 0.078639776, 0.027006967, 0.09743268, 0.026061017, + 0.036010332, 0.09793582, 0.0010184884, 0.0134107, 0.09014341, 0.03328628, + 0.09773343, 0.012918902, 0.0906054, 0.028776092, 0.026965434, 0.01284296, + 0.015721202, 0.036219478, 0.058518022, 0.0025458515, 0.0880089, + 0.058324933, 0.015757192, 0.028383149, 0.02879317, 0.051337875, 0.0354661, + 0.015504295, 0.094665945, 0.09910195, 0.005779332, 0.07927365, + 0.026873743, 0.00054904225, 0.038398046, 0.010052276, 0.016067667, + 0.07664506, 0.012933916, 0.062393427, 0.018536681, 0.028886145, + 0.040428955, 0.08120113, 0.04708306, 0.06818022, 0.033184167, 0.0892952, + 0.05480842, 0.09157414, 0.08749857, 0.0472143, 0.01624087, 0.03399067, + 0.08591258, 0.03490105, 0.011649328, 0.079539396, 0.07125553, 0.07468983, + 0.044722736, 0.06357516, 0.018569088, 0.06490347, 0.01585191, 0.04021847, + 0.0049003423, 0.092359506, 0.0021926283, 0.067620866, 0.03480242, + 0.05362649, 0.052857, 0.00017579795, 0.086880066, 0.040516745, + 0.037588336, 0.05497638, 0.061065, 0.022081792, 0.0034811317, 0.09235429, + 0.071943045, 0.04593992, 0.038042333, 0.0058047953, 0.00042179227, + 0.09274406, 0.029044872, 0.09431006, 0.037879802, 0.0028103113, + 0.04880119, 0.06640204, 0.046697266, 0.05971886, 0.038684536, 0.014634651, + 0.0059097647, 0.048788585, 0.041636813, 0.06073577, 0.08359948, + 0.05206418, 0.065559514, 0.052583385, 0.035694398, 0.092754, 0.045934387, + 0.044256657, 0.0050959946, 0.06350902, 0.00079329015, 0.015629357, + 0.023053437, 0.028823955, 0.027322698, 0.09649008, 0.014005035, + 0.0054814457, 0.024411196, 0.08704606, 0.08162253, 0.0548502, 0.013829005, + 0.055375826, 0.014343309, 0.07641623, 0.04601065, 0.04866525, 0.038767453, + 0.08737482, 0.08164973, 0.099916495, 0.03598513, 0.021796197, 0.06665872, + 0.067757025, 0.061268277, 0.04928999, 0.027419198, 0.03291245, 0.07736917, + 0.0738767, 0.0043335794, 0.030935496, 0.079988085, 0.00864808, 0.03497651, + 0.06901788, 0.08210178, 0.029802157, 0.06970847, 0.09749382, 0.020391745, + 0.07740192, 0.013242262, 0.07998245, 0.070681445, 0.054233897, 0.03231146, + 0.0960718, 0.01879608, 0.08932721, 0.05390318, 0.022942496, 0.054500557, + 0.0637348, 0.085419446, 0.051813554, 0.046900995, 0.079383954, + 0.084218554, 0.061584737, 0.05255584, 0.08211157, 0.036432393, + 0.0023331225, 0.043989606, 0.016537113, 0.020593261, 0.022175496, + 0.0547007, 0.06934004, 0.0063562575, 0.06901788, 0.024148881, 0.023063535, + 0.03795303, 0.042843074, 0.034802448, 0.007931179, 0.039438795, + 0.0045825723, 0.022481555, 0.00008517504, 0.019903457, 0.010023695, + 0.00401178, 0.09628031, 0.0872758, 0.073757306, 0.058475733, 0.017364193, + 0.018842626, 0.073559806, 0.077488475, 0.06341403, 0.021138972, + 0.00086557865, 0.05259235, 0.06982245, 0.07134877, 0.03570075, + 0.040136762, 0.046625473, 0.0908668, 0.064786896, 0.031401634, 0.09453562, + 0.045345094, 0.011580509, 0.05049339, 0.0060759606, 0.05576196, + 0.069873296, 0.06500232, 0.08749171, 0.045009192, 0.02192353, 0.09717652, + 0.011628789, 0.023627473, 0.07167842, 0.03655689, 0.00992195, 0.062263843, + 0.030106151, 0.075271435, 0.08846577, 0.04428051, 0.048869636, 0.0645578, + 0.034424312, 0.07433688, 0.03275766, 0.03287809, 0.058091998, 0.020575434, + 0.01765318, 0.00043589473, 0.082247786, 0.09620472, 0.052930087, + 0.0103198355, 0.08697388, 0.09426332, 0.055535413, 0.028950257, + 0.00363338, 0.01611123, 0.07229875, 0.024679238, 0.05714162, 0.060926627, + 0.00914368, 0.03530701, 0.027335394, 0.05076238, 0.033344567, 0.07432186, + 0.09269963, 0.06572669, 0.06066255, 0.039443847, 0.066008314, 0.028225048, + 0.078966975, 0.07715965, 0.04088169, 0.07379312, 0.08961239, 0.026464118, + 0.03095069, 0.092371084, 0.022910392, 0.09044479, 0.021467108, + 0.014521271, 0.07783339, 0.036275268, 0.09472193, 0.012532878, 0.09678929, + 0.07157531, 0.09665289, 0.040850606, 0.04226057, 0.061360992, 0.09848456, + 0.03374482, 0.06915849, 0.06654435, 0.05670012, 0.07838938, 0.055854436, + 0.06918086, 0.010458595, 0.018076187, 0.038214076, 0.07603127, + 0.024022419, 0.089104556, 0.069743074, 0.083607994, 0.09371854, + 0.07724674, 0.07225676, 0.06548789, 0.098934785, 0.046184838, 0.05728462, + 0.08063544, 0.0833377, 0.017427474, 0.0048962417, 0.087668255, 0.08731153, + 0.042689364, 0.09471585, 0.04492904, 0.027651256, 0.08759125, 0.06278667, + 0.032325607, 0.015079558, 0.06664791, 0.05366966, 0.074117556, + 0.053637113, 0.044514865, 0.037959673, 0.032164156, 0.008967775, + 0.07226078, 0.020238727, 0.05338908, 0.09948867, 0.097442694, 0.033669766, + 0.0139490245, 0.09647588, 0.050035357, 0.043933313, 0.0040406766, + 0.052268952, 0.052568715, 0.066735946, 0.030453885, 0.018347317, + 0.07680857, 0.046095725, 0.09735262, 0.032607067, 0.0561841, 0.078013845, + 0.09624715, 0.0067913174, 0.04506404, 0.09850978, 0.04722311, 0.049688518, + 0.013791668, 0.03841139, 0.09717976, 0.048000462, 0.09582411, 0.057870757, + 0.009721041, 0.04059712, 0.027814662, 0.044197626, 0.08494218, + 0.068458244, 0.06865237, 0.035384227, 0.035119917, 0.0014469922, + 0.06747875, 0.011526972, 0.059339046, 0.09946751, 0.029161816, 0.08563929, + 0.013220805, 0.0130800605, 0.08682514, 0.0026526095, 0.024007602, + 0.042884815, 0.0016457498, 0.038826134, 0.029622948, 0.092063345, + 0.08853093, 0.08579532, 0.05740533, 0.037569582, 0.093338504, 0.037887778, + 0.026895279, 0.012127317, 0.08102171, 0.07128212, 0.083832555, 0.01040817, + 0.012880343, 0.067742355, 0.023410464, 0.02355507, 0.033754922, + 0.069985695, 0.03458474, 0.0009336054, 0.09962534, 0.027581383, + 0.0070503294, 0.03726715, 0.0860189, 0.022456795, 0.008489156, + 0.014327603, 0.092389114, 0.030231846, 0.034236062, 0.041026082, + 0.035246927, 0.08349572, 0.024635315, 0.016486669, 0.0075792433, + 0.038704008, 0.03596157, 0.004387182, 0.00830847, 0.08544835, 0.07415318, + 0.014629382, 0.025899095, 0.023593515, 0.09962813, 0.08387443, 0.04872009, + 0.010762602, 0.08904078, 0.07732275, 0.049653627, 0.002126521, 0.07827368, + 0.060574155, 0.029526144, 0.03292814, 0.013605702, 0.07197627, 0.08380023, + 0.014560497, 0.04541185, 0.039731026, 0.066244595, 0.0074393633, + 0.020672286, 0.06901037, 0.02176397, 0.055994023, 0.03295345, 0.06006151, + 0.07034043, 0.016760945, 0.045478977, 0.032862633, 0.025086893, + 0.053483963, 0.02420652, 0.044568207, 0.0847556, 0.023151178, 0.02695403, + 0.024798984, 0.06586484, 0.068034716, 0.08522362, 0.07343409, 0.04427554, + 0.008678985, 0.017140096, 0.008277804, 0.031494867, 0.048871603, + 0.00280841, 0.029550219, 0.059875797, 0.03953148, 0.07980997, 0.061504643, + 0.026000053, 0.009833485, 0.021643644, 0.080291264, 0.09075825, + 0.085376106, 0.07334238, 0.0068784417, 0.088653766, 0.069428824, + 0.053739365, 0.06057724, 0.087979116, 0.06244427, 0.09494982, 0.08411278, + 0.07237132, 0.07551756, 0.03690317, 0.040865213, 0.069508545, 0.02388947, + 0.0727196, 0.08563005, 0.050196763, 0.0891728, 0.02931456, 0.08588966, + 0.0903831, 0.087135054, 0.07697115, 0.09106482, 0.07894994, 0.09390003, + 0.068581626, 0.0012029171, 0.0813266, 0.074630365, 0.05043755, 0.06656685, + 0.05548228, 0.02964148, 0.087716654, 0.09632796, 0.06670126, 0.025372852, + 0.019457562, 0.06371032, 0.028254861, 0.0025097847, 0.08936894, + 0.013841391, 0.007039583, 0.04903484, 0.011485494, 0.014440769, + 0.034969147 ] -} \ No newline at end of file + ], + "output_data": [ + [ + 0.02734375, -0.010009766, 0.10852051, 0.1519165, 0.13574219, 0.031677246, + 0.0435791, 0.14544678, -0.09136963, -0.026245117 + ] + ] +} diff --git a/public/data/mnist/settings.json b/public/data/mnist/settings.json index 3ec7ec4..b4f72ad 100644 --- a/public/data/mnist/settings.json +++ b/public/data/mnist/settings.json @@ -1 +1,24 @@ -{"run_args":{"tolerance":{"val":0.0,"scale":1.0},"input_scale":1,"param_scale":1,"scale_rebase_multiplier":10,"lookup_range":[-4,4],"logrows":5,"variables":[["batch_size",1]],"input_visibility":"Private","output_visibility":"Public","param_visibility":"Private"},"num_constraints":15028,"total_const_size":0,"model_instance_shapes":[[1,10]],"model_output_scales":[5],"model_input_scales":[1],"module_sizes":{"poseidon":[0,[0]],"elgamal":[0,[0]]},"required_lookups":["ReLU"],"check_mode":"UNSAFE","version":"0.0.0","num_blinding_factors":null} \ No newline at end of file +{ + "run_args": { + "tolerance": { "val": 0.0, "scale": 1.0 }, + "input_scale": 1, + "param_scale": 1, + "scale_rebase_multiplier": 10, + "lookup_range": [-4, 4], + "logrows": 5, + "variables": [["batch_size", 1]], + "input_visibility": "Private", + "output_visibility": "Public", + "param_visibility": "Private" + }, + "num_constraints": 15028, + "total_const_size": 0, + "model_instance_shapes": [[1, 10]], + "model_output_scales": [5], + "model_input_scales": [1], + "module_sizes": { "poseidon": [0, [0]], "elgamal": [0, [0]] }, + "required_lookups": ["ReLU"], + "check_mode": "UNSAFE", + "version": "0.0.0", + "num_blinding_factors": null +} diff --git a/public/data/mnist/witness.json b/public/data/mnist/witness.json index 6380cbf..3ae5e81 100644 --- a/public/data/mnist/witness.json +++ b/public/data/mnist/witness.json @@ -1 +1,836 @@ -{"inputs":[[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]],"outputs":[[[0,0,0,0],[10902020042510041094,17381486299841078119,5900175412809962030,2475245527108272378],[7959790035488735211,12951774245394433045,16242874202584236123,560012691975822483],[7959790035488735211,12951774245394433045,16242874202584236123,560012691975822483],[7959790035488735211,12951774245394433045,16242874202584236123,560012691975822483],[6425625360762666998,7924344314350639699,14762033076929465436,2023505479389396574],[415066004289224689,11886516471525959549,3696305541684646538,3035258219084094862],[7959790035488735211,12951774245394433045,16242874202584236123,560012691975822483],[16912579398983483403,13419314142665758269,16965902948054780928,1463492787413574090],[6425625360762666998,7924344314350639699,14762033076929465436,2023505479389396574]]],"processed_inputs":null,"processed_params":null,"processed_outputs":null,"max_lookup_inputs":2,"min_lookup_inputs":-2} \ No newline at end of file +{ + "inputs": [ + [ + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0], + [0, 0, 0, 0] + ] + ], + "outputs": [ + [ + [0, 0, 0, 0], + [ + 10902020042510041094, 17381486299841078119, 5900175412809962030, + 2475245527108272378 + ], + [ + 7959790035488735211, 12951774245394433045, 16242874202584236123, + 560012691975822483 + ], + [ + 7959790035488735211, 12951774245394433045, 16242874202584236123, + 560012691975822483 + ], + [ + 7959790035488735211, 12951774245394433045, 16242874202584236123, + 560012691975822483 + ], + [ + 6425625360762666998, 7924344314350639699, 14762033076929465436, + 2023505479389396574 + ], + [ + 415066004289224689, 11886516471525959549, 3696305541684646538, + 3035258219084094862 + ], + [ + 7959790035488735211, 12951774245394433045, 16242874202584236123, + 560012691975822483 + ], + [ + 16912579398983483403, 13419314142665758269, 16965902948054780928, + 1463492787413574090 + ], + [ + 6425625360762666998, 7924344314350639699, 14762033076929465436, + 2023505479389396574 + ] + ] + ], + "processed_inputs": null, + "processed_params": null, + "processed_outputs": null, + "max_lookup_inputs": 2, + "min_lookup_inputs": -2 +} diff --git a/tailwind.config.js b/tailwind.config.js index a6cb8fb..a6760d0 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -4,7 +4,8 @@ module.exports = { './node_modules/flowbite-react/**/*.{js,jsx,ts,tsx}', './app/**/*.{js,ts,jsx,tsx,mdx}', './components/**/*.{js,ts,jsx,tsx,mdx}', - './public/**/*.html',, + './public/**/*.html', + , ], plugins: [require('flowbite/plugin')], theme: {}, diff --git a/tests/elgamalEncryption.test.ts b/tests/elgamalEncryption.test.ts index ee9d91e..ba0ef77 100644 --- a/tests/elgamalEncryption.test.ts +++ b/tests/elgamalEncryption.test.ts @@ -1,57 +1,65 @@ -import * as wasmFunctions from '@ezkljs/engine/nodejs'; -import { - readDataFile -} from './utils'; -import JSONBig from 'json-bigint'; +import * as wasmFunctions from '@ezkljs/engine/nodejs' +import { readDataFile } from './utils' +import JSONBig from 'json-bigint' describe('Elgamal Encryption', () => { + let message_ser = Uint8ClampedArray - let message_ser = Uint8ClampedArray; + let elgamalVariables: { + pk: BigInt[][] + sk: BigInt[] + r: BigInt[] + } - let elgamalVariables: { - pk: BigInt[][], - sk: BigInt[], - r: BigInt[] - }; + let cipherText: bigint[][][] - let cipherText: bigint[][][] + it('elgamalGenRandom ', async () => { + // Create a new random buffer of length 32 + // to be submitted as a seed value to + // the elgamalGenRandom binding + // IN PRODUCTION USE A CRYPTOGRAPHICALLY SECURE RNG, + // NOT MATH.RANDOM. Only used here for testing purposes. + const length = 32 + let uint8Array = new Uint8Array(length) + for (let i = 0; i < length; i++) { + uint8Array[i] = + (Math.floor(Math.random() * Math.pow(2, 8)) >>> (i * 8)) & 0xff + } + const rng_buffer = new Uint8ClampedArray(uint8Array.buffer) + const elgamalVariables_ser = wasmFunctions.elgamalGenRandom(rng_buffer) + // Deserialize the result from a Uint8ClampedArray to a JSON object + elgamalVariables = wasmFunctions.deserialize(elgamalVariables_ser) + console.log( + 'Elgamal variables', + JSONBig.stringify(elgamalVariables, null, 4), + ) + }) - it('elgamalGenRandom ', async () => { - // Create a new random buffer of length 32 - // to be submitted as a seed value to - // the elgamalGenRandom binding - // IN PRODUCTION USE A CRYPTOGRAPHICALLY SECURE RNG, - // NOT MATH.RANDOM. Only used here for testing purposes. - const length = 32; - let uint8Array = new Uint8Array(length); - for (let i = 0; i < length; i++) { - uint8Array[i] = (Math.floor(Math.random() * Math.pow(2, 8)) >>> (i * 8)) & 0xFF; - } - const rng_buffer = new Uint8ClampedArray(uint8Array.buffer); - const elgamalVariables_ser = wasmFunctions.elgamalGenRandom(rng_buffer); - // Deserialize the result from a Uint8ClampedArray to a JSON object - elgamalVariables = wasmFunctions.deserialize(elgamalVariables_ser) - console.log("Elgamal variables", JSONBig.stringify(elgamalVariables, null, 4)); - }); + it('elgamalEncrypt', async () => { + const message_ser = await readDataFile('message.txt', '1l_mlp') + const pk_ser = wasmFunctions.serialize(elgamalVariables.pk) + const r_ser = wasmFunctions.serialize(elgamalVariables.r) + const cipherText_ser = wasmFunctions.elgamalEncrypt( + pk_ser, + message_ser, + r_ser, + ) + cipherText = wasmFunctions.deserialize(cipherText_ser) + console.log('Elgamal cipher text', JSONBig.stringify(cipherText, null, 4)) + }) - it('elgamalEncrypt', async () => { - const message_ser = await readDataFile('message.txt', '1l_mlp'); - const pk_ser = wasmFunctions.serialize(elgamalVariables.pk); - const r_ser = wasmFunctions.serialize(elgamalVariables.r); - const cipherText_ser = wasmFunctions.elgamalEncrypt(pk_ser, message_ser, r_ser); - cipherText = wasmFunctions.deserialize(cipherText_ser) - console.log("Elgamal cipher text", JSONBig.stringify(cipherText, null, 4)) - }); - - it('elgamalDecrypt', async () => { - const cipherText_ser = wasmFunctions.serialize(cipherText); - const sk_ser = wasmFunctions.serialize(elgamalVariables.sk); - const message_ser = wasmFunctions.elgamalDecrypt(cipherText_ser, sk_ser); - const message = wasmFunctions.deserialize(message_ser) - console.log("Elgamal decrypted message", JSONBig.stringify(message, null, 4)) - let message_ser_original = await readDataFile('message.txt', '1l_mlp'); - let originalMessage = wasmFunctions.deserialize(message_ser_original); - console.log("Original message", originalMessage) - expect(message).toEqual(originalMessage); - }); -}); \ No newline at end of file + it('elgamalDecrypt', async () => { + const cipherText_ser = wasmFunctions.serialize(cipherText) + const sk_ser = wasmFunctions.serialize(elgamalVariables.sk) + const message_ser = wasmFunctions.elgamalDecrypt(cipherText_ser, sk_ser) + const message = wasmFunctions.deserialize(message_ser) + console.log( + 'Elgamal decrypted message', + JSONBig.stringify(message, null, 4), + ) + let message_ser_original = await readDataFile('message.txt', '1l_mlp') + let originalMessage = wasmFunctions.deserialize(message_ser_original) + console.log('Original message', originalMessage) + expect(message).toEqual(originalMessage) + }) +}) diff --git a/tests/fieldElementUtils.test.ts b/tests/fieldElementUtils.test.ts index 242af90..ed9187e 100644 --- a/tests/fieldElementUtils.test.ts +++ b/tests/fieldElementUtils.test.ts @@ -1,58 +1,61 @@ - -import * as wasmFunctions from '@ezkljs/engine/nodejs'; +import * as wasmFunctions from '@ezkljs/engine/nodejs' import { - uint8ArrayToJsonObject, - intToFieldElement, - randomZScore -} from './utils'; + uint8ArrayToJsonObject, + intToFieldElement, + randomZScore, +} from './utils' describe('Field element utils', () => { - - it('field serialization round trip fuzzing', async () => { - const numRuns = 10; - for (let i = 0; i < numRuns; i++) { - // Get a random z-score value for testing - const floatingPoint = randomZScore(); - // Max scale used in the calibrate method on the main ezkl repo. - const maxScale = 16; - for (let j = 0; j <= maxScale; j++) { - const scale = j; - // Convert floating point to fixed point integer value - const integer = Math.round(floatingPoint * (1 << scale)); - - const floatingPointRoundTrip = integer / (1 << scale); - - // console.debug("Test floating point value", floatingPoint) - // console.debug("Test scale (multiply floating point by 2^scale then rounding to get integer fixed point)", scale) - // console.debug("Test integer (fixed point) value", integer); - - const U64sSer = wasmFunctions.floatToVecU64(floatingPoint, scale); - let U64sOutput = uint8ArrayToJsonObject(new Uint8Array(U64sSer.buffer)); - U64sOutput = U64sOutput.map((x: bigint) => x.toString()); - if (i == 0 && j == 0) console.debug("Float to U64 output", U64sOutput); - - const result2 = wasmFunctions.vecU64ToFloat(U64sSer, scale) + 0; - if (i == 0 && j == 0) console.debug("Vec u64s to float output", result2); - // Using toBeCloseTo instead of toBe because of floating point precision loss - expect(result2).toBeCloseTo(floatingPointRoundTrip); - - const result3 = wasmFunctions.vecU64ToInt(U64sSer); - let integerOutput = uint8ArrayToJsonObject(new Uint8Array(result3.buffer)); - if (i == 0 && j == 0) console.debug("Vec u64s to integer output", integerOutput); - expect(integerOutput).toBeCloseTo(integer); - - let feltHexOutput = wasmFunctions.vecU64ToFelt(U64sSer); - if (i == 0 && j == 0) console.debug("Vec u64s to field element output (hex)", feltHexOutput); - let referenceFelt = intToFieldElement(integerOutput); - if (i == 0 && j == 0) console.debug("Reference field element (decimal)", referenceFelt); - expect(BigInt(feltHexOutput)).toBe(referenceFelt); - } - } - }); - it('buffer to vec of vec u64', async () => { - const testString = "test"; - const serializedString = wasmFunctions.serialize(testString); - const result = wasmFunctions.bufferToVecOfVecU64(serializedString); - expect(result).toBeInstanceOf(Uint8ClampedArray); - }) -}); \ No newline at end of file + it('field serialization round trip fuzzing', async () => { + const numRuns = 10 + for (let i = 0; i < numRuns; i++) { + // Get a random z-score value for testing + const floatingPoint = randomZScore() + // Max scale used in the calibrate method on the main ezkl repo. + const maxScale = 16 + for (let j = 0; j <= maxScale; j++) { + const scale = j + // Convert floating point to fixed point integer value + const integer = Math.round(floatingPoint * (1 << scale)) + + const floatingPointRoundTrip = integer / (1 << scale) + + // console.debug("Test floating point value", floatingPoint) + // console.debug("Test scale (multiply floating point by 2^scale then rounding to get integer fixed point)", scale) + // console.debug("Test integer (fixed point) value", integer); + + const U64sSer = wasmFunctions.floatToVecU64(floatingPoint, scale) + let U64sOutput = uint8ArrayToJsonObject(new Uint8Array(U64sSer.buffer)) + U64sOutput = U64sOutput.map((x: bigint) => x.toString()) + if (i == 0 && j == 0) console.debug('Float to U64 output', U64sOutput) + + const result2 = wasmFunctions.vecU64ToFloat(U64sSer, scale) + 0 + if (i == 0 && j == 0) console.debug('Vec u64s to float output', result2) + // Using toBeCloseTo instead of toBe because of floating point precision loss + expect(result2).toBeCloseTo(floatingPointRoundTrip) + + const result3 = wasmFunctions.vecU64ToInt(U64sSer) + let integerOutput = uint8ArrayToJsonObject( + new Uint8Array(result3.buffer), + ) + if (i == 0 && j == 0) + console.debug('Vec u64s to integer output', integerOutput) + expect(integerOutput).toBeCloseTo(integer) + + let feltHexOutput = wasmFunctions.vecU64ToFelt(U64sSer) + if (i == 0 && j == 0) + console.debug('Vec u64s to field element output (hex)', feltHexOutput) + let referenceFelt = intToFieldElement(integerOutput) + if (i == 0 && j == 0) + console.debug('Reference field element (decimal)', referenceFelt) + expect(BigInt(feltHexOutput)).toBe(referenceFelt) + } + } + }) + it('buffer to vec of vec u64', async () => { + const testString = 'test' + const serializedString = wasmFunctions.serialize(testString) + const result = wasmFunctions.bufferToVecOfVecU64(serializedString) + expect(result).toBeInstanceOf(Uint8ClampedArray) + }) +}) diff --git a/tests/posiedonHash.test.ts b/tests/posiedonHash.test.ts index db1bc7b..be7a19a 100644 --- a/tests/posiedonHash.test.ts +++ b/tests/posiedonHash.test.ts @@ -1,28 +1,29 @@ -import * as wasmFunctions from '@ezkljs/engine/nodejs'; -import { serialize } from '@ezkljs/engine/nodejs'; -import { - readDataFile, -} from './utils'; -import { deserialize } from '@ezkljs/engine/nodejs'; +import * as wasmFunctions from '@ezkljs/engine/nodejs' +import { serialize } from '@ezkljs/engine/nodejs' +import { readDataFile } from './utils' +import { deserialize } from '@ezkljs/engine/nodejs' describe('poseidonHash', () => { - it('should return a Uint8Array', async () => { - /// The message ingested by the poseidon hash - // function must be of this format: [[u64: 4] - // e.i. an array of 4 u64s, the standard field element - // serialization format. - let message = [[0, 0, 0, 0], [1, 0, 0, 0]] - console.log("Message that will be hashed (preimage)", message) - // Serialize the message to a Uint8ClampedArray so that it can be ingested by the poseidonHash binding - let message_ser = serialize(message) - // As a sanity check, read in the message.txt file - // which contains the same message and compare - // the hash of each to make sure they are equal. - let message_file = await readDataFile('message.txt', '1l_mlp'); - const result = wasmFunctions.poseidonHash(message_ser); - const result_file = wasmFunctions.poseidonHash(message_file); - expect(result_file).toEqual(result); - let hash = deserialize(result); - console.log("Poseidon hash of message", hash) - }); -}); \ No newline at end of file + it('should return a Uint8Array', async () => { + /// The message ingested by the poseidon hash + // function must be of this format: [[u64: 4] + // e.i. an array of 4 u64s, the standard field element + // serialization format. + let message = [ + [0, 0, 0, 0], + [1, 0, 0, 0], + ] + console.log('Message that will be hashed (preimage)', message) + // Serialize the message to a Uint8ClampedArray so that it can be ingested by the poseidonHash binding + let message_ser = serialize(message) + // As a sanity check, read in the message.txt file + // which contains the same message and compare + // the hash of each to make sure they are equal. + let message_file = await readDataFile('message.txt', '1l_mlp') + const result = wasmFunctions.poseidonHash(message_ser) + const result_file = wasmFunctions.poseidonHash(message_file) + expect(result_file).toEqual(result) + let hash = deserialize(result) + console.log('Poseidon hash of message', hash) + }) +}) diff --git a/tests/proveVerify.test.ts b/tests/proveVerify.test.ts index 8c6a42b..7cf1812 100644 --- a/tests/proveVerify.test.ts +++ b/tests/proveVerify.test.ts @@ -1,77 +1,92 @@ -import * as wasmFunctions from '@ezkljs/engine/nodejs'; -import { - readDataFile, -} from './utils'; -import JSONBig from 'json-bigint'; -import { deserialize } from '@ezkljs/engine/nodejs'; - +import * as wasmFunctions from '@ezkljs/engine/nodejs' +import { readDataFile } from './utils' +import JSONBig from 'json-bigint' +import { deserialize } from '@ezkljs/engine/nodejs' describe('Generate witness, prove and verify', () => { + let proof_ser: Uint8ClampedArray + let srs_ser: Uint8ClampedArray + let witness_ser: Uint8ClampedArray + let input_ser: Uint8ClampedArray + let compiled_circuit_ser: Uint8ClampedArray - let proof_ser: Uint8ClampedArray - let srs_ser: Uint8ClampedArray; - let witness_ser: Uint8ClampedArray; - let input_ser: Uint8ClampedArray; - let compiled_circuit_ser: Uint8ClampedArray; - - let proveTime = 0; - let verifyTime = 0; + let proveTime = 0 + let verifyTime = 0 - beforeEach(() => { - // Initialize the panic hook for readable error messages from WASM - wasmFunctions.init_panic_hook(); - }); + beforeEach(() => { + // Initialize the panic hook for readable error messages from WASM + wasmFunctions.init_panic_hook() + }) - it('generate witness', async () => { - // Read in the input and compiled circuit as a Uint8ClampedArray (serialized format) - input_ser = await readDataFile('input.json', '1l_mlp'); - // Use the deserialize method to convert the non human-readable (but WASM digestable) serialized input from a Uint8ClampedArray to a JSON object - console.log("input.json", JSONBig.stringify(deserialize(input_ser), null, 4)) - // The compiled circuit is bincode serialized, so we can't use the deserialize method on it. - compiled_circuit_ser = await readDataFile('test_network.compiled', '1l_mlp'); - // Generate the serialized witness from the input and compiled circuit - let witness = wasmFunctions.genWitness(compiled_circuit_ser, input_ser) - // Deserialize the witness from a Uint8ClampedArray to a JSON object - console.log("witness.json", JSONBig.stringify(deserialize(witness), null, 4)) - // We now need to convert the witness from a Uint8Array to Uint8ClampedArray - // so that it can be ingested by the genWitness binding - witness_ser = new Uint8ClampedArray(witness.buffer); - }); + it('generate witness', async () => { + // Read in the input and compiled circuit as a Uint8ClampedArray (serialized format) + input_ser = await readDataFile('input.json', '1l_mlp') + // Use the deserialize method to convert the non human-readable (but WASM digestable) serialized input from a Uint8ClampedArray to a JSON object + console.log( + 'input.json', + JSONBig.stringify(deserialize(input_ser), null, 4), + ) + // The compiled circuit is bincode serialized, so we can't use the deserialize method on it. + compiled_circuit_ser = await readDataFile('test_network.compiled', '1l_mlp') + // Generate the serialized witness from the input and compiled circuit + let witness = wasmFunctions.genWitness(compiled_circuit_ser, input_ser) + // Deserialize the witness from a Uint8ClampedArray to a JSON object + console.log( + 'witness.json', + JSONBig.stringify(deserialize(witness), null, 4), + ) + // We now need to convert the witness from a Uint8Array to Uint8ClampedArray + // so that it can be ingested by the genWitness binding + witness_ser = new Uint8ClampedArray(witness.buffer) + }) - it('prove', async () => { - wasmFunctions.init_panic_hook(); - // We need to read in the proving key and srs as Uint8ClampedArrays. - // Both of these artifacts aren't JSON serializable. - let pk_ser = await readDataFile('test.provekey', '1l_mlp'); - srs_ser = await readDataFile("kzg", '1l_mlp'); - // Record the start time for proving - const startTimeProve = Date.now(); - let proof = wasmFunctions.prove(witness_ser, pk_ser, compiled_circuit_ser, srs_ser); - // Record the end time for proving - const endTimeProve = Date.now(); - // Convert the returned proof from Uint8Array to Uint8ClampedArray - // so that it can be ingested by the verify binding - proof_ser = new Uint8ClampedArray(proof.buffer); - proveTime = endTimeProve - startTimeProve; - console.log("prove time (ms)", proveTime) - }); + it('prove', async () => { + wasmFunctions.init_panic_hook() + // We need to read in the proving key and srs as Uint8ClampedArrays. + // Both of these artifacts aren't JSON serializable. + let pk_ser = await readDataFile('test.provekey', '1l_mlp') + srs_ser = await readDataFile('kzg', '1l_mlp') + // Record the start time for proving + const startTimeProve = Date.now() + let proof = wasmFunctions.prove( + witness_ser, + pk_ser, + compiled_circuit_ser, + srs_ser, + ) + // Record the end time for proving + const endTimeProve = Date.now() + // Convert the returned proof from Uint8Array to Uint8ClampedArray + // so that it can be ingested by the verify binding + proof_ser = new Uint8ClampedArray(proof.buffer) + proveTime = endTimeProve - startTimeProve + console.log('prove time (ms)', proveTime) + }) - it('verify', async () => { - // read in the verification key and settings files as Uint8ClampedArrays - const vk = await readDataFile('test.key', '1l_mlp'); - let circuit_settings_ser = await readDataFile('settings.json', '1l_mlp'); - // Deserialize the settings from a Uint8ClampedArray to a JSON object - console.log("settings.json", JSONBig.stringify(deserialize(circuit_settings_ser), null, 4)) - // Record the start time for verifying - const startTimeVerify = Date.now(); - let proof_ser = await readDataFile('proof.pf', '1l_mlp'); - let verification = wasmFunctions.verify(proof_ser, vk, circuit_settings_ser, srs_ser); - // Record the end time for verifying - const endTimeVerify = Date.now(); - verifyTime = endTimeVerify - startTimeVerify; - console.log("verification time (ms)", verifyTime) - // Check that the verification is true (i.e. the proof is valid) - expect(typeof verification).toBe('boolean'); - expect(verification).toBe(true); - }); -}); + it('verify', async () => { + // read in the verification key and settings files as Uint8ClampedArrays + const vk = await readDataFile('test.key', '1l_mlp') + let circuit_settings_ser = await readDataFile('settings.json', '1l_mlp') + // Deserialize the settings from a Uint8ClampedArray to a JSON object + console.log( + 'settings.json', + JSONBig.stringify(deserialize(circuit_settings_ser), null, 4), + ) + // Record the start time for verifying + const startTimeVerify = Date.now() + let proof_ser = await readDataFile('proof.pf', '1l_mlp') + let verification = wasmFunctions.verify( + proof_ser, + vk, + circuit_settings_ser, + srs_ser, + ) + // Record the end time for verifying + const endTimeVerify = Date.now() + verifyTime = endTimeVerify - startTimeVerify + console.log('verification time (ms)', verifyTime) + // Check that the verification is true (i.e. the proof is valid) + expect(typeof verification).toBe('boolean') + expect(verification).toBe(true) + }) +}) diff --git a/tests/utils.ts b/tests/utils.ts index bbe5229..88bafdb 100644 --- a/tests/utils.ts +++ b/tests/utils.ts @@ -1,44 +1,55 @@ -import * as fs from 'fs/promises'; -import * as path from 'path'; -import JSONBig from 'json-bigint'; +import * as fs from 'fs/promises' +import * as path from 'path' +import JSONBig from 'json-bigint' // HELPERS FOR ALL TESTS // Function to convert the return buffer elgamalGenRandom into a JSON object export function uint8ArrayToJsonObject(uint8Array: Uint8Array) { - let string = new TextDecoder().decode(uint8Array); - let jsonObject = JSONBig.parse(string); - return jsonObject; + let string = new TextDecoder().decode(uint8Array) + let jsonObject = JSONBig.parse(string) + return jsonObject } // HELPERS FOR PROVE AND VERIFY TESTS -export async function readDataFile(filename: string, example: string): Promise { - const filePath = path.join(__dirname, '..', 'public', 'data', example, filename); - const buffer = await fs.readFile(filePath); - return new Uint8ClampedArray(buffer.buffer); +export async function readDataFile( + filename: string, + example: string, +): Promise { + const filePath = path.join( + __dirname, + '..', + 'public', + 'data', + example, + filename, + ) + const buffer = await fs.readFile(filePath) + return new Uint8ClampedArray(buffer.buffer) } /// HELPERS FOR FIELD ELEMENT UTILS TESTS // Convert an integer value in a field element export const intToFieldElement = (int: bigint): bigint => { - const primeFieldHex = "0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001"; - const prime = BigInt(primeFieldHex); - return (BigInt(int) + BigInt(prime)) % BigInt(prime); -}; + const primeFieldHex = + '0x30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001' + const prime = BigInt(primeFieldHex) + return (BigInt(int) + BigInt(prime)) % BigInt(prime) +} -// Meant to simulate random input tensor values. +// Meant to simulate random input tensor values. export function randomZScore() { - let u1, u2; - do { - u1 = Math.random(); // Uniform random number between 0 and 1 - u2 = Math.random(); // Uniform random number between 0 and 1 - } while (u1 <= Number.EPSILON); // Avoid getting u1 as 0 - - // Box-Muller transform - const z0 = Math.sqrt(-2.0 * Math.log(u1)) * Math.cos(2.0 * Math.PI * u2); - // const z1 = Math.sqrt(-2.0 * Math.log(u1)) * Math.sin(2.0 * Math.PI * u2); // Another independent value if needed - - return z0; // z0 is a random value from a standard normal distribution (z-score) -} \ No newline at end of file + let u1, u2 + do { + u1 = Math.random() // Uniform random number between 0 and 1 + u2 = Math.random() // Uniform random number between 0 and 1 + } while (u1 <= Number.EPSILON) // Avoid getting u1 as 0 + + // Box-Muller transform + const z0 = Math.sqrt(-2.0 * Math.log(u1)) * Math.cos(2.0 * Math.PI * u2) + // const z1 = Math.sqrt(-2.0 * Math.log(u1)) * Math.sin(2.0 * Math.PI * u2); // Another independent value if needed + + return z0 // z0 is a random value from a standard normal distribution (z-score) +} diff --git a/timingData.json b/timingData.json index 0d5b056..91dbe3d 100644 --- a/timingData.json +++ b/timingData.json @@ -5,4 +5,4 @@ "verifyTime": 17, "verifyResult": true } -] \ No newline at end of file +]