From 68a876c2db80ac338a22c02762b36ae3e7210f2e Mon Sep 17 00:00:00 2001 From: Hatton Date: Sat, 4 May 2024 17:43:22 -0600 Subject: [PATCH] Remove circular dep wrecking vitest --- archive-configurations/ELAR/fields.json5 | 2 +- package.json | 4 +- src/components/FieldLabel.tsx | 4 +- src/components/FolderPane.tsx | 5 +- src/components/LanguageChoicesEditor.tsx | 1 - src/components/Notes.tsx | 4 +- src/components/project/ProjectTab.tsx | 10 +- src/export/ImdiBundler.ts | 6 +- ...> ImdiGenerator-corpus-corpusLink.spec.ts} | 0 .../ImdiGenerator-corpus-metadata.spec.ts | 67 ++++ src/export/ImdiGenerator.ts | 4 +- .../Project/OtherConfigurationSettings.ts | 30 ++ src/model/Project/Person/Person.ts | 1 - src/model/Project/Project.ts | 39 +-- src/model/Project/WriteProject.spec.ts | 2 +- src/other/sanitizeForArchive.spec.ts | 4 +- src/other/sanitizeForArchive.ts | 12 +- yarn.lock | 300 +++++++++--------- 18 files changed, 281 insertions(+), 214 deletions(-) rename src/export/{corpusImdi.spec.ts => ImdiGenerator-corpus-corpusLink.spec.ts} (100%) create mode 100644 src/export/ImdiGenerator-corpus-metadata.spec.ts create mode 100644 src/model/Project/OtherConfigurationSettings.ts diff --git a/archive-configurations/ELAR/fields.json5 b/archive-configurations/ELAR/fields.json5 index e765d8b5..aa5b6529 100644 --- a/archive-configurations/ELAR/fields.json5 +++ b/archive-configurations/ELAR/fields.json5 @@ -1,6 +1,6 @@ { project: [ - { key: "collectionName", visibility: "always" }, + // { key: "collectionName", visibility: "always" }, { key: "collectionTitle", visibility: "always" }, { key: "collectionDescription", visibility: "always" }, { diff --git a/package.json b/package.json index 49da2b83..7da35d86 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,7 @@ "@typescript-eslint/eslint-plugin": "^6.12.0", "@typescript-eslint/parser": "^6.12.0", "@vitejs/plugin-react": "^4.2.1", - "@vitest/ui": "^1.5.0", + "@vitest/ui": "^1.6.0", "babel-core": "^7.0.0-bridge.0", "babel-eslint": "10.1.0", "babel-loader": "^8.1.0", @@ -122,7 +122,7 @@ "vite-plugin-electron-renderer": "^0.12.1", "vite-plugin-environment": "^1.1.3", "vite-plugin-time-reporter": "^2.1.0", - "vitest": "^1.5.0", + "vitest": "^1.6.0", "webdriverio": "^4.14.0" }, "dependencies": { diff --git a/src/components/FieldLabel.tsx b/src/components/FieldLabel.tsx index e9bea6c6..565a59b0 100644 --- a/src/components/FieldLabel.tsx +++ b/src/components/FieldLabel.tsx @@ -10,7 +10,7 @@ import { import { translateFieldLabel, translateTip } from "../other/localization"; import { observer } from "mobx-react"; import { tooltipBackground } from "../containers/theme"; -import { Project } from "../model/Project/Project"; +import { GetOtherConfigurationSettings } from "../model/Project/OtherConfigurationSettings"; export const FieldLabel: React.FunctionComponent<{ fieldDef: FieldDefinition; @@ -81,7 +81,7 @@ export const FieldInfoAffordances: React.FunctionComponent<{ )} - {Project.OtherConfigurationSettings.showImdiPreview && + {GetOtherConfigurationSettings().showImdiPreview && props.fieldDef.omitFromImdi && } ); diff --git a/src/components/FolderPane.tsx b/src/components/FolderPane.tsx index 1d0194e0..43fe8351 100644 --- a/src/components/FolderPane.tsx +++ b/src/components/FolderPane.tsx @@ -37,6 +37,7 @@ import { import { useEffect } from "react"; import { ErrorBoundary } from "./ErrorBoundary"; import { useLingui } from "@lingui/react"; +import { GetOtherConfigurationSettings } from "../model/Project/OtherConfigurationSettings"; export interface IProps { folder: Folder; @@ -152,7 +153,7 @@ const FileTabs: React.FunctionComponent< /> ); - const imdiTab = Project.OtherConfigurationSettings.showImdiPreview ? ( + const imdiTab = GetOtherConfigurationSettings().showImdiPreview ? ( IMDI {/* don't translate */} ) : ( <> @@ -164,7 +165,7 @@ const FileTabs: React.FunctionComponent< <> ); - const imdiPanel = Project.OtherConfigurationSettings.showImdiPreview ? ( + const imdiPanel = GetOtherConfigurationSettings().showImdiPreview ? ( - {Project.OtherConfigurationSettings.showImdiPreview && ( + {GetOtherConfigurationSettings().showImdiPreview && ( = observer((props) => { Other Documents - {Project.OtherConfigurationSettings.showImdiPreview ? ( + {GetOtherConfigurationSettings().showImdiPreview ? ( IMDI {/* don't translate */} ) : ( <> )} - {Project.OtherConfigurationSettings.showParadisec ? ( + {GetOtherConfigurationSettings().showParadisec ? ( PARADISEC {/* don't translate */} @@ -169,7 +169,7 @@ export const ProjectTab: React.FunctionComponent = observer((props) => {
- {Project.OtherConfigurationSettings.showImdiPreview ? ( + {GetOtherConfigurationSettings().showImdiPreview ? ( = observer((props) => { ) : ( <> )} - {Project.OtherConfigurationSettings.showParadisec ? ( + {GetOtherConfigurationSettings().showParadisec ? ( {} @@ -327,7 +327,7 @@ export default class ImdiBundler { fs.writeFileSync( Path.join( directoryForMetadataXmlFile, - sanitizeForArchive(imdiFileName, true) + sanitizeForArchive(imdiFileName, "ASCII") ), imdiXml ); diff --git a/src/export/corpusImdi.spec.ts b/src/export/ImdiGenerator-corpus-corpusLink.spec.ts similarity index 100% rename from src/export/corpusImdi.spec.ts rename to src/export/ImdiGenerator-corpus-corpusLink.spec.ts diff --git a/src/export/ImdiGenerator-corpus-metadata.spec.ts b/src/export/ImdiGenerator-corpus-metadata.spec.ts new file mode 100644 index 00000000..0ecd1364 --- /dev/null +++ b/src/export/ImdiGenerator-corpus-metadata.spec.ts @@ -0,0 +1,67 @@ +import ImdiGenerator, { IMDIMode } from "./ImdiGenerator"; +import { Project } from "../model/Project/Project"; +import { + setResultXml, + xexpect as expect, + count, + value, + xexpect +} from "../other/xmlUnitTestUtils"; +import temp from "temp"; +import * as fs from "fs-extra"; +import assert from "assert"; +import { + describe, + it, + vi, + beforeAll, + afterAll, + test, + afterEach, + beforeEach +} from "vitest"; +import { GetProjectFileWithOneField } from "../model/Project/WriteProject.spec"; + +temp.track(); // cleanup on exit: doesn't work + +let project: Project; +let projectDir: string; + +describe("Imdi generation for images", () => { + beforeEach(() => { + projectDir = temp.mkdirSync("lameta imdi actor generator test"); + project = Project.fromDirectory(projectDir); + }); + + afterEach(() => { + fs.emptyDirSync(projectDir); + fs.removeSync(projectDir); + }); + + test("fundingProjectTitle goes to the right place", () => { + // NB: in ELAR, at least, this will appear as "Collection Title" + project.properties.setText("fundingProjectTitle", "my title"); + project.properties.setText("projectDescription", "my description"); + project.properties.setText("collectionSteward", "my steward"); + const x = ImdiGenerator.generateCorpus( + IMDIMode.RAW_IMDI, + project, + [], + true + ); + + setResultXml(x); + + // From Hanna: Collection Title = Corpus/Title + // From Hanna: Collection Key = Corpus/MDGroup/Keys/Key[@Name='CorpusId'] + // The ELAR fields.json renames the label for fundingProjectTitle to "Collection Title" + expect("//Corpus/Title").toMatch("my title"); + + // From Hanna: Collection Description= Corpus/Description[@Name='short_description'] + // The ELAR fields.json renames the label for projectDescription to "Collection Description" + expect('//Corpus/Description[@Name="short_description"]').toMatch( + "my description" + ); + // From Hanna: Collection Steward = Corpus/MDGroup/Actors/Actor[@Role='Collection Steward'] + }); +}); diff --git a/src/export/ImdiGenerator.ts b/src/export/ImdiGenerator.ts index 005dbbd6..7fae9b06 100644 --- a/src/export/ImdiGenerator.ts +++ b/src/export/ImdiGenerator.ts @@ -115,7 +115,7 @@ export default class ImdiGenerator { } return this.makeString(); } - private projectXmlForPreview(): string { + public projectXmlForPreview(): string { this.tail = XmlBuilder.create("Project"); this.addProjectInfo(); return this.makeString(); @@ -595,7 +595,7 @@ export default class ImdiGenerator { // files as they get copied to the export, regardless of that setting. This is because this is a *requirement* of // IMDI archives. Anyhow, since the bundler would have (or will have) export the sanitized version, we need to do // that to the file name we use for it in the xml. - const filename = sanitizeForArchive(Path.basename(path), true); + const filename = sanitizeForArchive(Path.basename(path), "ASCII"); const immediateParentDirectoryName = Path.basename(Path.dirname(path)); const relativePath = Path.join(immediateParentDirectoryName, filename) diff --git a/src/model/Project/OtherConfigurationSettings.ts b/src/model/Project/OtherConfigurationSettings.ts new file mode 100644 index 00000000..725d02bd --- /dev/null +++ b/src/model/Project/OtherConfigurationSettings.ts @@ -0,0 +1,30 @@ +export type OtherConfigurationSettings = { + configurationFullName: string; + showImdiPreview: boolean; + showParadisec: boolean; + fileNameRules: "ASCII" | "unicode"; +}; + +let otherConfigurationSettings: OtherConfigurationSettings = { + configurationFullName: "", + showImdiPreview: false, + showParadisec: false, + fileNameRules: "ASCII" +}; + +export function SetOtherConfigurationSettings( + settings: OtherConfigurationSettings +) { + otherConfigurationSettings = settings; +} +export function GetOtherConfigurationSettings(): OtherConfigurationSettings { + return otherConfigurationSettings; +} +export function resetOtherConfigurationSettings() { + otherConfigurationSettings = { + showImdiPreview: false, + showParadisec: false, + configurationFullName: "", + fileNameRules: "ASCII" + }; +} diff --git a/src/model/Project/Person/Person.ts b/src/model/Project/Person/Person.ts index a47cbf9d..c6521257 100644 --- a/src/model/Project/Person/Person.ts +++ b/src/model/Project/Person/Person.ts @@ -17,7 +17,6 @@ import { } from "./PersonMigration"; import xmlbuilder from "xmlbuilder"; import { makeObservable, observable } from "mobx"; -import { Project } from "../Project"; export type idChangeHandler = (oldId: string, newId: string) => void; export const maxOtherLanguages = 10; diff --git a/src/model/Project/Project.ts b/src/model/Project/Project.ts index cc741ead..d8e35020 100644 --- a/src/model/Project/Project.ts +++ b/src/model/Project/Project.ts @@ -43,6 +43,10 @@ import { setCurrentProjectId } from "./MediaFolderAccess"; import { CapitalCase } from "../../other/case"; import { IChoice } from "../field/Field"; import { locateDependencyForFilesystemCall } from "../../other/locateDependency"; +import { + GetOtherConfigurationSettings, + SetOtherConfigurationSettings +} from "./OtherConfigurationSettings"; let sCurrentProject: Project | null = null; @@ -72,12 +76,7 @@ export class ProjectHolder { sCurrentProject = p; } } -type OtherConfigurationSettings = { - configurationFullName: string; - showImdiPreview: boolean; - showParadisec: boolean; - fileNameRules: "ASCII" | "unicode"; -}; + export class Project extends Folder { public loadingError: string; @@ -93,28 +92,10 @@ export class Project extends Folder { public authorityLists: AuthorityLists; public languageFinder: LanguageFinder; - public otherConfigurationSettings: OtherConfigurationSettings = { - configurationFullName: "", - showImdiPreview: false, - showParadisec: false, - fileNameRules: "ASCII" - }; - public get folderType(): IFolderType { return "project"; } - public static get OtherConfigurationSettings(): OtherConfigurationSettings { - return sCurrentProject === null - ? { - showImdiPreview: false, - showParadisec: false, - configurationFullName: "", - fileNameRules: "ASCII" - } - : sCurrentProject.otherConfigurationSettings; - } - public static getDefaultContentLanguageCode() { const codeAndName = sCurrentProject === null @@ -962,8 +943,8 @@ export class Project extends Folder { const factoryPath = locateDependencyForFilesystemCall( `archive-configurations/lameta/settings.json5` ); - this.otherConfigurationSettings = JSON5.parse( - fs.readFileSync(factoryPath, "utf8") + SetOtherConfigurationSettings( + JSON5.parse(fs.readFileSync(factoryPath, "utf8")) ); // now see if there are any settings in the confuration that @@ -988,10 +969,10 @@ export class Project extends Folder { } // read in these settings and merge them with the defaults const settings = JSON5.parse(fs.readFileSync(path, "utf8")); - this.otherConfigurationSettings = { - ...this.otherConfigurationSettings, + SetOtherConfigurationSettings({ + ...GetOtherConfigurationSettings(), ...settings - }; + }); } } diff --git a/src/model/Project/WriteProject.spec.ts b/src/model/Project/WriteProject.spec.ts index 801c8d2c..ee7790d7 100644 --- a/src/model/Project/WriteProject.spec.ts +++ b/src/model/Project/WriteProject.spec.ts @@ -108,7 +108,7 @@ function AttemptRoundTripOfOneField( } } -function GetProjectFileWithOneField( +export function GetProjectFileWithOneField( tag: string, content: string ): ProjectMetadataFile { diff --git a/src/other/sanitizeForArchive.spec.ts b/src/other/sanitizeForArchive.spec.ts index b16cab7b..0a35d893 100644 --- a/src/other/sanitizeForArchive.spec.ts +++ b/src/other/sanitizeForArchive.spec.ts @@ -3,11 +3,11 @@ import { describe, it, expect } from "vitest"; describe("SanitizeForArchive", () => { it("in IMDI mode, it replaces ! with underscores", () => { - const name = sanitizeForArchive("foo!bar!bas", true); + const name = sanitizeForArchive("foo!bar!bas", "ASCII"); expect(name).toBe("foo_bar_bas"); }); it("in IMDI mode, it doesn't leave trailing underscores", () => { - const name = sanitizeForArchive("foo!", true); + const name = sanitizeForArchive("foo!", "ASCII"); expect(name).toBe("foo"); }); }); diff --git a/src/other/sanitizeForArchive.ts b/src/other/sanitizeForArchive.ts index 48983baf..44dc4f13 100644 --- a/src/other/sanitizeForArchive.ts +++ b/src/other/sanitizeForArchive.ts @@ -1,11 +1,11 @@ -import { Project } from "../model/Project/Project"; +import { GetOtherConfigurationSettings } from "../model/Project/OtherConfigurationSettings"; const sanitizeFilename = require("sanitize-filename"); const ASCIIFolder = require("fold-to-ascii"); -export function sanitizeForArchive(name: string): string { +export function sanitizeForArchive(name: string, forceRules?: "ASCII"): string { let n = name; - switch (Project.OtherConfigurationSettings.fileNameRules) { + switch (forceRules || GetOtherConfigurationSettings().fileNameRules) { case "ASCII": { // first, get to ascii only n = ASCIIFolder.foldReplacing(n, "X"); @@ -19,14 +19,14 @@ export function sanitizeForArchive(name: string): string { n = n.replace(regex, "_"); break; } - case "unicode": { + case "unicode": // nothing more to do? break; - } + default: throw new Error( "Unknown fileNameRules: " + - Project.OtherConfigurationSettings.fileNameRules + GetOtherConfigurationSettings().fileNameRules ); } // finally, make sure it is safe for filesystems diff --git a/yarn.lock b/yarn.lock index 71f040bb..034b91db 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2354,145 +2354,145 @@ estree-walker "^2.0.2" picomatch "^2.3.1" -"@rollup/rollup-android-arm-eabi@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.15.0.tgz#28c9c79c5baccb59a96afcf60e428ea6965a5579" - integrity sha512-O63bJ7p909pRRQfOJ0k/Jp8gNFMud+ZzLLG5EBWquylHxmRT2k18M2ifg8WyjCgFVdpA7+rI0YZ8EkAtg6dSUw== +"@rollup/rollup-android-arm-eabi@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.16.2.tgz#29b7b3c70ddf532fe6dcf859cbfc3e4714c34842" + integrity sha512-VGodkwtEuZ+ENPz/CpDSl091koMv8ao5jHVMbG1vNK+sbx/48/wVzP84M5xSfDAC69mAKKoEkSo+ym9bXYRK9w== "@rollup/rollup-android-arm-eabi@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz#66b8d9cb2b3a474d115500f9ebaf43e2126fe496" integrity sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg== -"@rollup/rollup-android-arm64@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.15.0.tgz#a2bdafdb753ece571956289a5ba8c37af748bd0c" - integrity sha512-5UywPdmC9jiVOShjQx4uuIcnTQOf85iA4jgg8bkFoH5NYWFfAfrJpv5eeokmTdSmYwUTT5IrcrBCJNkowhrZDA== +"@rollup/rollup-android-arm64@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.16.2.tgz#f50f65d0c3b8b30d070d8616b2dfc0978dd588bd" + integrity sha512-5/W1xyIdc7jw6c/f1KEtg1vYDBWnWCsLiipK41NiaWGLG93eH2edgE6EgQJ3AGiPERhiOLUqlDSfjRK08C9xFg== "@rollup/rollup-android-arm64@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz#46327d5b86420d2307946bec1535fdf00356e47d" integrity sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw== -"@rollup/rollup-darwin-arm64@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.15.0.tgz#4cb44cfec3068f6f76f70463ccc25f3e245af06a" - integrity sha512-hNkt75uFfWpRxHItCBmbS0ba70WnibJh6yz60WShSWITLlVRbkvAu1E/c7RlliPY4ajhqJd0UPZz//gNalTd4g== +"@rollup/rollup-darwin-arm64@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.16.2.tgz#be3d9fffbf6fc5b9d5f0642f1f0250e0ecab8d3e" + integrity sha512-vOAKMqZSTbPfyPVu1jBiy+YniIQd3MG7LUnqV0dA6Q5tyhdqYtxacTHP1+S/ksKl6qCtMG1qQ0grcIgk/19JEA== "@rollup/rollup-darwin-arm64@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz#166987224d2f8b1e2fd28ee90c447d52271d5e90" integrity sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw== -"@rollup/rollup-darwin-x64@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.15.0.tgz#1035bfbf53e6acf16771191f41c3d3aff089e8f1" - integrity sha512-HnC5bTP7qdfO9nUw/mBhNcjOEZfbS8NwV+nFegiMhYOn1ATAGZF4kfAxR9BuZevBrebWCxMmxm8NCU1CUoz+wQ== +"@rollup/rollup-darwin-x64@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.16.2.tgz#fe45a772526b2c03d545e20f97a1e5cd60a46e52" + integrity sha512-aIJVRUS3Dnj6MqocBMrcXlatKm64O3ITeQAdAxVSE9swyhNyV1dwnRgw7IGKIkDQofatd8UqMSyUxuFEa42EcA== "@rollup/rollup-darwin-x64@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz#a2e6e096f74ccea6e2f174454c26aef6bcdd1274" integrity sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog== -"@rollup/rollup-linux-arm-gnueabihf@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.15.0.tgz#0036b835f17ca9e84c188c419399493bd5739986" - integrity sha512-QGOIQIJZeIIqMsc4BUGe8TnV4dkXhSW2EhaQ1G4LqMUNpkyeLztvlDlOoNHn7SR7a4dBANdcEbPkkEzz3rzjzA== +"@rollup/rollup-linux-arm-gnueabihf@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.16.2.tgz#450ecf66f30a51514413aafa79d28561db73151c" + integrity sha512-/bjfUiXwy3P5vYr6/ezv//Yle2Y0ak3a+Av/BKoi76nFryjWCkki8AuVoPR7ZU/ckcvAWFo77OnFK14B9B5JsA== "@rollup/rollup-linux-arm-gnueabihf@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz#09fcd4c55a2d6160c5865fec708a8e5287f30515" integrity sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ== -"@rollup/rollup-linux-arm-musleabihf@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.15.0.tgz#c44420167203400ba7a707f8205413c2817cdaeb" - integrity sha512-PS/Cp8CinYgoysQ8i4UXYH/TZl06fXszvY/RDkyBYgUB1+tKyOMS925/4FZhfrhkl3XQEKjMc3BKtsxpB9Tz9Q== +"@rollup/rollup-linux-arm-musleabihf@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.16.2.tgz#1e8807d220047084579cd01499c5476a325e0700" + integrity sha512-S24b+tJHwpq2TNRz9T+r71FjMvyBBApY8EkYxz8Cwi/rhH6h+lu/iDUxyc9PuHf9UvyeBFYkWWcrDahai/NCGw== -"@rollup/rollup-linux-arm64-gnu@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.15.0.tgz#531d3792e1526583ecd794ceee0ab980d79813dd" - integrity sha512-XzOsnD6lGDP+k+vGgTYAryVGu8N89qpjMN5BVFUj75dGVFP3FzIVAufJAraxirpDwEQZA7Gjs0Vo5p4UmnnjsA== +"@rollup/rollup-linux-arm64-gnu@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.16.2.tgz#128adb9dbf0057b989127d2e7fd73931a6729410" + integrity sha512-UN7VAXLyeyGbCQWiOtQN7BqmjTDw1ON2Oos4lfk0YR7yNhFEJWZiwGtvj9Ay4lsT/ueT04sh80Sg2MlWVVZ+Ug== "@rollup/rollup-linux-arm64-gnu@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz#19a3c0b6315c747ca9acf86e9b710cc2440f83c9" integrity sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ== -"@rollup/rollup-linux-arm64-musl@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.15.0.tgz#86376eaa6d65a860a046e0dfe285a51792bc2026" - integrity sha512-+ScJA4Epbx/ZQGjDnbvTAcb8ZD06b+TlIka2UkujbKf1I/A+yrvEcJwG3/27zMmvcWMQyeCJhbL9TlSjzL0B7Q== +"@rollup/rollup-linux-arm64-musl@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.16.2.tgz#fddc7730045301a7fb0132532890e5edcb23d2bc" + integrity sha512-ZBKvz3+rIhQjusKMccuJiPsStCrPOtejCHxTe+yWp3tNnuPWtyCh9QLGPKz6bFNFbwbw28E2T6zDgzJZ05F1JQ== "@rollup/rollup-linux-arm64-musl@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz#94aaf95fdaf2ad9335983a4552759f98e6b2e850" integrity sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ== -"@rollup/rollup-linux-powerpc64le-gnu@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.15.0.tgz#6adf69ce27d1266dbb86eeac237ad5dd4d4a1f28" - integrity sha512-1cUSvYgnyTakM4FDyf/GxUCDcqmj/hUh1NOizEOJU7+D5xEfFGCxgcNOs3hYBeRMUCcGmGkt01EhD3ILgKpGHQ== +"@rollup/rollup-linux-powerpc64le-gnu@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.16.2.tgz#7154fe9ffc6405b2a6555ca931c42c0aa5198c2a" + integrity sha512-LjMMFiVBRL3wOe095vHAekL4b7nQqf4KZEpdMWd3/W+nIy5o9q/8tlVKiqMbfieDypNXLsxM9fexOxd9Qcklyg== -"@rollup/rollup-linux-riscv64-gnu@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.15.0.tgz#961c290372d170f588ebf65c145c485c4aad7005" - integrity sha512-3A1FbHDbBUvpJXFAZwVsiROIcstVHP9AX/cwnyIhAp+xyQ1cBCxywKtuzmw0Av1MDNNg/y/9dDHtNypfRa8bdw== +"@rollup/rollup-linux-riscv64-gnu@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.16.2.tgz#7a7d091a94fa7c50ebf72d5578475093e01c739e" + integrity sha512-ohkPt0lKoCU0s4B6twro2aft+QROPdUiWwOjPNTzwTsBK5w+2+iT9kySdtOdq0gzWJAdiqsV4NFtXOwGZmIsHA== "@rollup/rollup-linux-riscv64-gnu@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz#160510e63f4b12618af4013bddf1761cf9fc9880" integrity sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA== -"@rollup/rollup-linux-s390x-gnu@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.15.0.tgz#cb43301e10f17f0a642416c5d3d82a26cf430fa8" - integrity sha512-hYPbhg9ow6/mXIkojc8LOeiip2sCTuw1taWyoOXTOWk9vawIXz8x7B4KkgWUAtvAElssxhSyEXr2EZycH/FGzQ== +"@rollup/rollup-linux-s390x-gnu@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.16.2.tgz#39b87bd355dfafbc062ca856d3d6bc5aa1905d89" + integrity sha512-jm2lvLc+/gqXfndlpDw05jKvsl/HKYxUEAt1h5UXcMFVpO4vGpoWmJVUfKDtTqSaHcCNw1his1XjkgR9aort3w== -"@rollup/rollup-linux-x64-gnu@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.15.0.tgz#25c1fb87b2255949ee7ff6956e205710c5d7c414" - integrity sha512-511qln5mPSUKwv7HI28S1jCD1FK+2WbX5THM9A9annr3c1kzmfnf8Oe3ZakubEjob3IV6OPnNNcesfy+adIrmw== +"@rollup/rollup-linux-x64-gnu@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.16.2.tgz#30b88169db18dec202ab9662d5148523d59da553" + integrity sha512-oc5/SlITI/Vj/qL4UM+lXN7MERpiy1HEOnrE+SegXwzf7WP9bzmZd6+MDljCEZTdSY84CpvUv9Rq7bCaftn1+g== "@rollup/rollup-linux-x64-gnu@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz#5ac5d068ce0726bd0a96ca260d5bd93721c0cb98" integrity sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw== -"@rollup/rollup-linux-x64-musl@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.15.0.tgz#145745e339e282c7afc36142bd5a3f9495c7c681" - integrity sha512-4qKKGTDIv2bQZ+afhPWqPL+94+dLtk4lw1iwbcylKlLNqQ/Yyjof2CFYBxf6npiDzPV+zf4EWRiHb26/4Vsm9w== +"@rollup/rollup-linux-x64-musl@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.16.2.tgz#d4fd52a28d5ce4aaed436311d89a9a1eaff87c2d" + integrity sha512-/2VWEBG6mKbS2itm7hzPwhIPaxfZh/KLWrYg20pCRLHhNFtF+epLgcBtwy3m07bl/k86Q3PFRAf2cX+VbZbwzQ== "@rollup/rollup-linux-x64-musl@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz#bafa759ab43e8eab9edf242a8259ffb4f2a57a5d" integrity sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ== -"@rollup/rollup-win32-arm64-msvc@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.15.0.tgz#95dae687b645a25aab3a082d987556f58274ffbe" - integrity sha512-nEtaFBHp1OnbOf+tz66DtID579sNRHGgMC23to8HUyVuOCpCMD0CvRNqiDGLErLNnwApWIUtUl1VvuovCWUxwg== +"@rollup/rollup-win32-arm64-msvc@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.16.2.tgz#edd352302e3fa6a2d612447590b0a0887cdbf762" + integrity sha512-Wg7ANh7+hSilF0lG3e/0Oy8GtfTIfEk1327Bw8juZOMOoKmJLs3R+a4JDa/4cHJp2Gs7QfCDTepXXcyFD0ubBg== "@rollup/rollup-win32-arm64-msvc@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz#1cc3416682e5a20d8f088f26657e6e47f8db468e" integrity sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA== -"@rollup/rollup-win32-ia32-msvc@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.15.0.tgz#acbd48f10093e6cd52f99ad004966433a49cb362" - integrity sha512-5O49NykwSgX6iT2HgZ6cAoGHt6T/FqNMB5OqFOGxU/y1GyFSHquox1sK2OqApQc0ANxiHFQEMNDLNVCL7AUDnQ== +"@rollup/rollup-win32-ia32-msvc@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.16.2.tgz#f17cc1db108f364bf6ef427f98844b5f742d31f0" + integrity sha512-J/jCDKVMWp0Y2ELnTjpQFYUCUWv1Jr+LdFrJVZtdqGyjDo0PHPa7pCamjHvJel6zBFM3doFFqAr7cmXYWBAbfw== "@rollup/rollup-win32-ia32-msvc@4.9.6": version "4.9.6" resolved "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz#7d2251e1aa5e8a1e47c86891fe4547a939503461" integrity sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ== -"@rollup/rollup-win32-x64-msvc@4.15.0": - version "4.15.0" - resolved "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.15.0.tgz#68bb584231dfc8e36bb7ad5317dfd1fd2563a6f7" - integrity sha512-YA0hTwCunmKNeTOFWdJuKhdXse9jBqgo34FDo+9aS0spfCkp+wj0o1bCcOOTu+0P48O95GTfkLTAaVonwNuIdQ== +"@rollup/rollup-win32-x64-msvc@4.16.2": + version "4.16.2" + resolved "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.16.2.tgz#98fb87589960075d39c44784e3a99f67138602f4" + integrity sha512-3nIf+SJMs2ZzrCh+SKNqgLVV9hS/UY0UjT1YU8XQYFGLiUfmHYJ/5trOU1XSvmHjV5gTF/K3DjrWxtyzKKcAHA== "@rollup/rollup-win32-x64-msvc@4.9.6": version "4.9.6" @@ -4117,46 +4117,46 @@ "@types/babel__core" "^7.20.5" react-refresh "^0.14.0" -"@vitest/expect@1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@vitest/expect/-/expect-1.5.0.tgz#961190510a2723bd4abf5540bcec0a4dfd59ef14" - integrity sha512-0pzuCI6KYi2SIC3LQezmxujU9RK/vwC1U9R0rLuGlNGcOuDWxqWKu6nUdFsX9tH1WU0SXtAxToOsEjeUn1s3hA== +"@vitest/expect@1.6.0": + version "1.6.0" + resolved "https://registry.npmjs.org/@vitest/expect/-/expect-1.6.0.tgz#0b3ba0914f738508464983f4d811bc122b51fb30" + integrity sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ== dependencies: - "@vitest/spy" "1.5.0" - "@vitest/utils" "1.5.0" + "@vitest/spy" "1.6.0" + "@vitest/utils" "1.6.0" chai "^4.3.10" -"@vitest/runner@1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@vitest/runner/-/runner-1.5.0.tgz#1f7cb78ee4064e73e53d503a19c1b211c03dfe0c" - integrity sha512-7HWwdxXP5yDoe7DTpbif9l6ZmDwCzcSIK38kTSIt6CFEpMjX4EpCgT6wUmS0xTXqMI6E/ONmfgRKmaujpabjZQ== +"@vitest/runner@1.6.0": + version "1.6.0" + resolved "https://registry.npmjs.org/@vitest/runner/-/runner-1.6.0.tgz#a6de49a96cb33b0e3ba0d9064a3e8d6ce2f08825" + integrity sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg== dependencies: - "@vitest/utils" "1.5.0" + "@vitest/utils" "1.6.0" p-limit "^5.0.0" pathe "^1.1.1" -"@vitest/snapshot@1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.5.0.tgz#cd2d611fd556968ce8fb6b356a09b4593c525947" - integrity sha512-qpv3fSEuNrhAO3FpH6YYRdaECnnRjg9VxbhdtPwPRnzSfHVXnNzzrpX4cJxqiwgRMo7uRMWDFBlsBq4Cr+rO3A== +"@vitest/snapshot@1.6.0": + version "1.6.0" + resolved "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.6.0.tgz#deb7e4498a5299c1198136f56e6e0f692e6af470" + integrity sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ== dependencies: magic-string "^0.30.5" pathe "^1.1.1" pretty-format "^29.7.0" -"@vitest/spy@1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@vitest/spy/-/spy-1.5.0.tgz#1369a1bec47f46f18eccfa45f1e8fbb9b5e15e77" - integrity sha512-vu6vi6ew5N5MMHJjD5PoakMRKYdmIrNJmyfkhRpQt5d9Ewhw9nZ5Aqynbi3N61bvk9UvZ5UysMT6ayIrZ8GA9w== +"@vitest/spy@1.6.0": + version "1.6.0" + resolved "https://registry.npmjs.org/@vitest/spy/-/spy-1.6.0.tgz#362cbd42ccdb03f1613798fde99799649516906d" + integrity sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw== dependencies: tinyspy "^2.2.0" -"@vitest/ui@^1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@vitest/ui/-/ui-1.5.0.tgz#459e21ce1f8bc0124b129c8926673f08a37d3fc9" - integrity sha512-ETcToK2TzICf/Oartvt19IH7yR4oCs8GrQk5hRhZ5oZFaSdDHTh6o3EdzyxOaY24NZ20cXYYNGjj1se/5vHfFg== +"@vitest/ui@^1.6.0": + version "1.6.0" + resolved "https://registry.npmjs.org/@vitest/ui/-/ui-1.6.0.tgz#ffcc97ebcceca7fec840c29ab68632d0cd01db93" + integrity sha512-k3Lyo+ONLOgylctiGovRKy7V4+dIN2yxstX3eY5cWFXH6WP+ooVX79YSyi0GagdTQzLmT43BF27T0s6dOIPBXA== dependencies: - "@vitest/utils" "1.5.0" + "@vitest/utils" "1.6.0" fast-glob "^3.3.2" fflate "^0.8.1" flatted "^3.2.9" @@ -4164,10 +4164,10 @@ picocolors "^1.0.0" sirv "^2.0.4" -"@vitest/utils@1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@vitest/utils/-/utils-1.5.0.tgz#90c9951f4516f6d595da24876b58e615f6c99863" - integrity sha512-BDU0GNL8MWkRkSRdNFvCUCAVOeHaUlVJ9Tx0TYBZyXaaOTmGtUFObzchCivIBrIwKzvZA7A9sCejVhXM2aY98A== +"@vitest/utils@1.6.0": + version "1.6.0" + resolved "https://registry.npmjs.org/@vitest/utils/-/utils-1.6.0.tgz#5c5675ca7d6f546a7b4337de9ae882e6c57896a1" + integrity sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw== dependencies: diff-sequences "^29.6.3" estree-walker "^3.0.3" @@ -7037,6 +7037,11 @@ conf@^10.2.0: pkg-up "^3.1.0" semver "^7.3.5" +confbox@^0.1.7: + version "0.1.7" + resolved "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz#ccfc0a2bcae36a84838e83a3b7f770fb17d6c579" + integrity sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA== + config-chain@^1.1.11: version "1.1.13" resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" @@ -11581,11 +11586,6 @@ json5@^1.0.1, json5@^1.0.2: dependencies: minimist "^1.2.0" -jsonc-parser@^3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz#031904571ccf929d7670ee8c547545081cb37f1a" - integrity sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA== - jsonfile@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" @@ -12874,17 +12874,7 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mlly@^1.2.0: - version "1.5.0" - resolved "https://registry.npmjs.org/mlly/-/mlly-1.5.0.tgz#8428a4617d54cc083d3009030ac79739a0e5447a" - integrity sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ== - dependencies: - acorn "^8.11.3" - pathe "^1.1.2" - pkg-types "^1.0.3" - ufo "^1.3.2" - -mlly@^1.4.2: +mlly@^1.4.2, mlly@^1.6.1: version "1.6.1" resolved "https://registry.npmjs.org/mlly/-/mlly-1.6.1.tgz#0983067dc3366d6314fc5e12712884e6978d028f" integrity sha512-vLgaHvaeunuOXHSmEbZ9izxPx3USsk8KCQ8iC+aTlp5sKRSoZvwhHh5L9VbKSaVC6sJDqbyohIS76E2VmHIPAA== @@ -13908,7 +13898,7 @@ path@^0.12.7: process "^0.11.1" util "^0.10.3" -pathe@^1.1.0, pathe@^1.1.1, pathe@^1.1.2: +pathe@^1.1.1, pathe@^1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== @@ -14008,13 +13998,13 @@ pkg-dir@^5.0.0: find-up "^5.0.0" pkg-types@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.3.tgz#988b42ab19254c01614d13f4f65a2cfc7880f868" - integrity sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A== + version "1.1.0" + resolved "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.0.tgz#3ec1bf33379030fd0a34c227b6c650e8ea7ca271" + integrity sha512-/RpmvKdxKf8uILTtoOhAgf30wYbP2Qw+L9p3Rvshx1JZVX+XQNZQFjlbmGHEGIm4CkVPlSn+NXmIM8+9oWQaSA== dependencies: - jsonc-parser "^3.2.0" - mlly "^1.2.0" - pathe "^1.1.0" + confbox "^0.1.7" + mlly "^1.6.1" + pathe "^1.1.2" pkg-up@^3.1.0: version "3.1.0" @@ -15471,28 +15461,28 @@ roarr@^2.15.3: sprintf-js "^1.1.2" rollup@^4.13.0: - version "4.15.0" - resolved "https://registry.npmjs.org/rollup/-/rollup-4.15.0.tgz#3be428e4fe86297b1b3448f29515d978593d9d9a" - integrity sha512-i0ir57IMF5o7YvNYyUNeIGG+IZaaucnGZAOsSctO2tPLXlCEaZzyBa+QhpHNSgtpyLMoDev2DyN6a7J1dQA8Tw== + version "4.16.2" + resolved "https://registry.npmjs.org/rollup/-/rollup-4.16.2.tgz#43bcbd225d0a6bc68df97a6e41c45003188a3845" + integrity sha512-sxDP0+pya/Yi5ZtptF4p3avI+uWCIf/OdrfdH2Gbv1kWddLKk0U7WE3PmQokhi5JrektxsK3sK8s4hzAmjqahw== dependencies: "@types/estree" "1.0.5" optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.15.0" - "@rollup/rollup-android-arm64" "4.15.0" - "@rollup/rollup-darwin-arm64" "4.15.0" - "@rollup/rollup-darwin-x64" "4.15.0" - "@rollup/rollup-linux-arm-gnueabihf" "4.15.0" - "@rollup/rollup-linux-arm-musleabihf" "4.15.0" - "@rollup/rollup-linux-arm64-gnu" "4.15.0" - "@rollup/rollup-linux-arm64-musl" "4.15.0" - "@rollup/rollup-linux-powerpc64le-gnu" "4.15.0" - "@rollup/rollup-linux-riscv64-gnu" "4.15.0" - "@rollup/rollup-linux-s390x-gnu" "4.15.0" - "@rollup/rollup-linux-x64-gnu" "4.15.0" - "@rollup/rollup-linux-x64-musl" "4.15.0" - "@rollup/rollup-win32-arm64-msvc" "4.15.0" - "@rollup/rollup-win32-ia32-msvc" "4.15.0" - "@rollup/rollup-win32-x64-msvc" "4.15.0" + "@rollup/rollup-android-arm-eabi" "4.16.2" + "@rollup/rollup-android-arm64" "4.16.2" + "@rollup/rollup-darwin-arm64" "4.16.2" + "@rollup/rollup-darwin-x64" "4.16.2" + "@rollup/rollup-linux-arm-gnueabihf" "4.16.2" + "@rollup/rollup-linux-arm-musleabihf" "4.16.2" + "@rollup/rollup-linux-arm64-gnu" "4.16.2" + "@rollup/rollup-linux-arm64-musl" "4.16.2" + "@rollup/rollup-linux-powerpc64le-gnu" "4.16.2" + "@rollup/rollup-linux-riscv64-gnu" "4.16.2" + "@rollup/rollup-linux-s390x-gnu" "4.16.2" + "@rollup/rollup-linux-x64-gnu" "4.16.2" + "@rollup/rollup-linux-x64-musl" "4.16.2" + "@rollup/rollup-win32-arm64-msvc" "4.16.2" + "@rollup/rollup-win32-ia32-msvc" "4.16.2" + "@rollup/rollup-win32-x64-msvc" "4.16.2" fsevents "~2.3.2" rollup@^4.2.0: @@ -16865,9 +16855,9 @@ tiny-warning@^1.0.0, tiny-warning@^1.0.2: integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== tinybench@^2.5.1: - version "2.7.0" - resolved "https://registry.npmjs.org/tinybench/-/tinybench-2.7.0.tgz#d56198a69bead7e240c8f9542484f3eb3c3f749d" - integrity sha512-Qgayeb106x2o4hNzNjsZEfFziw8IbKqtbXBjVh7VIZfBxfD5M4gWtpyx5+YTae2gJ6Y6Dz/KLepiv16RFeQWNA== + version "2.8.0" + resolved "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz#30e19ae3a27508ee18273ffed9ac7018949acd7b" + integrity sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw== tinypool@^0.8.3: version "0.8.4" @@ -17242,9 +17232,9 @@ typescript@^5.3.3: integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw== ufo@^1.3.2: - version "1.3.2" - resolved "https://registry.npmjs.org/ufo/-/ufo-1.3.2.tgz#c7d719d0628a1c80c006d2240e0d169f6e3c0496" - integrity sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA== + version "1.5.3" + resolved "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz#3325bd3c977b6c6cd3160bf4ff52989adc9d3344" + integrity sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw== uglify-js@^3.1.4: version "3.17.4" @@ -17667,10 +17657,10 @@ vite-electron-plugin@^0.8.3: notbundle "~0.4.0" vite-plugin-electron "~0.14.1" -vite-node@1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/vite-node/-/vite-node-1.5.0.tgz#7f74dadfecb15bca016c5ce5ef85e5cc4b82abf2" - integrity sha512-tV8h6gMj6vPzVCa7l+VGq9lwoJjW8Y79vst8QZZGiuRAfijU+EEWuc0kFpmndQrWhMMhet1jdSF+40KSZUqIIw== +vite-node@1.6.0: + version "1.6.0" + resolved "https://registry.npmjs.org/vite-node/-/vite-node-1.6.0.tgz#2c7e61129bfecc759478fa592754fd9704aaba7f" + integrity sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw== dependencies: cac "^6.7.14" debug "^4.3.4" @@ -17722,16 +17712,16 @@ vite@^5.0.12: optionalDependencies: fsevents "~2.3.3" -vitest@^1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/vitest/-/vitest-1.5.0.tgz#6ebb396bd358650011a9c96c18fa614b668365c1" - integrity sha512-d8UKgR0m2kjdxDWX6911uwxout6GHS0XaGH1cksSIVVG8kRlE7G7aBw7myKQCvDI5dT4j7ZMa+l706BIORMDLw== - dependencies: - "@vitest/expect" "1.5.0" - "@vitest/runner" "1.5.0" - "@vitest/snapshot" "1.5.0" - "@vitest/spy" "1.5.0" - "@vitest/utils" "1.5.0" +vitest@^1.6.0: + version "1.6.0" + resolved "https://registry.npmjs.org/vitest/-/vitest-1.6.0.tgz#9d5ad4752a3c451be919e412c597126cffb9892f" + integrity sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA== + dependencies: + "@vitest/expect" "1.6.0" + "@vitest/runner" "1.6.0" + "@vitest/snapshot" "1.6.0" + "@vitest/spy" "1.6.0" + "@vitest/utils" "1.6.0" acorn-walk "^8.3.2" chai "^4.3.10" debug "^4.3.4" @@ -17745,7 +17735,7 @@ vitest@^1.5.0: tinybench "^2.5.1" tinypool "^0.8.3" vite "^5.0.0" - vite-node "1.5.0" + vite-node "1.6.0" why-is-node-running "^2.2.2" vm-browserify@^1.0.1: