From 744b38e98dccf8177bb1515a5b19078d508f86e3 Mon Sep 17 00:00:00 2001 From: eyelidlessness Date: Mon, 16 Dec 2024 11:38:29 -0800 Subject: [PATCH 1/6] Remove `@getodk/ui-solid` package This package has outlived its usefulness. We removed it from CI in #261, anticipating full removal of the package in a more appropriately scoped PR. Note: the `yarn.lock` change is a result of running `yarn install` immediately after all of the other changes in this commit. --- README.md | 1 - eslint.config.js | 1 - packages/ui-solid/CHANGELOG.md | 76 ---- packages/ui-solid/README.md | 64 --- packages/ui-solid/assets/favicon.ico | Bin 15086 -> 0 bytes packages/ui-solid/assets/odk-logo.png | Bin 15998 -> 0 bytes packages/ui-solid/e2e/App.test.ts | 14 - packages/ui-solid/e2e/tsconfig.json | 4 - packages/ui-solid/index.html | 13 - packages/ui-solid/package.json | 71 ---- packages/ui-solid/playwright.config.ts | 63 --- packages/ui-solid/src/App.tsx | 35 -- packages/ui-solid/src/Demo.tsx | 34 -- .../src/components/Demo/DemoFixturesList.tsx | 76 ---- .../src/components/FormLanguageMenu.tsx | 128 ------ .../src/components/Label/LabelPart.tsx | 0 .../src/components/LocalizationProvider.tsx | 31 -- .../ui-solid/src/components/Page/Page.tsx | 48 --- .../src/components/Page/PageFooter.tsx | 34 -- .../src/components/Page/PageHeader.tsx | 22 - .../ui-solid/src/components/Page/PageMain.tsx | 8 - .../ui-solid/src/components/ThemeProvider.tsx | 103 ----- .../src/components/Widget/MultiSelect.tsx | 57 --- .../ui-solid/src/components/Widget/Note.tsx | 15 - .../src/components/Widget/SingleSelect.tsx | 72 ---- .../src/components/Widget/TextWidget.tsx | 38 -- .../src/components/XForm/XFormBodyElement.tsx | 91 ----- .../components/XForm/XFormControlStack.tsx | 17 - .../src/components/XForm/XFormDetails.tsx | 46 --- .../src/components/XForm/XFormLabel.tsx | 23 -- .../components/XForm/XFormQuestionList.tsx | 20 - .../components/XForm/XFormRelevanceGuard.tsx | 36 -- .../src/components/XForm/XFormTitle.tsx | 9 - .../src/components/XForm/XFormView.tsx | 17 - .../containers/RepeatInstanceOptionsMenu.tsx | 75 ---- .../XForm/containers/XFormGroup.tsx | 73 ---- .../XForm/containers/XFormGroupLabel.tsx | 55 --- .../XForm/containers/XFormRepeatInstance.tsx | 69 ---- .../containers/XFormRepeatInstanceLabel.tsx | 62 --- .../XForm/containers/XFormRepeatList.tsx | 49 --- .../XForm/controls/SelectControl.tsx | 47 --- .../XForm/controls/XFormControl.tsx | 54 --- .../XForm/controls/XFormControlLabel.tsx | 13 - .../XForm/controls/XFormInputControl.tsx | 19 - .../components/XForm/debugging/XFormAlert.tsx | 29 -- .../XForm/debugging/XFormUnknownControl.tsx | 29 -- .../debugging/XFormUnlabeledInputControl.tsx | 24 -- .../src/components/styled/DefaultLabel.tsx | 5 - .../styled/DefaultLabelParagraph.tsx | 6 - .../styled/DefaultLabelRequiredIndicator.tsx | 5 - .../components/styled/DefaultParagraph.tsx | 5 - .../components/styled/DefaultSubmitButton.tsx | 6 - .../components/styled/DefaultTextField.tsx | 13 - .../styled/DefaultTextFormControl.tsx | 5 - .../components/styled/FormSubmitButton.tsx | 12 - .../src/components/styled/NestedGroupBox.tsx | 8 - .../src/components/styled/PageContainer.tsx | 6 - .../src/components/styled/PageMenuButton.tsx | 14 - .../src/components/styled/PlainTextButton.tsx | 11 - .../components/styled/SecondaryParagraph.tsx | 5 - .../styled/ThemeColorOutlineButton.tsx | 11 - .../styled/TopLevelRepeatInstance.tsx | 8 - packages/ui-solid/src/index.tsx | 5 - packages/ui-solid/src/lib/i18n-l10n/types.ts | 4 - .../test/components/xform/XFormTitle.test.tsx | 26 -- .../test/components/xform/XFormView.test.tsx | 78 ---- .../ui-solid/test/view/translations.test.tsx | 103 ----- packages/ui-solid/tsconfig.json | 17 - packages/ui-solid/vite-env.d.ts | 1 - packages/ui-solid/vite.config.ts | 164 -------- packages/xforms-engine/README.md | 2 +- yarn.lock | 386 +----------------- 72 files changed, 14 insertions(+), 2757 deletions(-) delete mode 100644 packages/ui-solid/CHANGELOG.md delete mode 100644 packages/ui-solid/README.md delete mode 100644 packages/ui-solid/assets/favicon.ico delete mode 100644 packages/ui-solid/assets/odk-logo.png delete mode 100644 packages/ui-solid/e2e/App.test.ts delete mode 100644 packages/ui-solid/e2e/tsconfig.json delete mode 100644 packages/ui-solid/index.html delete mode 100644 packages/ui-solid/package.json delete mode 100644 packages/ui-solid/playwright.config.ts delete mode 100644 packages/ui-solid/src/App.tsx delete mode 100644 packages/ui-solid/src/Demo.tsx delete mode 100644 packages/ui-solid/src/components/Demo/DemoFixturesList.tsx delete mode 100644 packages/ui-solid/src/components/FormLanguageMenu.tsx delete mode 100644 packages/ui-solid/src/components/Label/LabelPart.tsx delete mode 100644 packages/ui-solid/src/components/LocalizationProvider.tsx delete mode 100644 packages/ui-solid/src/components/Page/Page.tsx delete mode 100644 packages/ui-solid/src/components/Page/PageFooter.tsx delete mode 100644 packages/ui-solid/src/components/Page/PageHeader.tsx delete mode 100644 packages/ui-solid/src/components/Page/PageMain.tsx delete mode 100644 packages/ui-solid/src/components/ThemeProvider.tsx delete mode 100644 packages/ui-solid/src/components/Widget/MultiSelect.tsx delete mode 100644 packages/ui-solid/src/components/Widget/Note.tsx delete mode 100644 packages/ui-solid/src/components/Widget/SingleSelect.tsx delete mode 100644 packages/ui-solid/src/components/Widget/TextWidget.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormBodyElement.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormControlStack.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormDetails.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormLabel.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormQuestionList.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormRelevanceGuard.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormTitle.tsx delete mode 100644 packages/ui-solid/src/components/XForm/XFormView.tsx delete mode 100644 packages/ui-solid/src/components/XForm/containers/RepeatInstanceOptionsMenu.tsx delete mode 100644 packages/ui-solid/src/components/XForm/containers/XFormGroup.tsx delete mode 100644 packages/ui-solid/src/components/XForm/containers/XFormGroupLabel.tsx delete mode 100644 packages/ui-solid/src/components/XForm/containers/XFormRepeatInstance.tsx delete mode 100644 packages/ui-solid/src/components/XForm/containers/XFormRepeatInstanceLabel.tsx delete mode 100644 packages/ui-solid/src/components/XForm/containers/XFormRepeatList.tsx delete mode 100644 packages/ui-solid/src/components/XForm/controls/SelectControl.tsx delete mode 100644 packages/ui-solid/src/components/XForm/controls/XFormControl.tsx delete mode 100644 packages/ui-solid/src/components/XForm/controls/XFormControlLabel.tsx delete mode 100644 packages/ui-solid/src/components/XForm/controls/XFormInputControl.tsx delete mode 100644 packages/ui-solid/src/components/XForm/debugging/XFormAlert.tsx delete mode 100644 packages/ui-solid/src/components/XForm/debugging/XFormUnknownControl.tsx delete mode 100644 packages/ui-solid/src/components/XForm/debugging/XFormUnlabeledInputControl.tsx delete mode 100644 packages/ui-solid/src/components/styled/DefaultLabel.tsx delete mode 100644 packages/ui-solid/src/components/styled/DefaultLabelParagraph.tsx delete mode 100644 packages/ui-solid/src/components/styled/DefaultLabelRequiredIndicator.tsx delete mode 100644 packages/ui-solid/src/components/styled/DefaultParagraph.tsx delete mode 100644 packages/ui-solid/src/components/styled/DefaultSubmitButton.tsx delete mode 100644 packages/ui-solid/src/components/styled/DefaultTextField.tsx delete mode 100644 packages/ui-solid/src/components/styled/DefaultTextFormControl.tsx delete mode 100644 packages/ui-solid/src/components/styled/FormSubmitButton.tsx delete mode 100644 packages/ui-solid/src/components/styled/NestedGroupBox.tsx delete mode 100644 packages/ui-solid/src/components/styled/PageContainer.tsx delete mode 100644 packages/ui-solid/src/components/styled/PageMenuButton.tsx delete mode 100644 packages/ui-solid/src/components/styled/PlainTextButton.tsx delete mode 100644 packages/ui-solid/src/components/styled/SecondaryParagraph.tsx delete mode 100644 packages/ui-solid/src/components/styled/ThemeColorOutlineButton.tsx delete mode 100644 packages/ui-solid/src/components/styled/TopLevelRepeatInstance.tsx delete mode 100644 packages/ui-solid/src/index.tsx delete mode 100644 packages/ui-solid/src/lib/i18n-l10n/types.ts delete mode 100644 packages/ui-solid/test/components/xform/XFormTitle.test.tsx delete mode 100644 packages/ui-solid/test/components/xform/XFormView.test.tsx delete mode 100644 packages/ui-solid/test/view/translations.test.tsx delete mode 100644 packages/ui-solid/tsconfig.json delete mode 100644 packages/ui-solid/vite-env.d.ts delete mode 100644 packages/ui-solid/vite.config.ts diff --git a/README.md b/README.md index 48b443c2a..72bc9b9ce 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,6 @@ https://github.com/getodk/web-forms/assets/447837/9b25e1bc-d209-462c-8e9e-3259bd - [xforms-engine](/packages/xforms-engine): implementation of the [ODK XForms specification](https://getodk.github.io/xforms-spec/) - [xpath](/packages/xpath): XPath evaluator with ODK XForms extensions - [scenario](/packages/scenario): engine client used to express tests on forms -- [ui-solid](/packages/ui-solid): form-filling frontend built with Solid, likely not as up-to-date as the Vue client ## Project status diff --git a/eslint.config.js b/eslint.config.js index 0a6a2600b..cae01e661 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -82,7 +82,6 @@ export default tseslint.config( 'packages/tree-sitter-xpath/grammar.js', 'packages/tree-sitter-xpath/bindings/**/*', 'packages/tree-sitter-xpath/types/**/*', - 'packages/ui-solid/**/*', 'packages/web-forms/dist-demo/**/*', 'packages/xforms-engine/api-docs/**/*', '**/vendor', diff --git a/packages/ui-solid/CHANGELOG.md b/packages/ui-solid/CHANGELOG.md deleted file mode 100644 index 2fde2b793..000000000 --- a/packages/ui-solid/CHANGELOG.md +++ /dev/null @@ -1,76 +0,0 @@ -# @getodk/ui-solid - -## 0.2.3 - -### Patch Changes - -- 8edf375: Initial engine support for preparing submissions -- Updated dependencies [fcda4d8] -- Updated dependencies [2fddcec] -- Updated dependencies [e636a9c] -- Updated dependencies [8edf375] - - @getodk/xforms-engine@0.5.0 - - @getodk/common@0.5.0 - -## 0.2.2 - -### Patch Changes - -- Updated dependencies [27c440d] - - @getodk/common@0.4.0 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies [6fb1054] -- Updated dependencies [c3b7165] -- Updated dependencies [5f50bd3] - - @getodk/xforms-engine@0.4.0 - -## 0.2.0 - -### Minor Changes - -- 596c1fe: Add engine support for 'note' nodes -- 7b63159: Add support for count-controlled (`jr:count`) and fixed (`jr:noAddRemove`) repeat ranges. - -### Patch Changes - -- 82d35d0: - Show message when required or other constrainst are not satisfied. - - Show error message banner at the top of the Form when "Send" button is pressed and the Form is invalid - - Various design/UI tweaks to beautify the Form -- aa3a84a: Fix: evaluate `jr:count` in context of affected repeat -- 5aa7ebc: - Display Notes fields on the UI - - Show hint for the fields if defined in the Form -- Updated dependencies [e81aa43] -- Updated dependencies [596c1fe] -- Updated dependencies [0c1534d] -- Updated dependencies [1e72854] -- Updated dependencies [aa3a84a] -- Updated dependencies [7b63159] -- Updated dependencies [573b06b] - - @getodk/xforms-engine@0.3.0 - - @getodk/common@0.3.0 - -## 0.1.2 - -### Patch Changes - -- e7bef0c: Add initial engine support for appearances -- Updated dependencies [4a87291] -- Updated dependencies [e7bef0c] -- Updated dependencies [7859da4] - - @getodk/common@0.2.0 - - @getodk/xforms-engine@0.2.0 - -## 0.1.1 - -### Patch Changes - -- aa0e214: Update to latest stable Node versions: 18.20.3, 20.13.1, 22.2.0 -- a26788b: Updated external dependencies -- Updated dependencies [aa0e214] -- Updated dependencies [a26788b] - - @getodk/xforms-engine@0.1.1 - - @getodk/common@0.1.1 diff --git a/packages/ui-solid/README.md b/packages/ui-solid/README.md deleted file mode 100644 index e601c5fe0..000000000 --- a/packages/ui-solid/README.md +++ /dev/null @@ -1,64 +0,0 @@ -# @getodk/ui-solid - -A [Solid](https://www.solidjs.com/) UI for ODK Web Forms; currently a reference client of [`@getodk/xforms-engine`][xforms-engine]. - -> [!NOTE] -> The future of this package is unclear! Its current state reflects an early spike/prototyping effort to explore viability of the ODK Web Forms project. As development of the project proceeds overall, it is likely that the [Vue client](../web-forms/) will be be more mature and actively developed. - -## Install - -Install with `npm` (or the equivalent command for your preferred package manager): - -```sh -npm install @getodk/ui-solid -``` - -## Development - -> [!NOTE] -> All commands should be run from the root of the monorepo, not this package's subdirectory. - -To run in development mode: - -```sh -yarn workspace @getodk/ui-solid dev -``` - -Test commands: - -```sh -# Single run -yarn workspace @getodk/ui-solid test-node:jsdom -yarn workspace @getodk/ui-solid test-browser:chromium -yarn workspace @getodk/ui-solid test-browser:firefox -yarn workspace @getodk/ui-solid test-browser:webkit - -# Watch mode (convenient during development) -yarn workspace @getodk/ui-solid test-watch:jsdom -yarn workspace @getodk/ui-solid test-watch:chromium -yarn workspace @getodk/ui-solid test-watch:firefox -yarn workspace @getodk/ui-solid test-watch:webkit -``` - -## Component structure - -- `src/components/styled`: concerned only with presentation—generally visual, typically augmenting base Material UI components provided by [SUID](https://suid.io/) -- `src/components/XForm`: designed to take XForms data (either raw or parsed into runtime data structures used throughout the system) and render form UI, generally deferring to more user-/UI-specialized components -- `src/components/Widget`: intended to correspond as closely as possible to [ODK Collect](https://docs.getodk.org/form-question-types/) question types (there also referred to as "widgets" at this time) -- `src/components/XForm/controls`: specific to visible form controls as defined in an XForm's `body` -- `src/components/XForm/debugging`: as the name suggests, these are being used to convey visible developer-facing information about aspects of the rendered form which might be of interest (and should this concept persist, they would not be user facing outside of development) -- The remaining components are named, and grouped where appropriate, around user-facing features or sets of related features - -This structure is mostly an aspirational attempt at conveying a sense of where abstraction and composition boundaries were/are anticipated for the view layer. All are subject to change and refinement, and may be superceded by the structure of the [Vue client][vue-client]. - -## Supported/tested environments - -- Browsers (latest versions): - - Chrome/Chromium-based browsers (tested only in Chromium) - - Firefox - - Safari/WebKit (tested in WebKit directly) -- Non-browser runtimes with a DOM compatibility environement: - - Node (current/LTS; tested with [jsdom](https://github.com/jsdom/jsdom)). Server-side rendering of forms is not presently supported or targeted beyond testing, though it may be considered in the future. Inclusion of Node in the automated test suites helps us to keep this option open. - -[xforms-engine]: ../xforms-engine/ -[vue-client]: ../web-forms/ diff --git a/packages/ui-solid/assets/favicon.ico b/packages/ui-solid/assets/favicon.ico deleted file mode 100644 index e57b1ca007d42dc63f1053935962119f0f20673e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15086 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 diff --git a/packages/ui-solid/assets/odk-logo.png b/packages/ui-solid/assets/odk-logo.png deleted file mode 100644 index 071bd09b003c9a4e43e09ce36b4241336a4c1a49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15998 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 diff --git a/packages/ui-solid/e2e/App.test.ts b/packages/ui-solid/e2e/App.test.ts deleted file mode 100644 index 971ccd833..000000000 --- a/packages/ui-solid/e2e/App.test.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { expect, test } from '@playwright/test'; - -const { describe } = test; -const it = test; - -describe('Initial e2e test', () => { - it.skip('has text "Hello world 1"', async ({ page }) => { - await page.goto('/'); - - const text = page.getByText('Hello world 1'); - - await expect(text).toHaveText('Hello world 1'); - }); -}); diff --git a/packages/ui-solid/e2e/tsconfig.json b/packages/ui-solid/e2e/tsconfig.json deleted file mode 100644 index 379a994d8..000000000 --- a/packages/ui-solid/e2e/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../tsconfig.json", - "include": ["."] -} diff --git a/packages/ui-solid/index.html b/packages/ui-solid/index.html deleted file mode 100644 index b23327911..000000000 --- a/packages/ui-solid/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - ODK Web Forms - - -
- - - diff --git a/packages/ui-solid/package.json b/packages/ui-solid/package.json deleted file mode 100644 index 23aec95ac..000000000 --- a/packages/ui-solid/package.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "name": "@getodk/ui-solid", - "version": "0.2.3", - "license": "Apache-2.0", - "description": "Solid UI client for ODK Web Forms", - "type": "module", - "author": "getodk", - "repository": { - "type": "git", - "url": "https://github.com/getodk/web-forms", - "directory": "packages/ui-solid" - }, - "bugs": "https://github.com/getodk/web-forms/issues", - "homepage": "https://getodk.org/", - "types": "./dist/lib/index.d.ts", - "exports": { - ".": { - "types": "./dist/lib/index.d.ts", - "default": "./dist/lib/index.js" - } - }, - "files": [ - "dist", - "README.md" - ], - "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", - "yarn": "1.22.22" - }, - "scripts": { - "build": "npm-run-all -nl build:*", - "build:clean": "rimraf dist/", - "build:js": "vite build", - "dev": "vite", - "test": "npm-run-all --print-name --print-label test:* test-node:* test-browser:*", - "test:e2e": "playwright test", - "test-node:jsdom": "vitest run", - "test-browser:chromium": "BROWSER_NAME=chromium vitest run", - "test-browser:firefox": "BROWSER_NAME=firefox vitest run", - "test-browser:webkit": "BROWSER_NAME=webkit vitest run", - "test-watch:jsdom": "vitest", - "test-watch:chromium": "BROWSER_NAME=chromium vitest", - "test-watch:firefox": "BROWSER_NAME=firefox vitest", - "test-watch:webkit": "BROWSER_NAME=webkit vitest", - "test:types": "tsc --project ./tsconfig.json --emitDeclarationOnly false --noEmit" - }, - "dependencies": { - "@fontsource/roboto": "^5.1.0", - "@getodk/common": "0.5.0", - "@getodk/xforms-engine": "0.5.0", - "@solidjs/router": "^0.14.5", - "@suid/icons-material": "^0.8.1", - "@suid/material": "^0.18.0", - "solid-js": "^1.9.1" - }, - "devDependencies": { - "@babel/core": "^7.25.2", - "@playwright/test": "^1.47.2", - "@suid/vite-plugin": "^0.3.1", - "@vitest/browser": "^2.1.1", - "@vitest/ui": "^2.1.1", - "babel-plugin-transform-jsbi-to-bigint": "^1.4.0", - "jsdom": "^25.0.1", - "vite": "^5.4.8", - "vite-plugin-babel": "^1.2.0", - "vite-plugin-dts": "^4.2.2", - "vite-plugin-no-bundle": "^4.0.0", - "vite-plugin-solid": "^2.10.2", - "vitest": "^2.1.1" - } -} diff --git a/packages/ui-solid/playwright.config.ts b/packages/ui-solid/playwright.config.ts deleted file mode 100644 index 3fe3718be..000000000 --- a/packages/ui-solid/playwright.config.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { defineConfig } from '@playwright/test'; - -const isCI = Boolean(process.env.CI); - -// NOTE: Sometimes, tests fail with `TypeError: process.stdout.clearLine is not a function` -// for some reason. This comes from Vite, and is conditionally called based on `isTTY`. -// We set it to false here to skip this odd behavior. -process.stdout.isTTY = false; - -const config = defineConfig({ - testMatch: 'e2e/*.test.ts', - /* Maximum time one test can run for. */ - timeout: 40 * 1000, - expect: { - /** - * Maximum time expect() should wait for the condition to be met. - * For example in `await expect(locator).toHaveText();` - */ - timeout: 4 * 1000, - }, - /* Fail the build on CI if you accidentally left test in the source code. */ - forbidOnly: isCI, - /* Retry on CI only */ - retries: isCI ? 3 : 0, - /* Opt out of parallel tests on CI. */ - workers: isCI ? 1 : '50%', - /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ - use: { - /* Maximum time each action such as `click()` can take. Defaults to 0 (no limit). */ - actionTimeout: 0, - /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ - trace: 'on-first-retry', - }, - webServer: { - command: 'yarn dev', - port: 8675, - }, - projects: [ - { - name: 'Chromium', - use: { - browserName: 'chromium', - channel: 'chromium', - }, - }, - { - name: 'Firefox', - use: { - browserName: 'firefox', - channel: 'firefox', - }, - }, - { - name: 'WebKit', - use: { - browserName: 'webkit', - channel: 'webkit', - }, - }, - ], -}); - -export default config; diff --git a/packages/ui-solid/src/App.tsx b/packages/ui-solid/src/App.tsx deleted file mode 100644 index cd0e69cd4..000000000 --- a/packages/ui-solid/src/App.tsx +++ /dev/null @@ -1,35 +0,0 @@ -import type { RootNode } from '@getodk/xforms-engine'; -import { Divider, Stack } from '@suid/material'; -import { Show, type JSX } from 'solid-js'; -import { Page } from './components/Page/Page.tsx'; -import { ThemeProvider } from './components/ThemeProvider.tsx'; -import { XFormDetails } from './components/XForm/XFormDetails.tsx'; -import { XFormView } from './components/XForm/XFormView.tsx'; - -interface AppProps { - readonly extras?: JSX.Element; - readonly root: RootNode | null; -} - -export const App = (props: AppProps) => { - return ( - - - {props.extras} - - {(root) => { - return ( - - - - - - - - ); - }} - - - - ); -}; diff --git a/packages/ui-solid/src/Demo.tsx b/packages/ui-solid/src/Demo.tsx deleted file mode 100644 index 095a21e43..000000000 --- a/packages/ui-solid/src/Demo.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import type { XFormFixture } from '@getodk/common/fixtures/xforms.ts'; -import { initializeForm } from '@getodk/xforms-engine'; -import { createEffect, createMemo, createResource, createSignal, on } from 'solid-js'; -import { createMutable } from 'solid-js/store'; -import { App } from './App.tsx'; -import { DemoFixturesList } from './components/Demo/DemoFixturesList.tsx'; - -export const Demo = () => { - const [fixture, setFixture] = createSignal(null); - const [fixtureForm, { refetch }] = createResource(async () => { - const sourceXML = await fixture()?.loadXML(); - - if (sourceXML != null) { - return initializeForm(sourceXML, { - config: { - stateFactory: createMutable, - }, - }); - } - - return null; - }); - const root = createMemo(() => { - return fixtureForm() ?? null; - }); - - createEffect( - on(fixture, async () => { - await refetch(); - }) - ); - - return } root={root()} />; -}; diff --git a/packages/ui-solid/src/components/Demo/DemoFixturesList.tsx b/packages/ui-solid/src/components/Demo/DemoFixturesList.tsx deleted file mode 100644 index b938428da..000000000 --- a/packages/ui-solid/src/components/Demo/DemoFixturesList.tsx +++ /dev/null @@ -1,76 +0,0 @@ -import type { XFormFixture } from '@getodk/common/fixtures/xforms.ts'; -import { xformFixtures } from '@getodk/common/fixtures/xforms.ts'; -import Assignment from '@suid/icons-material/Assignment'; -import ChevronLeft from '@suid/icons-material/ChevronLeft'; -import { - Button, - List, - ListItem, - ListItemButton, - ListItemIcon, - ListItemText, - Stack, - Typography, - styled, -} from '@suid/material'; -import { For, Show, createComputed, createSignal } from 'solid-js'; - -const DemoBackButton = styled(Button)(({ theme }) => ({ - marginBlockEnd: theme.spacing(2), -})); - -interface DemoFixturesListProps { - setDemoFixture(selected: XFormFixture | null): void; -} - -export const DemoFixturesList = (props: DemoFixturesListProps) => { - const [selectedFixture, setSelectedFixture] = createSignal(); - - createComputed(() => { - const fixture = selectedFixture(); - - if (fixture == null) { - props.setDemoFixture(null); - - return; - } - - props.setDemoFixture(fixture ?? null); - }); - - return ( - setSelectedFixture()}> - - Demo forms - - } - > - - Demo forms - - - {(demoFixture) => ( - - { - setSelectedFixture(demoFixture); - }} - > - - - - - {demoFixture.category} › {demoFixture.identifier} - - - - )} - - - - - ); -}; diff --git a/packages/ui-solid/src/components/FormLanguageMenu.tsx b/packages/ui-solid/src/components/FormLanguageMenu.tsx deleted file mode 100644 index 62d3cb0da..000000000 --- a/packages/ui-solid/src/components/FormLanguageMenu.tsx +++ /dev/null @@ -1,128 +0,0 @@ -// TODO: lots of this should get broken out - -import type { FormLanguage, RootNode } from '@getodk/xforms-engine'; -import Check from '@suid/icons-material/Check'; -import ExpandMore from '@suid/icons-material/ExpandMore'; -import Language from '@suid/icons-material/Language'; -import { - ListItemIcon, - ListItemText, - Menu, - MenuItem, - Stack, - Typography, - styled, -} from '@suid/material'; -import { createSignal } from 'solid-js'; -import { For, Show } from 'solid-js/web'; -import { PageMenuButton } from './styled/PageMenuButton.tsx'; - -const FormLanguageMenuButtonIcon = styled(Language)(({ theme }) => ({ - paddingInlineEnd: theme.spacing(0.5), -})); - -const FormLanguageMenuExpandMoreIcon = styled(ExpandMore)(({ theme }) => ({ - paddingInlineStart: theme.spacing(0.25), -})); - -const MenuItemSmallTypography = styled(Typography)({ - fontSize: '0.875rem', -}); - -interface FormLanguageMenuProps { - readonly root: RootNode; -} - -export const FormLanguageMenu = (props: FormLanguageMenuProps) => { - let buttonRef: HTMLButtonElement; - - const [isOpen, setIsOpen] = createSignal(false); - const closeMenu = () => { - setIsOpen(false); - }; - - const activeLanguage = () => props.root.currentState.activeLanguage; - const formLanguages = () => - props.root.languages.filter((language): language is FormLanguage => { - return !language.isSyntheticDefault; - }); - - if (props.root.currentState.activeLanguage.isSyntheticDefault) { - return; - } - - return ( -
- { - setIsOpen((current) => !current); - }} - variant="contained" - > - - - - {props.root.currentState.activeLanguage.language} - - - - - - - {(language) => { - const isSelected = () => { - return language === activeLanguage(); - }; - - return ( - { - props.root.setLanguage(language); - closeMenu(); - }} - > - - - - - - - - {language.language} - - - ); - }} - - -
- ); -}; diff --git a/packages/ui-solid/src/components/Label/LabelPart.tsx b/packages/ui-solid/src/components/Label/LabelPart.tsx deleted file mode 100644 index e69de29bb..000000000 diff --git a/packages/ui-solid/src/components/LocalizationProvider.tsx b/packages/ui-solid/src/components/LocalizationProvider.tsx deleted file mode 100644 index 8a7998a89..000000000 --- a/packages/ui-solid/src/components/LocalizationProvider.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import type { JSX } from 'solid-js'; -import { createContext } from 'solid-js'; -import type { Localization } from '../lib/i18n-l10n/types'; - -interface LocalizationContextState { - readonly localization: Localization | null; - readonly localizations: readonly Localization[]; -} - -export const localizationContext = createContext({ - localization: null, - localizations: [], -}); - -interface LocalizationProviderProps { - readonly children?: JSX.Element; - readonly localizations?: readonly Localization[]; -} - -export const LocalizationProvider = (props: LocalizationProviderProps) => { - return ( - - {props.children} - - ); -}; diff --git a/packages/ui-solid/src/components/Page/Page.tsx b/packages/ui-solid/src/components/Page/Page.tsx deleted file mode 100644 index 440a5a8d6..000000000 --- a/packages/ui-solid/src/components/Page/Page.tsx +++ /dev/null @@ -1,48 +0,0 @@ -import type { RootNode } from '@getodk/xforms-engine'; -import { GlobalStyles, Stack, useTheme } from '@suid/material'; -import type { JSX } from 'solid-js'; -import { PageContainer } from '../styled/PageContainer.tsx'; -import { PageFooter } from './PageFooter.tsx'; -import { PageHeader } from './PageHeader.tsx'; -import { PageMain } from './PageMain.tsx'; - -interface PageProps { - readonly children?: JSX.Element; - readonly root: RootNode | null; -} - -export const Page = (props: PageProps) => { - const theme = useTheme(); - - return ( - <> - .MuiContainer-root': { - display: 'block', - position: 'relative', - height: '100%', - backgroundColor: `var(--page-background, ${theme.palette.background.default})`, - }, - - 'html, body, #root': { - width: '100%', - margin: '0', - padding: '0', - }, - }} - /> - - - - {props.children} - - - - - ); -}; diff --git a/packages/ui-solid/src/components/Page/PageFooter.tsx b/packages/ui-solid/src/components/Page/PageFooter.tsx deleted file mode 100644 index cc5ddae04..000000000 --- a/packages/ui-solid/src/components/Page/PageFooter.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { Box, Stack, Typography, styled } from '@suid/material'; -import odkLogo from '../../../assets/odk-logo.png'; -import { FormSubmitButton } from '../styled/FormSubmitButton'; - -const BasePageFooter = styled(Stack)(({ theme }) => ({ - alignItems: 'center', - flexDirection: 'row', - justifyContent: 'space-between', - paddingBlockStart: theme.spacing(1), - paddingInlineStart: theme.spacing(1), -})); - -const PoweredBy = styled(Typography)({ - color: '#d4d6d7', - lineHeight: 2.75, - textTransform: 'lowercase', -}); - -export const PageFooter = () => { - return ( - - - - - Powered by - - - - - - Send - - ); -}; diff --git a/packages/ui-solid/src/components/Page/PageHeader.tsx b/packages/ui-solid/src/components/Page/PageHeader.tsx deleted file mode 100644 index 2de37c38e..000000000 --- a/packages/ui-solid/src/components/Page/PageHeader.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import type { RootNode } from '@getodk/xforms-engine'; -import { Stack } from '@suid/material'; -import { Show } from 'solid-js'; -import { FormLanguageMenu } from '../FormLanguageMenu.tsx'; - -interface PageHeaderProps { - readonly root: RootNode | null; -} - -export const PageHeader = (props: PageHeaderProps) => { - return ( - - {(root) => { - return ( - - - - ); - }} - - ); -}; diff --git a/packages/ui-solid/src/components/Page/PageMain.tsx b/packages/ui-solid/src/components/Page/PageMain.tsx deleted file mode 100644 index e8332f9b7..000000000 --- a/packages/ui-solid/src/components/Page/PageMain.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import { Paper, styled } from '@suid/material'; - -export const PageMain = styled(Paper)(({ theme }) => ({ - borderRadius: theme.shape.borderRadius * 4, - - // TODO: responsive - padding: theme.spacing(3), -})); diff --git a/packages/ui-solid/src/components/ThemeProvider.tsx b/packages/ui-solid/src/components/ThemeProvider.tsx deleted file mode 100644 index f6c3e4eed..000000000 --- a/packages/ui-solid/src/components/ThemeProvider.tsx +++ /dev/null @@ -1,103 +0,0 @@ -import '@fontsource/roboto/400.css'; -import '@fontsource/roboto/500.css'; - -import type { StyledProps } from '@suid/material'; -import { createPalette, createTheme, ThemeProvider as SUIDThemeProvider } from '@suid/material'; -import type { JSX } from 'solid-js'; - -declare module '@suid/material/styles/createTheme' { - interface ThemeInput { - nonRelevant: { - default: StyledProps; - debug: StyledProps; - }; - } - - interface Theme extends ThemeInput {} -} - -declare module '@suid/material/styles/createPalette' { - type PaletteShades = Record; - - interface PaletteOptions { - primaryShades?: PaletteShades; - - required?: string; - } -} - -const REM = 16; - -export const odkTheme = createTheme({ - components() { - return { - MuiTextField: { - defaultProps: { - variant: 'outlined', - }, - }, - }; - }, - palette: createPalette({ - mode: 'light', - background: { - default: '#f7f7f7', - paper: '#fff', - }, - primary: { - main: '#009ecc', - contrastText: '#fff', - }, - primaryShades: { - '10%': '#ecf5fa', - '15%': '#d8ecf5', - }, - required: '#d42c2c', - }), - spacing() { - return (units) => { - if (typeof units !== 'number') { - throw new Error(`Unexpected units value: ${units}`); - } - - return units * REM; - }; - }, - typography: { - h1: { - fontSize: '2.25rem', - fontWeight: 500, - }, - body1: { - fontSize: '1.5rem', - fontWeight: 400, - }, - body2: { - fontSize: '1.25rem', - fontWeight: 400, - }, - fontWeightMedium: 500, - }, - - nonRelevant: { - default: { - display: 'none', - }, - debug: { - '&::before': { - display: 'block', - position: 'absolute', - }, - - opacity: '0.35', - }, - }, -}); - -interface ThemeProviderProps { - readonly children?: JSX.Element; -} - -export const ThemeProvider = (props: ThemeProviderProps) => { - return {props.children}; -}; diff --git a/packages/ui-solid/src/components/Widget/MultiSelect.tsx b/packages/ui-solid/src/components/Widget/MultiSelect.tsx deleted file mode 100644 index 2b472fd1a..000000000 --- a/packages/ui-solid/src/components/Widget/MultiSelect.tsx +++ /dev/null @@ -1,57 +0,0 @@ -import type { SelectItem, SelectNode } from '@getodk/xforms-engine'; -import { Checkbox, FormControlLabel, FormGroup } from '@suid/material'; -import { For, Show, createMemo } from 'solid-js'; -import type { SelectNDefinition } from '../XForm/controls/SelectControl.tsx'; -import { XFormControlLabel } from '../XForm/controls/XFormControlLabel.tsx'; - -/** - * @todo This should have a variant type in the engine's client interface. - */ -export interface MultiSelectProps { - readonly control: SelectNDefinition; - readonly node: SelectNode; -} - -export const MultiSelect = (props: MultiSelectProps) => { - const isDisabled = createMemo(() => { - return props.node.currentState.readonly || !props.node.currentState.relevant; - }); - - const isSelected = (item: SelectItem) => { - return props.node.currentState.value.includes(item); - }; - - return ( - - - {(label) => { - return ; - }} - - - {(item) => { - const label = () => item.label?.asString ?? item.value; - - return ( - { - if (checked) { - props.node.select(item); - } else { - props.node.deselect(item); - } - }} - /> - } - /> - ); - }} - - - ); -}; diff --git a/packages/ui-solid/src/components/Widget/Note.tsx b/packages/ui-solid/src/components/Widget/Note.tsx deleted file mode 100644 index 7d9d888ff..000000000 --- a/packages/ui-solid/src/components/Widget/Note.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import type { NoteNode } from '@getodk/xforms-engine'; -import { XFormRelevanceGuard } from '../XForm/XFormRelevanceGuard.tsx'; -import { XFormControlLabel } from '../XForm/controls/XFormControlLabel.tsx'; - -interface NoteProps { - readonly node: NoteNode; -} - -export const Note = (props: NoteProps) => { - return ( - - - - ); -}; diff --git a/packages/ui-solid/src/components/Widget/SingleSelect.tsx b/packages/ui-solid/src/components/Widget/SingleSelect.tsx deleted file mode 100644 index a7501a9fc..000000000 --- a/packages/ui-solid/src/components/Widget/SingleSelect.tsx +++ /dev/null @@ -1,72 +0,0 @@ -import type { SelectNode } from '@getodk/xforms-engine'; -import { FormControlLabel, Radio, RadioGroup } from '@suid/material'; -import type { ChangeEvent } from '@suid/types'; -import { For, Show, createMemo } from 'solid-js'; -import type { Select1Definition } from '../XForm/controls/SelectControl.tsx'; -import { XFormControlLabel } from '../XForm/controls/XFormControlLabel.tsx'; - -/** - * @todo This should have a variant type in the engine's client interface. - */ -export interface SingleSelectProps { - readonly control: Select1Definition; - readonly node: SelectNode; -} - -export const SingleSelect = (props: SingleSelectProps) => { - const isDisabled = createMemo(() => { - return props.node.currentState.readonly || !props.node.currentState.relevant; - }); - const selectedItem = () => { - const [item] = props.node.currentState.value; - - return item; - }; - const getItem = (value: string) => { - return props.node.currentState.valueOptions.find((item) => { - return item.value === value; - }); - }; - const handleChange = (event: ChangeEvent) => { - const item = getItem(event.target.value); - - if (item == null) { - const currentItem = selectedItem(); - - if (currentItem != null) { - props.node.deselect(currentItem); - } - } else { - props.node.select(item); - } - }; - const value = () => { - const [item] = props.node.currentState.value; - - return item?.value ?? null; - }; - - return ( - - - {(label) => { - return ; - }} - - - {(item) => { - const label = () => item.label?.asString ?? item.value; - - return ( - } - label={label()} - disabled={isDisabled()} - /> - ); - }} - - - ); -}; diff --git a/packages/ui-solid/src/components/Widget/TextWidget.tsx b/packages/ui-solid/src/components/Widget/TextWidget.tsx deleted file mode 100644 index 29e3a136f..000000000 --- a/packages/ui-solid/src/components/Widget/TextWidget.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import type { StringNode } from '@getodk/xforms-engine'; -import { Show, createMemo } from 'solid-js'; -import { XFormControlLabel } from '../XForm/controls/XFormControlLabel.tsx'; -import { DefaultTextField } from '../styled/DefaultTextField.tsx'; -import { DefaultTextFormControl } from '../styled/DefaultTextFormControl.tsx'; - -export interface TextWidgetProps { - readonly node: StringNode; -} - -export const TextWidget = (props: TextWidgetProps) => { - const isDisabled = createMemo(() => { - return props.node.currentState.readonly || !props.node.currentState.relevant; - }); - - return ( - - - {(label) => { - return ; - }} - - { - props.node.setValue(event.target.value); - }} - disabled={isDisabled()} - inputProps={{ - disabled: isDisabled(), - readonly: isDisabled(), - required: props.node.currentState.required ?? false, - }} - /> - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/XFormBodyElement.tsx b/packages/ui-solid/src/components/XForm/XFormBodyElement.tsx deleted file mode 100644 index d6a1467c9..000000000 --- a/packages/ui-solid/src/components/XForm/XFormBodyElement.tsx +++ /dev/null @@ -1,91 +0,0 @@ -import type { - GeneralChildNode, - GroupNode, - NoteNode, - RepeatRangeNode, - SelectNode, - StringNode, -} from '@getodk/xforms-engine'; -import { Match, Show, Switch } from 'solid-js'; -import { Note } from '../Widget/Note.tsx'; -import { XFormGroup } from './containers/XFormGroup.tsx'; -import { XFormControl } from './controls/XFormControl.tsx'; - -type ViewNode = GroupNode | NoteNode | RepeatRangeNode | SelectNode | StringNode; - -const isViewNode = (node: GeneralChildNode): node is ViewNode => { - return node.nodeType !== 'model-value' && node.nodeType !== 'subtree'; -}; - -interface XFormUnknownElementProps { - readonly node: GeneralChildNode; -} - -const XFormUnknownElement = (_?: XFormUnknownElementProps) => { - return <>; -}; - -type GroupLikeNode = GroupNode | RepeatRangeNode; - -const groupLikeNode = (props: XFormBodyElementProps): GroupLikeNode | null => { - const { node } = props; - - switch (node.nodeType) { - case 'group': - case 'repeat-range:controlled': - case 'repeat-range:uncontrolled': - return node; - - default: - return null; - } -}; - -type ControlNode = SelectNode | StringNode; - -const controlNode = (props: XFormBodyElementProps): ControlNode | null => { - const { node } = props; - - switch (node.nodeType) { - case 'select': - case 'string': - return node; - - default: - return null; - } -}; - -const noteNode = (node: GeneralChildNode): NoteNode | null => { - if (node.nodeType === 'note') { - return node; - } - - return null; -}; - -export interface XFormBodyElementProps { - readonly node: GeneralChildNode; -} - -export const XFormBodyElement = (props: XFormBodyElementProps) => { - return ( - - }> - - {(node) => } - - - {(node) => { - return ; - }} - - - {(node) => { - return ; - }} - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/XFormControlStack.tsx b/packages/ui-solid/src/components/XForm/XFormControlStack.tsx deleted file mode 100644 index b2d19137a..000000000 --- a/packages/ui-solid/src/components/XForm/XFormControlStack.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import { Stack } from '@suid/material'; -import type { JSX } from 'solid-js'; - -interface XFormControlStackProps { - readonly children: JSX.Element; -} - -export const XFormControlStack = (props: XFormControlStackProps) => { - return ( - - {props.children} - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/XFormDetails.tsx b/packages/ui-solid/src/components/XForm/XFormDetails.tsx deleted file mode 100644 index b7d140c45..000000000 --- a/packages/ui-solid/src/components/XForm/XFormDetails.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import type { RootNode } from '@getodk/xforms-engine'; -import { styled } from '@suid/material'; -import { Show, createSignal } from 'solid-js'; - -const Details = styled('details')({ - position: 'relative', - borderLeft: '2px solid #009ecc', - paddingLeft: '1rem', -}); - -const Summary = styled('summary')({ - cursor: 'pointer', -}); - -const Pre = styled('pre')({ - position: 'relative', - overflowX: 'auto', - background: - 'linear-gradient(to left, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.045) 0.0625rem, rgba(0, 0, 0, 0) 0.5rem)', - whiteSpace: 'pre-wrap', -}); - -export interface XFormDetailsProps { - readonly root: RootNode; -} - -export const XFormDetails = (props: XFormDetailsProps) => { - const [showSubmissionState, setShowSubmissionState] = createSignal(false); - - return ( - <> -
{ - setShowSubmissionState(event.currentTarget.open); - }} - > - Submission state (XML) - - {(_) => { - return
{props.root.submissionState.submissionXML}
; - }} -
-
- - ); -}; diff --git a/packages/ui-solid/src/components/XForm/XFormLabel.tsx b/packages/ui-solid/src/components/XForm/XFormLabel.tsx deleted file mode 100644 index da258558f..000000000 --- a/packages/ui-solid/src/components/XForm/XFormLabel.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import type { AnyChildNode, TextRange } from '@getodk/xforms-engine'; -import { Show } from 'solid-js'; -import { DefaultLabel } from '../styled/DefaultLabel'; -import { DefaultLabelRequiredIndicator } from '../styled/DefaultLabelRequiredIndicator'; - -export interface XFormLabelProps { - readonly as?: 'span'; - readonly label: TextRange<'hint' | 'label'>; - readonly node: AnyChildNode; -} - -export const XFormLabel = (props: XFormLabelProps) => { - return ( - <> - - * - - - {props.label.asString} - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/XFormQuestionList.tsx b/packages/ui-solid/src/components/XForm/XFormQuestionList.tsx deleted file mode 100644 index 75440f727..000000000 --- a/packages/ui-solid/src/components/XForm/XFormQuestionList.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import type { GeneralParentNode } from '@getodk/xforms-engine'; -import { For } from 'solid-js'; -import { XFormBodyElement } from './XFormBodyElement.tsx'; -import { XFormControlStack } from './XFormControlStack.tsx'; - -interface XFormQuestionListProps { - readonly node: GeneralParentNode; -} - -export const XFormQuestionList = (props: XFormQuestionListProps) => { - return ( - - - {(child) => { - return ; - }} - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/XFormRelevanceGuard.tsx b/packages/ui-solid/src/components/XForm/XFormRelevanceGuard.tsx deleted file mode 100644 index 54cfe0f7d..000000000 --- a/packages/ui-solid/src/components/XForm/XFormRelevanceGuard.tsx +++ /dev/null @@ -1,36 +0,0 @@ -import { Box, styled } from '@suid/material'; -import type { Component, JSX } from 'solid-js'; -import { Show } from 'solid-js'; - -interface XFormRelevanceGuardProps { - readonly debug?: boolean; - readonly isRelevant: boolean; - readonly children: JSX.Element; -} - -const XFormRelevanceGuardBox = styled>(Box)(({ - props, - theme, -}) => { - if (props.isRelevant) { - return {}; - } - - if (props.debug) { - return theme.nonRelevant.debug; - } - - return theme.nonRelevant.default; -}); - -export const XFormRelevanceGuard = (props: XFormRelevanceGuardProps) => { - const debug = () => props.debug ?? false; - - return ( - - - {props.children} - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/XFormTitle.tsx b/packages/ui-solid/src/components/XForm/XFormTitle.tsx deleted file mode 100644 index ac1aa32ea..000000000 --- a/packages/ui-solid/src/components/XForm/XFormTitle.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import { Typography } from '@suid/material'; - -interface XFormTitleProps { - readonly children: string; -} - -export const XFormTitle = (props: XFormTitleProps) => { - return {props.children}; -}; diff --git a/packages/ui-solid/src/components/XForm/XFormView.tsx b/packages/ui-solid/src/components/XForm/XFormView.tsx deleted file mode 100644 index 830a062cc..000000000 --- a/packages/ui-solid/src/components/XForm/XFormView.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import type { RootNode } from '@getodk/xforms-engine'; -import { Box } from '@suid/material'; -import { XFormQuestionList } from './XFormQuestionList.tsx'; -import { XFormTitle } from './XFormTitle.tsx'; - -interface XFormViewProps { - readonly root: RootNode; -} - -export const XFormView = (props: XFormViewProps) => { - return ( - - {props.root.definition.bind.form.title} - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/containers/RepeatInstanceOptionsMenu.tsx b/packages/ui-solid/src/components/XForm/containers/RepeatInstanceOptionsMenu.tsx deleted file mode 100644 index 4a77fb4e3..000000000 --- a/packages/ui-solid/src/components/XForm/containers/RepeatInstanceOptionsMenu.tsx +++ /dev/null @@ -1,75 +0,0 @@ -// TODO: quite a bit of this is very similar to FormLanguageMenu -import type { RepeatInstanceNode, RepeatRangeUncontrolledNode } from '@getodk/xforms-engine'; -import Delete from '@suid/icons-material/Delete'; -import MoreVert from '@suid/icons-material/MoreVert'; -import { IconButton, ListItemIcon, ListItemText, Menu, MenuItem } from '@suid/material'; -import { createSignal } from 'solid-js'; - -interface RepeatInstanceOptionsMenuProps { - readonly index: number; - readonly range: RepeatRangeUncontrolledNode; - readonly instance: RepeatInstanceNode; -} - -export const RepeatInstanceOptionsMenu = (props: RepeatInstanceOptionsMenuProps) => { - let buttonRef!: HTMLButtonElement; - - const [isOpen, setIsOpen] = createSignal(false); - const closeMenu = () => { - setIsOpen(false); - }; - const reference = () => props.instance.currentState.reference; - const buttonId = () => `repeat-instance-options-menu-button-${reference()}`; - const menuId = () => `repeat-instance-options-menu-${reference()}`; - - return ( - <> - { - setIsOpen((current) => !current); - }} - > - - - - { - props.range.removeInstances(props.index); - }} - > - - - - - - {/* TODO: app translations */} - Remove - - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/containers/XFormGroup.tsx b/packages/ui-solid/src/components/XForm/containers/XFormGroup.tsx deleted file mode 100644 index 7dd401719..000000000 --- a/packages/ui-solid/src/components/XForm/containers/XFormGroup.tsx +++ /dev/null @@ -1,73 +0,0 @@ -import type { GroupNode, RepeatRangeNode } from '@getodk/xforms-engine'; -import { Match, Show, Switch, createMemo, createSignal } from 'solid-js'; -import { NestedGroupBox } from '../../styled/NestedGroupBox.tsx'; -import { XFormQuestionList } from '../XFormQuestionList.tsx'; -import { XFormRelevanceGuard } from '../XFormRelevanceGuard.tsx'; -import { XFormGroupLabel } from './XFormGroupLabel.tsx'; -import { XFormRepeatList } from './XFormRepeatList.tsx'; - -export interface XFormGroupProps { - readonly node: GroupNode | RepeatRangeNode; -} - -const repeatNode = (node: GroupNode | RepeatRangeNode): RepeatRangeNode | null => { - if ( - node.nodeType === 'repeat-range:controlled' || - node.nodeType === 'repeat-range:uncontrolled' - ) { - return node; - } - - return null; -}; - -const groupNode = (node: GroupNode | RepeatRangeNode): GroupNode | null => { - if (node.nodeType === 'group') { - return node; - } - - return null; -}; - -export const XFormGroup = (props: XFormGroupProps) => { - const groupLabel = () => { - return groupNode(props.node)?.currentState.label ?? null; - }; - const isRelevant = createMemo(() => { - return props.node.currentState.relevant; - }); - const [isGroupVisible, setGroupVisible] = createSignal(true); - - return ( - - - {(label) => ( - - )} - - - - - {(node) => { - return ; - }} - - - {(node) => { - return ( - - - - ); - }} - - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/containers/XFormGroupLabel.tsx b/packages/ui-solid/src/components/XForm/containers/XFormGroupLabel.tsx deleted file mode 100644 index 99b70aaef..000000000 --- a/packages/ui-solid/src/components/XForm/containers/XFormGroupLabel.tsx +++ /dev/null @@ -1,55 +0,0 @@ -import ExpandLess from '@suid/icons-material/ExpandLess'; -import ExpandMore from '@suid/icons-material/ExpandMore'; -import { Stack, styled } from '@suid/material'; -import { Match, Switch } from 'solid-js'; -import { PlainTextButton } from '../../styled/PlainTextButton.tsx'; -import { XFormLabel, type XFormLabelProps } from '../XFormLabel.tsx'; - -const GroupLabelStack = styled(Stack)(({ theme }) => ({ - alignItems: '1rem', - flexDirection: 'row', - gap: theme.spacing(0.5), -})); - -const ClippedGroupToggleIconContainer = styled('div')(({ theme }) => ({ - alignSelf: '1rem', - flexShrink: 0, - overflow: 'hidden', - - '& > *': { - marginInlineStart: theme.spacing(-0.5), - }, -})); - -interface XFormGroupLabelProps extends XFormLabelProps { - readonly isGroupVisible: boolean; - readonly setGroupVisible: (isVisible: boolean) => void; -} - -export const XFormGroupLabel = (props: XFormGroupLabelProps) => { - return ( - { - if (props.node.currentState.relevant) { - props.setGroupVisible(!props.isGroupVisible); - } - }} - > - - - - - - - - - - - - - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/containers/XFormRepeatInstance.tsx b/packages/ui-solid/src/components/XForm/containers/XFormRepeatInstance.tsx deleted file mode 100644 index 0155f178d..000000000 --- a/packages/ui-solid/src/components/XForm/containers/XFormRepeatInstance.tsx +++ /dev/null @@ -1,69 +0,0 @@ -import type { RepeatInstanceNode, RepeatRangeUncontrolledNode } from '@getodk/xforms-engine'; -import { Box, Stack, styled } from '@suid/material'; -import { Show, createSignal } from 'solid-js'; -import { TopLevelRepeatInstance } from '../../styled/TopLevelRepeatInstance.tsx'; -import { XFormQuestionList } from '../XFormQuestionList.tsx'; -import { RepeatInstanceOptionsMenu } from './RepeatInstanceOptionsMenu.tsx'; -import { XFormRepeatInstanceLabel } from './XFormRepeatInstanceLabel.tsx'; - -const RepeatInstanceOptionsMenuContainer = styled(Box)({ - marginInlineStart: 'auto', -}); - -interface XFormRepeatInstanceProps { - readonly index: number; - readonly instance: RepeatInstanceNode; -} - -export const XFormRepeatInstance = (props: XFormRepeatInstanceProps) => { - const [isRepeatInstanceVisible, setRepeatInstanceVisible] = createSignal(true); - const repeatLabel = () => { - const { instance } = props; - - return instance.currentState.label ?? instance.parent.currentState.label; - }; - const uncontrolledRepeatRange = ( - instance: RepeatInstanceNode - ): RepeatRangeUncontrolledNode | null => { - const { parent } = instance; - - if (parent.nodeType === 'repeat-range:uncontrolled') { - return parent; - } - - return null; - }; - - return ( - - - - {(label) => ( - - )} - - - {(range) => { - return ( - - - - ); - }} - - - - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/containers/XFormRepeatInstanceLabel.tsx b/packages/ui-solid/src/components/XForm/containers/XFormRepeatInstanceLabel.tsx deleted file mode 100644 index b29dc7c10..000000000 --- a/packages/ui-solid/src/components/XForm/containers/XFormRepeatInstanceLabel.tsx +++ /dev/null @@ -1,62 +0,0 @@ -// TODO: this is literally copied verbatim from XFormGroupLabel.tsx with each -// `Group` changed to `RepeatInstance`. From a view perspective, it seems -// *highly likely* "repeat instance" and "group" are a mostly a shared concern -// with some style variation. In fact, it's probably going to be the case that -// they both turn out to have a very similar view-level data model *and* wrap -// the same view logic in a styled container. - -import ExpandLess from '@suid/icons-material/ExpandLess'; -import ExpandMore from '@suid/icons-material/ExpandMore'; -import { Stack, styled } from '@suid/material'; -import { Match, Switch } from 'solid-js'; -import { PlainTextButton } from '../../styled/PlainTextButton.tsx'; -import { XFormLabel, type XFormLabelProps } from '../XFormLabel.tsx'; - -const RepeatInstanceLabelStack = styled(Stack)(({ theme }) => ({ - alignItems: '1rem', - flexDirection: 'row', - gap: theme.spacing(0.5), -})); - -const ClippedRepeatInstanceToggleIconContainer = styled('div')(({ theme }) => ({ - alignSelf: '1rem', - flexShrink: 0, - overflow: 'hidden', - - '& > *': { - marginInlineStart: theme.spacing(-0.5), - }, -})); - -interface XFormRepeatInstanceLabelProps extends XFormLabelProps { - readonly isRepeatInstanceVisible: boolean; - readonly setRepeatInstanceVisible: (isVisible: boolean) => void; -} - -export const XFormRepeatInstanceLabel = (props: XFormRepeatInstanceLabelProps) => { - return ( - { - if (props.node.currentState.relevant) { - props.setRepeatInstanceVisible(!props.isRepeatInstanceVisible); - } - }} - > - - - - - - - - - - - - - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/containers/XFormRepeatList.tsx b/packages/ui-solid/src/components/XForm/containers/XFormRepeatList.tsx deleted file mode 100644 index 0fa244350..000000000 --- a/packages/ui-solid/src/components/XForm/containers/XFormRepeatList.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import type { RepeatRangeNode, RepeatRangeUncontrolledNode } from '@getodk/xforms-engine'; -import { Box, Stack } from '@suid/material'; -import { createMemo, For, getOwner, runWithOwner, Show } from 'solid-js'; -import { ThemeColorOutlineButton } from '../../styled/ThemeColorOutlineButton.tsx'; -import { XFormRepeatInstance } from './XFormRepeatInstance.tsx'; - -interface XFormRepeatListProps { - readonly node: RepeatRangeNode; -} - -export const XFormRepeatList = (props: XFormRepeatListProps) => { - const uncontrolledRange = createMemo((): RepeatRangeUncontrolledNode | null => { - const { node } = props; - - if (node.nodeType === 'repeat-range:uncontrolled') { - return node; - } - - return null; - }); - const owner = getOwner(); - - return ( - - - {(instance, index) => { - return ; - }} - - - {(range) => { - return ( - - { - runWithOwner(owner, () => { - range.addInstances(); - }); - }} - > - + Add - - - ); - }} - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/controls/SelectControl.tsx b/packages/ui-solid/src/components/XForm/controls/SelectControl.tsx deleted file mode 100644 index a7ba257ef..000000000 --- a/packages/ui-solid/src/components/XForm/controls/SelectControl.tsx +++ /dev/null @@ -1,47 +0,0 @@ -import type { AnySelectDefinition, SelectDefinition, SelectNode } from '@getodk/xforms-engine'; -import { Match, Switch } from 'solid-js'; -import { MultiSelect } from '../../Widget/MultiSelect.tsx'; -import { SingleSelect } from '../../Widget/SingleSelect.tsx'; - -/** - * @todo This should have a variant type in the engine's client interface. - */ -export type Select1Definition = SelectDefinition<'select1'>; - -const select1 = (control: AnySelectDefinition): Select1Definition | null => { - if (control.type === 'select1') { - return control as Select1Definition; - } - - return null; -}; - -/** - * @todo This should have a variant type in the engine's client interface. - */ -export type SelectNDefinition = SelectDefinition<'select'>; - -const selectN = (control: AnySelectDefinition): SelectNDefinition | null => { - if (control.type === 'select') { - return control as SelectNDefinition; - } - - return null; -}; - -interface SelectControlProps { - readonly node: SelectNode; -} - -export const SelectControl = (props: SelectControlProps) => { - return ( - !

}> - - {(control) => } - - - {(control) => } - -
- ); -}; diff --git a/packages/ui-solid/src/components/XForm/controls/XFormControl.tsx b/packages/ui-solid/src/components/XForm/controls/XFormControl.tsx deleted file mode 100644 index 08c8914d0..000000000 --- a/packages/ui-solid/src/components/XForm/controls/XFormControl.tsx +++ /dev/null @@ -1,54 +0,0 @@ -import type { SelectNode, StringNode } from '@getodk/xforms-engine'; -import { Match, Switch, createMemo } from 'solid-js'; -import { XFormRelevanceGuard } from '../XFormRelevanceGuard.tsx'; -import { XFormUnknownControl } from '../debugging/XFormUnknownControl.tsx'; -import { SelectControl } from './SelectControl.tsx'; -import { XFormInputControl } from './XFormInputControl.tsx'; - -// prettier-ignore -type ControlNode = - | SelectNode - | StringNode; - -export interface XFormControlProps { - readonly node: ControlNode; -} - -const stringInputNode = (node: ControlNode): StringNode | null => { - if (node.nodeType === 'string') { - return node; - } - - return null; -}; - -const selectNode = (node: ControlNode): SelectNode | null => { - if (node.nodeType === 'select') { - return node; - } - - return null; -}; - -export const XFormControl = (props: XFormControlProps) => { - const isRelevant = createMemo(() => { - return props.node.currentState.relevant; - }); - - return ( - - }> - - {(node) => { - return ; - }} - - - {(node) => { - return ; - }} - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/controls/XFormControlLabel.tsx b/packages/ui-solid/src/components/XForm/controls/XFormControlLabel.tsx deleted file mode 100644 index 3be4f09c5..000000000 --- a/packages/ui-solid/src/components/XForm/controls/XFormControlLabel.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import { DefaultLabelParagraph } from '../../styled/DefaultLabelParagraph.tsx'; -import type { XFormLabelProps } from '../XFormLabel.tsx'; -import { XFormLabel } from '../XFormLabel.tsx'; - -interface XFormControlLabelProps extends XFormLabelProps {} - -export const XFormControlLabel = (props: XFormControlLabelProps) => { - return ( - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/controls/XFormInputControl.tsx b/packages/ui-solid/src/components/XForm/controls/XFormInputControl.tsx deleted file mode 100644 index ed073d0f1..000000000 --- a/packages/ui-solid/src/components/XForm/controls/XFormInputControl.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import type { StringNode } from '@getodk/xforms-engine'; -import { Show } from 'solid-js'; -import { TextWidget } from '../../Widget/TextWidget.tsx'; -import { XFormUnlabeledControl } from '../debugging/XFormUnlabeledInputControl.tsx'; - -interface XFormInputControlProps { - readonly node: StringNode; -} - -export const XFormInputControl = (props: XFormInputControlProps) => { - return ( - <> - - - - - - ); -}; diff --git a/packages/ui-solid/src/components/XForm/debugging/XFormAlert.tsx b/packages/ui-solid/src/components/XForm/debugging/XFormAlert.tsx deleted file mode 100644 index 019499fac..000000000 --- a/packages/ui-solid/src/components/XForm/debugging/XFormAlert.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import { Alert, AlertTitle } from '@suid/material'; -import type { AlertColor } from '@suid/material/Alert'; -import type { JSX } from 'solid-js'; -import { Show } from 'solid-js'; - -interface XFormAlertProps { - readonly title?: JSX.Element; - readonly children: JSX.Element; - readonly detailsSummary?: JSX.Element; - readonly severity: AlertColor; -} - -export const XFormAlert = (props: XFormAlertProps) => { - return ( - - - {(title) => {title}} - - -
- - {(detailsSummary) => {detailsSummary}} - - - {props.children} -
-
- ); -}; diff --git a/packages/ui-solid/src/components/XForm/debugging/XFormUnknownControl.tsx b/packages/ui-solid/src/components/XForm/debugging/XFormUnknownControl.tsx deleted file mode 100644 index 8472d8ca2..000000000 --- a/packages/ui-solid/src/components/XForm/debugging/XFormUnknownControl.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import type { SelectNode, StringNode } from '@getodk/xforms-engine'; -import { Box } from '@suid/material'; -import { XFormAlert } from './XFormAlert.tsx'; - -type ValueNode = SelectNode | StringNode; - -interface XFormUnknownControlProps { - readonly node: ValueNode; -} - -export const XFormUnknownControl = (props: XFormUnknownControlProps) => { - const element = () => props.node.definition.bodyElement; - - return ( - - - Unrecognized form control: {element()?.type} - - } - detailsSummary="Control" - > -
{JSON.stringify(props, null, 2)}
-
-
- ); -}; diff --git a/packages/ui-solid/src/components/XForm/debugging/XFormUnlabeledInputControl.tsx b/packages/ui-solid/src/components/XForm/debugging/XFormUnlabeledInputControl.tsx deleted file mode 100644 index 755c6ab2f..000000000 --- a/packages/ui-solid/src/components/XForm/debugging/XFormUnlabeledInputControl.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import type { SelectNode, StringNode } from '@getodk/xforms-engine'; -import { XFormAlert } from './XFormAlert.tsx'; - -type ControlNode = SelectNode | StringNode; - -interface XFormUnlabeledControlProps { - readonly node: ControlNode; -} - -export const XFormUnlabeledControl = (props: XFormUnlabeledControlProps) => { - return ( - - Unlabeled {props.node.definition.bodyElement?.type} control - - } - detailsSummary="Control" - > -
{JSON.stringify(props.node.definition, null, 2)}
-
- ); -}; diff --git a/packages/ui-solid/src/components/styled/DefaultLabel.tsx b/packages/ui-solid/src/components/styled/DefaultLabel.tsx deleted file mode 100644 index c56781839..000000000 --- a/packages/ui-solid/src/components/styled/DefaultLabel.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { styled } from '@suid/material'; - -export const DefaultLabel = styled('label')(({ theme }) => ({ - ...theme.typography.body1, -})); diff --git a/packages/ui-solid/src/components/styled/DefaultLabelParagraph.tsx b/packages/ui-solid/src/components/styled/DefaultLabelParagraph.tsx deleted file mode 100644 index 9f94f6a3f..000000000 --- a/packages/ui-solid/src/components/styled/DefaultLabelParagraph.tsx +++ /dev/null @@ -1,6 +0,0 @@ -import { styled } from '@suid/material'; -import { DefaultParagraph } from './DefaultParagraph.tsx'; - -export const DefaultLabelParagraph = styled(DefaultParagraph)({ - marginBlockEnd: '0.625rem', -}); diff --git a/packages/ui-solid/src/components/styled/DefaultLabelRequiredIndicator.tsx b/packages/ui-solid/src/components/styled/DefaultLabelRequiredIndicator.tsx deleted file mode 100644 index 0e0e8102b..000000000 --- a/packages/ui-solid/src/components/styled/DefaultLabelRequiredIndicator.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { styled } from '@suid/material'; - -export const DefaultLabelRequiredIndicator = styled('label')(({ theme }) => ({ - color: theme.palette.required, -})); diff --git a/packages/ui-solid/src/components/styled/DefaultParagraph.tsx b/packages/ui-solid/src/components/styled/DefaultParagraph.tsx deleted file mode 100644 index 4e46ccd9b..000000000 --- a/packages/ui-solid/src/components/styled/DefaultParagraph.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { styled } from '@suid/material'; - -export const DefaultParagraph = styled('p')(({ theme }) => ({ - ...theme.typography.body1, -})); diff --git a/packages/ui-solid/src/components/styled/DefaultSubmitButton.tsx b/packages/ui-solid/src/components/styled/DefaultSubmitButton.tsx deleted file mode 100644 index 5c1e0fa83..000000000 --- a/packages/ui-solid/src/components/styled/DefaultSubmitButton.tsx +++ /dev/null @@ -1,6 +0,0 @@ -import { Button, styled } from '@suid/material'; - -export const DefaultSubmitButton = styled(Button)(({ theme }) => ({ - background: theme.palette.primary.main, - color: theme.palette.primary.contrastText, -})); diff --git a/packages/ui-solid/src/components/styled/DefaultTextField.tsx b/packages/ui-solid/src/components/styled/DefaultTextField.tsx deleted file mode 100644 index 3cb8f927b..000000000 --- a/packages/ui-solid/src/components/styled/DefaultTextField.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import { TextField, styled } from '@suid/material'; - -export const DefaultTextField = styled(TextField)(({ theme }) => ({ - ...theme.typography.body2, - - '& .MuiInputBase-input': { - backgroundColor: theme.palette.background.paper, - boxSizing: 'content-box', - fontSize: '1em', - height: '1em', - padding: '1rem', - }, -})); diff --git a/packages/ui-solid/src/components/styled/DefaultTextFormControl.tsx b/packages/ui-solid/src/components/styled/DefaultTextFormControl.tsx deleted file mode 100644 index 16d872aa8..000000000 --- a/packages/ui-solid/src/components/styled/DefaultTextFormControl.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { FormControl, styled } from '@suid/material'; - -export const DefaultTextFormControl = styled(FormControl)({ - maxWidth: '43.75rem', -}); diff --git a/packages/ui-solid/src/components/styled/FormSubmitButton.tsx b/packages/ui-solid/src/components/styled/FormSubmitButton.tsx deleted file mode 100644 index 9f6f4c644..000000000 --- a/packages/ui-solid/src/components/styled/FormSubmitButton.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import { styled } from '@suid/material'; -import { DefaultSubmitButton } from './DefaultSubmitButton'; - -export const FormSubmitButton = styled(DefaultSubmitButton)(({ theme }) => ({ - ...theme.typography.body1, - - borderRadius: theme.shape.borderRadius * 8, - lineHeight: 0.8333, - padding: '0.8333em', - textTransform: 'none', - width: '10em', -})); diff --git a/packages/ui-solid/src/components/styled/NestedGroupBox.tsx b/packages/ui-solid/src/components/styled/NestedGroupBox.tsx deleted file mode 100644 index 3d45434a7..000000000 --- a/packages/ui-solid/src/components/styled/NestedGroupBox.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import { Box, styled } from '@suid/material'; - -export const NestedGroupBox = styled(Box)(({ theme }) => ({ - borderLeftWidth: '0.375rem', - borderLeftStyle: 'solid', - borderLeftColor: theme.palette.primaryShades?.['15%'], - paddingInlineStart: theme.spacing(2), -})); diff --git a/packages/ui-solid/src/components/styled/PageContainer.tsx b/packages/ui-solid/src/components/styled/PageContainer.tsx deleted file mode 100644 index c198d97ed..000000000 --- a/packages/ui-solid/src/components/styled/PageContainer.tsx +++ /dev/null @@ -1,6 +0,0 @@ -import { Container, styled } from '@suid/material'; - -export const PageContainer = styled(Container)(({ theme }) => ({ - backgroundColor: theme.palette.background.default, - paddingBlock: theme.spacing(2), -})); diff --git a/packages/ui-solid/src/components/styled/PageMenuButton.tsx b/packages/ui-solid/src/components/styled/PageMenuButton.tsx deleted file mode 100644 index bc3132b8a..000000000 --- a/packages/ui-solid/src/components/styled/PageMenuButton.tsx +++ /dev/null @@ -1,14 +0,0 @@ -import { Button, styled } from '@suid/material'; - -export const PageMenuButton = styled(Button)(({ theme }) => ({ - color: theme.palette.text.primary, - backgroundColor: theme.palette.background.paper, - borderRadius: theme.spacing(2), - boxShadow: 'none', - padding: theme.spacing(0.5), - textTransform: 'none', - - '&:hover': { - backgroundColor: theme.palette.background.paper, - }, -})); diff --git a/packages/ui-solid/src/components/styled/PlainTextButton.tsx b/packages/ui-solid/src/components/styled/PlainTextButton.tsx deleted file mode 100644 index f7d7387b8..000000000 --- a/packages/ui-solid/src/components/styled/PlainTextButton.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import { styled } from '@suid/material'; - -export const PlainTextButton = styled('button')(({ theme, props }) => ({ - appearance: 'none', - backgroundColor: 'transparent', - border: 'none', - color: theme.palette.text.primary, - cursor: props.disabled ? 'default' : 'pointer', - padding: 0, - textAlign: 'inherit', -})); diff --git a/packages/ui-solid/src/components/styled/SecondaryParagraph.tsx b/packages/ui-solid/src/components/styled/SecondaryParagraph.tsx deleted file mode 100644 index 004d5ba85..000000000 --- a/packages/ui-solid/src/components/styled/SecondaryParagraph.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { styled } from '@suid/material'; - -export const SecondaryParagraph = styled('p')(({ theme }) => ({ - ...theme.typography.body2, -})); diff --git a/packages/ui-solid/src/components/styled/ThemeColorOutlineButton.tsx b/packages/ui-solid/src/components/styled/ThemeColorOutlineButton.tsx deleted file mode 100644 index 908c7c428..000000000 --- a/packages/ui-solid/src/components/styled/ThemeColorOutlineButton.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import { Button, styled } from '@suid/material'; - -export const ThemeColorOutlineButton = styled(Button)(({ theme }) => ({ - backgroundColor: theme.palette.background.paper, - borderRadius: '1.25em', - border: `1px solid ${theme.palette.primary.main}`, - fontSize: '0.9rem', - height: '2.5em', - paddingBlock: theme.spacing(0.5), - paddingInline: theme.spacing(1), -})); diff --git a/packages/ui-solid/src/components/styled/TopLevelRepeatInstance.tsx b/packages/ui-solid/src/components/styled/TopLevelRepeatInstance.tsx deleted file mode 100644 index 6951f2c53..000000000 --- a/packages/ui-solid/src/components/styled/TopLevelRepeatInstance.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import { Box, styled } from '@suid/material'; - -export const TopLevelRepeatInstance = styled(Box)(({ theme }) => ({ - paddingBlock: theme.spacing(2), - paddingInline: theme.spacing(2.25), - borderRadius: theme.shape.borderRadius, - backgroundColor: theme.palette.primaryShades?.['10%'], -})); diff --git a/packages/ui-solid/src/index.tsx b/packages/ui-solid/src/index.tsx deleted file mode 100644 index a1f8bb329..000000000 --- a/packages/ui-solid/src/index.tsx +++ /dev/null @@ -1,5 +0,0 @@ -/* @refresh reload */ -import { render } from 'solid-js/web'; -import { Demo } from './Demo.tsx'; - -render(() => , document.getElementById('root')!); diff --git a/packages/ui-solid/src/lib/i18n-l10n/types.ts b/packages/ui-solid/src/lib/i18n-l10n/types.ts deleted file mode 100644 index 9c14fddcd..000000000 --- a/packages/ui-solid/src/lib/i18n-l10n/types.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface Localization { - readonly locale: string; - readonly name: string; -} diff --git a/packages/ui-solid/test/components/xform/XFormTitle.test.tsx b/packages/ui-solid/test/components/xform/XFormTitle.test.tsx deleted file mode 100644 index d70713eb6..000000000 --- a/packages/ui-solid/test/components/xform/XFormTitle.test.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import { render } from 'solid-js/web'; -import { afterEach, beforeEach, describe, expect, it } from 'vitest'; -import { XFormTitle } from '../../../src/components/XForm/XFormTitle.tsx'; - -describe('XFormTitle', () => { - let rootElement: Element; - let dispose: VoidFunction; - - beforeEach(() => { - dispose = () => { - throw new Error('Render must have failed'); - }; - - rootElement = document.createElement('div'); - }); - - afterEach(() => { - dispose(); - }); - - it('renders the title', () => { - dispose = render(() => Hello, rootElement); - - expect(rootElement.textContent).toContain('Hello'); - }); -}); diff --git a/packages/ui-solid/test/components/xform/XFormView.test.tsx b/packages/ui-solid/test/components/xform/XFormView.test.tsx deleted file mode 100644 index 7e01043e6..000000000 --- a/packages/ui-solid/test/components/xform/XFormView.test.tsx +++ /dev/null @@ -1,78 +0,0 @@ -import { - bind, - body, - head, - html, - input, - label, - mainInstance, - model, - t, - title, -} from '@getodk/common/test/fixtures/xform-dsl/index.ts'; -import type { RootNode } from '@getodk/xforms-engine'; -import { initializeForm } from '@getodk/xforms-engine'; -import { render } from 'solid-js/web'; -import { afterEach, beforeEach, describe, expect, it } from 'vitest'; -import { XFormView } from '../../../src/components/XForm/XFormView.tsx'; - -describe('XFormView', () => { - const xform = html( - head( - title('Minimal XForm'), - model( - mainInstance( - t( - 'root id="minimal"', - t('first-question'), - t('second-question'), - t('third-question'), - t('meta', t('instanceID')) - ) - ), - bind('/root/first-question').type('string'), - bind('/root/second-question').type('string'), - bind('/root/third-question').type('string'), - bind('/root/meta/instanceID').type('string') - ) - ), - body( - input('/root/first-question', label('First question')), - input('/root/second-question'), - t('unknown-control ref="/root/third-question"') - ) - ); - - let root: RootNode; - let rootElement: Element; - let dispose: VoidFunction; - - beforeEach(async () => { - dispose = () => { - throw new Error('Render must have failed'); - }; - - root = await initializeForm(xform.asXml()); - rootElement = document.createElement('div'); - }); - - afterEach(() => { - dispose(); - }); - - it('renders the form title', () => { - dispose = render(() => { - return ; - }, rootElement); - - expect(rootElement.textContent).toContain('Minimal XForm'); - }); - - it('renders the first question', () => { - dispose = render(() => { - return ; - }, rootElement); - - expect(rootElement.textContent).toContain('First question'); - }); -}); diff --git a/packages/ui-solid/test/view/translations.test.tsx b/packages/ui-solid/test/view/translations.test.tsx deleted file mode 100644 index c606dafe5..000000000 --- a/packages/ui-solid/test/view/translations.test.tsx +++ /dev/null @@ -1,103 +0,0 @@ -import { - bind, - body, - head, - html, - input, - mainInstance, - model, - t, - title, -} from '@getodk/common/test/fixtures/xform-dsl/index.ts'; -import type { FormLanguage, RootNode } from '@getodk/xforms-engine'; -import { initializeForm } from '@getodk/xforms-engine'; -import { createMutable } from 'solid-js/store'; -import { render } from 'solid-js/web'; -import { afterEach, beforeEach, describe, expect, it } from 'vitest'; -import { App } from '../../src/App.tsx'; - -describe('XFormView', () => { - let rootElement: Element; - let dispose: VoidFunction | null; - - const xform = html( - head( - title('Itext (basic)'), - model( - // prettier-ignore - t('itext', - t('translation lang="English"', - t('text id="q1:label"', - t('value', '1. Question one') - ) - ), - t('translation lang="Español"', - t('text id="q1:label"', - t('value', '1. Pregunta uno') - ) - ) - ), - mainInstance(t('root id="itext-basic"', t('q1'), t('meta', t('instanceID')))), - bind('/root/q1') - ) - ), - body(input('/root/q1', t(`label ref="jr:itext('q1:label')"`))) - ); - - let root: RootNode; - - beforeEach(async () => { - root = await initializeForm(xform.asXml(), { - config: { - stateFactory: createMutable, - }, - }); - rootElement = document.createElement('div'); - dispose = null; - }); - - afterEach(() => { - dispose?.(); - }); - - it('renders a label in the default language', () => { - dispose = render(() => { - return ; - }, rootElement); - - const label = Array.from(rootElement.querySelectorAll('label')).find((element) => { - return element.textContent?.startsWith('1.'); - }); - - expect(label).not.toBeUndefined(); - expect(label!.textContent).toBe('1. Question one'); - }); - - it('translates the label to another language', () => { - dispose = render(() => { - return ; - }, rootElement); - - // TODO: the intent was actually to test this by selecting the menu item, - // but resolving the menu item proved difficult. Probably better as an - // e2e test? - const spanishLanguage = root.languages.find( - (activeLanguage): activeLanguage is FormLanguage => { - return activeLanguage.language === 'Español'; - } - ); - - if (spanishLanguage == null) { - expect.fail('Could not find Spanish form language'); - } - - root.setLanguage(spanishLanguage); - - const label = Array.from(rootElement.querySelectorAll('label')).find((element) => { - return element.textContent?.startsWith('1.'); - }); - - expect(label).not.toBeUndefined(); - expect(label!.textContent).toBe('1. Pregunta uno'); - }); -}); diff --git a/packages/ui-solid/tsconfig.json b/packages/ui-solid/tsconfig.json deleted file mode 100644 index ee861e79b..000000000 --- a/packages/ui-solid/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "include": ["src", "test/**/*.ts", "test/**/*.tsx", "vite-env.d.ts"], - "compilerOptions": { - "allowSyntheticDefaultImports": false, - "declarationDir": "./dist", - "jsx": "preserve", - "jsxImportSource": "solid-js", - "lib": ["DOM", "DOM.Iterable", "ES2022"], - "skipLibCheck": true, - "outDir": "./dist", - "paths": { - "@getodk/common/types/*": ["../common/types/*"], - "@getodk/common/*": ["../common/src/*"] - } - } -} diff --git a/packages/ui-solid/vite-env.d.ts b/packages/ui-solid/vite-env.d.ts deleted file mode 100644 index 11f02fe2a..000000000 --- a/packages/ui-solid/vite-env.d.ts +++ /dev/null @@ -1 +0,0 @@ -/// diff --git a/packages/ui-solid/vite.config.ts b/packages/ui-solid/vite.config.ts deleted file mode 100644 index 84e19c590..000000000 --- a/packages/ui-solid/vite.config.ts +++ /dev/null @@ -1,164 +0,0 @@ -/// -/// - -// TODO: share Vite config where makes sense - -import type { CollectionValues } from '@getodk/common/types/collections/CollectionValues.ts'; -import suidPlugin from '@suid/vite-plugin'; -import { resolve as resolvePath } from 'node:path'; -import dts from 'vite-plugin-dts'; -import solidPlugin from 'vite-plugin-solid'; -import { defineConfig } from 'vitest/config'; - -export default defineConfig(({ mode }) => { - const isDev = mode === 'development'; - const isTest = mode === 'test'; - const supportedBrowsers = new Set(['chromium', 'firefox', 'webkit'] as const); - - type SupportedBrowser = CollectionValues; - - const isSupportedBrowser = (browserName: string): browserName is SupportedBrowser => - supportedBrowsers.has(browserName as SupportedBrowser); - - const BROWSER_NAME = (() => { - if (!isTest) { - return null; - } - - const envBrowserName = process.env.BROWSER_NAME; - - if (envBrowserName == null) { - return null; - } - - if (isSupportedBrowser(envBrowserName)) { - return envBrowserName; - } - - throw new Error(`Unsupported browser: ${envBrowserName}`); - })(); - - const BROWSER_ENABLED = BROWSER_NAME != null; - - const TEST_ENVIRONMENT = BROWSER_ENABLED ? 'node' : 'jsdom'; - - /** - * @see notes on the same variable in the config for @getodk/xpath - */ - const TEST_TIME_ZONE = 'America/Phoenix'; - - let timeZoneId: string | null = process.env.TZ ?? null; - - if (mode === 'test') { - timeZoneId = timeZoneId ?? TEST_TIME_ZONE; - } - - let devAliases: Record = {}; - - if (isDev) { - devAliases = { - '@getodk/xforms-engine': resolvePath(__dirname, '../xforms-engine/src/index.ts'), - }; - } - - return { - assetsInclude: ['assets/**/*', 'fixtures/**/*.xml'], - build: { - target: 'esnext', - minify: false, - sourcemap: true, - emptyOutDir: false, - outDir: './dist', - manifest: true, - }, - define: { - TZ: JSON.stringify(timeZoneId), - }, - esbuild: { - target: 'esnext', - }, - optimizeDeps: { - esbuildOptions: { - target: 'esnext', - }, - entries: ['./index.html'], - include: ['@getodk/xpath'], - force: true, - }, - plugins: [ - // SUID = Solid MUI component library - suidPlugin(), - - // Solid's JSX transform (dom-expressions), optimizes DOM access in components - solidPlugin({ - babel: { - babelrc: false, - configFile: false, - - // Transform the BigInt polyfill (used by the Temporal polyfill) to use native - // APIs. We can safely assume BigInt is available for our target platforms. - plugins: ['transform-jsbi-to-bigint'], - }, - }), - - // Generate type definitions. This turned out to be more reliable in - // @getodk/xpath. TODO: revisit in case it makes sense to use tsc directly - // in this package - dts({ - exclude: ['test'], - entryRoot: './src', - tsconfigPath: './tsconfig.json', - }), - ], - - resolve: { - alias: { - '@getodk/common/types': resolvePath(__dirname, '../common/types'), - '@getodk/common': resolvePath(__dirname, '../common/src'), - - // For (temporary?) dev convenience, alias `@getodk/xforms-engine` to - // its source so changes to the engine can be watched in - // `@getodk/ui-solid` dev mode. - ...devAliases, - }, - - conditions: ['solid', 'browser', 'development'], - }, - - server: BROWSER_ENABLED - ? {} - : { - port: 8675, - }, - - test: { - browser: { - enabled: BROWSER_ENABLED, - name: BROWSER_NAME!, - provider: 'playwright', - headless: true, - screenshotFailures: false, - }, - - deps: { - optimizer: { - ssr: { - exclude: ['solid-js'], - }, - web: { - // Prevent loading multiple instances of Solid. This deviates from - // most of the recommendations provided by Solid and related - // tooling, as Vitest's interfaces have since changed. But it does - // seem to be the appropriate solution (at least for our usage). - exclude: ['solid-js'], - }, - }, - moduleDirectories: ['node_modules', '../../node_modules'], - }, - environment: TEST_ENVIRONMENT, - globals: false, - exclude: ['e2e/**/*'], - reporters: process.env.GITHUB_ACTIONS ? ['default', 'github-actions'] : 'default', - }, - }; -}); diff --git a/packages/xforms-engine/README.md b/packages/xforms-engine/README.md index be16ca561..d66e844d5 100644 --- a/packages/xforms-engine/README.md +++ b/packages/xforms-engine/README.md @@ -3,7 +3,7 @@ Implementation of the [ODK XForms specification](https://getodk.github.io/xforms-spec/)'s data model and computation logic. This package does not handle presentation or user interaction. Those aspects of forms are meant to be handled by a client. Presently, those clients are: - [`@getodk/web-forms`](../web-forms) -- [`@getodk/ui-solid`](../ui-solid) +- [`@getodk/scenario`](../scenario) ## Install diff --git a/yarn.lock b/yarn.lock index 929189e4f..187a4865b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -46,37 +46,11 @@ "@babel/highlight" "^7.23.4" chalk "^2.4.2" -"@babel/compat-data@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" - integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== - "@babel/compat-data@^7.25.2": version "7.25.4" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.4.tgz#7d2a80ce229890edcf4cc259d4d696cb4dae2fcb" integrity sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ== -"@babel/core@^7.23.3": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.9.tgz#b028820718000f267870822fec434820e9b1e4d1" - integrity sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.9" - "@babel/parser" "^7.23.9" - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - "@babel/core@^7.24.7", "@babel/core@^7.25.2": version "7.25.2" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.2.tgz#ed8eec275118d7613e77a352894cd12ded8eba77" @@ -135,17 +109,6 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-compilation-targets@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" - integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== - dependencies: - "@babel/compat-data" "^7.23.5" - "@babel/helper-validator-option" "^7.23.5" - browserslist "^4.22.2" - lru-cache "^5.1.1" - semver "^6.3.1" - "@babel/helper-compilation-targets@^7.25.2": version "7.25.2" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz#e1d9410a90974a3a5a66e84ff55ef62e3c02d06c" @@ -220,20 +183,6 @@ "@babel/traverse" "^7.24.8" "@babel/types" "^7.24.8" -"@babel/helper-module-imports@7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" - integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@~7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== - dependencies: - "@babel/types" "^7.22.15" - "@babel/helper-module-imports@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz#f2f980392de5b84c3328fc71d38bd81bbb83042b" @@ -242,16 +191,12 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-transforms@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" - integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== +"@babel/helper-module-imports@~7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" + integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.20" + "@babel/types" "^7.22.15" "@babel/helper-module-transforms@^7.25.2": version "7.25.2" @@ -289,13 +234,6 @@ "@babel/helper-optimise-call-expression" "^7.24.7" "@babel/traverse" "^7.25.0" -"@babel/helper-simple-access@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" - integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== - dependencies: - "@babel/types" "^7.22.5" - "@babel/helper-simple-access@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz#bcade8da3aec8ed16b9c4953b74e506b51b5edb3" @@ -351,25 +289,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== - "@babel/helper-validator-option@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== -"@babel/helpers@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.9.tgz#c3e20bbe7f7a7e10cb9b178384b4affdf5995c7d" - integrity sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ== - dependencies: - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" - "@babel/helpers@^7.25.0": version "7.25.6" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.6.tgz#57ee60141829ba2e102f30711ffe3afab357cc60" @@ -406,16 +330,16 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.21.3", "@babel/parser@^7.22.15": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" - integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== - "@babel/parser@^7.20.15", "@babel/parser@^7.24.4": version "7.24.6" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.6.tgz#5e030f440c3c6c78d195528c3b688b101a365328" integrity sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q== +"@babel/parser@^7.21.3", "@babel/parser@^7.22.15": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" + integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== + "@babel/parser@^7.23.9": version "7.23.9" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" @@ -433,13 +357,6 @@ dependencies: "@babel/types" "^7.25.6" -"@babel/plugin-syntax-jsx@^7.18.6": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918" - integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-jsx@^7.23.3": version "7.23.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" @@ -547,7 +464,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/traverse@^7.25.0", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.4", "@babel/traverse@^7.25.6": +"@babel/traverse@^7.25.0", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.4": version "7.25.6" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.6.tgz#04fad980e444f182ecf1520504941940a90fea41" integrity sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ== @@ -560,7 +477,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0": +"@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== @@ -1346,11 +1263,6 @@ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.25.tgz#f077fdc0b5d0078d30893396ff4827a13f99e817" integrity sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ== -"@popperjs/core@^2.11.8": - version "2.11.8" - resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" - integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== - "@rollup/pluginutils@^5.1.0": version "5.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz#7e53eddc8c7f483a4ad0b94afb1f7f5fd3c771e0" @@ -1527,91 +1439,6 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz#719df7fb41766bc143369eaa0dd56d8dc87c9958" integrity sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg== -"@solidjs/router@^0.14.5": - version "0.14.5" - resolved "https://registry.yarnpkg.com/@solidjs/router/-/router-0.14.5.tgz#d30d4243565062b5cadf24cc5236648d224bc600" - integrity sha512-J8ZMntnkDvNCSO9n4HyhlQlGdxYa1mandQLt5LMd0YiWAXGlYzjj+bB+OVtzsH1woWfoEJlVnBnGkMpf2lY/ig== - -"@suid/base@0.10.1": - version "0.10.1" - resolved "https://registry.yarnpkg.com/@suid/base/-/base-0.10.1.tgz#aa24de31fcd66c5c6b23888f3f48bca3d0d64f0e" - integrity sha512-zP9Ujdd/9AbZnn/kDMC+mMdBrE8i7U4q9sCKwGw3bLx0FQ+utPxRV+9NQ8KLb0q0W5yleAHfjP0nycBAmL+DHQ== - dependencies: - "@popperjs/core" "^2.11.8" - "@suid/css" "0.4.0" - "@suid/system" "0.13.0" - "@suid/types" "0.7.1" - "@suid/utils" "0.10.1" - clsx "^2.1.1" - -"@suid/css@0.4.0": - version "0.4.0" - resolved "https://registry.yarnpkg.com/@suid/css/-/css-0.4.0.tgz#e48bc2172225cf11361cb9568a885bd40f03311f" - integrity sha512-yzHAlf1CVi7n0SvUrMgs8Z49UiS9669+td1w1frekhRQuRbkXhHoyJkvovaDVJlWRmCPA8Q0f1OTr0uDCUg9mQ== - -"@suid/icons-material@^0.8.1": - version "0.8.1" - resolved "https://registry.yarnpkg.com/@suid/icons-material/-/icons-material-0.8.1.tgz#04af9a5921edf7145e38ece5111978ebe5debc32" - integrity sha512-QK1fcIuOKhHaOjT33yuKJSiUtRFVdcVBF9jzlY+xEc3Sw7qW+QpVs1iEPiIccQpZqfKDs48obvFC0alKk5aeCA== - dependencies: - "@suid/material" "0.18.0" - -"@suid/material@0.18.0", "@suid/material@^0.18.0": - version "0.18.0" - resolved "https://registry.yarnpkg.com/@suid/material/-/material-0.18.0.tgz#56f34bcc2b65ec5f1aa2280cb327898a01d08a37" - integrity sha512-rx+CDdu0hy36do1TsfKYxn8VlsGB+mcehzND69i03cGSsfrspToyY6h1TNe9zxv0N9Bf2AbHlcgD/OoPrshOSQ== - dependencies: - "@suid/base" "0.10.1" - "@suid/css" "0.4.0" - "@suid/system" "0.13.0" - "@suid/types" "0.7.1" - "@suid/utils" "0.10.1" - clsx "^2.1.1" - -"@suid/styled-engine@0.8.1": - version "0.8.1" - resolved "https://registry.yarnpkg.com/@suid/styled-engine/-/styled-engine-0.8.1.tgz#ed2a3475bbbfe4df8962c355d242669f11dc8d83" - integrity sha512-teVk82yH1P9Ce1fJcvlwDjjKxrpXL9ecmK5uBuxbNqUh2yHyrXIqw+mnPVzq6KDHQEu5ODDFFqH9KwWLl8DODQ== - dependencies: - "@suid/css" "0.4.0" - "@suid/utils" "0.10.1" - -"@suid/system@0.13.0": - version "0.13.0" - resolved "https://registry.yarnpkg.com/@suid/system/-/system-0.13.0.tgz#4b67eee0abd9f097597cbd9c25b2552aba7b668d" - integrity sha512-TILoCyQBPrnUl4kjOqHxvSLIjC2Z79vLtQ6T/osX0N72s+Q5NmHnKSvwc/tHLfPOCQKsKiEYNhkhikGCJKY/OA== - dependencies: - "@suid/css" "0.4.0" - "@suid/styled-engine" "0.8.1" - "@suid/types" "0.7.1" - "@suid/utils" "0.10.1" - clsx "^2.1.1" - csstype "^3.1.3" - -"@suid/types@0.7.1": - version "0.7.1" - resolved "https://registry.yarnpkg.com/@suid/types/-/types-0.7.1.tgz#8a4ae5077ff7f7d65e44abe1b9cf75bfd051f8c8" - integrity sha512-VPRRMUcWS/IkkFoQa2FHJnhyUrrRs6Sic3rIcuz+EU8DfOMFqhDBZIQkNdeMB+5T8iHN0PtYlW8+uQzxTNJq0Q== - -"@suid/utils@0.10.1": - version "0.10.1" - resolved "https://registry.yarnpkg.com/@suid/utils/-/utils-0.10.1.tgz#b5c702f9b0c902c4d9b6a99e153878d9531c2dce" - integrity sha512-a8jHOL11nUibhGi1TsJKLGsNZ5NdHYwmNTAd3B/Z0TTaxX6Pg6CY3X8jqMWbrrXkHctwKokKEeDkVyrlQ7sP8g== - dependencies: - "@suid/types" "0.7.1" - -"@suid/vite-plugin@^0.3.1": - version "0.3.1" - resolved "https://registry.yarnpkg.com/@suid/vite-plugin/-/vite-plugin-0.3.1.tgz#7d2252c7249ab00db549af0b1724d87ad2dc06ba" - integrity sha512-IXbYxRZr4ie4iCYlqBM2znLV/RKrIT2zpaYYI5k1DbJHXVW5nXniCoii7BlvM2SonOKlsQ6R8CNI2X3bjAmoVQ== - dependencies: - "@babel/generator" "^7.25.6" - "@babel/parser" "^7.25.6" - "@babel/traverse" "^7.25.6" - "@babel/types" "^7.25.6" - "@types/babel__generator" "^7.6.8" - "@types/babel__traverse" "^7.20.6" - "@testing-library/dom@^10.4.0": version "10.4.0" resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-10.4.0.tgz#82a9d9462f11d240ecadbf406607c6ceeeff43a8" @@ -1656,53 +1483,6 @@ resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708" integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw== -"@types/babel__core@^7.20.4": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" - integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== - dependencies: - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.6" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.6.tgz#676f89f67dc8ddaae923f70ebc5f1fa800c031a8" - integrity sha512-66BXMKb/sUWbMdBNdMvajU7i/44RkrA3z/Yt1c7R5xejt8qh84iU54yUWCtm0QwGJlDcf/gg4zd/x4mpLAlb/w== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__generator@^7.6.8": - version "7.6.8" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" - integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.3" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.3.tgz#db9ac539a2fe05cfe9e168b24f360701bde41f5f" - integrity sha512-ciwyCLeuRfxboZ4isgdNZi/tkt06m8Tw6uGbBSBgWrnnZGNXiEyM27xc/PjXGQLqlZ6ylbgHMnm7ccF9tCkOeQ== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*": - version "7.20.3" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.3.tgz#a971aa47441b28ef17884ff945d0551265a2d058" - integrity sha512-Lsh766rGEFbaxMIDH7Qa+Yha8cMVI3qAK6CHt3OR0YfxOIn5Z54iHiyDRycHrBqeIiqGa20Kpsv1cavfBKkRSw== - dependencies: - "@babel/types" "^7.20.7" - -"@types/babel__traverse@^7.20.6": - version "7.20.6" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.6.tgz#8dc9f0ae0f202c08d8d4dab648912c8d6038e3f7" - integrity sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg== - dependencies: - "@babel/types" "^7.20.7" - "@types/cookie@^0.6.0": version "0.6.0" resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.6.0.tgz#eac397f28bf1d6ae0ae081363eca2f425bedf0d5" @@ -2132,19 +1912,6 @@ dependencies: tinyspy "^3.0.0" -"@vitest/ui@^2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/ui/-/ui-2.1.1.tgz#3d2b3c4e2f8f30c3615e731e0c63510799546b94" - integrity sha512-IIxo2LkQDA+1TZdPLYPclzsXukBWd5dX2CKpGqH8CCt8Wh0ZuDn4+vuQ9qlppEju6/igDGzjWF/zyorfsf+nHg== - dependencies: - "@vitest/utils" "2.1.1" - fflate "^0.8.2" - flatted "^3.3.1" - pathe "^1.1.2" - sirv "^2.0.4" - tinyglobby "^0.2.6" - tinyrainbow "^1.2.0" - "@vitest/utils@2.1.1": version "2.1.1" resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-2.1.1.tgz#284d016449ecb4f8704d198d049fde8360cc136e" @@ -2700,29 +2467,11 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -babel-plugin-jsx-dom-expressions@^0.37.17: - version "0.37.17" - resolved "https://registry.yarnpkg.com/babel-plugin-jsx-dom-expressions/-/babel-plugin-jsx-dom-expressions-0.37.17.tgz#3bf0a756e2701e0ea830a95b4f8d7e5b617aabaf" - integrity sha512-1bv8rOTzs6TR3DVyVZ7ElxyPEhnS556FMWRIsB3gBPfkn/cSKaLvXLGk+X1lvI+SzcUo4G+UcmJrn3vr1ig8mQ== - dependencies: - "@babel/helper-module-imports" "7.18.6" - "@babel/plugin-syntax-jsx" "^7.18.6" - "@babel/types" "^7.20.7" - html-entities "2.3.3" - validate-html-nesting "^1.2.1" - babel-plugin-transform-jsbi-to-bigint@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-jsbi-to-bigint/-/babel-plugin-transform-jsbi-to-bigint-1.4.0.tgz#04db5036c7821916c248b90ded792a1272bc9c8d" integrity sha512-59f6ClwQBY/SKMVwKV/xoAqH/gnyZ6C5gSSPsEUCLPvvZULCDSE5Y3T62wjNTbpBcFzh0ReYz2mIe3u44mW9UQ== -babel-preset-solid@^1.8.4: - version "1.8.15" - resolved "https://registry.yarnpkg.com/babel-preset-solid/-/babel-preset-solid-1.8.15.tgz#59a80e7048a6ab7142768de6f7f1f887cfc5fdcc" - integrity sha512-P2yOQbB7Hn/m4YvpXV6ExHIMcgNWXWXcvY4kJzG3yqAB3hKS58OZRsvJ7RObsZWqXRvZTITBIwnpK0BMGu+ZIQ== - dependencies: - babel-plugin-jsx-dom-expressions "^0.37.17" - balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" @@ -2786,16 +2535,6 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.22.2: - version "4.23.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" - integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== - dependencies: - caniuse-lite "^1.0.30001587" - electron-to-chromium "^1.4.668" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" - browserslist@^4.23.1: version "4.23.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.2.tgz#244fe803641f1c19c28c48c4b6ec9736eb3d32ed" @@ -2857,11 +2596,6 @@ camelcase@^6.3.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001587: - version "1.0.30001589" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz#7ad6dba4c9bf6561aec8291976402339dc157dfb" - integrity sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg== - caniuse-lite@^1.0.30001640: version "1.0.30001641" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz#3572862cd18befae3f637f2a1101cc033c6782ac" @@ -2976,11 +2710,6 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" -clsx@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" - integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== - code-block-writer@^11.0.0: version "11.0.3" resolved "https://registry.yarnpkg.com/code-block-writer/-/code-block-writer-11.0.3.tgz#9eec2993edfb79bfae845fbc093758c0a0b73b76" @@ -3120,7 +2849,7 @@ csstype@^3.1.0: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== -csstype@^3.1.1, csstype@^3.1.3: +csstype@^3.1.1: version "3.1.3" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== @@ -3275,11 +3004,6 @@ editorconfig@^1.0.4: minimatch "9.0.1" semver "^7.5.3" -electron-to-chromium@^1.4.668: - version "1.4.681" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.681.tgz#5f23fad8aa7e1f64cbb7dd9d15c7e39a1cd7e6e3" - integrity sha512-1PpuqJUFWoXZ1E54m8bsLPVYwIVCRzvaL+n5cjigGga4z854abDnFRc+cTa2th4S79kyGqya/1xoR7h+Y5G5lg== - electron-to-chromium@^1.4.820: version "1.4.825" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.825.tgz#2d9c3d1eb81a67ecea0c06bcf70740b00ba52718" @@ -3711,16 +3435,6 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" -fdir@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.3.0.tgz#fcca5a23ea20e767b15e081ee13b3e6488ee0bb0" - integrity sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ== - -fflate@^0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/fflate/-/fflate-0.8.2.tgz#fc8631f5347812ad6028bbe4a2308b2792aa1dea" - integrity sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A== - file-entry-cache@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" @@ -3764,11 +3478,6 @@ flatted@^3.2.9: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf" integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== -flatted@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" - integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== - follow-redirects@^1.0.0: version "1.15.6" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" @@ -4080,11 +3789,6 @@ html-encoding-sniffer@^4.0.0: dependencies: whatwg-encoding "^3.1.1" -html-entities@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" - integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== - html-tags@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.3.1.tgz#a04026a18c882e4bba8a01a3d39cfe465d40b5ce" @@ -4314,11 +4018,6 @@ is-subdir@^1.1.1: dependencies: better-path-resolve "1.0.0" -is-what@^4.1.8: - version "4.1.15" - resolved "https://registry.yarnpkg.com/is-what/-/is-what-4.1.15.tgz#de43a81090417a425942d67b1ae86e7fae2eee0e" - integrity sha512-uKua1wfy3Yt+YqsD6mTUEa2zSi3G1oPlqTflgaPJ7z63vUGN5pxFpnQfeSLMFnJDEsdvOtkp1rUWkYjB4YfhgA== - is-windows@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -4673,13 +4372,6 @@ memorystream@^0.3.1: resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== -merge-anything@^5.1.7: - version "5.1.7" - resolved "https://registry.yarnpkg.com/merge-anything/-/merge-anything-5.1.7.tgz#94f364d2b0cf21ac76067b5120e429353b3525d7" - integrity sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ== - dependencies: - is-what "^4.1.8" - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -5314,11 +5006,6 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -picomatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" - integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== - pidtree@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" @@ -5859,15 +5546,6 @@ solid-js@^1.9.1: seroval "^1.1.0" seroval-plugins "^1.1.0" -solid-refresh@^0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/solid-refresh/-/solid-refresh-0.6.3.tgz#d23ef80f04e177619c9234a809c573cb16360627" - integrity sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA== - dependencies: - "@babel/generator" "^7.23.6" - "@babel/helper-module-imports" "^7.22.15" - "@babel/types" "^7.23.6" - "source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" @@ -6121,14 +5799,6 @@ tinyexec@^0.3.0: resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.0.tgz#ed60cfce19c17799d4a241e06b31b0ec2bee69e6" integrity sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg== -tinyglobby@^0.2.6: - version "0.2.6" - resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.6.tgz#950baf1462d0c0b443bc3d754d0d39c2e589aaae" - integrity sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g== - dependencies: - fdir "^6.3.0" - picomatch "^4.0.2" - tinypool@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.0.0.tgz#a68965218e04f4ad9de037d2a1cd63cda9afb238" @@ -6475,14 +6145,6 @@ untildify@^4.0.0: resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== -update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - update-browserslist-db@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" @@ -6516,11 +6178,6 @@ util-deprecate@^1.0.2: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -validate-html-nesting@^1.2.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/validate-html-nesting/-/validate-html-nesting-1.2.2.tgz#2d74de14b598a0de671fad01bd71deabb93b8aca" - integrity sha512-hGdgQozCsQJMyfK5urgFcWEqsSSrK63Awe0t/IMR0bZ0QMtnuaiHzThW81guu3qx9abLi99NEuiaN6P9gVYsNg== - vfile-message@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-4.0.2.tgz#c883c9f677c72c166362fd635f21fc165a7d1181" @@ -6580,18 +6237,6 @@ vite-plugin-no-bundle@^4.0.0: fast-glob "^3.3.2" micromatch "^4.0.5" -vite-plugin-solid@^2.10.2: - version "2.10.2" - resolved "https://registry.yarnpkg.com/vite-plugin-solid/-/vite-plugin-solid-2.10.2.tgz#180f5ec9d8ac03d19160dd5728b313fe9b62ee0d" - integrity sha512-AOEtwMe2baBSXMXdo+BUwECC8IFHcKS6WQV/1NEd+Q7vHPap5fmIhLcAzr+DUJ04/KHx/1UBU0l1/GWP+rMAPQ== - dependencies: - "@babel/core" "^7.23.3" - "@types/babel__core" "^7.20.4" - babel-preset-solid "^1.8.4" - merge-anything "^5.1.7" - solid-refresh "^0.6.3" - vitefu "^0.2.5" - vite-plugin-static-copy@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/vite-plugin-static-copy/-/vite-plugin-static-copy-1.0.6.tgz#ff457c16e8cfa564472aafd1698790ac89d05508" @@ -6613,11 +6258,6 @@ vite@^5.0.0, vite@^5.4.8: optionalDependencies: fsevents "~2.3.3" -vitefu@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/vitefu/-/vitefu-0.2.5.tgz#c1b93c377fbdd3e5ddd69840ea3aa70b40d90969" - integrity sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q== - vitest@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/vitest/-/vitest-2.1.1.tgz#24a6f6f5d894509f10685b82de008c507faacbb1" From 7ea1dc751efad671a59eeb3c2a6a4d6e9d8bab31 Mon Sep 17 00:00:00 2001 From: eyelidlessness Date: Mon, 16 Dec 2024 12:07:12 -0800 Subject: [PATCH 2/6] Bump Node version matrix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Manually verified on 22.12.0 (in case `tree-sitter` et al have issues): - clean install - monorepo-wide build - monorepo-wide test (partial run of flaky `web-forms` e2e tests, accepting that they were already flaky and shouldn’t be otherwise affected by this change) --- .github/workflows/ci.yml | 48 ++++++++++++------------- package.json | 4 +-- packages/common/package.json | 2 +- packages/scenario/package.json | 2 +- packages/tree-sitter-xpath/package.json | 2 +- packages/web-forms/package.json | 2 +- packages/xforms-engine/package.json | 2 +- packages/xpath/package.json | 2 +- 8 files changed, 32 insertions(+), 32 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7108ab30d..9eeaa65f1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,7 +29,7 @@ jobs: strategy: matrix: - node-version: ['18.20.4', '20.17.0', '22.9.0'] + node-version: ['18.20.5', '20.18.1', '22.12.0'] steps: - uses: 'actions/checkout@v4' @@ -83,7 +83,7 @@ jobs: strategy: matrix: - node-version: ['22.9.0'] + node-version: ['22.12.0'] steps: - uses: 'actions/checkout@v4' @@ -130,16 +130,16 @@ jobs: strategy: matrix: target: ['Node'] - node-version: ['18.20.4', '20.17.0', '22.9.0'] + node-version: ['18.20.5', '20.18.1', '22.12.0'] include: - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: chromium - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: firefox - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: webkit steps: @@ -195,16 +195,16 @@ jobs: strategy: matrix: target: ['Node'] - node-version: ['18.20.4', '20.17.0', '22.9.0'] + node-version: ['18.20.5', '20.18.1', '22.12.0'] include: - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: chromium - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: firefox - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: webkit steps: @@ -260,16 +260,16 @@ jobs: strategy: matrix: target: ['Node'] - node-version: ['18.20.4', '20.17.0', '22.9.0'] + node-version: ['18.20.5', '20.18.1', '22.12.0'] include: - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: chromium - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: firefox - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: webkit steps: @@ -325,16 +325,16 @@ jobs: strategy: matrix: target: ['Node'] - node-version: ['18.20.4', '20.17.0', '22.9.0'] + node-version: ['18.20.5', '20.18.1', '22.12.0'] include: - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: chromium - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: firefox - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: webkit steps: @@ -395,7 +395,7 @@ jobs: strategy: matrix: - node-version: ['18.20.4', '20.17.0', '22.9.0'] + node-version: ['18.20.5', '20.18.1', '22.12.0'] steps: - uses: 'actions/checkout@v4' @@ -440,16 +440,16 @@ jobs: strategy: matrix: target: ['Node'] - node-version: ['18.20.4', '20.17.0', '22.9.0'] + node-version: ['18.20.5', '20.18.1', '22.12.0'] include: - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: chromium - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: firefox - target: 'Web' - node-version: '22.9.0' + node-version: '22.12.0' browser: webkit steps: @@ -503,7 +503,7 @@ jobs: - if: ${{ matrix.target == 'Web' && matrix.browser != 'webkit' }} run: 'yarn workspace @getodk/web-forms test-browser:${{ matrix.browser }}' - - if: ${{ matrix.node-version == '22.9.0' && matrix.target == 'Node' }} + - if: ${{ matrix.node-version == '22.12.0' && matrix.target == 'Node' }} uses: actions/upload-artifact@v4 with: name: dist-demo diff --git a/package.json b/package.json index 65ed897c7..959045e96 100644 --- a/package.json +++ b/package.json @@ -8,11 +8,11 @@ "type": "module", "version": "0.1.0", "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", + "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "volta": { - "node": "22.9.0", + "node": "22.12.0", "yarn": "1.22.22" }, "packageManager": "yarn@1.22.22", diff --git a/packages/common/package.json b/packages/common/package.json index ca7fd013e..5f3eb2a9f 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -35,7 +35,7 @@ "README.md" ], "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", + "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "scripts": { diff --git a/packages/scenario/package.json b/packages/scenario/package.json index 58e2069df..cc90efacb 100644 --- a/packages/scenario/package.json +++ b/packages/scenario/package.json @@ -26,7 +26,7 @@ "./types/do-not-import.d.ts" ], "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", + "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "scripts": { diff --git a/packages/tree-sitter-xpath/package.json b/packages/tree-sitter-xpath/package.json index ac6b01c36..9483157ea 100644 --- a/packages/tree-sitter-xpath/package.json +++ b/packages/tree-sitter-xpath/package.json @@ -20,7 +20,7 @@ "tree-sitter-xpath.wasm" ], "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", + "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "scripts": { diff --git a/packages/web-forms/package.json b/packages/web-forms/package.json index ddb30abbd..d7eee0117 100644 --- a/packages/web-forms/package.json +++ b/packages/web-forms/package.json @@ -23,7 +23,7 @@ "README.md" ], "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", + "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "scripts": { diff --git a/packages/xforms-engine/package.json b/packages/xforms-engine/package.json index b9a3b515b..3972b9818 100644 --- a/packages/xforms-engine/package.json +++ b/packages/xforms-engine/package.json @@ -29,7 +29,7 @@ "README.md" ], "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", + "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "scripts": { diff --git a/packages/xpath/package.json b/packages/xpath/package.json index 8bdf984b6..719cda7c6 100644 --- a/packages/xpath/package.json +++ b/packages/xpath/package.json @@ -31,7 +31,7 @@ "README.md" ], "engines": { - "node": "^18.20.4 || ^20.17.0 || ^22.9.0", + "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "scripts": { From be174df9984438e4f769366f436693d4186c2251 Mon Sep 17 00:00:00 2001 From: eyelidlessness Date: Wed, 18 Dec 2024 09:56:36 -0800 Subject: [PATCH 3/6] Update tree-sitter (etc) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This change updates tree-sitter and related dependencies, and accounts for the current iteration of churn in various special case details of how a tree-sitter project is supposed to work. On the bright side, it turns out things got a lot simpler this time! - The structure of the `@getodk/tree-sitter-xpath` package is now much more like the other packages. This is largely because the assumptions made by `tree-sitter-cli` are based around a special `tree-sitter.json` file, rather than overloading `package.json` with tree-sitter specific details. - We no longer (need to) build for Node. Since all of our downstream packages consume the parser as WASM, we benefit from a simpler and (MUCH) faster build step. Note that this may technically be a breaking change (though I’m not sure that it is, since I’m pretty sure we never published the Node bindings, even when they were built). - Many of the extraneous build artifacts are no longer produced, either because they’re excluded in `tree-sitter.json` or because we are no longer building for Node at all. This allows us to significantly scale down custom build scripting, as well as tree-sitter specific entries in .gitignore/.gitattributes. - The `tree-sitter` internal build tooling no longer uses `nan`, which also allows us to remove `nan` and `node-gyp` dependencies, and in so doing eliminates another often-fussy thing to check in post-release dep updates. --- .gitattributes | 10 - .github/workflows/ci.yml | 48 --- .gitignore | 98 ----- eslint.config.js | 1 + package.json | 4 +- packages/tree-sitter-xpath/index.d.ts | 2 +- packages/tree-sitter-xpath/package.json | 40 +- .../scripts/build/parser-types.mjs | 14 +- .../scripts/build/post-node.mjs | 6 - .../tree-sitter-xpath/scripts/build/post.mjs | 24 -- .../tree-sitter-xpath/scripts/build/pre.mjs | 70 ++- .../scripts/build/shared.mjs | 84 ---- .../tree-sitter-xpath/{ => src}/grammar.ts | 0 packages/tree-sitter-xpath/tree-sitter.json | 34 ++ packages/tree-sitter-xpath/tsconfig.json | 2 +- packages/tree-sitter-xpath/vite.config.mts | 43 ++ packages/tree-sitter-xpath/vite.config.ts | 18 - packages/xpath/package.json | 2 +- packages/xpath/src/expressionParser.ts | 2 +- tsconfig.tools.json | 1 + yarn.lock | 408 ++---------------- 21 files changed, 202 insertions(+), 709 deletions(-) delete mode 100644 packages/tree-sitter-xpath/scripts/build/post-node.mjs delete mode 100644 packages/tree-sitter-xpath/scripts/build/post.mjs delete mode 100644 packages/tree-sitter-xpath/scripts/build/shared.mjs rename packages/tree-sitter-xpath/{ => src}/grammar.ts (100%) create mode 100644 packages/tree-sitter-xpath/tree-sitter.json create mode 100644 packages/tree-sitter-xpath/vite.config.mts delete mode 100644 packages/tree-sitter-xpath/vite.config.ts diff --git a/.gitattributes b/.gitattributes index 9c2fd17c0..83b751ecb 100644 --- a/.gitattributes +++ b/.gitattributes @@ -3,13 +3,3 @@ *.jpg -text *.xlsx binary - -packages/tree-sitter-xpath/src/*.json linguist-generated -packages/tree-sitter-xpath/src/parser.c linguist-generated -packages/tree-sitter-xpath/src/tree_sitter/* linguist-generated - -packages/tree-sitter-xpath/bindings/** linguist-generated -packages/tree-sitter-xpath/binding.gyp linguist-generated -packages/tree-sitter-xpath/setup.py linguist-generated -packages/tree-sitter-xpath/Makefile linguist-generated -packages/tree-sitter-xpath/Package.swift linguist-generated diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9eeaa65f1..c6e2ce486 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -58,12 +58,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} # `@getodk/xpath` tests (currently) expect this time zone @@ -109,12 +103,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} fail-on-cache-miss: true @@ -166,12 +154,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} fail-on-cache-miss: true @@ -231,12 +213,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} fail-on-cache-miss: true @@ -296,12 +272,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} fail-on-cache-miss: true @@ -361,12 +331,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} fail-on-cache-miss: true @@ -421,12 +385,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} fail-on-cache-miss: true @@ -476,12 +434,6 @@ jobs: examples/*/dist packages/*/dist packages/web-forms/dist-demo - packages/tree-sitter-xpath/grammar.js - packages/tree-sitter-xpath/src/grammar.json - packages/tree-sitter-xpath/src/parser.c - packages/tree-sitter-xpath/src/tree_sitter/parser.h - packages/tree-sitter-xpath/tree-sitter-xpath.wasm - packages/tree-sitter-xpath/types key: build-${{ matrix.node-version }}-${{ github.sha }} fail-on-cache-miss: true diff --git a/.gitignore b/.gitignore index 4c40a2fcc..34c851cca 100644 --- a/.gitignore +++ b/.gitignore @@ -25,104 +25,6 @@ packages/**/dist # Generated documentation packages/*/api-docs -## ============================================================================ -## Specific to tree-sitter and/or @getodk/tree-sitter-xpath -## -## The tree-sitter-xpath build process generates a slew of files, many of -## which we ignore. This section includes two sub-sections: -## -## 1. A set of ignores derived from tree-sitter's own generated .gitignore -## file, with its patterns adjusted to their place in the -## tree-sitter-xpath package directory. -## -## 2. A set of additive ignore patterns which are not addressed by those -## derived patterns, but which we also regard as either build artifacts -## or detritus left behind in their creation. -## -## Not specified here: a few **other files** are generated by tree-sitter -## which are not appropriate to ignore, because their presence would cause -## conflicts with editor and/or version control. For more detail, see: -## -## ./packages/tree-sitter-xpath/scripts/build/shared.mjs -## ============================================================================ - -# ---------------------------------------------------------------------------- -# 1. Derived from the .gitignore generated by tree-sitter -# ---------------------------------------------------------------------------- - -# Rust artifacts -packages/tree-sitter-xpath/Cargo.lock -packages/tree-sitter-xpath/target/ - -# Node artifacts -packages/tree-sitter-xpath/build/ -packages/tree-sitter-xpath/prebuilds/ -packages/tree-sitter-xpath/node_modules/ -packages/tree-sitter-xpath/*.tgz - -# Swift artifacts -packages/tree-sitter-xpath/.build/ - -# Go artifacts -packages/tree-sitter-xpath/go.mod -packages/tree-sitter-xpath/go.sum -packages/tree-sitter-xpath/_obj/ - -# Python artifacts -packages/tree-sitter-xpath/.venv/ -packages/tree-sitter-xpath/dist/ -packages/tree-sitter-xpath/*.egg-info -packages/tree-sitter-xpath/*.whl - -# C artifacts -packages/tree-sitter-xpath/*.a -packages/tree-sitter-xpath/*.so -packages/tree-sitter-xpath/*.so.* -packages/tree-sitter-xpath/*.dylib -packages/tree-sitter-xpath/*.dll -packages/tree-sitter-xpath/*.pc - -# Example dirs -packages/tree-sitter-xpath/examples/*/ - -# Grammar volatiles -packages/tree-sitter-xpath/*.wasm -packages/tree-sitter-xpath/*.obj -packages/tree-sitter-xpath/*.o - -# ---------------------------------------------------------------------------- -# 2. Additional ignore patterns beyond those generated by tree-sitter -# -# Note that some of these may be redundant to those above. Most of these -# patterns predate tree-sitter's generation of .gitignore. Keeping them intact -# may make it easier to untangle this nonsense if tree-sitter stops generating -# such files on every build. -# ---------------------------------------------------------------------------- - -packages/tree-sitter-xpath/bindings/ -packages/tree-sitter-xpath/build/ -packages/tree-sitter-xpath/src/tree_sitter -packages/tree-sitter-xpath/src/grammar.json -packages/tree-sitter-xpath/src/node-types.json -packages/tree-sitter-xpath/src/parser.c -packages/tree-sitter-xpath/target/ -packages/tree-sitter-xpath/types/tree-sitter-xpath-parser.d.ts -packages/tree-sitter-xpath/binding.gyp -packages/tree-sitter-xpath/Cargo.lock -packages/tree-sitter-xpath/Cargo.toml -packages/tree-sitter-xpath/grammar.js -packages/tree-sitter-xpath/grammar.js.map -packages/tree-sitter-xpath/Makefile -packages/tree-sitter-xpath/Package.swift -packages/tree-sitter-xpath/pyproject.toml -packages/tree-sitter-xpath/setup.py -packages/tree-sitter-xpath/tree-sitter-xpath.wasm - - -## ============================================================================ -## End of patterns specific to tree-sitter and/or @getodk/tree-sitter-xpath -## ============================================================================ - # Test artifcats ## Playwright, apparently packages/*/playwright-report diff --git a/eslint.config.js b/eslint.config.js index cae01e661..b9b89f244 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -407,6 +407,7 @@ export default tseslint.config( 'packages/*/playwright.config.ts', 'packages/*/vite.config.ts', 'packages/*/vitest.config.ts', + 'packages/tree-sitter-xpath/vite.config.mts', 'packages/xforms-engine/vite.*.config.ts', 'packages/*/tools/**/*', 'packages/tree-sitter-xpath/scripts/build/*.mjs', diff --git a/package.json b/package.json index 959045e96..ab0e1c8e3 100644 --- a/package.json +++ b/package.json @@ -57,8 +57,6 @@ "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-prettier-vue": "^5.0.0", "eslint-plugin-vue": "^9.28.0", - "nan": "2.20.0", - "node-gyp": "10.2.0", "npm-run-all2": "^6.2.3", "only-allow": "^1.2.1", "organize-imports-cli": "^0.10.0", @@ -71,6 +69,6 @@ "vue-tsc": "^2.0.19" }, "resolutions": { - "**/tree-sitter": "0.21.1" + "**/tree-sitter": "0.22.1" } } diff --git a/packages/tree-sitter-xpath/index.d.ts b/packages/tree-sitter-xpath/index.d.ts index 748223dc1..5532cb72f 100644 --- a/packages/tree-sitter-xpath/index.d.ts +++ b/packages/tree-sitter-xpath/index.d.ts @@ -1,3 +1,3 @@ -/// +/// export * from '@getodk/tree-sitter-xpath/parser'; diff --git a/packages/tree-sitter-xpath/package.json b/packages/tree-sitter-xpath/package.json index 9483157ea..47182e575 100644 --- a/packages/tree-sitter-xpath/package.json +++ b/packages/tree-sitter-xpath/package.json @@ -14,48 +14,38 @@ "homepage": "https://getodk.org/", "files": [ "README.md", - "grammar.js", - "index.d.ts", - "types/tree-sitter-xpath-parser.d.ts", - "tree-sitter-xpath.wasm" + "dist/grammar.js", + "dist/tree-sitter-xpath-parser.d.ts", + "dist/tree-sitter-xpath.wasm", + "index.d.ts" ], "engines": { "node": "^18.20.5 || ^20.18.1 || ^22.12.0", "yarn": "1.22.22" }, "scripts": { - "build": "yarn build:pre && yarn build:js && yarn build:node && yarn build:parser-types && yarn build:wasm && yarn build:post", + "build": "npm-run-all -nl build:*", "build:pre": "node ./scripts/build/pre.mjs", - "build:node": "tree-sitter generate && node-gyp rebuild && node ./scripts/build/post-node.mjs", - "build:post": "node ./scripts/build/post.mjs", "build:js": "vite build", + "build:tree-sitter": "cd dist && tree-sitter generate && tree-sitter build --wasm", "build:parser-types": "node ./scripts/build/parser-types.mjs", - "build:wasm": "tree-sitter build --wasm", - "install": "true # Prevent invoking `node-gyp rebuild` on `yarn install`", "test": "npm-run-all -nl test:*", "test:types": "tsc --project ./tsconfig.json", - "test:grammar": "tree-sitter test" + "test:grammar": "tree-sitter test --wasm" }, "devDependencies": { "@asgerf/dts-tree-sitter": "^0.1.0", - "nan": "2.20.0", - "node-gyp": "10.2.0", - "tree-sitter": "0.21.1", - "tree-sitter-cli": "0.23.0", + "tree-sitter": "0.22.1", + "tree-sitter-cli": "0.24.5", "vite": "^5.4.8", - "web-tree-sitter": "0.23.0" + "vite-plugin-static-copy": "^1.0.6", + "web-tree-sitter": "0.24.5" }, "peerDependencies": { - "web-tree-sitter": "0.23.0" + "web-tree-sitter": "0.24.5" }, "resolutions": { - "**/tree-sitter": "0.21.1", - "@asgerf/dts-tree-sitter/tree-sitter": "0.21.1" - }, - "tree-sitter": [ - { - "scope": "source.xpath", - "injection-regex": "^xpath$" - } - ] + "**/tree-sitter": "0.22.1", + "@asgerf/dts-tree-sitter/tree-sitter": "0.22.1" + } } diff --git a/packages/tree-sitter-xpath/scripts/build/parser-types.mjs b/packages/tree-sitter-xpath/scripts/build/parser-types.mjs index ce63157da..540ffaf88 100755 --- a/packages/tree-sitter-xpath/scripts/build/parser-types.mjs +++ b/packages/tree-sitter-xpath/scripts/build/parser-types.mjs @@ -1,16 +1,19 @@ // @ts-check import { spawnSync } from 'node:child_process'; -import { mkdirSync, writeFileSync } from 'node:fs'; +import { writeFileSync } from 'node:fs'; import { resolve as resolvePath } from 'node:path'; const CWD = process.cwd(); +const distPath = resolvePath(CWD, 'dist'); const baseTypeGeneratorPath = resolvePath( CWD, '../../node_modules/@asgerf/dts-tree-sitter/build/src/index.js' ); -const baseGeneratedTypes = spawnSync('node', [baseTypeGeneratorPath, CWD]).stdout.toString('utf-8'); +const baseGeneratedTypes = spawnSync('node', [baseTypeGeneratorPath, distPath]).stdout.toString( + 'utf-8' +); const correctedTypes = baseGeneratedTypes // Replace broken interface constructor signatures with constructor declarations @@ -30,7 +33,6 @@ const wrappedTypes = [ '', ].join('\n'); -mkdirSync('./types', { - recursive: true, -}); -writeFileSync('./types/tree-sitter-xpath-parser.d.ts', wrappedTypes); +const outPath = resolvePath(distPath, 'tree-sitter-xpath-parser.d.ts'); + +writeFileSync(outPath, wrappedTypes); diff --git a/packages/tree-sitter-xpath/scripts/build/post-node.mjs b/packages/tree-sitter-xpath/scripts/build/post-node.mjs deleted file mode 100644 index 2b874fec4..000000000 --- a/packages/tree-sitter-xpath/scripts/build/post-node.mjs +++ /dev/null @@ -1,6 +0,0 @@ -// @ts-check - -import { checkTreeSitterVersion, restorePackageJSON } from './shared.mjs'; - -checkTreeSitterVersion(); -restorePackageJSON(); diff --git a/packages/tree-sitter-xpath/scripts/build/post.mjs b/packages/tree-sitter-xpath/scripts/build/post.mjs deleted file mode 100644 index 0912e4a37..000000000 --- a/packages/tree-sitter-xpath/scripts/build/post.mjs +++ /dev/null @@ -1,24 +0,0 @@ -// @ts-check - -import { checkTreeSitterVersion, removeFiles } from './shared.mjs'; - -checkTreeSitterVersion(); - -/** - * tree-sitter generates a lot of files when generating and building the various - * artifacts from a grammar definition. Some of those files are ignored in the - * monorepo root level `.gitignore`. As of the latest version (@see - * {@link EXPECTED_TREE_SITTER_VERSION}), some of the generated files **should - * not** be ignored, as their presence would still affect other behaviors (such - * as editor configuration and version control). - * - * We remove these files as part of cleanup at the end of the build process. - */ -// prettier-ignore -const extraneousGeneratedFiles = [ - '.editorconfig', - '.gitattributes', - '.gitignore', -]; - -removeFiles(extraneousGeneratedFiles); diff --git a/packages/tree-sitter-xpath/scripts/build/pre.mjs b/packages/tree-sitter-xpath/scripts/build/pre.mjs index 6db3fab45..546461365 100644 --- a/packages/tree-sitter-xpath/scripts/build/pre.mjs +++ b/packages/tree-sitter-xpath/scripts/build/pre.mjs @@ -1,22 +1,52 @@ -import { backUpPackageJSON, checkTreeSitterVersion, removeFiles } from './shared.mjs'; +// @ts-check -checkTreeSitterVersion(); +import assert from 'node:assert'; +import { createRequire } from 'node:module'; + +/** + * To revisit on updates to the `tree-sitter` dependency: did tree-sitter's + * build reintroduce extraneous build artifacts? If so, we may once again need + * to account for that by doing one or more of the following: + * + * - adding specific artifacts and/or paths to .gitignore (at the monorepo root) + * - referencing specific artifacts as generated in .gitattributes (also at the + * monorepo root) + * - reintroducing scripting to clean up artifacts which cannot reasonably be + * handled by .gitignore + */ +const EXPECTED_TREE_SITTER_VERSION = '0.22.1'; + +const INVALID_TREE_SITTER_VERSION_MSG = ` +The version of tree-sitter has been updated. Revisit the necessity and/or +details of this script! See additional detail where this assertion failed. +`; + +/** + * @return {void} + */ +const checkTreeSitterVersion = () => { + const require = createRequire(import.meta.url); + + /** @type {typeof import('../../package.json')} */ + // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment + const pkg = require('../../package.json'); + const treeSitterVersion = pkg.devDependencies['tree-sitter']; + + assert(treeSitterVersion === EXPECTED_TREE_SITTER_VERSION, INVALID_TREE_SITTER_VERSION_MSG); +}; -const buildArtifacts = [ - 'bindings', - 'build', - 'src/tree-sitter', - 'src/grammar.json', - 'src/node-types.json', - 'src/parser.c', - 'target', - 'types/tree-sitter-xpath-parser.d.ts', - 'binding.gyp', - 'Cargo.toml', - 'go.mod', - 'grammar.js', - 'grammar.js.map', -]; - -removeFiles(buildArtifacts); -backUpPackageJSON(); +const INVALID_BASE_PATH_MSG = ` +This script should be run with the tree-sitter-xpath package as its +current working directory. In typical usage, it will be run as a subtask +of normal build processes. You most likely want to run one of the following +from the monorepo root: + +- yarn build --force +- yarn workspace @getodk/tree-sitter-xpath build +`.trim(); + +const packageBasePath = process.cwd(); + +assert(packageBasePath.endsWith('/tree-sitter-xpath'), INVALID_BASE_PATH_MSG); + +checkTreeSitterVersion(); diff --git a/packages/tree-sitter-xpath/scripts/build/shared.mjs b/packages/tree-sitter-xpath/scripts/build/shared.mjs deleted file mode 100644 index 25cfa8f1e..000000000 --- a/packages/tree-sitter-xpath/scripts/build/shared.mjs +++ /dev/null @@ -1,84 +0,0 @@ -// @ts-check - -import assert from 'node:assert'; -import { readFileSync, writeFileSync } from 'node:fs'; -import { createRequire } from 'node:module'; -import { resolve as resolvePath } from 'node:path'; -import { rimrafSync } from 'rimraf'; - -/** - * To revisit on updates to the `tree-sitter` dependency: - * - * 1. Does it still generate the files specified in - * {@link extraneousGeneratedFiles}? If not, this script may be unnecessary! - * - * 2. If it does, determine whether there are changes which should be propagated - * to one of these files at the project monorepo root: - * - * - .gitattributes - * - .gitignore - * - * 3. There is corresponding commentary in the top-level .gitignore file which - * may need to be updated if any of the above changes invalidate it. - */ -const EXPECTED_TREE_SITTER_VERSION = '0.21.1'; - -const INVALID_TREE_SITTER_VERSION_MSG = ` -The version of tree-sitter has been updated. Revisit the necessity and/or -details of this script! See additional detail where this assertion failed. -`; - -/** - * @return {void} - */ -export const checkTreeSitterVersion = () => { - const require = createRequire(import.meta.url); - - /** @type {typeof import('../../package.json')} */ - // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment - const pkg = require('../../package.json'); - const treeSitterVersion = pkg.devDependencies['tree-sitter']; - - assert(treeSitterVersion === EXPECTED_TREE_SITTER_VERSION, INVALID_TREE_SITTER_VERSION_MSG); -}; - -const INVALID_BASE_PATH_MSG = ` -This script should be run with the tree-sitter-xpath package as its -current working directory. In typical usage, it will be run as a subtask -of normal build processes. You most likely want to run one of the following -from the monorepo root: - -- yarn build --force -- yarn workspace @getodk/tree-sitter-xpath build -`.trim(); - -const packageBasePath = process.cwd(); - -assert(packageBasePath.endsWith('/tree-sitter-xpath'), INVALID_BASE_PATH_MSG); - -/** - * @param {readonly string[]} paths relative to package - */ -export const removeFiles = (paths) => { - for (const relativePath of paths) { - const absolutePath = resolvePath(packageBasePath, relativePath); - - rimrafSync(absolutePath); - } -}; - -const PACKAGE_JSON_PATH = resolvePath(packageBasePath, 'package.json'); -const PACKAGE_JSON_BACKUP_PATH = resolvePath(packageBasePath, 'package.json.backup'); - -export const backUpPackageJSON = () => { - const packageJSON = readFileSync(PACKAGE_JSON_PATH); - - writeFileSync(PACKAGE_JSON_BACKUP_PATH, packageJSON); -}; - -export const restorePackageJSON = () => { - const backupJSON = readFileSync(PACKAGE_JSON_BACKUP_PATH); - - writeFileSync(PACKAGE_JSON_PATH, backupJSON); - rimrafSync(PACKAGE_JSON_BACKUP_PATH); -}; diff --git a/packages/tree-sitter-xpath/grammar.ts b/packages/tree-sitter-xpath/src/grammar.ts similarity index 100% rename from packages/tree-sitter-xpath/grammar.ts rename to packages/tree-sitter-xpath/src/grammar.ts diff --git a/packages/tree-sitter-xpath/tree-sitter.json b/packages/tree-sitter-xpath/tree-sitter.json new file mode 100644 index 000000000..14ab309a1 --- /dev/null +++ b/packages/tree-sitter-xpath/tree-sitter.json @@ -0,0 +1,34 @@ +{ + "$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/config.schema.json", + "grammars": [ + { + "name": "@getodk/xpath", + "camelcase": "GetODKXPath", + "scope": "source.xpath", + "path": "./dist", + "file-types": null, + "injection-regex": "^xpath$" + } + ], + "metadata": { + "version": "0.1.2", + "license": "Apache-2.0", + "description": "XPath grammar for tree-sitter", + "authors": [ + { + "name": "getodk" + } + ], + "links": { + "repository": "https://github.com/getodk/web-forms" + } + }, + "bindings": { + "c": true, + "go": false, + "node": true, + "python": false, + "rust": true, + "swift": false + } +} diff --git a/packages/tree-sitter-xpath/tsconfig.json b/packages/tree-sitter-xpath/tsconfig.json index 9c14cf3c5..d543fdb14 100644 --- a/packages/tree-sitter-xpath/tsconfig.json +++ b/packages/tree-sitter-xpath/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "../../tsconfig.json", - "include": ["grammar.ts", "scripts/**/*.mjs", "test/**/*.test.ts"], + "include": ["src/grammar.ts", "scripts/**/*.mjs", "test/**/*.test.ts"], "compilerOptions": { "esModuleInterop": true, "module": "ESNext", diff --git a/packages/tree-sitter-xpath/vite.config.mts b/packages/tree-sitter-xpath/vite.config.mts new file mode 100644 index 000000000..e7e8e2570 --- /dev/null +++ b/packages/tree-sitter-xpath/vite.config.mts @@ -0,0 +1,43 @@ +import { defineConfig } from 'vite'; +import { viteStaticCopy } from 'vite-plugin-static-copy'; + +export default defineConfig({ + build: { + lib: { + entry: './src/grammar.ts', + fileName: 'grammar', + formats: ['cjs'], + name: '@getodk/tree-sitter-xpath', + }, + emptyOutDir: true, + outDir: './dist', + minify: false, + sourcemap: true, + target: 'modules', + }, + plugins: [ + viteStaticCopy({ + targets: [ + // Copies the top-level `tree-sitter.json` into Vite build directory, + // which is then used by `tree-sitter`'s own build process. The + // resulting copy is ephemeral: it is _only used for that next build + // step_. Importantly, that means it is **not used for testing**. + { + src: 'tree-sitter.json', + dest: '', + transform: (content) => { + // The top-level `tree-sitter.json` serves two purposes: + // + // 1. To produce a copy for build (as described above) + // 2. As metadata for the `tree-sitter test` command, which needs + // to reference the same `grammar.js` built by this Vite config. + // + // This replacement ensures that both resulting `tree-siter.json` + // files reference the same `grammar.js`. + return content.replace('"path": "./dist",', '"path": ".",'); + }, + }, + ], + }), + ], +}); diff --git a/packages/tree-sitter-xpath/vite.config.ts b/packages/tree-sitter-xpath/vite.config.ts deleted file mode 100644 index 085c38267..000000000 --- a/packages/tree-sitter-xpath/vite.config.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { defineConfig } from 'vite'; - -export default defineConfig({ - build: { - lib: { - entry: './grammar.ts', - fileName: 'grammar', - formats: ['cjs'], - name: '@getodk/tree-sitter-xpath', - }, - - emptyOutDir: false, - outDir: '.', - minify: true, - sourcemap: true, - target: 'modules', - }, -}); diff --git a/packages/xpath/package.json b/packages/xpath/package.json index 719cda7c6..a2863171c 100644 --- a/packages/xpath/package.json +++ b/packages/xpath/package.json @@ -72,6 +72,6 @@ "vite-plugin-dts": "^4.2.2", "vite-plugin-no-bundle": "^4.0.0", "vitest": "^2.1.1", - "web-tree-sitter": "0.23.0" + "web-tree-sitter": "0.24.5" } } diff --git a/packages/xpath/src/expressionParser.ts b/packages/xpath/src/expressionParser.ts index f6c1b7fa7..50cfb2e3e 100644 --- a/packages/xpath/src/expressionParser.ts +++ b/packages/xpath/src/expressionParser.ts @@ -14,7 +14,7 @@ import type * as ODKXPathMainEntrypoint from './index.ts'; * - - - */ -import xpathLanguage from '@getodk/tree-sitter-xpath/tree-sitter-xpath.wasm?url'; +import xpathLanguage from '@getodk/tree-sitter-xpath/dist/tree-sitter-xpath.wasm?url'; import webTreeSitter from 'web-tree-sitter/tree-sitter.wasm?url'; import { ExpressionParser } from './static/grammar/ExpressionParser.ts'; diff --git a/tsconfig.tools.json b/tsconfig.tools.json index 3f10a062a..101b9586d 100644 --- a/tsconfig.tools.json +++ b/tsconfig.tools.json @@ -9,6 +9,7 @@ "examples/*/vite.config.ts", "packages/*/playwright.config.ts", "packages/*/vite.config.ts", + "packages/tree-sitter-xpath/vite.config.mts", "packages/*/vitest.config.ts", "packages/xforms-engine/vite.*.config.ts" ], diff --git a/yarn.lock b/yarn.lock index 187a4865b..bed091782 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1188,24 +1188,6 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@npmcli/agent@^2.0.0": - version "2.2.2" - resolved "https://registry.yarnpkg.com/@npmcli/agent/-/agent-2.2.2.tgz#967604918e62f620a648c7975461c9c9e74fc5d5" - integrity sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og== - dependencies: - agent-base "^7.1.0" - http-proxy-agent "^7.0.0" - https-proxy-agent "^7.0.1" - lru-cache "^10.0.1" - socks-proxy-agent "^8.0.3" - -"@npmcli/fs@^3.1.0": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-3.1.1.tgz#59cdaa5adca95d135fc00f2bb53f5771575ce726" - integrity sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg== - dependencies: - semver "^7.3.5" - "@one-ini/wasm@0.1.1": version "0.1.1" resolved "https://registry.yarnpkg.com/@one-ini/wasm/-/wasm-0.1.1.tgz#6013659736c9dbfccc96e8a9c2b3de317df39323" @@ -2300,21 +2282,13 @@ acorn@^8.9.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== -agent-base@^7.0.2, agent-base@^7.1.0, agent-base@^7.1.1: +agent-base@^7.0.2, agent-base@^7.1.0: version "7.1.1" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317" integrity sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA== dependencies: debug "^4.3.4" -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - ajv-draft-04@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz#3b64761b268ba0b9e668f0b41ba53fce0ad77fc8" @@ -2557,24 +2531,6 @@ cac@^6.7.14: resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== -cacache@^18.0.0: - version "18.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-18.0.4.tgz#4601d7578dadb59c66044e157d02a3314682d6a5" - integrity sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ== - dependencies: - "@npmcli/fs" "^3.1.0" - fs-minipass "^3.0.0" - glob "^10.2.2" - lru-cache "^10.0.1" - minipass "^7.0.3" - minipass-collect "^2.0.1" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.4" - p-map "^4.0.0" - ssri "^10.0.0" - tar "^6.1.11" - unique-filename "^3.0.0" - call-bind@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" @@ -2676,21 +2632,11 @@ chokidar@^4.0.0: dependencies: readdirp "^4.0.1" -chownr@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" - integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== - ci-info@^3.7.0: version "3.9.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - cli-spinners@^2.9.2: version "2.9.2" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.2.tgz#1773a8f4b9c4d6ac31563df53b3fc1d79462fe41" @@ -3019,13 +2965,6 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -encoding@^0.1.13: - version "0.1.13" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" - integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== - dependencies: - iconv-lite "^0.6.2" - enquirer@^2.3.0: version "2.4.1" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.4.1.tgz#93334b3fbd74fc7097b224ab4a8fb7e40bf4ae56" @@ -3039,16 +2978,6 @@ entities@^4.4.0, entities@^4.5.0: resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== -env-paths@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" - integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== - -err-code@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" - integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== - es-define-property@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" @@ -3362,11 +3291,6 @@ execa@^7.1.1: signal-exit "^3.0.7" strip-final-newline "^3.0.0" -exponential-backoff@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.1.tgz#64ac7526fe341ab18a39016cd22c787d01e00bf6" - integrity sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw== - extendable-error@^0.1.5: version "0.1.7" resolved "https://registry.yarnpkg.com/extendable-error/-/extendable-error-0.1.7.tgz#60b9adf206264ac920058a7395685ae4670c2b96" @@ -3527,20 +3451,6 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-minipass@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - -fs-minipass@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-3.0.3.tgz#79a85981c4dc120065e96f62086bf6f9dc26cc54" - integrity sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw== - dependencies: - minipass "^7.0.3" - fsevents@2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" @@ -3616,27 +3526,27 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob@^10.2.2, glob@^10.3.10, glob@^10.3.7: - version "10.4.5" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" - integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== +glob@^10.3.3: + version "10.4.1" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.1.tgz#0cfb01ab6a6b438177bfe6a58e2576f6efe909c2" + integrity sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw== dependencies: foreground-child "^3.1.0" jackspeak "^3.1.2" minimatch "^9.0.4" minipass "^7.1.2" - package-json-from-dist "^1.0.0" path-scurry "^1.11.1" -glob@^10.3.3: - version "10.4.1" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.1.tgz#0cfb01ab6a6b438177bfe6a58e2576f6efe909c2" - integrity sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw== +glob@^10.3.7: + version "10.4.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" + integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== dependencies: foreground-child "^3.1.0" jackspeak "^3.1.2" minimatch "^9.0.4" minipass "^7.1.2" + package-json-from-dist "^1.0.0" path-scurry "^1.11.1" globals@^11.1.0: @@ -3687,7 +3597,7 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.6: +graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -3799,12 +3709,7 @@ html-void-elements@^3.0.0: resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-3.0.0.tgz#fc9dbd84af9e747249034d4d62602def6517f1d7" integrity sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg== -http-cache-semantics@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" - integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== - -http-proxy-agent@^7.0.0, http-proxy-agent@^7.0.2: +http-proxy-agent@^7.0.2: version "7.0.2" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig== @@ -3840,7 +3745,7 @@ http-server@^14.1.1: union "~0.5.0" url-join "^4.0.1" -https-proxy-agent@^7.0.1, https-proxy-agent@^7.0.5: +https-proxy-agent@^7.0.5: version "7.0.5" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz#9e8b5013873299e11fab6fd548405da2d6c602b2" integrity sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw== @@ -3863,7 +3768,7 @@ human-signals@^4.3.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2" integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ== -iconv-lite@0.6.3, iconv-lite@^0.6.2: +iconv-lite@0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== @@ -3910,24 +3815,11 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== -indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - ini@^1.3.4: version "1.3.8" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -ip-address@^9.0.5: - version "9.0.5" - resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a" - integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g== - dependencies: - jsbn "1.1.0" - sprintf-js "^1.1.3" - is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -3976,11 +3868,6 @@ is-inside-container@^1.0.0: dependencies: is-docker "^3.0.0" -is-lambda@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" - integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== - is-node-process@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/is-node-process/-/is-node-process-1.2.0.tgz#ea02a1b90ddb3934a19aea414e88edef7e11d134" @@ -4035,11 +3922,6 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isexe@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-3.1.1.tgz#4a407e2bd78ddfb14bea0c27c6f7072dde775f0d" - integrity sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ== - itertools-ts@^1.27.1: version "1.27.1" resolved "https://registry.yarnpkg.com/itertools-ts/-/itertools-ts-1.27.1.tgz#2803089148bbffae2cf65a6f0f2914b11163ff90" @@ -4100,11 +3982,6 @@ jsbi@^4.3.0: resolved "https://registry.yarnpkg.com/jsbi/-/jsbi-4.3.0.tgz#b54ee074fb6fcbc00619559305c8f7e912b04741" integrity sha512-SnZNcinB4RIcnEyZqFPdGPVgrg2AcnykiBy0sHVJQKHYeaLUvi3Exj+iaPpLnFVkDPZIV4U0yvgC9/R4uEAZ9g== -jsbn@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" - integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== - jsdoc-type-pratt-parser@~4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz#ff6b4a3f339c34a6c188cbf50a16087858d22113" @@ -4259,7 +4136,7 @@ loupe@^3.1.0, loupe@^3.1.1: dependencies: get-func-name "^2.0.1" -lru-cache@^10.0.1, lru-cache@^10.2.0: +lru-cache@^10.2.0: version "10.4.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== @@ -4317,24 +4194,6 @@ magic-string@^0.30.6: dependencies: "@jridgewell/sourcemap-codec" "^1.4.15" -make-fetch-happen@^13.0.0: - version "13.0.1" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz#273ba2f78f45e1f3a6dca91cede87d9fa4821e36" - integrity sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA== - dependencies: - "@npmcli/agent" "^2.0.0" - cacache "^18.0.0" - http-cache-semantics "^4.1.1" - is-lambda "^1.0.1" - minipass "^7.0.2" - minipass-fetch "^3.0.0" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.4" - negotiator "^0.6.3" - proc-log "^4.2.0" - promise-retry "^2.0.1" - ssri "^10.0.0" - markdown-it@^14.1.0: version "14.1.0" resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-14.1.0.tgz#3c3c5992883c633db4714ccb4d7b5935d98b7d45" @@ -4496,70 +4355,11 @@ minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -minipass-collect@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-2.0.1.tgz#1621bc77e12258a12c60d34e2276ec5c20680863" - integrity sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw== - dependencies: - minipass "^7.0.3" - -minipass-fetch@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-3.0.5.tgz#f0f97e40580affc4a35cc4a1349f05ae36cb1e4c" - integrity sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg== - dependencies: - minipass "^7.0.3" - minipass-sized "^1.0.3" - minizlib "^2.1.2" - optionalDependencies: - encoding "^0.1.13" - -minipass-flush@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== - dependencies: - minipass "^3.0.0" - -minipass-pipeline@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" - integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== - dependencies: - minipass "^3.0.0" - -minipass-sized@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" - integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== - dependencies: - minipass "^3.0.0" - -minipass@^3.0.0: - version "3.3.6" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" - integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== - dependencies: - yallist "^4.0.0" - -minipass@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" - integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== - -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.2, minipass@^7.0.3, minipass@^7.1.2: +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== -minizlib@^2.1.1, minizlib@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" - integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== - dependencies: - minipass "^3.0.0" - yallist "^4.0.0" - mkdirp@^0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" @@ -4567,7 +4367,7 @@ mkdirp@^0.5.6: dependencies: minimist "^1.2.6" -mkdirp@^1.0.3, mkdirp@^1.0.4: +mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== @@ -4640,11 +4440,6 @@ mute-stream@^1.0.0: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-1.0.0.tgz#e31bd9fe62f0aed23520aa4324ea6671531e013e" integrity sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA== -nan@2.20.0: - version "2.20.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.20.0.tgz#08c5ea813dd54ed16e5bd6505bf42af4f7838ca3" - integrity sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw== - nanoid@^3.3.7: version "3.3.7" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" @@ -4655,15 +4450,10 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -negotiator@^0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" - integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== - -node-addon-api@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-8.0.0.tgz#5453b7ad59dd040d12e0f1a97a6fa1c765c5c9d2" - integrity sha512-ipO7rsHEBqa9STO5C5T10fj732ml+5kLN1cAG8/jdHd56ldQeGj3Q7+scUS+VHK/qy1zLEwC4wMK5+yM0btPvw== +node-addon-api@^8.2.1: + version "8.3.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-8.3.0.tgz#ec3763f18befc1cdf66d11e157ce44d5eddc0603" + integrity sha512-8VOpLHFrOQlAH+qA0ZzuGRlALRA6/LVh8QJldbrC4DY0hXoMP0l4Acq8TzFC018HztWiRqyCEj2aTWY2UvnJUg== node-fetch@^2.5.0: version "2.7.0" @@ -4672,33 +4462,17 @@ node-fetch@^2.5.0: dependencies: whatwg-url "^5.0.0" -node-gyp-build@^4.8.0: - version "4.8.1" - resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.1.tgz#976d3ad905e71b76086f4f0b0d3637fe79b6cda5" - integrity sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw== - -node-gyp@10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-10.2.0.tgz#80101c4aa4f7ab225f13fcc8daaaac4eb1a8dd86" - integrity sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw== - dependencies: - env-paths "^2.2.0" - exponential-backoff "^3.1.1" - glob "^10.3.10" - graceful-fs "^4.2.6" - make-fetch-happen "^13.0.0" - nopt "^7.0.0" - proc-log "^4.1.0" - semver "^7.3.5" - tar "^6.2.1" - which "^4.0.0" +node-gyp-build@^4.8.2: + version "4.8.4" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== node-releases@^2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== -nopt@^7.0.0, nopt@^7.2.0: +nopt@^7.2.0: version "7.2.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-7.2.1.tgz#1cac0eab9b8e97c9093338446eddd40b2c8ca1e7" integrity sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w== @@ -4879,13 +4653,6 @@ p-map@^2.0.0: resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -5128,19 +4895,6 @@ primevue@^3.53.0: resolved "https://registry.yarnpkg.com/primevue/-/primevue-3.53.0.tgz#5b94a2d1511e0fe3a7bac39bfb04b7871d6ff7d3" integrity sha512-mRqTPGGZX+3AQokaCCjxLVSNEjGEA7LaPdBT4qSpGEdMstK6vhUBCxgLH7IPjHudbaSi4Xo3CIO62pXQxbz8dQ== -proc-log@^4.1.0, proc-log@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-4.2.0.tgz#b6f461e4026e75fdfe228b265e9f7a00779d7034" - integrity sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA== - -promise-retry@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" - integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== - dependencies: - err-code "^2.0.2" - retry "^0.12.0" - property-information@^6.0.0: version "6.5.0" resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.5.0.tgz#6212fbb52ba757e92ef4fb9d657563b933b7ffec" @@ -5277,11 +5031,6 @@ resolve@~1.22.1, resolve@~1.22.2: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== - reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -5379,11 +5128,6 @@ semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.5, semver@^7.6.3: - version "7.6.3" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" - integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== - semver@^7.3.6, semver@^7.6.0: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" @@ -5398,6 +5142,11 @@ semver@^7.5.3, semver@^7.5.4, semver@~7.5.4: dependencies: lru-cache "^6.0.0" +semver@^7.6.3: + version "7.6.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" + integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== + seroval-plugins@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/seroval-plugins/-/seroval-plugins-1.1.1.tgz#1e0c175e13bb4c620d4ce5916fbbb63de70c31f9" @@ -5515,28 +5264,6 @@ slashes@^3.0.12: resolved "https://registry.yarnpkg.com/slashes/-/slashes-3.0.12.tgz#3d664c877ad542dc1509eaf2c50f38d483a6435a" integrity sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA== -smart-buffer@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" - integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== - -socks-proxy-agent@^8.0.3: - version "8.0.4" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz#9071dca17af95f483300316f4b063578fa0db08c" - integrity sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw== - dependencies: - agent-base "^7.1.1" - debug "^4.3.4" - socks "^2.8.3" - -socks@^2.8.3: - version "2.8.3" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.8.3.tgz#1ebd0f09c52ba95a09750afe3f3f9f724a800cb5" - integrity sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw== - dependencies: - ip-address "^9.0.5" - smart-buffer "^4.2.0" - solid-js@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/solid-js/-/solid-js-1.9.1.tgz#ac5e0b53451a5770599bc8fff570928b3cffabd7" @@ -5592,23 +5319,11 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== -sprintf-js@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.3.tgz#4914b903a2f8b685d17fdf78a70e917e872e444a" - integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA== - sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== -ssri@^10.0.0: - version "10.0.6" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-10.0.6.tgz#a8aade2de60ba2bce8688e3fa349bad05c7dc1e5" - integrity sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ== - dependencies: - minipass "^7.0.3" - stackback@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" @@ -5767,18 +5482,6 @@ synckit@^0.9.1: "@pkgr/core" "^0.1.0" tslib "^2.6.2" -tar@^6.1.11, tar@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" - integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== - dependencies: - chownr "^2.0.0" - fs-minipass "^2.0.0" - minipass "^5.0.0" - minizlib "^2.1.1" - mkdirp "^1.0.3" - yallist "^4.0.0" - term-size@^2.1.0: version "2.2.1" resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" @@ -5884,18 +5587,18 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -tree-sitter-cli@0.23.0: - version "0.23.0" - resolved "https://registry.yarnpkg.com/tree-sitter-cli/-/tree-sitter-cli-0.23.0.tgz#2573e4b63b017bd2b0a821716e509d158f04eb6b" - integrity sha512-/DdQaPCCOrOYGp9FxGdhFUnHIrjhfbYatQXgNIcmaAOpPunpnDj2vsO/H+svsfQLaFsQ1C+BjgPhpbV28zka1w== +tree-sitter-cli@0.24.5: + version "0.24.5" + resolved "https://registry.yarnpkg.com/tree-sitter-cli/-/tree-sitter-cli-0.24.5.tgz#787236587f4158e3b667c29efad234f26887d8f2" + integrity sha512-8EIgV/ERQlpvk1rPSCCjxveAb6Sba8tMiBpeeL68Mueuuqr0wNfhps/I1nFm2OTnpPCUV2PS9nbzzAMoyxSQUg== -tree-sitter@0.21.1, tree-sitter@^0.16.1: - version "0.21.1" - resolved "https://registry.yarnpkg.com/tree-sitter/-/tree-sitter-0.21.1.tgz#fbb34c09056700814af0e1e37688e06463ba04c4" - integrity sha512-7dxoA6kYvtgWw80265MyqJlkRl4yawIjO7S5MigytjELkX43fV2WsAXzsNfO7sBpPPCF5Gp0+XzHk0DwLCq3xQ== +tree-sitter@0.22.1, tree-sitter@^0.16.1: + version "0.22.1" + resolved "https://registry.yarnpkg.com/tree-sitter/-/tree-sitter-0.22.1.tgz#5a5296fc0898b21443657e071b050c95c0d7afbd" + integrity sha512-gRO+jk2ljxZlIn20QRskIvpLCMtzuLl5T0BY6L9uvPYD17uUrxlxWkvYCiVqED2q2q7CVtY52Uex4WcYo2FEXw== dependencies: - node-addon-api "^8.0.0" - node-gyp-build "^4.8.0" + node-addon-api "^8.2.1" + node-gyp-build "^4.8.2" trim-lines@^3.0.0: version "3.0.1" @@ -6073,20 +5776,6 @@ union@~0.5.0: dependencies: qs "^6.4.0" -unique-filename@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-3.0.0.tgz#48ba7a5a16849f5080d26c760c86cf5cf05770ea" - integrity sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g== - dependencies: - unique-slug "^4.0.0" - -unique-slug@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-4.0.0.tgz#6bae6bb16be91351badd24cdce741f892a6532e3" - integrity sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ== - dependencies: - imurmurhash "^0.1.4" - unist-util-is@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.0.tgz#b775956486aff107a9ded971d996c173374be424" @@ -6361,10 +6050,10 @@ w3c-xmlserializer@^5.0.0: dependencies: xml-name-validator "^5.0.0" -web-tree-sitter@0.23.0: - version "0.23.0" - resolved "https://registry.yarnpkg.com/web-tree-sitter/-/web-tree-sitter-0.23.0.tgz#adaddeeda1e0f09eb378e5b9f2134e3c07128186" - integrity sha512-p1T+ju2H30fpVX2q5yr+Wv/NfdMMWMjQp9Q+4eEPrHAJpPFh9DPfI2Yr9L1f5SA5KPE+g1cNUqPbpihxUDzmVw== +web-tree-sitter@0.24.5: + version "0.24.5" + resolved "https://registry.yarnpkg.com/web-tree-sitter/-/web-tree-sitter-0.24.5.tgz#16cea449da63012f23ca7b83bd32817dd0520400" + integrity sha512-+J/2VSHN8J47gQUAvF8KDadrfz6uFYVjxoxbKWDoXVsH2u7yLdarCnIURnrMA6uSRkgX3SdmqM5BOoQjPdSh5w== webidl-conversions@^3.0.0: version "3.0.1" @@ -6430,13 +6119,6 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -which@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/which/-/which-4.0.0.tgz#cd60b5e74503a3fbcfbf6cd6b4138a8bae644c1a" - integrity sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg== - dependencies: - isexe "^3.1.1" - why-is-node-running@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.3.0.tgz#a3f69a97107f494b3cdc3bdddd883a7d65cebf04" From a0b52988cb302ceff6ae9176d7ed4c6378312c56 Mon Sep 17 00:00:00 2001 From: eyelidlessness Date: Tue, 17 Dec 2024 07:45:21 -0800 Subject: [PATCH 4/6] =?UTF-8?q?Minor=20quality=20of=20life=20improvement:?= =?UTF-8?q?=20don=E2=80=99t=20treat=20`scripts`=20as=20a=20workspace=20pac?= =?UTF-8?q?kage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This makes it much easier to run monorepo-wide commands. (I have made this change locally a zillion times to speed up tasks like this one, and it’s never cause a problem. I don’t know what the future for the `scripts` package should be, I’d prefer it go away eventually! But for now it seems reasonable to just remove it here.) --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index ab0e1c8e3..22d6ccf78 100644 --- a/package.json +++ b/package.json @@ -17,8 +17,7 @@ }, "packageManager": "yarn@1.22.22", "workspaces": [ - "packages/*", - "scripts" + "packages/*" ], "scripts": { "preinstall": "npx only-allow yarn", From 1066d74947b0d38d6d9c1db8a459ed856a5fafae Mon Sep 17 00:00:00 2001 From: eyelidlessness Date: Tue, 17 Dec 2024 07:59:12 -0800 Subject: [PATCH 5/6] Update most other (non-tree-sitter) dependencies* MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * The following have been skipped, or held back to a semver-minor update: - Across all packages: Vite has been updated to the latest (presumably last) 5.x.x release, rather than the semver-major update to 6.x.x. I didin’t even bother trying Vite 6, because Vitest won’t support it until January ([source](https://github.com/vitest-dev/vitest/releases/tag/v3.0.0-beta.1)). As with previous dependency updates, I have manually prodded Yarn to use the same version of Vite for Vitest’s transitive dependency. How it’s done (every time, but feels worth documenting): 1. Update direct `vite` dependencies in each affected `package.json` 2. `yarn install` 3. Delete the older entry for `vite` in `yarn.lock` (I always spot check that it’s the same one associated with `vitest`, it is also usually associated with `vite-node`.) 4. `yarn install` again, to update the lockfile so both `^`-range references point to the same version again. (In theory I could make that change manually and then just run `yarn install` again to verify, but I trust the lockfile generation logic more than my typing skills.) - `@getodk/web-forms`-specific: - Vue has been pinned to 3.3.4, consistent with the current version used by Central. (Periodic reminder that we cannot update this until Central does; also we should consider what this means for other potential Vue-based integrations!) - PrimeVue &co have not been updated, pending updates to this package coinciding with those upgrades --- package.json | 36 +- packages/common/package.json | 6 +- packages/scenario/package.json | 8 +- packages/tree-sitter-xpath/package.json | 4 +- packages/web-forms/package.json | 20 +- packages/xforms-engine/package.json | 18 +- packages/xpath/package.json | 14 +- yarn.lock | 2591 ++++++++++------------- 8 files changed, 1161 insertions(+), 1536 deletions(-) diff --git a/package.json b/package.json index 22d6ccf78..b00f9e4ba 100644 --- a/package.json +++ b/package.json @@ -35,37 +35,37 @@ }, "dependencies": { "@changesets/changelog-github": "^0.5.0", - "@changesets/cli": "^2.27.8", - "@eslint/js": "^9.11.1", + "@changesets/cli": "^2.27.10", + "@eslint/js": "^9.17.0", "@tsconfig/node20": "^20.1.4", "@types/eslint": "^9.6.1", "@types/eslint-config-prettier": "^6.11.3", "@types/eslint__js": "^8.42.3", - "@types/geojson": "^7946.0.14", + "@types/geojson": "^7946.0.15", "@types/jsdom": "^21.1.7", - "@types/node": "^22.7.2", - "@typescript-eslint/eslint-plugin": "^8.7.0", - "@typescript-eslint/parser": "^8.7.0", - "@vue/eslint-config-prettier": "^9.0.0", - "@vue/eslint-config-typescript": "^13.0.0", - "@vue/tsconfig": "^0.5.1", - "eslint": "^9.11.1", + "@types/node": "^22.10.2", + "@typescript-eslint/eslint-plugin": "^8.18.1", + "@typescript-eslint/parser": "^8.18.1", + "@vue/eslint-config-prettier": "^10.1.0", + "@vue/eslint-config-typescript": "^14.1.4", + "@vue/tsconfig": "^0.7.0", + "eslint": "^9.17.0", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-jsdoc": "^50.3.0", + "eslint-plugin-jsdoc": "^50.6.1", "eslint-plugin-no-only-tests": "^3.3.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-prettier-vue": "^5.0.0", - "eslint-plugin-vue": "^9.28.0", - "npm-run-all2": "^6.2.3", + "eslint-plugin-vue": "^9.32.0", + "npm-run-all2": "^7.0.2", "only-allow": "^1.2.1", "organize-imports-cli": "^0.10.0", - "prettier": "^3.3.3", + "prettier": "^3.4.2", "rimraf": "^5.0.9", - "turbo": "^2.1.2", - "typescript": "~5.6.2", - "typescript-eslint": "^8.7.0", + "turbo": "^2.3.3", + "typescript": "~5.7.2", + "typescript-eslint": "^8.18.1", "vue": "3.3.4", - "vue-tsc": "^2.0.19" + "vue-tsc": "^2.1.10" }, "resolutions": { "**/tree-sitter": "0.22.1" diff --git a/packages/common/package.json b/packages/common/package.json index 5f3eb2a9f..e5fbc8a78 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -51,9 +51,9 @@ "test:types": "tsc --project ./tsconfig.json --emitDeclarationOnly false --noEmit" }, "devDependencies": { - "@vitest/browser": "^2.1.1", + "@vitest/browser": "^2.1.8", "jsdom": "^25.0.1", - "vite": "^5.4.8", - "vitest": "^2.1.1" + "vite": "^5.4.11", + "vitest": "^2.1.8" } } diff --git a/packages/scenario/package.json b/packages/scenario/package.json index cc90efacb..083b764d0 100644 --- a/packages/scenario/package.json +++ b/packages/scenario/package.json @@ -49,10 +49,10 @@ "devDependencies": { "@getodk/xforms-engine": "0.5.0", "@js-joda/core": "^5.6.3", - "@vitest/browser": "^2.1.1", + "@vitest/browser": "^2.1.8", "jsdom": "^25.0.1", - "solid-js": "^1.9.1", - "vite": "^5.4.8", - "vitest": "^2.1.1" + "solid-js": "^1.9.3", + "vite": "^5.4.11", + "vitest": "^2.1.8" } } diff --git a/packages/tree-sitter-xpath/package.json b/packages/tree-sitter-xpath/package.json index 47182e575..df638229c 100644 --- a/packages/tree-sitter-xpath/package.json +++ b/packages/tree-sitter-xpath/package.json @@ -37,8 +37,8 @@ "@asgerf/dts-tree-sitter": "^0.1.0", "tree-sitter": "0.22.1", "tree-sitter-cli": "0.24.5", - "vite": "^5.4.8", - "vite-plugin-static-copy": "^1.0.6", + "vite": "^5.4.11", + "vite-plugin-static-copy": "^2.2.0", "web-tree-sitter": "0.24.5" }, "peerDependencies": { diff --git a/packages/web-forms/package.json b/packages/web-forms/package.json index d7eee0117..585a1a44c 100644 --- a/packages/web-forms/package.json +++ b/packages/web-forms/package.json @@ -49,27 +49,27 @@ "test:types:vitest": "vue-tsc --project ./tsconfig.vitest.json --emitDeclarationOnly false --noEmit" }, "devDependencies": { - "@faker-js/faker": "^9.0.2", + "@faker-js/faker": "^9.3.0", "@fontsource/hanken-grotesk": "^5.1.0", "@fontsource/roboto": "^5.1.0", "@getodk/xforms-engine": "0.5.0", - "@playwright/test": "^1.47.2", + "@playwright/test": "^1.49.1", "@types/ramda": "^0.30.2", - "@vitejs/plugin-vue": "^5.1.4", - "@vitejs/plugin-vue-jsx": "^4.0.1", + "@vitejs/plugin-vue": "^5.2.1", + "@vitejs/plugin-vue-jsx": "^4.1.1", "@vue/test-utils": "^2.4.6", "jsdom": "^25.0.1", "primeflex": "^3.3.1", "primevue": "^3.53.0", "primevue-sass-theme": "https://github.com/primefaces/primevue-sass-theme.git#3.52.0", "ramda": "^0.30.1", - "sass": "^1.79.3", - "vite": "^5.4.8", - "vite-plugin-css-injected-by-js": "^3.5.1", - "vite-plugin-static-copy": "^1.0.6", - "vitest": "^2.1.1", + "sass": "^1.83.0", + "vite": "^5.4.11", + "vite-plugin-css-injected-by-js": "^3.5.2", + "vite-plugin-static-copy": "^2.2.0", + "vitest": "^2.1.8", "vue": "3.3.4", - "vue-router": "^4.4.5" + "vue-router": "^4.5.0" }, "peerDependencies": { "vue": "^3.3.4" diff --git a/packages/xforms-engine/package.json b/packages/xforms-engine/package.json index 3972b9818..22af4a323 100644 --- a/packages/xforms-engine/package.json +++ b/packages/xforms-engine/package.json @@ -55,26 +55,26 @@ }, "dependencies": { "papaparse": "^5.4.1", - "solid-js": "^1.9.1" + "solid-js": "^1.9.3" }, "devDependencies": { - "@babel/core": "^7.25.2", + "@babel/core": "^7.26.0", "@getodk/tree-sitter-xpath": "0.1.2", "@getodk/xpath": "0.3.0", - "@playwright/test": "^1.47.2", + "@playwright/test": "^1.49.1", "@types/papaparse": "^5.3.15", - "@vitest/browser": "^2.1.1", + "@vitest/browser": "^2.1.8", "babel-plugin-transform-jsbi-to-bigint": "^1.4.0", "http-server": "^14.1.1", "jsdom": "^25.0.1", - "typedoc": "^0.26.7", - "vite": "^5.4.8", - "vite-plugin-dts": "^4.2.2", + "typedoc": "^0.27.5", + "vite": "^5.4.11", + "vite-plugin-dts": "^4.3.0", "vite-plugin-no-bundle": "^4.0.0", - "vitest": "^2.1.1" + "vitest": "^2.1.8" }, "peerDependencies": { - "solid-js": "^1.8.18" + "solid-js": "^1.9.3" }, "peerDependenciesMeta": { "solid-js": { diff --git a/packages/xpath/package.json b/packages/xpath/package.json index a2863171c..1a4d3d5a0 100644 --- a/packages/xpath/package.json +++ b/packages/xpath/package.json @@ -60,18 +60,18 @@ "itertools-ts": "^1.27.1" }, "devDependencies": { - "@babel/core": "^7.25.2", + "@babel/core": "^7.26.0", "@getodk/tree-sitter-xpath": "0.1.2", - "@playwright/test": "^1.47.2", + "@playwright/test": "^1.49.1", "@types/crypto-js": "^4.2.2", - "@vitest/browser": "^2.1.1", + "@vitest/browser": "^2.1.8", "babel-plugin-transform-jsbi-to-bigint": "^1.4.0", "jsdom": "^25.0.1", - "vite": "^5.4.8", - "vite-plugin-babel": "^1.2.0", - "vite-plugin-dts": "^4.2.2", + "vite": "^5.4.11", + "vite-plugin-babel": "^1.3.0", + "vite-plugin-dts": "^4.3.0", "vite-plugin-no-bundle": "^4.0.0", - "vitest": "^2.1.1", + "vitest": "^2.1.8", "web-tree-sitter": "0.24.5" } } diff --git a/yarn.lock b/yarn.lock index bed091782..ebaa949ea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -30,58 +30,41 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/code-frame@^7.22.13": - version "7.22.13" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" - integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== +"@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0", "@babel/code-frame@^7.26.2": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" + integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== dependencies: - "@babel/highlight" "^7.22.13" - chalk "^2.4.2" - -"@babel/code-frame@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" - integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== - dependencies: - "@babel/highlight" "^7.23.4" - chalk "^2.4.2" + "@babel/helper-validator-identifier" "^7.25.9" + js-tokens "^4.0.0" + picocolors "^1.0.0" -"@babel/compat-data@^7.25.2": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.4.tgz#7d2a80ce229890edcf4cc259d4d696cb4dae2fcb" - integrity sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ== +"@babel/compat-data@^7.25.9": + version "7.26.3" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.3.tgz#99488264a56b2aded63983abd6a417f03b92ed02" + integrity sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g== -"@babel/core@^7.24.7", "@babel/core@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.2.tgz#ed8eec275118d7613e77a352894cd12ded8eba77" - integrity sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA== +"@babel/core@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" + integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.25.0" - "@babel/helper-compilation-targets" "^7.25.2" - "@babel/helper-module-transforms" "^7.25.2" - "@babel/helpers" "^7.25.0" - "@babel/parser" "^7.25.0" - "@babel/template" "^7.25.0" - "@babel/traverse" "^7.25.2" - "@babel/types" "^7.25.2" + "@babel/code-frame" "^7.26.0" + "@babel/generator" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-module-transforms" "^7.26.0" + "@babel/helpers" "^7.26.0" + "@babel/parser" "^7.26.0" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.26.0" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.23.6": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" - integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== - dependencies: - "@babel/types" "^7.23.6" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" - "@babel/generator@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.8.tgz#1802d6ac4d77a9199c75ae3eb6a08336e5d1d39a" @@ -92,52 +75,48 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/generator@^7.25.0", "@babel/generator@^7.25.6": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.6.tgz#0df1ad8cb32fe4d2b01d8bf437f153d19342a87c" - integrity sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw== +"@babel/generator@^7.26.0", "@babel/generator@^7.26.3": + version "7.26.3" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.3.tgz#ab8d4360544a425c90c248df7059881f4b2ce019" + integrity sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ== dependencies: - "@babel/types" "^7.25.6" + "@babel/parser" "^7.26.3" + "@babel/types" "^7.26.3" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^2.5.1" + jsesc "^3.0.2" -"@babel/helper-annotate-as-pure@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz#5373c7bc8366b12a033b4be1ac13a206c6656aab" - integrity sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg== +"@babel/helper-annotate-as-pure@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4" + integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g== dependencies: - "@babel/types" "^7.24.7" + "@babel/types" "^7.25.9" -"@babel/helper-compilation-targets@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz#e1d9410a90974a3a5a66e84ff55ef62e3c02d06c" - integrity sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw== +"@babel/helper-compilation-targets@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz#55af025ce365be3cdc0c1c1e56c6af617ce88875" + integrity sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ== dependencies: - "@babel/compat-data" "^7.25.2" - "@babel/helper-validator-option" "^7.24.8" - browserslist "^4.23.1" + "@babel/compat-data" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.25.0": - version "7.25.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.4.tgz#57eaf1af38be4224a9d9dd01ddde05b741f50e14" - integrity sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.8" - "@babel/helper-optimise-call-expression" "^7.24.7" - "@babel/helper-replace-supers" "^7.25.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/traverse" "^7.25.4" +"@babel/helper-create-class-features-plugin@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz#7644147706bb90ff613297d49ed5266bde729f83" + integrity sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/traverse" "^7.25.9" semver "^6.3.1" -"@babel/helper-environment-visitor@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== - "@babel/helper-environment-visitor@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" @@ -145,14 +124,6 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== - dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" - "@babel/helper-function-name@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" @@ -161,13 +132,6 @@ "@babel/template" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== - dependencies: - "@babel/types" "^7.22.5" - "@babel/helper-hoist-variables@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" @@ -175,13 +139,13 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-member-expression-to-functions@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz#6155e079c913357d24a4c20480db7c712a5c3fb6" - integrity sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA== +"@babel/helper-member-expression-to-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz#9dfffe46f727005a5ea29051ac835fb735e4c1a3" + integrity sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ== dependencies: - "@babel/traverse" "^7.24.8" - "@babel/types" "^7.24.8" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/helper-module-imports@^7.24.7": version "7.24.7" @@ -191,71 +155,56 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-imports@~7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== +"@babel/helper-module-imports@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" + integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== dependencies: - "@babel/types" "^7.22.15" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-module-transforms@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz#ee713c29768100f2776edf04d4eb23b8d27a66e6" - integrity sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ== +"@babel/helper-module-transforms@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae" + integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw== dependencies: - "@babel/helper-module-imports" "^7.24.7" - "@babel/helper-simple-access" "^7.24.7" - "@babel/helper-validator-identifier" "^7.24.7" - "@babel/traverse" "^7.25.2" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/helper-optimise-call-expression@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz#8b0a0456c92f6b323d27cfd00d1d664e76692a0f" - integrity sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A== +"@babel/helper-optimise-call-expression@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz#3324ae50bae7e2ab3c33f60c9a877b6a0146b54e" + integrity sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ== dependencies: - "@babel/types" "^7.24.7" - -"@babel/helper-plugin-utils@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" - integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== + "@babel/types" "^7.25.9" -"@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.24.8": +"@babel/helper-plugin-utils@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== -"@babel/helper-replace-supers@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.0.tgz#ff44deac1c9f619523fe2ca1fd650773792000a9" - integrity sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.24.8" - "@babel/helper-optimise-call-expression" "^7.24.7" - "@babel/traverse" "^7.25.0" +"@babel/helper-plugin-utils@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46" + integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw== -"@babel/helper-simple-access@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz#bcade8da3aec8ed16b9c4953b74e506b51b5edb3" - integrity sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg== +"@babel/helper-replace-supers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz#ba447224798c3da3f8713fc272b145e33da6a5c5" + integrity sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/helper-skip-transparent-expression-wrappers@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz#5f8fa83b69ed5c27adc56044f8be2b3ea96669d9" - integrity sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ== +"@babel/helper-skip-transparent-expression-wrappers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz#0b2e1b62d560d6b1954893fd2b705dc17c91f0c9" + integrity sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-split-export-declaration@^7.22.6": - version "7.22.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" - integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== - dependencies: - "@babel/types" "^7.22.5" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/helper-split-export-declaration@^7.24.7": version "7.24.7" @@ -264,61 +213,38 @@ dependencies: "@babel/types" "^7.24.7" -"@babel/helper-string-parser@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" - integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== - -"@babel/helper-string-parser@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" - integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== - "@babel/helper-string-parser@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== -"@babel/helper-validator-identifier@^7.22.20": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" - integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== +"@babel/helper-string-parser@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" + integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== -"@babel/helper-validator-option@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" - integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== - -"@babel/helpers@^7.25.0": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.6.tgz#57ee60141829ba2e102f30711ffe3afab357cc60" - integrity sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q== - dependencies: - "@babel/template" "^7.25.0" - "@babel/types" "^7.25.6" +"@babel/helper-validator-identifier@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" + integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== -"@babel/highlight@^7.22.13": - version "7.22.20" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" - integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== - dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" +"@babel/helper-validator-option@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" + integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw== -"@babel/highlight@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" - integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== +"@babel/helpers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.0.tgz#30e621f1eba5aa45fe6f4868d2e9154d884119a4" + integrity sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw== dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.0" "@babel/highlight@^7.24.7": version "7.24.7" @@ -335,16 +261,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.6.tgz#5e030f440c3c6c78d195528c3b688b101a365328" integrity sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q== -"@babel/parser@^7.21.3", "@babel/parser@^7.22.15": +"@babel/parser@^7.21.3": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== -"@babel/parser@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" - integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== - "@babel/parser@^7.24.7", "@babel/parser@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.8.tgz#58a4dbbcad7eb1d48930524a3fd93d93e9084c6f" @@ -357,30 +278,37 @@ dependencies: "@babel/types" "^7.25.6" -"@babel/plugin-syntax-jsx@^7.23.3": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" - integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg== +"@babel/parser@^7.25.9", "@babel/parser@^7.26.0", "@babel/parser@^7.26.3": + version "7.26.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.3.tgz#8c51c5db6ddf08134af1ddbacf16aaab48bac234" + integrity sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/types" "^7.26.3" -"@babel/plugin-syntax-typescript@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz#58d458271b4d3b6bb27ee6ac9525acbb259bad1c" - integrity sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA== +"@babel/plugin-syntax-jsx@^7.24.7": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290" + integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-typescript@^7.24.7": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.2.tgz#237c5d10de6d493be31637c6b9fa30b6c5461add" - integrity sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A== +"@babel/plugin-syntax-typescript@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz#67dda2b74da43727cf21d46cf9afef23f4365399" + integrity sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-create-class-features-plugin" "^7.25.0" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/plugin-syntax-typescript" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-typescript@^7.25.9": + version "7.26.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.26.3.tgz#3d6add9c78735623317387ee26d5ada540eee3fd" + integrity sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/plugin-syntax-typescript" "^7.25.9" "@babel/runtime@^7.12.5": version "7.24.8" @@ -396,24 +324,6 @@ dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" - integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== - dependencies: - "@babel/code-frame" "^7.22.13" - "@babel/parser" "^7.22.15" - "@babel/types" "^7.22.15" - -"@babel/template@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.23.9.tgz#f881d0487cba2828d3259dcb9ef5005a9731011a" - integrity sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" - "@babel/template@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" @@ -432,23 +342,16 @@ "@babel/parser" "^7.25.0" "@babel/types" "^7.25.0" -"@babel/traverse@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.9.tgz#2f9d6aead6b564669394c5ce0f9302bb65b9d950" - integrity sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@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.9" - "@babel/types" "^7.23.9" - debug "^4.3.1" - globals "^11.1.0" +"@babel/template@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016" + integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8": +"@babel/traverse@^7.24.7": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.8.tgz#6c14ed5232b7549df3371d820fbd9abfcd7dfab7" integrity sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ== @@ -464,37 +367,19 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/traverse@^7.25.0", "@babel/traverse@^7.25.2", "@babel/traverse@^7.25.4": - version "7.25.6" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.6.tgz#04fad980e444f182ecf1520504941940a90fea41" - integrity sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ== +"@babel/traverse@^7.25.6", "@babel/traverse@^7.25.9": + version "7.26.4" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.26.4.tgz#ac3a2a84b908dde6d463c3bfa2c5fdc1653574bd" + integrity sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w== dependencies: - "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.25.6" - "@babel/parser" "^7.25.6" - "@babel/template" "^7.25.0" - "@babel/types" "^7.25.6" + "@babel/code-frame" "^7.26.2" + "@babel/generator" "^7.26.3" + "@babel/parser" "^7.26.3" + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.3" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0": - version "7.23.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" - integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== - dependencies: - "@babel/helper-string-parser" "^7.22.5" - "@babel/helper-validator-identifier" "^7.22.20" - to-fast-properties "^2.0.0" - -"@babel/types@^7.23.6", "@babel/types@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002" - integrity sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q== - dependencies: - "@babel/helper-string-parser" "^7.23.4" - "@babel/helper-validator-identifier" "^7.22.20" - to-fast-properties "^2.0.0" - "@babel/types@^7.24.7", "@babel/types@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.8.tgz#d51ffa9043b17d36622efa44e861a49e69e130a8" @@ -504,7 +389,7 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" -"@babel/types@^7.25.0", "@babel/types@^7.25.2", "@babel/types@^7.25.6": +"@babel/types@^7.25.0", "@babel/types@^7.25.6": version "7.25.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.6.tgz#893942ddb858f32ae7a004ec9d3a76b3463ef8e6" integrity sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw== @@ -513,12 +398,20 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" -"@bundled-es-modules/cookie@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@bundled-es-modules/cookie/-/cookie-2.0.0.tgz#c3b82703969a61cf6a46e959a012b2c257f6b164" - integrity sha512-Or6YHg/kamKHpxULAdSqhGqnWFneIXu1NKvvfBBzKGwpVsYuFIQ5aBPHDnnoR3ghW1nvSkALd+EF9iMtY7Vjxw== +"@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.26.3": + version "7.26.3" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.3.tgz#37e79830f04c2b5687acc77db97fbc75fb81f3c0" + integrity sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA== + dependencies: + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + +"@bundled-es-modules/cookie@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@bundled-es-modules/cookie/-/cookie-2.0.1.tgz#b41376af6a06b3e32a15241d927b840a9b4de507" + integrity sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw== dependencies: - cookie "^0.5.0" + cookie "^0.7.2" "@bundled-es-modules/statuses@^1.0.1": version "1.0.1" @@ -535,14 +428,14 @@ "@types/tough-cookie" "^4.0.5" tough-cookie "^4.1.4" -"@changesets/apply-release-plan@^7.0.5": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@changesets/apply-release-plan/-/apply-release-plan-7.0.5.tgz#3323c97afc08abc15e5136488f9c7cf1a864832e" - integrity sha512-1cWCk+ZshEkSVEZrm2fSj1Gz8sYvxgUL4Q78+1ZZqeqfuevPTPk033/yUZ3df8BKMohkqqHfzj0HOOrG0KtXTw== +"@changesets/apply-release-plan@^7.0.7": + version "7.0.7" + resolved "https://registry.yarnpkg.com/@changesets/apply-release-plan/-/apply-release-plan-7.0.7.tgz#cabeaed77de07c6bd9878a9bc5ffd3ea7db7f7ff" + integrity sha512-qnPOcmmmnD0MfMg9DjU1/onORFyRpDXkMMl2IJg9mECY6RnxL3wN0TCCc92b2sXt1jt8DgjAUUsZYGUGTdYIXA== dependencies: - "@changesets/config" "^3.0.3" + "@changesets/config" "^3.0.5" "@changesets/get-version-range-type" "^0.4.0" - "@changesets/git" "^3.0.1" + "@changesets/git" "^3.0.2" "@changesets/should-skip-package" "^0.1.1" "@changesets/types" "^6.0.0" "@manypkg/get-packages" "^1.1.3" @@ -554,10 +447,10 @@ resolve-from "^5.0.0" semver "^7.5.3" -"@changesets/assemble-release-plan@^6.0.4": - version "6.0.4" - resolved "https://registry.yarnpkg.com/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.4.tgz#153d5154bb9f4162215ca69ad1c6e0886f686ccb" - integrity sha512-nqICnvmrwWj4w2x0fOhVj2QEGdlUuwVAwESrUo5HLzWMI1rE5SWfsr9ln+rDqWB6RQ2ZyaMZHUcU7/IRaUJS+Q== +"@changesets/assemble-release-plan@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.5.tgz#d987b01c2d91c8b2f81eedd2df56ba355e4ce536" + integrity sha512-IgvBWLNKZd6k4t72MBTBK3nkygi0j3t3zdC1zrfusYo0KpdsvnDjrMM9vPnTCLCMlfNs55jRL4gIMybxa64FCQ== dependencies: "@changesets/errors" "^0.2.0" "@changesets/get-dependents-graph" "^2.1.2" @@ -582,46 +475,44 @@ "@changesets/types" "^6.0.0" dotenv "^8.1.0" -"@changesets/cli@^2.27.8": - version "2.27.8" - resolved "https://registry.yarnpkg.com/@changesets/cli/-/cli-2.27.8.tgz#a7b9c5ed7d68a74cb3098ba71a96553fff8ddc33" - integrity sha512-gZNyh+LdSsI82wBSHLQ3QN5J30P4uHKJ4fXgoGwQxfXwYFTJzDdvIJasZn8rYQtmKhyQuiBj4SSnLuKlxKWq4w== +"@changesets/cli@^2.27.10": + version "2.27.11" + resolved "https://registry.yarnpkg.com/@changesets/cli/-/cli-2.27.11.tgz#1d510044b350a7c78a8b55a0591637d7ad224469" + integrity sha512-1QislpE+nvJgSZZo9+Lj3Lno5pKBgN46dAV8IVxKJy9wX8AOrs9nn5pYVZuDpoxWJJCALmbfOsHkyxujgetQSg== dependencies: - "@changesets/apply-release-plan" "^7.0.5" - "@changesets/assemble-release-plan" "^6.0.4" + "@changesets/apply-release-plan" "^7.0.7" + "@changesets/assemble-release-plan" "^6.0.5" "@changesets/changelog-git" "^0.2.0" - "@changesets/config" "^3.0.3" + "@changesets/config" "^3.0.5" "@changesets/errors" "^0.2.0" "@changesets/get-dependents-graph" "^2.1.2" - "@changesets/get-release-plan" "^4.0.4" - "@changesets/git" "^3.0.1" + "@changesets/get-release-plan" "^4.0.6" + "@changesets/git" "^3.0.2" "@changesets/logger" "^0.1.1" "@changesets/pre" "^2.0.1" - "@changesets/read" "^0.6.1" + "@changesets/read" "^0.6.2" "@changesets/should-skip-package" "^0.1.1" "@changesets/types" "^6.0.0" "@changesets/write" "^0.3.2" "@manypkg/get-packages" "^1.1.3" - "@types/semver" "^7.5.0" ansi-colors "^4.1.3" ci-info "^3.7.0" - enquirer "^2.3.0" + enquirer "^2.4.1" external-editor "^3.1.0" fs-extra "^7.0.1" mri "^1.2.0" - outdent "^0.5.0" p-limit "^2.2.0" package-manager-detector "^0.2.0" picocolors "^1.1.0" resolve-from "^5.0.0" semver "^7.5.3" - spawndamnit "^2.0.0" + spawndamnit "^3.0.1" term-size "^2.1.0" -"@changesets/config@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@changesets/config/-/config-3.0.3.tgz#19196558882b25c8aaf04941d4ac7e151f5a1b36" - integrity sha512-vqgQZMyIcuIpw9nqFIpTSNyc/wgm/Lu1zKN5vECy74u95Qx/Wa9g27HdgO4NkVAaq+BGA8wUc/qvbvVNs93n6A== +"@changesets/config@^3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@changesets/config/-/config-3.0.5.tgz#cb59e9f338a4b35d3266af8a32799cb940d54ee0" + integrity sha512-QyXLSSd10GquX7hY0Mt4yQFMEeqnO5z/XLpbIr4PAkNNoQNKwDyiSrx4yd749WddusH1v3OSiA0NRAYmH/APpQ== dependencies: "@changesets/errors" "^0.2.0" "@changesets/get-dependents-graph" "^2.1.2" @@ -629,7 +520,7 @@ "@changesets/types" "^6.0.0" "@manypkg/get-packages" "^1.1.3" fs-extra "^7.0.1" - micromatch "^4.0.2" + micromatch "^4.0.8" "@changesets/errors@^0.2.0": version "0.2.0" @@ -656,15 +547,15 @@ dataloader "^1.4.0" node-fetch "^2.5.0" -"@changesets/get-release-plan@^4.0.4": - version "4.0.4" - resolved "https://registry.yarnpkg.com/@changesets/get-release-plan/-/get-release-plan-4.0.4.tgz#e7ef0d84d9079c69febb64f8018a18ac4b77ac90" - integrity sha512-SicG/S67JmPTrdcc9Vpu0wSQt7IiuN0dc8iR5VScnnTVPfIaLvKmEGRvIaF0kcn8u5ZqLbormZNTO77bCEvyWw== +"@changesets/get-release-plan@^4.0.6": + version "4.0.6" + resolved "https://registry.yarnpkg.com/@changesets/get-release-plan/-/get-release-plan-4.0.6.tgz#40d70c2524be51a70b7e1a778826854bb6c8562a" + integrity sha512-FHRwBkY7Eili04Y5YMOZb0ezQzKikTka4wL753vfUA5COSebt7KThqiuCN9BewE4/qFGgF/5t3AuzXx1/UAY4w== dependencies: - "@changesets/assemble-release-plan" "^6.0.4" - "@changesets/config" "^3.0.3" + "@changesets/assemble-release-plan" "^6.0.5" + "@changesets/config" "^3.0.5" "@changesets/pre" "^2.0.1" - "@changesets/read" "^0.6.1" + "@changesets/read" "^0.6.2" "@changesets/types" "^6.0.0" "@manypkg/get-packages" "^1.1.3" @@ -673,16 +564,16 @@ resolved "https://registry.yarnpkg.com/@changesets/get-version-range-type/-/get-version-range-type-0.4.0.tgz#429a90410eefef4368502c41c63413e291740bf5" integrity sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ== -"@changesets/git@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@changesets/git/-/git-3.0.1.tgz#4499a07d35d8e783cd56f8295fb7d4d70282701b" - integrity sha512-pdgHcYBLCPcLd82aRcuO0kxCDbw/yISlOtkmwmE8Odo1L6hSiZrBOsRl84eYG7DRCab/iHnOkWqExqc4wxk2LQ== +"@changesets/git@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@changesets/git/-/git-3.0.2.tgz#669c700049dc3b8ba53f46de45f5c4b1e6ddea3b" + integrity sha512-r1/Kju9Y8OxRRdvna+nxpQIsMsRQn9dhhAZt94FLDeu0Hij2hnOozW8iqnHBgvu+KdnJppCveQwK4odwfw/aWQ== dependencies: "@changesets/errors" "^0.2.0" "@manypkg/get-packages" "^1.1.3" is-subdir "^1.1.1" - micromatch "^4.0.2" - spawndamnit "^2.0.0" + micromatch "^4.0.8" + spawndamnit "^3.0.1" "@changesets/logger@^0.1.1": version "0.1.1" @@ -709,12 +600,12 @@ "@manypkg/get-packages" "^1.1.3" fs-extra "^7.0.1" -"@changesets/read@^0.6.1": - version "0.6.1" - resolved "https://registry.yarnpkg.com/@changesets/read/-/read-0.6.1.tgz#32c91d97e602861717696c49a09c23eb492810f6" - integrity sha512-jYMbyXQk3nwP25nRzQQGa1nKLY0KfoOV7VLgwucI0bUO8t8ZLCr6LZmgjXsiKuRDc+5A6doKPr9w2d+FEJ55zQ== +"@changesets/read@^0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@changesets/read/-/read-0.6.2.tgz#816cf75dd22a70e75ac279474e44be52fb3fb91b" + integrity sha512-wjfQpJvryY3zD61p8jR87mJdyx2FIhEcdXhKUqkja87toMrP/3jtg/Yg29upN+N4Ckf525/uvV7a4tzBlpk6gg== dependencies: - "@changesets/git" "^3.0.1" + "@changesets/git" "^3.0.2" "@changesets/logger" "^0.1.1" "@changesets/parse" "^0.4.0" "@changesets/types" "^6.0.0" @@ -750,10 +641,10 @@ human-id "^1.0.2" prettier "^2.7.1" -"@es-joy/jsdoccomment@~0.48.0": - version "0.48.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.48.0.tgz#5d9dc1a295cf5d1ed224dffafb4800d5c7206c27" - integrity sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw== +"@es-joy/jsdoccomment@~0.49.0": + version "0.49.0" + resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.49.0.tgz#e5ec1eda837c802eca67d3b29e577197f14ba1db" + integrity sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q== dependencies: comment-parser "1.4.1" esquery "^1.6.0" @@ -886,34 +777,31 @@ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== -"@eslint-community/regexpp@^4.11.0": - version "4.11.0" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae" - integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== +"@eslint-community/regexpp@^4.12.1": + version "4.12.1" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" + integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== -"@eslint-community/regexpp@^4.5.1": - version "4.9.1" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.9.1.tgz#449dfa81a57a1d755b09aa58d826c1262e4283b4" - integrity sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA== - -"@eslint/config-array@^0.18.0": - version "0.18.0" - resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.18.0.tgz#37d8fe656e0d5e3dbaea7758ea56540867fd074d" - integrity sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw== +"@eslint/config-array@^0.19.0": + version "0.19.1" + resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.19.1.tgz#734aaea2c40be22bbb1f2a9dac687c57a6a4c984" + integrity sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA== dependencies: - "@eslint/object-schema" "^2.1.4" + "@eslint/object-schema" "^2.1.5" debug "^4.3.1" minimatch "^3.1.2" -"@eslint/core@^0.6.0": - version "0.6.0" - resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.6.0.tgz#9930b5ba24c406d67a1760e94cdbac616a6eb674" - integrity sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg== +"@eslint/core@^0.9.0": + version "0.9.1" + resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.9.1.tgz#31763847308ef6b7084a4505573ac9402c51f9d1" + integrity sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q== + dependencies: + "@types/json-schema" "^7.0.15" -"@eslint/eslintrc@^3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.1.0.tgz#dbd3482bfd91efa663cbe7aa1f506839868207b6" - integrity sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ== +"@eslint/eslintrc@^3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.2.0.tgz#57470ac4e2e283a6bf76044d63281196e370542c" + integrity sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w== dependencies: ajv "^6.12.4" debug "^4.3.2" @@ -925,27 +813,27 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.11.1", "@eslint/js@^9.11.1": - version "9.11.1" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.11.1.tgz#8bcb37436f9854b3d9a561440daf916acd940986" - integrity sha512-/qu+TWz8WwPWc7/HcIJKi+c+MOm46GdVaSlTTQcaqaL53+GsoA6MxWp5PtTx48qbSP7ylM1Kn7nhvkugfJvRSA== +"@eslint/js@9.17.0", "@eslint/js@^9.17.0": + version "9.17.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.17.0.tgz#1523e586791f80376a6f8398a3964455ecc651ec" + integrity sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w== -"@eslint/object-schema@^2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.4.tgz#9e69f8bb4031e11df79e03db09f9dbbae1740843" - integrity sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ== +"@eslint/object-schema@^2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.5.tgz#8670a8f6258a2be5b2c620ff314a1d984c23eb2e" + integrity sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ== -"@eslint/plugin-kit@^0.2.0": - version "0.2.0" - resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.2.0.tgz#8712dccae365d24e9eeecb7b346f85e750ba343d" - integrity sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig== +"@eslint/plugin-kit@^0.2.3": + version "0.2.4" + resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz#2b78e7bb3755784bb13faa8932a1d994d6537792" + integrity sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg== dependencies: levn "^0.4.1" -"@faker-js/faker@^9.0.2": - version "9.0.2" - resolved "https://registry.yarnpkg.com/@faker-js/faker/-/faker-9.0.2.tgz#1d8decd97dafab745760980ae57605bbdb618564" - integrity sha512-nI/FP30ZGXb+UaR7yXawVTH40NVKXPIx0tA3GKjkKLjorqBoMAeq4iSEacl8mJmpVhOCDa0vYHwYDmOOcFMrYw== +"@faker-js/faker@^9.3.0": + version "9.3.0" + resolved "https://registry.yarnpkg.com/@faker-js/faker/-/faker-9.3.0.tgz#ef398dab34c67faaa0e348318c905eae3564fa58" + integrity sha512-r0tJ3ZOkMd9xsu3VRfqlFR6cz0V/jFYRswAIpC+m/DIfAUXq7g8N7wTAlhSANySXYGKzGryfDXwtwsY8TxEIDw== "@fontsource/hanken-grotesk@^5.1.0": version "5.1.0" @@ -957,6 +845,28 @@ resolved "https://registry.yarnpkg.com/@fontsource/roboto/-/roboto-5.1.0.tgz#00230737ec09c60ae877a5e33d067c0607fdd5ba" integrity sha512-cFRRC1s6RqPygeZ8Uw/acwVHqih8Czjt6Q0MwoUoDe9U3m4dH1HmNDRBZyqlMSFwgNAUKgFImncKdmDHyKpwdg== +"@gerrit0/mini-shiki@^1.24.0": + version "1.24.4" + resolved "https://registry.yarnpkg.com/@gerrit0/mini-shiki/-/mini-shiki-1.24.4.tgz#e5328ca0dccc094460c03701d62158137a5a2eda" + integrity sha512-YEHW1QeAg6UmxEmswiQbOVEg1CW22b1XUD/lNTliOsu0LD0wqoyleFMnmbTp697QE0pcadQiR5cVtbbAPncvpw== + dependencies: + "@shikijs/engine-oniguruma" "^1.24.2" + "@shikijs/types" "^1.24.2" + "@shikijs/vscode-textmate" "^9.3.1" + +"@humanfs/core@^0.19.1": + version "0.19.1" + resolved "https://registry.yarnpkg.com/@humanfs/core/-/core-0.19.1.tgz#17c55ca7d426733fe3c561906b8173c336b40a77" + integrity sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA== + +"@humanfs/node@^0.16.6": + version "0.16.6" + resolved "https://registry.yarnpkg.com/@humanfs/node/-/node-0.16.6.tgz#ee2a10eaabd1131987bf0488fd9b820174cd765e" + integrity sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw== + dependencies: + "@humanfs/core" "^0.19.1" + "@humanwhocodes/retry" "^0.3.0" + "@humanwhocodes/module-importer@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" @@ -967,44 +877,43 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.3.0.tgz#6d86b8cb322660f03d3f0aa94b99bdd8e172d570" integrity sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew== -"@inquirer/confirm@^3.0.0": - version "3.1.14" - resolved "https://registry.yarnpkg.com/@inquirer/confirm/-/confirm-3.1.14.tgz#b50a156f2cc0a6f874f2d2ab1739e988fbf950f4" - integrity sha512-nbLSX37b2dGPtKWL3rPuR/5hOuD30S+pqJ/MuFiUEgN6GiMs8UMxiurKAMDzKt6C95ltjupa8zH6+3csXNHWpA== +"@humanwhocodes/retry@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.4.1.tgz#9a96ce501bc62df46c4031fbd970e3cc6b10f07b" + integrity sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA== + +"@inquirer/confirm@^5.0.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@inquirer/confirm/-/confirm-5.1.0.tgz#061cd0790c8debe092353589a501211b0d6c53ef" + integrity sha512-osaBbIMEqVFjTX5exoqPXs6PilWQdjaLhGtMDXMXg/yxkHXNq43GlxGyTA35lK2HpzUgDN+Cjh/2AmqCN0QJpw== dependencies: - "@inquirer/core" "^9.0.2" - "@inquirer/type" "^1.4.0" + "@inquirer/core" "^10.1.1" + "@inquirer/type" "^3.0.1" -"@inquirer/core@^9.0.2": - version "9.0.2" - resolved "https://registry.yarnpkg.com/@inquirer/core/-/core-9.0.2.tgz#8be8782266f00129acb5c804537d1231b2fe3ac6" - integrity sha512-nguvH3TZar3ACwbytZrraRTzGqyxJfYJwv+ZwqZNatAosdWQMP1GV8zvmkNlBe2JeZSaw0WYBHZk52pDpWC9qA== +"@inquirer/core@^10.1.1": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@inquirer/core/-/core-10.1.1.tgz#801e82649fb64bcb2b5e4667397ff8c25bccebab" + integrity sha512-rmZVXy9iZvO3ZStEe/ayuuwIJ23LSF13aPMlLMTQARX6lGUBDHGV8UB5i9MRrfy0+mZwt5/9bdy8llszSD3NQA== dependencies: - "@inquirer/figures" "^1.0.3" - "@inquirer/type" "^1.4.0" - "@types/mute-stream" "^0.0.4" - "@types/node" "^20.14.9" - "@types/wrap-ansi" "^3.0.0" + "@inquirer/figures" "^1.0.8" + "@inquirer/type" "^3.0.1" ansi-escapes "^4.3.2" - cli-spinners "^2.9.2" cli-width "^4.1.0" - mute-stream "^1.0.0" + mute-stream "^2.0.0" signal-exit "^4.1.0" strip-ansi "^6.0.1" wrap-ansi "^6.2.0" yoctocolors-cjs "^2.1.2" -"@inquirer/figures@^1.0.3": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@inquirer/figures/-/figures-1.0.3.tgz#1227cc980f88e6d6ab85abadbf164f5038041edd" - integrity sha512-ErXXzENMH5pJt5/ssXV0DfWUZqly8nGzf0UcBV9xTnP+KyffE2mqyxIMBrZ8ijQck2nU0TQm40EQB53YreyWHw== +"@inquirer/figures@^1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@inquirer/figures/-/figures-1.0.8.tgz#d9e414a1376a331a0e71b151fea27c48845788b0" + integrity sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg== -"@inquirer/type@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@inquirer/type/-/type-1.4.0.tgz#3dd0c8f78c0548bbc18b9c07af16a86c4007e1f0" - integrity sha512-AjOqykVyjdJQvtfkNDGUyMYGF8xN50VUxftCQWsOyIo4DFRLr6VQhW0VItGI1JIyQGCGgIpKa7hMMwNhZb4OIw== - dependencies: - mute-stream "^1.0.0" +"@inquirer/type@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@inquirer/type/-/type-3.0.1.tgz#619ce9f65c3e114d8e39c41822bed3440d20b478" + integrity sha512-+ksJMIy92sOAiAccGpcKZUc3bYO07cADnscIxHBknEm3uNts3movSmBofc1908BNy5edKscxYeAdaX1NXkHS6A== "@isaacs/cliui@^8.0.2": version "8.0.2" @@ -1018,7 +927,7 @@ wrap-ansi "^8.1.0" wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": +"@jridgewell/gen-mapping@^0.3.0": version "0.3.3" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== @@ -1061,14 +970,6 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.19" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz#f8a3249862f91be48d3127c3cfe992f79b4b8811" - integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" @@ -1077,6 +978,14 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@jridgewell/trace-mapping@^0.3.9": + version "0.3.19" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz#f8a3249862f91be48d3127c3cfe992f79b4b8811" + integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@js-joda/core@^5.6.3": version "5.6.3" resolved "https://registry.yarnpkg.com/@js-joda/core/-/core-5.6.3.tgz#41ae1c07de1ebe0f6dde1abcbc9700a09b9c6056" @@ -1112,27 +1021,27 @@ globby "^11.0.0" read-yaml-file "^1.1.0" -"@microsoft/api-extractor-model@7.29.6": - version "7.29.6" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.29.6.tgz#e5941514502049b06ca9af21e2096f8f1ad5a01b" - integrity sha512-gC0KGtrZvxzf/Rt9oMYD2dHvtN/1KPEYsrQPyMKhLHnlVuO/f4AFN3E4toqZzD2pt4LhkKoYmL2H9tX3yCOyRw== +"@microsoft/api-extractor-model@7.30.1": + version "7.30.1" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.30.1.tgz#719e2ab8afe8fe3a5dd65aaa8783dbba90f7c802" + integrity sha512-CTS2PlASJHxVY8hqHORVb1HdECWOEMcMnM6/kDkPr0RZapAFSIHhg9D4jxuE8g+OWYHtPc10LCpmde5pylTRlA== dependencies: - "@microsoft/tsdoc" "~0.15.0" - "@microsoft/tsdoc-config" "~0.17.0" - "@rushstack/node-core-library" "5.7.0" + "@microsoft/tsdoc" "~0.15.1" + "@microsoft/tsdoc-config" "~0.17.1" + "@rushstack/node-core-library" "5.10.1" -"@microsoft/api-extractor@7.47.7": - version "7.47.7" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.47.7.tgz#3bc4450fe46c265bef857ab938aa15b9fc7a85de" - integrity sha512-fNiD3G55ZJGhPOBPMKD/enozj8yxJSYyVJWxRWdcUtw842rvthDHJgUWq9gXQTensFlMHv2wGuCjjivPv53j0A== +"@microsoft/api-extractor@^7.47.11": + version "7.48.1" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.48.1.tgz#792197cfc5113cd2efc04524c065d682ef58d2ba" + integrity sha512-HN9Osa1WxqLM66RaqB5nPAadx+nTIQmY/XtkFdaJvusjG8Tus++QqZtD7KPZDSkhEMGHsYeSyeU8qUzCDUXPjg== dependencies: - "@microsoft/api-extractor-model" "7.29.6" - "@microsoft/tsdoc" "~0.15.0" - "@microsoft/tsdoc-config" "~0.17.0" - "@rushstack/node-core-library" "5.7.0" + "@microsoft/api-extractor-model" "7.30.1" + "@microsoft/tsdoc" "~0.15.1" + "@microsoft/tsdoc-config" "~0.17.1" + "@rushstack/node-core-library" "5.10.1" "@rushstack/rig-package" "0.5.3" - "@rushstack/terminal" "0.14.0" - "@rushstack/ts-command-line" "4.22.6" + "@rushstack/terminal" "0.14.4" + "@rushstack/ts-command-line" "4.23.2" lodash "~4.17.15" minimatch "~3.0.3" resolve "~1.22.1" @@ -1140,25 +1049,25 @@ source-map "~0.6.1" typescript "5.4.2" -"@microsoft/tsdoc-config@~0.17.0": - version "0.17.0" - resolved "https://registry.yarnpkg.com/@microsoft/tsdoc-config/-/tsdoc-config-0.17.0.tgz#82605152b3c1d3f5cd4a11697bc298437484d55d" - integrity sha512-v/EYRXnCAIHxOHW+Plb6OWuUoMotxTN0GLatnpOb1xq0KuTNw/WI3pamJx/UbsoJP5k9MCw1QxvvhPcF9pH3Zg== +"@microsoft/tsdoc-config@~0.17.1": + version "0.17.1" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc-config/-/tsdoc-config-0.17.1.tgz#e0f0b50628f4ad7fe121ca616beacfe6a25b9335" + integrity sha512-UtjIFe0C6oYgTnad4q1QP4qXwLhe6tIpNTRStJ2RZEPIkqQPREAwE5spzVxsdn9UaEMUqhh0AqSx3X4nWAKXWw== dependencies: - "@microsoft/tsdoc" "0.15.0" + "@microsoft/tsdoc" "0.15.1" ajv "~8.12.0" jju "~1.4.0" resolve "~1.22.2" -"@microsoft/tsdoc@0.15.0", "@microsoft/tsdoc@~0.15.0": - version "0.15.0" - resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.15.0.tgz#f29a55df17cb6e87cfbabce33ff6a14a9f85076d" - integrity sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA== +"@microsoft/tsdoc@0.15.1", "@microsoft/tsdoc@~0.15.1": + version "0.15.1" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.15.1.tgz#d4f6937353bc4568292654efb0a0e0532adbcba2" + integrity sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw== -"@mswjs/interceptors@^0.35.8": - version "0.35.8" - resolved "https://registry.yarnpkg.com/@mswjs/interceptors/-/interceptors-0.35.8.tgz#f36e5907e05593e33037ef4519aac7815fa3509f" - integrity sha512-PFfqpHplKa7KMdoQdj5td03uG05VK2Ng1dG0sP4pT9h0dGSX2v9txYt/AnrzPb/vAmfyBBC0NQV7VaBEX+efgQ== +"@mswjs/interceptors@^0.37.0": + version "0.37.3" + resolved "https://registry.yarnpkg.com/@mswjs/interceptors/-/interceptors-0.37.3.tgz#1ed2460c2f056ffad2a179a119bb755ac50140a6" + integrity sha512-USvgCL/uOGFtVa6SVyRrC8kIAedzRohxIXN5LISlg5C5vLZCn7dgMFVSNhSF9cuBEFrm/O2spDWEZeMnw4ZXYg== dependencies: "@open-draft/deferred-promise" "^2.2.0" "@open-draft/logger" "^0.3.0" @@ -1180,7 +1089,7 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": +"@nodelib/fs.walk@^1.2.3": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== @@ -1211,6 +1120,95 @@ resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-2.1.0.tgz#0acf32f470af2ceaf47f095cdecd40d68666efda" integrity sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg== +"@parcel/watcher-android-arm64@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz#e32d3dda6647791ee930556aee206fcd5ea0fb7a" + integrity sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ== + +"@parcel/watcher-darwin-arm64@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz#0d9e680b7e9ec1c8f54944f1b945aa8755afb12f" + integrity sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw== + +"@parcel/watcher-darwin-x64@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz#f9f1d5ce9d5878d344f14ef1856b7a830c59d1bb" + integrity sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA== + +"@parcel/watcher-freebsd-x64@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz#2b77f0c82d19e84ff4c21de6da7f7d096b1a7e82" + integrity sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw== + +"@parcel/watcher-linux-arm-glibc@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz#92ed322c56dbafa3d2545dcf2803334aee131e42" + integrity sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA== + +"@parcel/watcher-linux-arm-musl@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz#cd48e9bfde0cdbbd2ecd9accfc52967e22f849a4" + integrity sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA== + +"@parcel/watcher-linux-arm64-glibc@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz#7b81f6d5a442bb89fbabaf6c13573e94a46feb03" + integrity sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA== + +"@parcel/watcher-linux-arm64-musl@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz#dcb8ff01077cdf59a18d9e0a4dff7a0cfe5fd732" + integrity sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q== + +"@parcel/watcher-linux-x64-glibc@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz#2e254600fda4e32d83942384d1106e1eed84494d" + integrity sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw== + +"@parcel/watcher-linux-x64-musl@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz#01fcea60fedbb3225af808d3f0a7b11229792eef" + integrity sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA== + +"@parcel/watcher-win32-arm64@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz#87cdb16e0783e770197e52fb1dc027bb0c847154" + integrity sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig== + +"@parcel/watcher-win32-ia32@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz#778c39b56da33e045ba21c678c31a9f9d7c6b220" + integrity sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA== + +"@parcel/watcher-win32-x64@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.0.tgz#33873876d0bbc588aacce38e90d1d7480ce81cb7" + integrity sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw== + +"@parcel/watcher@^2.4.1": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.5.0.tgz#5c88818b12b8de4307a9d3e6dc3e28eba0dfbd10" + integrity sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ== + dependencies: + detect-libc "^1.0.3" + is-glob "^4.0.3" + micromatch "^4.0.5" + node-addon-api "^7.0.0" + optionalDependencies: + "@parcel/watcher-android-arm64" "2.5.0" + "@parcel/watcher-darwin-arm64" "2.5.0" + "@parcel/watcher-darwin-x64" "2.5.0" + "@parcel/watcher-freebsd-x64" "2.5.0" + "@parcel/watcher-linux-arm-glibc" "2.5.0" + "@parcel/watcher-linux-arm-musl" "2.5.0" + "@parcel/watcher-linux-arm64-glibc" "2.5.0" + "@parcel/watcher-linux-arm64-musl" "2.5.0" + "@parcel/watcher-linux-x64-glibc" "2.5.0" + "@parcel/watcher-linux-x64-musl" "2.5.0" + "@parcel/watcher-win32-arm64" "2.5.0" + "@parcel/watcher-win32-ia32" "2.5.0" + "@parcel/watcher-win32-x64" "2.5.0" + "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" @@ -1233,12 +1231,12 @@ picocolors "^1.0.0" tslib "^2.6.0" -"@playwright/test@^1.47.2": - version "1.47.2" - resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.47.2.tgz#dbe7051336bfc5cc599954214f9111181dbc7475" - integrity sha512-jTXRsoSPONAs8Za9QEQdyjFn+0ZQFjCiIztAIF6bi1HqhBzG9Ma7g1WotyiGqFSBRZjIEqMdT8RUlbk1QVhzCQ== +"@playwright/test@^1.49.1": + version "1.49.1" + resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.49.1.tgz#55fa360658b3187bfb6371e2f8a64f50ef80c827" + integrity sha512-Ky+BVzPz8pL6PQxHqNRW1k3mIyv933LML7HktS8uik0bUXNCdPhoS/kLihiO1tMf/egaJb4IutXd7UywvXEW+g== dependencies: - playwright "1.47.2" + playwright "1.49.1" "@polka/url@^1.0.0-next.24": version "1.0.0-next.25" @@ -1334,10 +1332,10 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.2.tgz#e4291e3c1bc637083f87936c333cdbcad22af63b" integrity sha512-6UUxd0+SKomjdzuAcp+HAmxw1FlGBnl1v2yEPSabtx4lBfdXHDVsW7+lQkgz9cNFJGY3AWR7+V8P5BqkD9L9nA== -"@rushstack/node-core-library@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-5.7.0.tgz#f28699c7d0b3de0120a207f8b9d5bd7c69806e18" - integrity sha512-Ff9Cz/YlWu9ce4dmqNBZpA45AEya04XaBFIjV7xTVeEf+y/kTjEasmozqFELXlNG4ROdevss75JrrZ5WgufDkQ== +"@rushstack/node-core-library@5.10.1": + version "5.10.1" + resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-5.10.1.tgz#14c10c918ed12da003c21af9d5bf0e76633215d2" + integrity sha512-BSb/KcyBHmUQwINrgtzo6jiH0HlGFmrUy33vO6unmceuVKTEyL2q+P0fQq2oB5hvXVWOEUhxB2QvlkZluvUEmg== dependencies: ajv "~8.13.0" ajv-draft-04 "~1.0.0" @@ -1356,70 +1354,44 @@ resolve "~1.22.1" strip-json-comments "~3.1.1" -"@rushstack/terminal@0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@rushstack/terminal/-/terminal-0.14.0.tgz#967ecc586d7172204353059f8fdb1760666e9381" - integrity sha512-juTKMAMpTIJKudeFkG5slD8Z/LHwNwGZLtU441l/u82XdTBfsP+LbGKJLCNwP5se+DMCT55GB8x9p6+C4UL7jw== +"@rushstack/terminal@0.14.4": + version "0.14.4" + resolved "https://registry.yarnpkg.com/@rushstack/terminal/-/terminal-0.14.4.tgz#37e160b0878a324cf3e0fecab25fe48a030e29ed" + integrity sha512-NxACqERW0PHq8Rpq1V6v5iTHEwkRGxenjEW+VWqRYQ8T9puUzgmGHmEZUaUEDHAe9Qyvp0/Ew04sAiQw9XjhJg== dependencies: - "@rushstack/node-core-library" "5.7.0" + "@rushstack/node-core-library" "5.10.1" supports-color "~8.1.1" -"@rushstack/ts-command-line@4.22.6": - version "4.22.6" - resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.22.6.tgz#2aee4fc98c6043c026ce278880fbffb5227de5ca" - integrity sha512-QSRqHT/IfoC5nk9zn6+fgyqOPXHME0BfchII9EUPR19pocsNp/xSbeBCbD3PIR2Lg+Q5qk7OFqk1VhWPMdKHJg== +"@rushstack/ts-command-line@4.23.2": + version "4.23.2" + resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.23.2.tgz#37b28a418db84d04f6a1c787390dd02ad8dfadf0" + integrity sha512-JJ7XZX5K3ThBBva38aomgsPv1L7FV6XmSOcR6HtM7HDFZJkepqT65imw26h9ggGqMjsY0R9jcl30tzKcVj9aOQ== dependencies: - "@rushstack/terminal" "0.14.0" + "@rushstack/terminal" "0.14.4" "@types/argparse" "1.0.38" argparse "~1.0.9" string-argv "~0.3.1" -"@shikijs/core@1.19.0": - version "1.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-1.19.0.tgz#97b26892b775bbf1355c131d1780e732990ba06b" - integrity sha512-314J5MPdS1wzfjuD856MXvbAI2wN03ofMnUGkZ5ZDBOza/d38paLwd+YVyuKrrjxJ4hfPMjc4tRmPkXd6UDMPQ== - dependencies: - "@shikijs/engine-javascript" "1.19.0" - "@shikijs/engine-oniguruma" "1.19.0" - "@shikijs/types" "1.19.0" - "@shikijs/vscode-textmate" "^9.2.2" - "@types/hast" "^3.0.4" - hast-util-to-html "^9.0.3" - -"@shikijs/engine-javascript@1.19.0": - version "1.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-1.19.0.tgz#f8c889fdd32196b56570f146ad9c691c066e7f32" - integrity sha512-D1sioU61n7fLWfDzTC9JNS19zEYZMr7qxkSVzv6ziEWDxnwzy2PvYoKPedJV4qUf+2VnrYPSaArDz2W0XgGB7A== +"@shikijs/engine-oniguruma@^1.24.2": + version "1.24.2" + resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-1.24.2.tgz#90924001a17a2551a2a9073aed4af3767ce68b1b" + integrity sha512-ZN6k//aDNWRJs1uKB12pturKHh7GejKugowOFGAuG7TxDRLod1Bd5JhpOikOiFqPmKjKEPtEA6mRCf7q3ulDyQ== dependencies: - "@shikijs/types" "1.19.0" - "@shikijs/vscode-textmate" "^9.2.2" - oniguruma-to-js "0.4.3" + "@shikijs/types" "1.24.2" + "@shikijs/vscode-textmate" "^9.3.0" -"@shikijs/engine-oniguruma@1.19.0": - version "1.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-1.19.0.tgz#14f907406dd9dfad8db0105b9929ab7fee5a85a8" - integrity sha512-/JxwIefNVLGB4EmpB8i6P4JB/oVYRuzSixbqvx7m6iPW0lQ1T97c/0wmA+JlKbngEiExckSuPwa48fajlShB7A== +"@shikijs/types@1.24.2", "@shikijs/types@^1.24.2": + version "1.24.2" + resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-1.24.2.tgz#770313a0072a7c14ab1a130a36d02df7e4d87375" + integrity sha512-bdeWZiDtajGLG9BudI0AHet0b6e7FbR0EsE4jpGaI0YwHm/XJunI9+3uZnzFtX65gsyJ6ngCIWUfA4NWRPnBkQ== dependencies: - "@shikijs/types" "1.19.0" - "@shikijs/vscode-textmate" "^9.2.2" - -"@shikijs/types@1.19.0": - version "1.19.0" - resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-1.19.0.tgz#df2df694013c2353309c6671e01164803d5a7ae2" - integrity sha512-NZvVp3k1bP4MTRUbmnkGhYzPdoNMjNLSAwczMRUbtUl4oj2LlNRNbwERyeIyJt56Ac9fvPVZ2nn13OXk86E5UQ== - dependencies: - "@shikijs/vscode-textmate" "^9.2.2" + "@shikijs/vscode-textmate" "^9.3.0" "@types/hast" "^3.0.4" -"@shikijs/vscode-textmate@^9.2.2": - version "9.2.2" - resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-9.2.2.tgz#24571f50625c7cd075f9efe0def8b9d2c0930ada" - integrity sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg== - -"@sindresorhus/merge-streams@^2.1.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz#719df7fb41766bc143369eaa0dd56d8dc87c9958" - integrity sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg== +"@shikijs/vscode-textmate@^9.3.0", "@shikijs/vscode-textmate@^9.3.1": + version "9.3.1" + resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-9.3.1.tgz#afda31f8f42cab70a26f3603f52eae3f1c35d2f7" + integrity sha512-79QfK1393x9Ho60QFyLti+QfdJzRQCVLFb97kOIV7Eo9vQU/roINgk7m24uv0a7AUvN//RDH36FLjjK48v0s9g== "@testing-library/dom@^10.4.0": version "10.4.0" @@ -1518,12 +1490,12 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== -"@types/geojson@^7946.0.14": - version "7946.0.14" - resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.14.tgz#319b63ad6df705ee2a65a73ef042c8271e696613" - integrity sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg== +"@types/geojson@^7946.0.15": + version "7946.0.15" + resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.15.tgz#f9d55fd5a0aa2de9dc80b1b04e437538b7298868" + integrity sha512-9oSxFzDCT2Rj6DfcHF8G++jxBKS7mBqXl5xrRW+Kbvjry6Uduya2iiwqHPhVXpasAVMBYKkEPGgKhd3+/HZ6xA== -"@types/hast@^3.0.0", "@types/hast@^3.0.4": +"@types/hast@^3.0.4": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ== @@ -1539,7 +1511,7 @@ "@types/tough-cookie" "*" parse5 "^7.0.0" -"@types/json-schema@*", "@types/json-schema@^7.0.12": +"@types/json-schema@*": version "7.0.13" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.13.tgz#02c24f4363176d2d18fc8b70b9f3c54aba178a85" integrity sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ== @@ -1549,20 +1521,6 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== -"@types/mdast@^4.0.0": - version "4.0.4" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.4.tgz#7ccf72edd2f1aa7dd3437e180c64373585804dd6" - integrity sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA== - dependencies: - "@types/unist" "*" - -"@types/mute-stream@^0.0.4": - version "0.0.4" - resolved "https://registry.yarnpkg.com/@types/mute-stream/-/mute-stream-0.0.4.tgz#77208e56a08767af6c5e1237be8888e2f255c478" - integrity sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow== - dependencies: - "@types/node" "*" - "@types/node@*": version "20.11.20" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.20.tgz#f0a2aee575215149a62784210ad88b3a34843659" @@ -1575,19 +1533,12 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== -"@types/node@^20.14.9": - version "20.14.10" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.10.tgz#a1a218290f1b6428682e3af044785e5874db469a" - integrity sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ== +"@types/node@^22.10.2": + version "22.10.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.10.2.tgz#a485426e6d1fdafc7b0d4c7b24e2c78182ddabb9" + integrity sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ== dependencies: - undici-types "~5.26.4" - -"@types/node@^22.7.2": - version "22.7.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.7.2.tgz#80ed66c0a5025ffa037587fd69a816f29b54e4c7" - integrity sha512-866lXSrpGpgyHBZUa2m9YNWqHDjjM0aBTJlNtYaGEw4rqY/dcD7deRVTbBBAJelfA7oaGDbNftXF/TL/A6RgoA== - dependencies: - undici-types "~6.19.2" + undici-types "~6.20.0" "@types/papaparse@^5.3.15": version "5.3.15" @@ -1603,11 +1554,6 @@ dependencies: types-ramda "^0.30.1" -"@types/semver@^7.5.0": - version "7.5.3" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.3.tgz#9a726e116beb26c24f1ccd6850201e1246122e04" - integrity sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw== - "@types/statuses@^2.0.4": version "2.0.5" resolved "https://registry.yarnpkg.com/@types/statuses/-/statuses-2.0.5.tgz#f61ab46d5352fd73c863a1ea4e1cef3b0b51ae63" @@ -1633,137 +1579,62 @@ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.2.tgz#6dd61e43ef60b34086287f83683a5c1b2dc53d20" integrity sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ== -"@types/unist@^3.0.0": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" - integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== - -"@types/wrap-ansi@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/wrap-ansi/-/wrap-ansi-3.0.0.tgz#18b97a972f94f60a679fd5c796d96421b9abb9fd" - integrity sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g== - -"@typescript-eslint/eslint-plugin@8.7.0", "@typescript-eslint/eslint-plugin@^8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.7.0.tgz#d0070f206daad26253bf00ca5b80f9b54f9e2dd0" - integrity sha512-RIHOoznhA3CCfSTFiB6kBGLQtB/sox+pJ6jeFu6FxJvqL8qRxq/FfGO/UhsGgQM9oGdXkV4xUgli+dt26biB6A== +"@typescript-eslint/eslint-plugin@8.18.1", "@typescript-eslint/eslint-plugin@^8.15.0", "@typescript-eslint/eslint-plugin@^8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.1.tgz#992e5ac1553ce20d0d46aa6eccd79dc36dedc805" + integrity sha512-Ncvsq5CT3Gvh+uJG0Lwlho6suwDfUXH0HztslDf5I+F2wAFAZMRwYLEorumpKLzmO2suAXZ/td1tBg4NZIi9CQ== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "8.7.0" - "@typescript-eslint/type-utils" "8.7.0" - "@typescript-eslint/utils" "8.7.0" - "@typescript-eslint/visitor-keys" "8.7.0" + "@typescript-eslint/scope-manager" "8.18.1" + "@typescript-eslint/type-utils" "8.18.1" + "@typescript-eslint/utils" "8.18.1" + "@typescript-eslint/visitor-keys" "8.18.1" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" -"@typescript-eslint/eslint-plugin@^7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.1.tgz#dd71fc5c7ecec745ca26ece506d84d203a205c0e" - integrity sha512-zioDz623d0RHNhvx0eesUmGfIjzrk18nSBC8xewepKXbBvN/7c1qImV7Hg8TI1URTxKax7/zxfxj3Uph8Chcuw== - dependencies: - "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "7.1.1" - "@typescript-eslint/type-utils" "7.1.1" - "@typescript-eslint/utils" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" - debug "^4.3.4" - graphemer "^1.4.0" - ignore "^5.2.4" - natural-compare "^1.4.0" - semver "^7.5.4" - ts-api-utils "^1.0.1" - -"@typescript-eslint/parser@8.7.0", "@typescript-eslint/parser@^8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.7.0.tgz#a567b0890d13db72c7348e1d88442ea8ab4e9173" - integrity sha512-lN0btVpj2unxHlNYLI//BQ7nzbMJYBVQX5+pbNXvGYazdlgYonMn4AhhHifQ+J4fGRYA/m1DjaQjx+fDetqBOQ== +"@typescript-eslint/parser@8.18.1", "@typescript-eslint/parser@^8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.18.1.tgz#c258bae062778b7696793bc492249027a39dfb95" + integrity sha512-rBnTWHCdbYM2lh7hjyXqxk70wvon3p2FyaniZuey5TrcGBpfhVp0OxOa6gxr9Q9YhZFKyfbEnxc24ZnVbbUkCA== dependencies: - "@typescript-eslint/scope-manager" "8.7.0" - "@typescript-eslint/types" "8.7.0" - "@typescript-eslint/typescript-estree" "8.7.0" - "@typescript-eslint/visitor-keys" "8.7.0" + "@typescript-eslint/scope-manager" "8.18.1" + "@typescript-eslint/types" "8.18.1" + "@typescript-eslint/typescript-estree" "8.18.1" + "@typescript-eslint/visitor-keys" "8.18.1" debug "^4.3.4" -"@typescript-eslint/parser@^7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.1.1.tgz#6a9d0a5c9ccdf5dbd3cb8c949728c64e24e07d1f" - integrity sha512-ZWUFyL0z04R1nAEgr9e79YtV5LbafdOtN7yapNbn1ansMyaegl2D4bL7vHoJ4HPSc4CaLwuCVas8CVuneKzplQ== - dependencies: - "@typescript-eslint/scope-manager" "7.1.1" - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/typescript-estree" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" - debug "^4.3.4" - -"@typescript-eslint/scope-manager@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.1.1.tgz#9e301803ff8e21a74f50c6f89a4baccad9a48f93" - integrity sha512-cirZpA8bJMRb4WZ+rO6+mnOJrGFDd38WoXCEI57+CYBqta8Yc8aJym2i7vyqLL1vVYljgw0X27axkUXz32T8TA== - dependencies: - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" - -"@typescript-eslint/scope-manager@8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.7.0.tgz#90ee7bf9bc982b9260b93347c01a8bc2b595e0b8" - integrity sha512-87rC0k3ZlDOuz82zzXRtQ7Akv3GKhHs0ti4YcbAJtaomllXoSO8hi7Ix3ccEvCd824dy9aIX+j3d2UMAfCtVpg== - dependencies: - "@typescript-eslint/types" "8.7.0" - "@typescript-eslint/visitor-keys" "8.7.0" - -"@typescript-eslint/type-utils@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.1.1.tgz#aee820d5bedd39b83c18585a526cc520ddb7a226" - integrity sha512-5r4RKze6XHEEhlZnJtR3GYeCh1IueUHdbrukV2KSlLXaTjuSfeVF8mZUVPLovidCuZfbVjfhi4c0DNSa/Rdg5g== +"@typescript-eslint/scope-manager@8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.18.1.tgz#52cedc3a8178d7464a70beffed3203678648e55b" + integrity sha512-HxfHo2b090M5s2+/9Z3gkBhI6xBH8OJCFjH9MhQ+nnoZqxU3wNxkLT+VWXWSFWc3UF3Z+CfPAyqdCTdoXtDPCQ== dependencies: - "@typescript-eslint/typescript-estree" "7.1.1" - "@typescript-eslint/utils" "7.1.1" - debug "^4.3.4" - ts-api-utils "^1.0.1" + "@typescript-eslint/types" "8.18.1" + "@typescript-eslint/visitor-keys" "8.18.1" -"@typescript-eslint/type-utils@8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.7.0.tgz#d56b104183bdcffcc434a23d1ce26cde5e42df93" - integrity sha512-tl0N0Mj3hMSkEYhLkjREp54OSb/FI6qyCzfiiclvJvOqre6hsZTGSnHtmFLDU8TIM62G7ygEa1bI08lcuRwEnQ== +"@typescript-eslint/type-utils@8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.18.1.tgz#10f41285475c0bdee452b79ff7223f0e43a7781e" + integrity sha512-jAhTdK/Qx2NJPNOTxXpMwlOiSymtR2j283TtPqXkKBdH8OAMmhiUfP0kJjc/qSE51Xrq02Gj9NY7MwK+UxVwHQ== dependencies: - "@typescript-eslint/typescript-estree" "8.7.0" - "@typescript-eslint/utils" "8.7.0" + "@typescript-eslint/typescript-estree" "8.18.1" + "@typescript-eslint/utils" "8.18.1" debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.1.1.tgz#ca33ba7cf58224fb46a84fea62593c2c53cd795f" - integrity sha512-KhewzrlRMrgeKm1U9bh2z5aoL4s7K3tK5DwHDn8MHv0yQfWFz/0ZR6trrIHHa5CsF83j/GgHqzdbzCXJ3crx0Q== - -"@typescript-eslint/types@8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.7.0.tgz#21d987201c07b69ce7ddc03451d7196e5445ad19" - integrity sha512-LLt4BLHFwSfASHSF2K29SZ+ZCsbQOM+LuarPjRUuHm+Qd09hSe3GCeaQbcCr+Mik+0QFRmep/FyZBO6fJ64U3w== +"@typescript-eslint/types@8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.18.1.tgz#d7f4f94d0bba9ebd088de840266fcd45408a8fff" + integrity sha512-7uoAUsCj66qdNQNpH2G8MyTFlgerum8ubf21s3TSM3XmKXuIn+H2Sifh/ES2nPOPiYSRJWAk0fDkW0APBWcpfw== -"@typescript-eslint/typescript-estree@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.1.tgz#09c54af0151a1b05d0875c0fc7fe2ec7a2476ece" - integrity sha512-9ZOncVSfr+sMXVxxca2OJOPagRwT0u/UHikM2Rd6L/aB+kL/QAuTnsv6MeXtjzCJYb8PzrXarypSGIPx3Jemxw== +"@typescript-eslint/typescript-estree@8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.1.tgz#2a86cd64b211a742f78dfa7e6f4860413475367e" + integrity sha512-z8U21WI5txzl2XYOW7i9hJhxoKKNG1kcU4RzyNvKrdZDmbjkmLBo8bgeiOJmA06kizLI76/CCBAAGlTlEeUfyg== dependencies: - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/visitor-keys" "7.1.1" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - minimatch "9.0.3" - semver "^7.5.4" - ts-api-utils "^1.0.1" - -"@typescript-eslint/typescript-estree@8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.7.0.tgz#6c7db6baa4380b937fa81466c546d052f362d0e8" - integrity sha512-MC8nmcGHsmfAKxwnluTQpNqceniT8SteVwd2voYlmiSWGOtjvGXdPl17dYu2797GVscK30Z04WRM28CrKS9WOg== - dependencies: - "@typescript-eslint/types" "8.7.0" - "@typescript-eslint/visitor-keys" "8.7.0" + "@typescript-eslint/types" "8.18.1" + "@typescript-eslint/visitor-keys" "8.18.1" debug "^4.3.4" fast-glob "^3.3.2" is-glob "^4.0.3" @@ -1771,144 +1642,118 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.1.1.tgz#bdeeb789eee4af5d3fb5400a69566d4dbf97ff3b" - integrity sha512-thOXM89xA03xAE0lW7alstvnyoBUbBX38YtY+zAUcpRPcq9EIhXPuJ0YTv948MbzmKh6e1AUszn5cBFK49Umqg== +"@typescript-eslint/utils@8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.18.1.tgz#c4199ea23fc823c736e2c96fd07b1f7235fa92d5" + integrity sha512-8vikiIj2ebrC4WRdcAdDcmnu9Q/MXXwg+STf40BVfT8exDqBCUPdypvzcUPxEqRGKg9ALagZ0UWcYCtn+4W2iQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@types/json-schema" "^7.0.12" - "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "7.1.1" - "@typescript-eslint/types" "7.1.1" - "@typescript-eslint/typescript-estree" "7.1.1" - semver "^7.5.4" + "@typescript-eslint/scope-manager" "8.18.1" + "@typescript-eslint/types" "8.18.1" + "@typescript-eslint/typescript-estree" "8.18.1" -"@typescript-eslint/utils@8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.7.0.tgz#cef3f70708b5b5fd7ed8672fc14714472bd8a011" - integrity sha512-ZbdUdwsl2X/s3CiyAu3gOlfQzpbuG3nTWKPoIvAu1pu5r8viiJvv2NPN2AqArL35NCYtw/lrPPfM4gxrMLNLPw== +"@typescript-eslint/visitor-keys@8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.1.tgz#344b4f6bc83f104f514676facf3129260df7610a" + integrity sha512-Vj0WLm5/ZsD013YeUKn+K0y8p1M0jPpxOkKdbD1wB0ns53a5piVY02zjf072TblEweAbcYiFiPoSMF3kp+VhhQ== dependencies: - "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.7.0" - "@typescript-eslint/types" "8.7.0" - "@typescript-eslint/typescript-estree" "8.7.0" + "@typescript-eslint/types" "8.18.1" + eslint-visitor-keys "^4.2.0" -"@typescript-eslint/visitor-keys@7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.1.tgz#e6538a58c9b157f03bcbb29e3b6a92fe39a6ab0d" - integrity sha512-yTdHDQxY7cSoCcAtiBzVzxleJhkGB9NncSIyMYe2+OGON1ZsP9zOPws/Pqgopa65jvknOjlk/w7ulPlZ78PiLQ== +"@vitejs/plugin-vue-jsx@^4.1.1": + version "4.1.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-4.1.1.tgz#180eef4d4ca42e9b46a2150caa605c9ae2272be7" + integrity sha512-uMJqv/7u1zz/9NbWAD3XdjaY20tKTf17XVfQ9zq4wY1BjsB/PjpJPMe2xiG39QpP4ZdhYNhm4Hvo66uJrykNLA== dependencies: - "@typescript-eslint/types" "7.1.1" - eslint-visitor-keys "^3.4.1" + "@babel/core" "^7.26.0" + "@babel/plugin-transform-typescript" "^7.25.9" + "@vue/babel-plugin-jsx" "^1.2.5" -"@typescript-eslint/visitor-keys@8.7.0": - version "8.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.7.0.tgz#5e46f1777f9d69360a883c1a56ac3c511c9659a8" - integrity sha512-b1tx0orFCCh/THWPQa2ZwWzvOeyzzp36vkJYOpVg0u8UVOIsfVrnuC9FqAw9gRKn+rG2VmWQ/zDJZzkxUnj/XQ== - dependencies: - "@typescript-eslint/types" "8.7.0" - eslint-visitor-keys "^3.4.3" - -"@ungap/structured-clone@^1.0.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" - integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== +"@vitejs/plugin-vue@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-5.2.1.tgz#d1491f678ee3af899f7ae57d9c21dc52a65c7133" + integrity sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ== -"@vitejs/plugin-vue-jsx@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-4.0.1.tgz#7be8a66da75ad412c30e57f43486fd2af20697c0" - integrity sha512-7mg9HFGnFHMEwCdB6AY83cVK4A6sCqnrjFYF4WIlebYAQVVJ/sC/CiTruVdrRlhrFoeZ8rlMxY9wYpPTIRhhAg== - dependencies: - "@babel/core" "^7.24.7" - "@babel/plugin-transform-typescript" "^7.24.7" - "@vue/babel-plugin-jsx" "^1.2.2" - -"@vitejs/plugin-vue@^5.1.4": - version "5.1.4" - resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-5.1.4.tgz#72b8b705cfce36b00b59af196195146e356500c4" - integrity sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A== - -"@vitest/browser@^2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/browser/-/browser-2.1.1.tgz#fdb79ed1e257f4263b9a6ed2c1e90f8594ef4e7e" - integrity sha512-wLKqohwlZI24xMIEZAPwv9SVliv1avaIBeE0ou471D++BRPhiw2mubKBczFFIDHXuSL7UXb8/JQK9Ui6ttW9bQ== +"@vitest/browser@^2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/browser/-/browser-2.1.8.tgz#c87cf383eb5b6f3630f5654767f8525413b53c74" + integrity sha512-OWVvEJThRgxlNMYNVLEK/9qVkpRcLvyuKLngIV3Hob01P56NjPHprVBYn+rx4xAJudbM9yrCrywPIEuA3Xyo8A== dependencies: "@testing-library/dom" "^10.4.0" "@testing-library/user-event" "^14.5.2" - "@vitest/mocker" "2.1.1" - "@vitest/utils" "2.1.1" - magic-string "^0.30.11" - msw "^2.3.5" - sirv "^2.0.4" + "@vitest/mocker" "2.1.8" + "@vitest/utils" "2.1.8" + magic-string "^0.30.12" + msw "^2.6.4" + sirv "^3.0.0" tinyrainbow "^1.2.0" ws "^8.18.0" -"@vitest/expect@2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-2.1.1.tgz#907137a86246c5328929d796d741c4e95d1ee19d" - integrity sha512-YeueunS0HiHiQxk+KEOnq/QMzlUuOzbU1Go+PgAsHvvv3tUkJPm9xWt+6ITNTlzsMXUjmgm5T+U7KBPK2qQV6w== +"@vitest/expect@2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-2.1.8.tgz#13fad0e8d5a0bf0feb675dcf1d1f1a36a1773bc1" + integrity sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw== dependencies: - "@vitest/spy" "2.1.1" - "@vitest/utils" "2.1.1" - chai "^5.1.1" + "@vitest/spy" "2.1.8" + "@vitest/utils" "2.1.8" + chai "^5.1.2" tinyrainbow "^1.2.0" -"@vitest/mocker@2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-2.1.1.tgz#3e37c80ac267318d4aa03c5073a017d148dc8e67" - integrity sha512-LNN5VwOEdJqCmJ/2XJBywB11DLlkbY0ooDJW3uRX5cZyYCrc4PI/ePX0iQhE3BiEGiQmK4GE7Q/PqCkkaiPnrA== +"@vitest/mocker@2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-2.1.8.tgz#51dec42ac244e949d20009249e033e274e323f73" + integrity sha512-7guJ/47I6uqfttp33mgo6ga5Gr1VnL58rcqYKyShoRK9ebu8T5Rs6HN3s1NABiBeVTdWNrwUMcHH54uXZBN4zA== dependencies: - "@vitest/spy" "^2.1.0-beta.1" + "@vitest/spy" "2.1.8" estree-walker "^3.0.3" - magic-string "^0.30.11" + magic-string "^0.30.12" -"@vitest/pretty-format@2.1.1", "@vitest/pretty-format@^2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-2.1.1.tgz#fea25dd4e88c3c1329fbccd1d16b1d607eb40067" - integrity sha512-SjxPFOtuINDUW8/UkElJYQSFtnWX7tMksSGW0vfjxMneFqxVr8YJ979QpMbDW7g+BIiq88RAGDjf7en6rvLPPQ== +"@vitest/pretty-format@2.1.8", "@vitest/pretty-format@^2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-2.1.8.tgz#88f47726e5d0cf4ba873d50c135b02e4395e2bca" + integrity sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ== dependencies: tinyrainbow "^1.2.0" -"@vitest/runner@2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-2.1.1.tgz#f3b1fbc3c109fc44e2cceecc881344453f275559" - integrity sha512-uTPuY6PWOYitIkLPidaY5L3t0JJITdGTSwBtwMjKzo5O6RCOEncz9PUN+0pDidX8kTHYjO0EwUIvhlGpnGpxmA== +"@vitest/runner@2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-2.1.8.tgz#b0e2dd29ca49c25e9323ea2a45a5125d8729759f" + integrity sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg== dependencies: - "@vitest/utils" "2.1.1" + "@vitest/utils" "2.1.8" pathe "^1.1.2" -"@vitest/snapshot@2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-2.1.1.tgz#38ef23104e90231fea5540754a19d8468afbba66" - integrity sha512-BnSku1WFy7r4mm96ha2FzN99AZJgpZOWrAhtQfoxjUU5YMRpq1zmHRq7a5K9/NjqonebO7iVDla+VvZS8BOWMw== +"@vitest/snapshot@2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-2.1.8.tgz#d5dc204f4b95dc8b5e468b455dfc99000047d2de" + integrity sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg== dependencies: - "@vitest/pretty-format" "2.1.1" - magic-string "^0.30.11" + "@vitest/pretty-format" "2.1.8" + magic-string "^0.30.12" pathe "^1.1.2" -"@vitest/spy@2.1.1", "@vitest/spy@^2.1.0-beta.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-2.1.1.tgz#20891f7421a994256ea0d739ed72f05532c78488" - integrity sha512-ZM39BnZ9t/xZ/nF4UwRH5il0Sw93QnZXd9NAZGRpIgj0yvVwPpLd702s/Cx955rGaMlyBQkZJ2Ir7qyY48VZ+g== +"@vitest/spy@2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-2.1.8.tgz#bc41af3e1e6a41ae3b67e51f09724136b88fa447" + integrity sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg== dependencies: - tinyspy "^3.0.0" + tinyspy "^3.0.2" -"@vitest/utils@2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-2.1.1.tgz#284d016449ecb4f8704d198d049fde8360cc136e" - integrity sha512-Y6Q9TsI+qJ2CC0ZKj6VBb+T8UPz593N113nnUykqwANqhgf3QkZeHFlusgKLTqrnVHbj/XDKZcDHol+dxVT+rQ== +"@vitest/utils@2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-2.1.8.tgz#f8ef85525f3362ebd37fd25d268745108d6ae388" + integrity sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA== dependencies: - "@vitest/pretty-format" "2.1.1" - loupe "^3.1.1" + "@vitest/pretty-format" "2.1.8" + loupe "^3.1.2" tinyrainbow "^1.2.0" -"@volar/language-core@2.2.5", "@volar/language-core@~2.2.4": - version "2.2.5" - resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-2.2.5.tgz#5c504a56afb5f23e218173d4f340f950c8805c71" - integrity sha512-2htyAuxRrAgETmFeUhT4XLELk3LiEcqoW/B8YUXMF6BrGWLMwIR09MFaZYvrA2UhbdAeSyeQ726HaWSWkexUcQ== +"@volar/language-core@2.4.11", "@volar/language-core@~2.4.8": + version "2.4.11" + resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-2.4.11.tgz#d95a9ec4f14fbdb41a6a64f9f321d11d23a5291c" + integrity sha512-lN2C1+ByfW9/JRPpqScuZt/4OrUUse57GLI6TbLgTIqBVemdl1wNcZ1qYGEo2+Gw8coYLgCy7SuKqn6IrQcQgg== dependencies: - "@volar/source-map" "2.2.5" + "@volar/source-map" "2.4.11" "@volar/language-core@2.4.5", "@volar/language-core@~2.4.1": version "2.4.5" @@ -1917,12 +1762,10 @@ dependencies: "@volar/source-map" "2.4.5" -"@volar/source-map@2.2.5": - version "2.2.5" - resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-2.2.5.tgz#01054ff47fad1d01ff966cf84cd4522f4789842d" - integrity sha512-wrOEIiZNf4E+PWB0AxyM4tfhkfldPsb3bxg8N6FHrxJH2ohar7aGu48e98bp3pR9HUA7P/pR9VrLmkTrgCCnWQ== - dependencies: - muggle-string "^0.4.0" +"@volar/source-map@2.4.11": + version "2.4.11" + resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-2.4.11.tgz#5876d4531508129724c2755e295db1df98bd5895" + integrity sha512-ZQpmafIGvaZMn/8iuvCFGrW3smeqkq/IIh9F1SdSx9aUl0J4Iurzd6/FhmjNO5g2ejF3rT45dKskgXWiofqlZQ== "@volar/source-map@2.4.5": version "2.4.5" @@ -1938,46 +1781,46 @@ path-browserify "^1.0.1" vscode-uri "^3.0.8" -"@volar/typescript@~2.2.4": - version "2.2.5" - resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-2.2.5.tgz#4c1270a5a0508d88299e37caa59849e86b57cac4" - integrity sha512-eSV/n75+ppfEVugMC/salZsI44nXDPAyL6+iTYCNLtiLHGJsnMv9GwiDMujrvAUj/aLQyqRJgYtXRoxop2clCw== +"@volar/typescript@~2.4.8": + version "2.4.11" + resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-2.4.11.tgz#aafbfa413337654db211bf4d8fb6670c89f6fa57" + integrity sha512-2DT+Tdh88Spp5PyPbqhyoYavYCPDsqbHLFwcUI9K1NlY1YgUJvujGdrqUp0zWxnW7KWNTr3xSpMuv2WnaTKDAw== dependencies: - "@volar/language-core" "2.2.5" + "@volar/language-core" "2.4.11" path-browserify "^1.0.1" + vscode-uri "^3.0.8" -"@vue/babel-helper-vue-transform-on@1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.2.tgz#7f1f817a4f00ad531651a8d1d22e22d9e42807ef" - integrity sha512-nOttamHUR3YzdEqdM/XXDyCSdxMA9VizUKoroLX6yTyRtggzQMHXcmwh8a7ZErcJttIBIc9s68a1B8GZ+Dmvsw== +"@vue/babel-helper-vue-transform-on@1.2.5": + version "1.2.5" + resolved "https://registry.yarnpkg.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.5.tgz#b9e195b92bfa8d15d5aa9581ca01cb702dbcc19d" + integrity sha512-lOz4t39ZdmU4DJAa2hwPYmKc8EsuGa2U0L9KaZaOJUt0UwQNjNA3AZTq6uEivhOKhhG1Wvy96SvYBoFmCg3uuw== -"@vue/babel-plugin-jsx@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.2.tgz#eb426fb4660aa510bb8d188ff0ec140405a97d8a" - integrity sha512-nYTkZUVTu4nhP199UoORePsql0l+wj7v/oyQjtThUVhJl1U+6qHuoVhIvR3bf7eVKjbCK+Cs2AWd7mi9Mpz9rA== - dependencies: - "@babel/helper-module-imports" "~7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-syntax-jsx" "^7.23.3" - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" - "@vue/babel-helper-vue-transform-on" "1.2.2" - "@vue/babel-plugin-resolve-type" "1.2.2" - camelcase "^6.3.0" +"@vue/babel-plugin-jsx@^1.2.5": + version "1.2.5" + resolved "https://registry.yarnpkg.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.5.tgz#77f4f9f189d00c24ebd587ab84ae615dfa1c3abb" + integrity sha512-zTrNmOd4939H9KsRIGmmzn3q2zvv1mjxkYZHgqHZgDrXz5B1Q3WyGEjO2f+JrmKghvl1JIRcvo63LgM1kH5zFg== + dependencies: + "@babel/helper-module-imports" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/plugin-syntax-jsx" "^7.24.7" + "@babel/template" "^7.25.0" + "@babel/traverse" "^7.25.6" + "@babel/types" "^7.25.6" + "@vue/babel-helper-vue-transform-on" "1.2.5" + "@vue/babel-plugin-resolve-type" "1.2.5" html-tags "^3.3.1" svg-tags "^1.0.0" -"@vue/babel-plugin-resolve-type@1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.2.tgz#66844898561da6449e0f4a261b0c875118e0707b" - integrity sha512-EntyroPwNg5IPVdUJupqs0CFzuf6lUrVvCspmv2J1FITLeGnUCuoGNNk78dgCusxEiYj6RMkTJflGSxk5aIC4A== +"@vue/babel-plugin-resolve-type@1.2.5": + version "1.2.5" + resolved "https://registry.yarnpkg.com/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.5.tgz#f6ed0d39987fe0158370659b73156c55e80d17b5" + integrity sha512-U/ibkQrf5sx0XXRnUZD1mo5F7PkpKyTbfXM3a3rC4YnUz6crHEz9Jg09jzzL6QYlXNto/9CePdOg/c87O4Nlfg== dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/helper-module-imports" "~7.22.15" - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/parser" "^7.23.9" - "@vue/compiler-sfc" "^3.4.15" + "@babel/code-frame" "^7.24.7" + "@babel/helper-module-imports" "^7.24.7" + "@babel/helper-plugin-utils" "^7.24.8" + "@babel/parser" "^7.25.6" + "@vue/compiler-sfc" "^3.5.3" "@vue/compiler-core@3.3.4": version "3.3.4" @@ -1989,17 +1832,6 @@ estree-walker "^2.0.2" source-map-js "^1.0.2" -"@vue/compiler-core@3.4.19": - version "3.4.19" - resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.19.tgz#3161b1ede69da00f3ce8155dfab907a3eaa0515e" - integrity sha512-gj81785z0JNzRcU0Mq98E56e4ltO1yf8k5PQ+tV/7YHnbZkrM0fyFyuttnN8ngJZjbpofWE/m4qjKBiLl8Ju4w== - dependencies: - "@babel/parser" "^7.23.9" - "@vue/shared" "3.4.19" - entities "^4.5.0" - estree-walker "^2.0.2" - source-map-js "^1.0.2" - "@vue/compiler-core@3.4.27": version "3.4.27" resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.27.tgz#e69060f4b61429fe57976aa5872cfa21389e4d91" @@ -2011,6 +1843,17 @@ estree-walker "^2.0.2" source-map-js "^1.2.0" +"@vue/compiler-core@3.5.13": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.5.13.tgz#b0ae6c4347f60c03e849a05d34e5bf747c9bda05" + integrity sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q== + dependencies: + "@babel/parser" "^7.25.3" + "@vue/shared" "3.5.13" + entities "^4.5.0" + estree-walker "^2.0.2" + source-map-js "^1.2.0" + "@vue/compiler-core@3.5.4": version "3.5.4" resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.5.4.tgz#b8b5805e767b94d84af01f5527dbb4896326c478" @@ -2030,13 +1873,13 @@ "@vue/compiler-core" "3.3.4" "@vue/shared" "3.3.4" -"@vue/compiler-dom@3.4.19": - version "3.4.19" - resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.19.tgz#2457e57e978f431e3b5fd11fc50a3e92d5816f9a" - integrity sha512-vm6+cogWrshjqEHTzIDCp72DKtea8Ry/QVpQRYoyTIg9k7QZDX6D8+HGURjtmatfgM8xgCFtJJaOlCaRYRK3QA== +"@vue/compiler-dom@3.5.13", "@vue/compiler-dom@^3.5.0": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz#bb1b8758dbc542b3658dda973b98a1c9311a8a58" + integrity sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA== dependencies: - "@vue/compiler-core" "3.4.19" - "@vue/shared" "3.4.19" + "@vue/compiler-core" "3.5.13" + "@vue/shared" "3.5.13" "@vue/compiler-dom@3.5.4": version "3.5.4" @@ -2085,20 +1928,20 @@ postcss "^8.4.44" source-map-js "^1.2.0" -"@vue/compiler-sfc@^3.4.15": - version "3.4.19" - resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.19.tgz#33b238ded6d63e51f6a7048b742626f6007df129" - integrity sha512-LQ3U4SN0DlvV0xhr1lUsgLCYlwQfUfetyPxkKYu7dkfvx7g3ojrGAkw0AERLOKYXuAGnqFsEuytkdcComei3Yg== +"@vue/compiler-sfc@^3.5.3": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz#461f8bd343b5c06fac4189c4fef8af32dea82b46" + integrity sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ== dependencies: - "@babel/parser" "^7.23.9" - "@vue/compiler-core" "3.4.19" - "@vue/compiler-dom" "3.4.19" - "@vue/compiler-ssr" "3.4.19" - "@vue/shared" "3.4.19" + "@babel/parser" "^7.25.3" + "@vue/compiler-core" "3.5.13" + "@vue/compiler-dom" "3.5.13" + "@vue/compiler-ssr" "3.5.13" + "@vue/shared" "3.5.13" estree-walker "^2.0.2" - magic-string "^0.30.6" - postcss "^8.4.33" - source-map-js "^1.0.2" + magic-string "^0.30.11" + postcss "^8.4.48" + source-map-js "^1.2.0" "@vue/compiler-ssr@3.3.4": version "3.3.4" @@ -2108,13 +1951,13 @@ "@vue/compiler-dom" "3.3.4" "@vue/shared" "3.3.4" -"@vue/compiler-ssr@3.4.19": - version "3.4.19" - resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.19.tgz#1f8ee06005ebbaa354f8783fad84e9f7ea4a69c2" - integrity sha512-P0PLKC4+u4OMJ8sinba/5Z/iDT84uMRRlrWzadgLA69opCpI1gG4N55qDSC+dedwq2fJtzmGald05LWR5TFfLw== +"@vue/compiler-ssr@3.5.13": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz#e771adcca6d3d000f91a4277c972a996d07f43ba" + integrity sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA== dependencies: - "@vue/compiler-dom" "3.4.19" - "@vue/shared" "3.4.19" + "@vue/compiler-dom" "3.5.13" + "@vue/shared" "3.5.13" "@vue/compiler-ssr@3.5.4": version "3.5.4" @@ -2137,35 +1980,37 @@ resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz#cbe97fe0162b365edc1dba80e173f90492535343" integrity sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g== -"@vue/eslint-config-prettier@^9.0.0": - version "9.0.0" - resolved "https://registry.yarnpkg.com/@vue/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz#f63394f8f7759d92b6ef3f3e1d30ff6b0c0b97c1" - integrity sha512-z1ZIAAUS9pKzo/ANEfd2sO+v2IUalz7cM/cTLOZ7vRFOPk5/xuRKQteOu1DErFLAh/lYGXMVZ0IfYKlyInuDVg== +"@vue/eslint-config-prettier@^10.1.0": + version "10.1.0" + resolved "https://registry.yarnpkg.com/@vue/eslint-config-prettier/-/eslint-config-prettier-10.1.0.tgz#12b2f12548645c7945770a325394588dab4cb108" + integrity sha512-J6wV91y2pXc0Phha01k0WOHBTPsoSTf4xlmMjoKaeSxBpAdsgTppGF5RZRdOHM7OA74zAXD+VLANrtYXpiPKkQ== dependencies: - eslint-config-prettier "^9.0.0" - eslint-plugin-prettier "^5.0.0" + eslint-config-prettier "^9.1.0" + eslint-plugin-prettier "^5.2.1" -"@vue/eslint-config-typescript@^13.0.0": - version "13.0.0" - resolved "https://registry.yarnpkg.com/@vue/eslint-config-typescript/-/eslint-config-typescript-13.0.0.tgz#f5f3d986ace34a10f403921d5044831b89a1b679" - integrity sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg== +"@vue/eslint-config-typescript@^14.1.4": + version "14.1.4" + resolved "https://registry.yarnpkg.com/@vue/eslint-config-typescript/-/eslint-config-typescript-14.1.4.tgz#82df2e3ab79ae09a904687db7bbdef6f89ebe858" + integrity sha512-NcG1adLFde+t+TCaXlL38PHuZlBEuwDahgrPVyB052m9QeHOswVIAplMD2cXgH8vXieAVNF1+mXvyilpIO3+kg== dependencies: - "@typescript-eslint/eslint-plugin" "^7.1.1" - "@typescript-eslint/parser" "^7.1.1" - vue-eslint-parser "^9.3.1" + "@typescript-eslint/eslint-plugin" "^8.15.0" + fast-glob "^3.3.2" + typescript-eslint "^8.15.0" + vue-eslint-parser "^9.4.3" -"@vue/language-core@2.0.19": - version "2.0.19" - resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-2.0.19.tgz#d55f9c1e92690c77ffd599688ba36c2b50c4303b" - integrity sha512-A9EGOnvb51jOvnCYoRLnMP+CcoPlbZVxI9gZXE/y2GksRWM6j/PrLEIC++pnosWTN08tFpJgxhSS//E9v/Sg+Q== +"@vue/language-core@2.1.10": + version "2.1.10" + resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-2.1.10.tgz#5988e9ea155f3e09ccbbb3b2a0ddd530dad912e6" + integrity sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ== dependencies: - "@volar/language-core" "~2.2.4" - "@vue/compiler-dom" "^3.4.0" - "@vue/shared" "^3.4.0" - computeds "^0.0.1" + "@volar/language-core" "~2.4.8" + "@vue/compiler-dom" "^3.5.0" + "@vue/compiler-vue2" "^2.7.16" + "@vue/shared" "^3.5.0" + alien-signals "^0.2.0" minimatch "^9.0.3" + muggle-string "^0.4.1" path-browserify "^1.0.1" - vue-template-compiler "^2.7.14" "@vue/language-core@2.1.6": version "2.1.6" @@ -2229,16 +2074,16 @@ resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.3.4.tgz#06e83c5027f464eef861c329be81454bc8b70780" integrity sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ== -"@vue/shared@3.4.19": - version "3.4.19" - resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.19.tgz#28105147811bcf1e6612bf1c9ab0c6d91ada019c" - integrity sha512-/KliRRHMF6LoiThEy+4c1Z4KB/gbPrGjWwJR+crg2otgrf/egKzRaCPvJ51S5oetgsgXLfc4Rm5ZgrKHZrtMSw== - "@vue/shared@3.4.27", "@vue/shared@^3.4.0": version "3.4.27" resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.27.tgz#f05e3cd107d157354bb4ae7a7b5fc9cf73c63b50" integrity sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA== +"@vue/shared@3.5.13", "@vue/shared@^3.5.0": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.13.tgz#87b309a6379c22b926e696893237826f64339b6f" + integrity sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ== + "@vue/shared@3.5.4": version "3.5.4" resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.4.tgz#d4768ddf13aded2774162298a3b5658cc999e1ee" @@ -2252,10 +2097,10 @@ js-beautify "^1.14.9" vue-component-type-helpers "^2.0.0" -"@vue/tsconfig@^0.5.1": - version "0.5.1" - resolved "https://registry.yarnpkg.com/@vue/tsconfig/-/tsconfig-0.5.1.tgz#3124ec16cc0c7e04165b88dc091e6b97782fffa9" - integrity sha512-VcZK7MvpjuTPx2w6blwnwZAu5/LgBUtejFOi3pPGQFXQN5Ela03FUtd2Qtg4yWGGissVL0dr6Ro1LfOFh+PCuQ== +"@vue/tsconfig@^0.7.0": + version "0.7.0" + resolved "https://registry.yarnpkg.com/@vue/tsconfig/-/tsconfig-0.7.0.tgz#67044c847b7a137b8cbfd6b23104c36dbaf80d1d" + integrity sha512-ku2uNz5MaZ9IerPPUyOHzyjhXoX2kVJaVf7hL315DC17vS6IiZRmmCPfggNbU16QTvM80+uYYy3eYJB59WCtvg== abbrev@^2.0.0: version "2.0.0" @@ -2277,6 +2122,11 @@ acorn@^8.12.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248" integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg== +acorn@^8.14.0: + version "8.14.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0" + integrity sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA== + acorn@^8.9.0: version "8.10.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" @@ -2341,6 +2191,11 @@ ajv@~8.13.0: require-from-string "^2.0.2" uri-js "^4.4.1" +alien-signals@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/alien-signals/-/alien-signals-0.2.2.tgz#439d09b363dc4d609c0f6ce69362dce068d23197" + integrity sha512-cZIRkbERILsBOXTQmMrxc9hgpxglstn69zm+F1ARf4aPAzdAFYd6sBq87ErO0Fj3DV94tglcyHG5kQz9nDC/8A== + ansi-colors@^4.1.1, ansi-colors@^4.1.3: version "4.1.3" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" @@ -2502,22 +2357,22 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^3.0.2, braces@~3.0.2: +braces@^3.0.2, braces@^3.0.3, braces@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: fill-range "^7.1.1" -browserslist@^4.23.1: - version "4.23.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.2.tgz#244fe803641f1c19c28c48c4b6ec9736eb3d32ed" - integrity sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA== +browserslist@^4.24.0: + version "4.24.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.3.tgz#5fc2725ca8fb3c1432e13dac278c7cc103e026d2" + integrity sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA== dependencies: - caniuse-lite "^1.0.30001640" - electron-to-chromium "^1.4.820" - node-releases "^2.0.14" - update-browserslist-db "^1.1.0" + caniuse-lite "^1.0.30001688" + electron-to-chromium "^1.5.73" + node-releases "^2.0.19" + update-browserslist-db "^1.1.1" bundle-name@^3.0.0: version "3.0.0" @@ -2547,25 +2402,15 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -camelcase@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== - -caniuse-lite@^1.0.30001640: - version "1.0.30001641" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz#3572862cd18befae3f637f2a1101cc033c6782ac" - integrity sha512-Phv5thgl67bHYo1TtMY/MurjkHhV4EDaCosezRXgZ8jzA/Ub+wjxAvbGvjoFENStinwi5kCyOYV3mi5tOGykwA== - -ccount@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" - integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== +caniuse-lite@^1.0.30001688: + version "1.0.30001689" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001689.tgz#67ca960dd5f443903e19949aeacc9d28f6e10910" + integrity sha512-CmeR2VBycfa+5/jOfnp/NpWPGd06nf1XYiefUvhXFfZE4GkRc9jv+eGPS4nT558WS/8lYCzV8SlANCIPvbWP1g== -chai@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/chai/-/chai-5.1.1.tgz#f035d9792a22b481ead1c65908d14bb62ec1c82c" - integrity sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA== +chai@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/chai/-/chai-5.1.2.tgz#3afbc340b994ae3610ca519a6c70ace77ad4378d" + integrity sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw== dependencies: assertion-error "^2.0.1" check-error "^2.1.1" @@ -2590,16 +2435,6 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -character-entities-html4@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b" - integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA== - -character-entities-legacy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b" - integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ== - chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -2637,11 +2472,6 @@ ci-info@^3.7.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== -cli-spinners@^2.9.2: - version "2.9.2" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.2.tgz#1773a8f4b9c4d6ac31563df53b3fc1d79462fe41" - integrity sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg== - cli-width@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-4.1.0.tgz#42daac41d3c254ef38ad8ac037672130173691c5" @@ -2692,11 +2522,6 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" -comma-separated-tokens@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" - integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== - commander@^10.0.0: version "10.0.1" resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" @@ -2745,26 +2570,17 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -cookie@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" - integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== +cookie@^0.7.2: + version "0.7.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== corser@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/corser/-/corser-2.0.1.tgz#8eda252ecaab5840dcd975ceb90d9370c819ff87" integrity sha512-utCYNzRSQIZNPIcGZdQc92UVJYAhtGAteCFg0yRaFm8f0P+CPtyGyHXJcGXnffjCybUCEx3FQ2G7U3/o9eIkVQ== -cross-spawn@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A== - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: +cross-spawn@^7.0.0, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2773,6 +2589,15 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +cross-spawn@^7.0.5, cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + crypto-js@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.2.0.tgz#4d931639ecdfd12ff80e8186dba6af2c2e856631" @@ -2839,6 +2664,13 @@ debug@^4.1.0, debug@^4.3.1, debug@^4.3.2: dependencies: ms "2.1.2" +debug@^4.3.7: + version "4.4.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" + integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== + dependencies: + ms "^2.1.3" + decimal.js@^10.4.3: version "10.4.3" resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" @@ -2891,7 +2723,7 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -dequal@^2.0.0, dequal@^2.0.3: +dequal@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== @@ -2901,12 +2733,10 @@ detect-indent@^6.0.0: resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== -devlop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" - integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA== - dependencies: - dequal "^2.0.0" +detect-libc@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== dir-glob@^3.0.1: version "3.0.1" @@ -2950,10 +2780,10 @@ editorconfig@^1.0.4: minimatch "9.0.1" semver "^7.5.3" -electron-to-chromium@^1.4.820: - version "1.4.825" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.825.tgz#2d9c3d1eb81a67ecea0c06bcf70740b00ba52718" - integrity sha512-OCcF+LwdgFGcsYPYC5keEEFC2XT0gBhrYbeGzHCx7i9qRFbzO/AqTmc/C/1xNhJj+JA7rzlN7mpBuStshh96Cg== +electron-to-chromium@^1.5.73: + version "1.5.74" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.74.tgz#cb886b504a6467e4c00bea3317edb38393c53413" + integrity sha512-ck3//9RC+6oss/1Bh9tiAVFy5vfSKbRHAFh7Z3/eTRkEqJeWgymloShB17Vg3Z4nmDNp35vAd1BZ6CMW4Wt6Iw== emoji-regex@^8.0.0: version "8.0.0" @@ -2965,7 +2795,7 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -enquirer@^2.3.0: +enquirer@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.4.1.tgz#93334b3fbd74fc7097b224ab4a8fb7e40bf4ae56" integrity sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ== @@ -2990,7 +2820,7 @@ es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -es-module-lexer@^1.5.3: +es-module-lexer@^1.5.3, es-module-lexer@^1.5.4: version "1.5.4" resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz#a8efec3a3da991e60efa6b633a7cad6ab8d26b78" integrity sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw== @@ -3029,10 +2859,10 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escalade@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" - integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== +escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== escape-string-regexp@^1.0.5: version "1.0.5" @@ -3044,17 +2874,17 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -eslint-config-prettier@^9.0.0, eslint-config-prettier@^9.1.0: +eslint-config-prettier@^9.1.0: version "9.1.0" resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz#31af3d94578645966c082fcb71a5846d3c94867f" integrity sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw== -eslint-plugin-jsdoc@^50.3.0: - version "50.3.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.3.0.tgz#2a4d1ac7f45b2b62de42389ba8006fd00b7f08dd" - integrity sha512-P7qDB/RckdKETpBM4CtjHRQ5qXByPmFhRi86sN3E+J+tySchq+RSOGGhI2hDIefmmKFuTi/1ACjqsnDJDDDfzg== +eslint-plugin-jsdoc@^50.6.1: + version "50.6.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.1.tgz#791a668fd4b0700a759e9a16a741a6a805f5b95c" + integrity sha512-UWyaYi6iURdSfdVVqvfOs2vdCVz0J40O/z/HTsv2sFjdjmdlUI/qlKLOTmwbPQ2tAfQnE5F9vqx+B+poF71DBQ== dependencies: - "@es-joy/jsdoccomment" "~0.48.0" + "@es-joy/jsdoccomment" "~0.49.0" are-docs-informative "^0.0.2" comment-parser "1.4.1" debug "^4.3.6" @@ -3082,14 +2912,6 @@ eslint-plugin-prettier-vue@^5.0.0: prettier-linter-helpers "^1.0.0" synckit "^0.8.5" -eslint-plugin-prettier@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.0.tgz#6887780ed95f7708340ec79acfdf60c35b9be57a" - integrity sha512-AgaZCVuYDXHUGxj/ZGu1u8H8CYgDY3iG6w5kUFw4AzMVXzB7VvbKgYR4nATIN+OvUrghMbiDLeimVjVY5ilq3w== - dependencies: - prettier-linter-helpers "^1.0.0" - synckit "^0.8.5" - eslint-plugin-prettier@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz#d1c8f972d8f60e414c25465c163d16f209411f95" @@ -3098,10 +2920,10 @@ eslint-plugin-prettier@^5.2.1: prettier-linter-helpers "^1.0.0" synckit "^0.9.1" -eslint-plugin-vue@^9.28.0: - version "9.28.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.28.0.tgz#e4412f0c1024bafd15ffeaa6f76f4c99152e2765" - integrity sha512-ShrihdjIhOTxs+MfWun6oJWuk+g/LAhN+CiuOl/jjkG3l0F2AuK5NMTaWqyvBgkFtpYmyks6P4603mLmhNJW8g== +eslint-plugin-vue@^9.32.0: + version "9.32.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.32.0.tgz#2b558e827886b567dfaa156cc1cad0f596461fab" + integrity sha512-b/Y05HYmnB/32wqVcjxjHZzNpwxj1onBOvqW89W+V+XNG1dRuaFbNd3vT9CLbr2LXjEoq+3vn8DanWf7XU22Ug== dependencies: "@eslint-community/eslint-utils" "^4.4.0" globals "^13.24.0" @@ -3120,15 +2942,15 @@ eslint-scope@^7.1.1: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-scope@^8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-8.0.2.tgz#5cbb33d4384c9136083a71190d548158fe128f94" - integrity sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA== +eslint-scope@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-8.2.0.tgz#377aa6f1cb5dc7592cfd0b7f892fd0cf352ce442" + integrity sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A== dependencies: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: version "3.4.3" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== @@ -3138,31 +2960,36 @@ eslint-visitor-keys@^4.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb" integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw== -eslint@^9.11.1: - version "9.11.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.11.1.tgz#701e5fc528990153f9cef696d8427003b5206567" - integrity sha512-MobhYKIoAO1s1e4VUrgx1l1Sk2JBR/Gqjjgw8+mfgoLE2xwsHur4gdfTxyTgShrhvdVFTaJSgMiQBl1jv/AWxg== +eslint-visitor-keys@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz#687bacb2af884fcdda8a6e7d65c606f46a14cd45" + integrity sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw== + +eslint@^9.17.0: + version "9.17.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.17.0.tgz#faa1facb5dd042172fdc520106984b5c2421bb0c" + integrity sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA== dependencies: "@eslint-community/eslint-utils" "^4.2.0" - "@eslint-community/regexpp" "^4.11.0" - "@eslint/config-array" "^0.18.0" - "@eslint/core" "^0.6.0" - "@eslint/eslintrc" "^3.1.0" - "@eslint/js" "9.11.1" - "@eslint/plugin-kit" "^0.2.0" + "@eslint-community/regexpp" "^4.12.1" + "@eslint/config-array" "^0.19.0" + "@eslint/core" "^0.9.0" + "@eslint/eslintrc" "^3.2.0" + "@eslint/js" "9.17.0" + "@eslint/plugin-kit" "^0.2.3" + "@humanfs/node" "^0.16.6" "@humanwhocodes/module-importer" "^1.0.1" - "@humanwhocodes/retry" "^0.3.0" - "@nodelib/fs.walk" "^1.2.8" + "@humanwhocodes/retry" "^0.4.1" "@types/estree" "^1.0.6" "@types/json-schema" "^7.0.15" ajv "^6.12.4" chalk "^4.0.0" - cross-spawn "^7.0.2" + cross-spawn "^7.0.6" debug "^4.3.2" escape-string-regexp "^4.0.0" - eslint-scope "^8.0.2" - eslint-visitor-keys "^4.0.0" - espree "^10.1.0" + eslint-scope "^8.2.0" + eslint-visitor-keys "^4.2.0" + espree "^10.3.0" esquery "^1.5.0" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -3172,14 +2999,11 @@ eslint@^9.11.1: ignore "^5.2.0" imurmurhash "^0.1.4" is-glob "^4.0.0" - is-path-inside "^3.0.3" json-stable-stringify-without-jsonify "^1.0.1" lodash.merge "^4.6.2" minimatch "^3.1.2" natural-compare "^1.4.0" optionator "^0.9.3" - strip-ansi "^6.0.1" - text-table "^0.2.0" espree@^10.0.1: version "10.0.1" @@ -3199,6 +3023,15 @@ espree@^10.1.0: acorn-jsx "^5.3.2" eslint-visitor-keys "^4.0.0" +espree@^10.3.0: + version "10.3.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.3.0.tgz#29267cf5b0cb98735b65e64ba07e0ed49d1eed8a" + integrity sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg== + dependencies: + acorn "^8.14.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.2.0" + espree@^9.3.1: version "9.6.1" resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" @@ -3291,6 +3124,11 @@ execa@^7.1.1: signal-exit "^3.0.7" strip-final-newline "^3.0.0" +expect-type@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-1.1.0.tgz#a146e414250d13dfc49eafcfd1344a4060fa4c75" + integrity sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA== + extendable-error@^0.1.5: version "0.1.7" resolved "https://registry.yarnpkg.com/extendable-error/-/extendable-error-0.1.7.tgz#60b9adf206264ac920058a7395685ae4670c2b96" @@ -3566,7 +3404,7 @@ globals@^14.0.0: resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== -globby@^11.0.0, globby@^11.1.0: +globby@^11.0.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -3578,18 +3416,6 @@ globby@^11.0.0, globby@^11.1.0: merge2 "^1.4.1" slash "^3.0.0" -globby@^14.0.2: - version "14.0.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-14.0.2.tgz#06554a54ccfe9264e5a9ff8eded46aa1e306482f" - integrity sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw== - dependencies: - "@sindresorhus/merge-streams" "^2.1.0" - fast-glob "^3.3.2" - ignore "^5.2.4" - path-type "^5.0.0" - slash "^5.1.0" - unicorn-magic "^0.1.0" - gopd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" @@ -3651,30 +3477,6 @@ hasown@^2.0.0: dependencies: function-bind "^1.1.2" -hast-util-to-html@^9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz#a9999a0ba6b4919576a9105129fead85d37f302b" - integrity sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg== - dependencies: - "@types/hast" "^3.0.0" - "@types/unist" "^3.0.0" - ccount "^2.0.0" - comma-separated-tokens "^2.0.0" - hast-util-whitespace "^3.0.0" - html-void-elements "^3.0.0" - mdast-util-to-hast "^13.0.0" - property-information "^6.0.0" - space-separated-tokens "^2.0.0" - stringify-entities "^4.0.0" - zwitch "^2.0.4" - -hast-util-whitespace@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz#7778ed9d3c92dd9e8c5c8f648a49c21fc51cb621" - integrity sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw== - dependencies: - "@types/hast" "^3.0.0" - he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" @@ -3704,11 +3506,6 @@ html-tags@^3.3.1: resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.3.1.tgz#a04026a18c882e4bba8a01a3d39cfe465d40b5ce" integrity sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ== -html-void-elements@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-3.0.0.tgz#fc9dbd84af9e747249034d4d62602def6517f1d7" - integrity sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg== - http-proxy-agent@^7.0.2: version "7.0.2" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" @@ -3782,7 +3579,7 @@ iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -ignore@^5.2.0, ignore@^5.2.4: +ignore@^5.2.0: version "5.2.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== @@ -3792,10 +3589,10 @@ ignore@^5.3.1: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== -immutable@^4.0.0: - version "4.3.5" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.5.tgz#f8b436e66d59f99760dc577f5c99a4fd2a5cc5a0" - integrity sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw== +immutable@^5.0.2: + version "5.0.3" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-5.0.3.tgz#aa037e2313ea7b5d400cd9298fa14e404c933db1" + integrity sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw== import-fresh@^3.2.1: version "3.3.0" @@ -3878,11 +3675,6 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-path-inside@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -3922,6 +3714,11 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +isexe@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-3.1.1.tgz#4a407e2bd78ddfb14bea0c27c6f7072dde775f0d" + integrity sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ== + itertools-ts@^1.27.1: version "1.27.1" resolved "https://registry.yarnpkg.com/itertools-ts/-/itertools-ts-1.27.1.tgz#2803089148bbffae2cf65a6f0f2914b11163ff90" @@ -4019,15 +3816,20 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== +jsesc@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" + integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== + json-buffer@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== -json-parse-even-better-errors@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz#02bb29fb5da90b5444581749c22cedd3597c6cb0" - integrity sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg== +json-parse-even-better-errors@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-4.0.0.tgz#d3f67bd5925e81d3e31aa466acc821c8375cec43" + integrity sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA== json-schema-traverse@^0.4.1: version "0.4.1" @@ -4129,19 +3931,24 @@ lodash@^4.17.14, lodash@^4.17.21, lodash@~4.17.15: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -loupe@^3.1.0, loupe@^3.1.1: +loupe@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/loupe/-/loupe-3.1.1.tgz#71d038d59007d890e3247c5db97c1ec5a92edc54" integrity sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw== dependencies: get-func-name "^2.0.1" +loupe@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-3.1.2.tgz#c86e0696804a02218f2206124c45d8b15291a240" + integrity sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg== + lru-cache@^10.2.0: version "10.4.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== -lru-cache@^4.0.1, lru-cache@^4.1.5: +lru-cache@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== @@ -4187,12 +3994,12 @@ magic-string@^0.30.11: dependencies: "@jridgewell/sourcemap-codec" "^1.5.0" -magic-string@^0.30.6: - version "0.30.7" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.7.tgz#0cecd0527d473298679da95a2d7aeb8c64048505" - integrity sha512-8vBuFF/I/+OSLRmdf2wwFCJCz+nSn0m6DPvGH1fS/KiQoSaR+sETbov0eIk9KhEKy8CYqIkIAnbohxT/4H0kuA== +magic-string@^0.30.12: + version "0.30.17" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.17.tgz#450a449673d2460e5bbcfba9a61916a1714c7453" + integrity sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA== dependencies: - "@jridgewell/sourcemap-codec" "^1.4.15" + "@jridgewell/sourcemap-codec" "^1.5.0" markdown-it@^14.1.0: version "14.1.0" @@ -4206,21 +4013,6 @@ markdown-it@^14.1.0: punycode.js "^2.3.1" uc.micro "^2.1.0" -mdast-util-to-hast@^13.0.0: - version "13.2.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz#5ca58e5b921cc0a3ded1bc02eed79a4fe4fe41f4" - integrity sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA== - dependencies: - "@types/hast" "^3.0.0" - "@types/mdast" "^4.0.0" - "@ungap/structured-clone" "^1.0.0" - devlop "^1.0.0" - micromark-util-sanitize-uri "^2.0.0" - trim-lines "^3.0.0" - unist-util-position "^5.0.0" - unist-util-visit "^5.0.0" - vfile "^6.0.0" - mdurl@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-2.0.0.tgz#80676ec0433025dd3e17ee983d0fe8de5a2237e0" @@ -4241,39 +4033,7 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromark-util-character@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.0.tgz#31320ace16b4644316f6bf057531689c71e2aee1" - integrity sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ== - dependencies: - micromark-util-symbol "^2.0.0" - micromark-util-types "^2.0.0" - -micromark-util-encode@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz#0921ac7953dc3f1fd281e3d1932decfdb9382ab1" - integrity sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA== - -micromark-util-sanitize-uri@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz#ec8fbf0258e9e6d8f13d9e4770f9be64342673de" - integrity sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw== - dependencies: - micromark-util-character "^2.0.0" - micromark-util-encode "^2.0.0" - micromark-util-symbol "^2.0.0" - -micromark-util-symbol@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz#12225c8f95edf8b17254e47080ce0862d5db8044" - integrity sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw== - -micromark-util-types@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.0.tgz#63b4b7ffeb35d3ecf50d1ca20e68fc7caa36d95e" - integrity sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w== - -micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: +micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== @@ -4281,6 +4041,14 @@ micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: braces "^3.0.2" picomatch "^2.3.1" +micromatch@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + mime-db@1.52.0: version "1.52.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" @@ -4315,13 +4083,6 @@ minimatch@9.0.1: dependencies: brace-expansion "^2.0.1" -minimatch@9.0.3, minimatch@^9.0.0, minimatch@^9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" - integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== - dependencies: - brace-expansion "^2.0.1" - minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -4336,6 +4097,13 @@ minimatch@^5.1.0: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.0, minimatch@^9.0.3: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" + minimatch@^9.0.4, minimatch@^9.0.5: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" @@ -4397,48 +4165,44 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@^2.1.1: +ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -msw@^2.3.5: - version "2.4.9" - resolved "https://registry.yarnpkg.com/msw/-/msw-2.4.9.tgz#350a84cedb90b578a32c7764431e3750900f8407" - integrity sha512-1m8xccT6ipN4PTqLinPwmzhxQREuxaEJYdx4nIbggxP8aM7r1e71vE7RtOUSQoAm1LydjGfZKy7370XD/tsuYg== +msw@^2.6.4: + version "2.7.0" + resolved "https://registry.yarnpkg.com/msw/-/msw-2.7.0.tgz#d13ff87f7e018fc4c359800ff72ba5017033fb56" + integrity sha512-BIodwZ19RWfCbYTxWTUfTXc+sg4OwjCAgxU1ZsgmggX/7S3LdUifsbUPJs61j0rWb19CZRGY5if77duhc0uXzw== dependencies: - "@bundled-es-modules/cookie" "^2.0.0" + "@bundled-es-modules/cookie" "^2.0.1" "@bundled-es-modules/statuses" "^1.0.1" "@bundled-es-modules/tough-cookie" "^0.1.6" - "@inquirer/confirm" "^3.0.0" - "@mswjs/interceptors" "^0.35.8" + "@inquirer/confirm" "^5.0.0" + "@mswjs/interceptors" "^0.37.0" + "@open-draft/deferred-promise" "^2.2.0" "@open-draft/until" "^2.1.0" "@types/cookie" "^0.6.0" "@types/statuses" "^2.0.4" - chalk "^4.1.2" graphql "^16.8.1" headers-polyfill "^4.0.2" is-node-process "^1.2.0" - outvariant "^1.4.2" + outvariant "^1.4.3" path-to-regexp "^6.3.0" + picocolors "^1.1.1" strict-event-emitter "^0.5.1" - type-fest "^4.9.0" + type-fest "^4.26.1" yargs "^17.7.2" -muggle-string@^0.4.0, muggle-string@^0.4.1: +muggle-string@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/muggle-string/-/muggle-string-0.4.1.tgz#3b366bd43b32f809dc20659534dd30e7c8a0d328" integrity sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ== -mustache@4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.2.0.tgz#e5892324d60a12ec9c2a73359edca52972bf6f64" - integrity sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ== - -mute-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-1.0.0.tgz#e31bd9fe62f0aed23520aa4324ea6671531e013e" - integrity sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA== +mute-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-2.0.0.tgz#a5446fc0c512b71c83c44d908d5c7b7b4c493b2b" + integrity sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA== nanoid@^3.3.7: version "3.3.7" @@ -4450,6 +4214,11 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== +node-addon-api@^7.0.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.1.tgz#1aba6693b0f255258a049d621329329322aad558" + integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ== + node-addon-api@^8.2.1: version "8.3.0" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-8.3.0.tgz#ec3763f18befc1cdf66d11e157ce44d5eddc0603" @@ -4467,10 +4236,10 @@ node-gyp-build@^4.8.2: resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== -node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== +node-releases@^2.0.19: + version "2.0.19" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" + integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== nopt@^7.2.0: version "7.2.1" @@ -4484,23 +4253,24 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -npm-normalize-package-bin@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz#25447e32a9a7de1f51362c61a559233b89947832" - integrity sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ== +npm-normalize-package-bin@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz#df79e70cd0a113b77c02d1fe243c96b8e618acb1" + integrity sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w== -npm-run-all2@^6.2.3: - version "6.2.3" - resolved "https://registry.yarnpkg.com/npm-run-all2/-/npm-run-all2-6.2.3.tgz#ea0c0987337b828eaa78c2f5488e70de0969917b" - integrity sha512-5RsxC7jEc/RjxOYBVdEfrJf5FsJ0pHA7jr2/OxrThXknajETCTYjigOCG3iaGjdYIKEQlDuCG0ir0T1HTva8pg== +npm-run-all2@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/npm-run-all2/-/npm-run-all2-7.0.2.tgz#26155c140b5e3f1155efd7f5d67212c8027b397c" + integrity sha512-7tXR+r9hzRNOPNTvXegM+QzCuMjzUIIq66VDunL6j60O4RrExx32XUhlrS7UK4VcdGw5/Wxzb3kfNcFix9JKDA== dependencies: ansi-styles "^6.2.1" - cross-spawn "^7.0.3" + cross-spawn "^7.0.6" memorystream "^0.3.1" minimatch "^9.0.0" pidtree "^0.6.0" - read-package-json-fast "^3.0.2" + read-package-json-fast "^4.0.0" shell-quote "^1.7.3" + which "^5.0.0" npm-run-path@^4.0.1: version "4.0.1" @@ -4547,13 +4317,6 @@ onetime@^6.0.0: dependencies: mimic-fn "^4.0.0" -oniguruma-to-js@0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/oniguruma-to-js/-/oniguruma-to-js-0.4.3.tgz#8d899714c21f5c7d59a3c0008ca50e848086d740" - integrity sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ== - dependencies: - regex "^4.3.2" - only-allow@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/only-allow/-/only-allow-1.2.1.tgz#8f18abd72bf531bc0e59fcfcfca590c425a5ad29" @@ -4608,7 +4371,7 @@ outdent@^0.5.0: resolved "https://registry.yarnpkg.com/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.4.0, outvariant@^1.4.2, outvariant@^1.4.3: +outvariant@^1.4.0, outvariant@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/outvariant/-/outvariant-1.4.3.tgz#221c1bfc093e8fec7075497e7799fdbf43d14873" integrity sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA== @@ -4738,11 +4501,6 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -path-type@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-5.0.0.tgz#14b01ed7aea7ddf9c7c3f46181d4d04f9c785bb8" - integrity sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg== - pathe@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" @@ -4768,6 +4526,11 @@ picocolors@^1.1.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== +picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" @@ -4792,17 +4555,17 @@ pkg-types@^1.0.3, pkg-types@^1.1.1: mlly "^1.7.1" pathe "^1.1.2" -playwright-core@1.47.2: - version "1.47.2" - resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.47.2.tgz#7858da9377fa32a08be46ba47d7523dbd9460a4e" - integrity sha512-3JvMfF+9LJfe16l7AbSmU555PaTl2tPyQsVInqm3id16pdDfvZ8TTZ/pyzmkbDrZTQefyzU7AIHlZqQnxpqHVQ== +playwright-core@1.49.1: + version "1.49.1" + resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.49.1.tgz#32c62f046e950f586ff9e35ed490a424f2248015" + integrity sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg== -playwright@1.47.2: - version "1.47.2" - resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.47.2.tgz#155688aa06491ee21fb3e7555b748b525f86eb20" - integrity sha512-nx1cLMmQWqmA3UsnjaaokyoUpdVaaDhJhMoxX2qj3McpjnsqFHs516QAKYhqHAgOP+oCFTEOCOAaD1RgD/RQfA== +playwright@1.49.1: + version "1.49.1" + resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.49.1.tgz#830266dbca3008022afa7b4783565db9944ded7c" + integrity sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA== dependencies: - playwright-core "1.47.2" + playwright-core "1.49.1" optionalDependencies: fsevents "2.3.2" @@ -4832,15 +4595,6 @@ postcss@^8.1.10: picocolors "^1.0.0" source-map-js "^1.2.0" -postcss@^8.4.33: - version "8.4.35" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.35.tgz#60997775689ce09011edf083a549cea44aabe2f7" - integrity sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA== - dependencies: - nanoid "^3.3.7" - picocolors "^1.0.0" - source-map-js "^1.0.2" - postcss@^8.4.43, postcss@^8.4.44: version "8.4.45" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.45.tgz#538d13d89a16ef71edbf75d895284ae06b79e603" @@ -4850,6 +4604,15 @@ postcss@^8.4.43, postcss@^8.4.44: picocolors "^1.0.1" source-map-js "^1.2.0" +postcss@^8.4.48: + version "8.4.49" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.49.tgz#4ea479048ab059ab3ae61d082190fabfd994fe19" + integrity sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA== + dependencies: + nanoid "^3.3.7" + picocolors "^1.1.1" + source-map-js "^1.2.1" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -4867,11 +4630,16 @@ prettier@^2.7.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== -prettier@^3.0.2, prettier@^3.3.3: +prettier@^3.0.2: version "3.3.3" resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.3.tgz#30c54fe0be0d8d12e6ae61dbb10109ea00d53105" integrity sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew== +prettier@^3.4.2: + version "3.4.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.4.2.tgz#a5ce1fb522a588bf2b78ca44c6e6fe5aa5a2b13f" + integrity sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ== + pretty-format@^27.0.2: version "27.5.1" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" @@ -4895,11 +4663,6 @@ primevue@^3.53.0: resolved "https://registry.yarnpkg.com/primevue/-/primevue-3.53.0.tgz#5b94a2d1511e0fe3a7bac39bfb04b7871d6ff7d3" integrity sha512-mRqTPGGZX+3AQokaCCjxLVSNEjGEA7LaPdBT4qSpGEdMstK6vhUBCxgLH7IPjHudbaSi4Xo3CIO62pXQxbz8dQ== -property-information@^6.0.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.5.0.tgz#6212fbb52ba757e92ef4fb9d657563b933b7ffec" - integrity sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig== - proto-list@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" @@ -4957,13 +4720,13 @@ react-is@^17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -read-package-json-fast@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz#394908a9725dc7a5f14e70c8e7556dff1d2b1049" - integrity sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw== +read-package-json-fast@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-4.0.0.tgz#8ccbc05740bb9f58264f400acc0b4b4eee8d1b39" + integrity sha512-qpt8EwugBWDw2cgE2W+/3oxC+KTez2uSVR8JU9Q36TXPAGCaozfQUs59v4j4GFpWTaw0i6hAZSvOmu1J0uOEUg== dependencies: - json-parse-even-better-errors "^3.0.0" - npm-normalize-package-bin "^3.0.0" + json-parse-even-better-errors "^4.0.0" + npm-normalize-package-bin "^4.0.0" read-yaml-file@^1.1.0: version "1.1.0" @@ -4992,11 +4755,6 @@ regenerator-runtime@^0.14.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz#5e19d68eb12d486f797e15a3c6a918f7cec5eb45" integrity sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA== -regex@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/regex/-/regex-4.3.2.tgz#a68a68c9b337a77bf4ce4ed0b4b1a49d97cb3b7b" - integrity sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw== - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -5097,14 +4855,16 @@ safe-buffer@5.1.2: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sass@^1.79.3: - version "1.79.3" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.79.3.tgz#7811b000eb68195fe51dea89177e73e7ef7f546f" - integrity sha512-m7dZxh0W9EZ3cw50Me5GOuYm/tVAJAn91SUnohLRo9cXBixGUOdvmryN+dXpwR831bhoY3Zv7rEFt85PUwTmzA== +sass@^1.83.0: + version "1.83.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.83.0.tgz#e36842c0b88a94ed336fd16249b878a0541d536f" + integrity sha512-qsSxlayzoOjdvXMVLkzF84DJFc2HZEL/rFyGIKbbilYtAvlCxyuzUeff9LawTn4btVnLKg75Z8MMr1lxU1lfGw== dependencies: chokidar "^4.0.0" - immutable "^4.0.0" + immutable "^5.0.2" source-map-js ">=0.6.2 <2.0.0" + optionalDependencies: + "@parcel/watcher" "^2.4.1" saxes@^6.0.0: version "6.0.0" @@ -5169,13 +4929,6 @@ set-function-length@^1.2.1: gopd "^1.0.1" has-property-descriptors "^1.0.2" -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== - dependencies: - shebang-regex "^1.0.0" - shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -5183,11 +4936,6 @@ shebang-command@^2.0.0: dependencies: shebang-regex "^3.0.0" -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== - shebang-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" @@ -5198,18 +4946,6 @@ shell-quote@^1.7.3: resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== -shiki@^1.16.2: - version "1.19.0" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-1.19.0.tgz#c08fe682e88fa3663279dd56afbbe2bf3054d3e3" - integrity sha512-Ng7Gd6XgWFLsv4Z3so65hOyXjV78qz1M117MuZHwdPQD6fgb5wR2IoLMvSlM/Ml14EXH7n+/YxIpTD74i7kDdw== - dependencies: - "@shikijs/core" "1.19.0" - "@shikijs/engine-javascript" "1.19.0" - "@shikijs/engine-oniguruma" "1.19.0" - "@shikijs/types" "1.19.0" - "@shikijs/vscode-textmate" "^9.2.2" - "@types/hast" "^3.0.4" - side-channel@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" @@ -5230,7 +4966,7 @@ sigmund@^1.0.1: resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" integrity sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g== -signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: +signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -5240,10 +4976,10 @@ signal-exit@^4.0.1, signal-exit@^4.1.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== -sirv@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0" - integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ== +sirv@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-3.0.0.tgz#f8d90fc528f65dff04cb597a88609d4e8a4361ce" + integrity sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg== dependencies: "@polka/url" "^1.0.0-next.24" mrmime "^2.0.0" @@ -5254,20 +4990,15 @@ slash@^3.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -slash@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-5.1.0.tgz#be3adddcdf09ac38eebe8dcdc7b1a57a75b095ce" - integrity sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg== - slashes@^3.0.12: version "3.0.12" resolved "https://registry.yarnpkg.com/slashes/-/slashes-3.0.12.tgz#3d664c877ad542dc1509eaf2c50f38d483a6435a" integrity sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA== -solid-js@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/solid-js/-/solid-js-1.9.1.tgz#ac5e0b53451a5770599bc8fff570928b3cffabd7" - integrity sha512-Gd6QWRFfO2XKKZqVK4YwbhWZkr0jWw1dYHOt+VYebomeyikGP0SuMflf42XcDuU9HAEYDArFJIYsBNjlE7iZsw== +solid-js@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/solid-js/-/solid-js-1.9.3.tgz#078f026fe32f6b9b48e8e0557be150f0c2d610a9" + integrity sha512-5ba3taPoZGt9GY3YlsCB24kCg0Lv/rie/HTD4kG6h4daZZz7+yK02xn8Vx8dLYBc9i6Ps5JwAbEiqjmKaLB3Ag== dependencies: csstype "^3.1.0" seroval "^1.1.0" @@ -5283,23 +5014,23 @@ source-map-js@^1.2.0: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== +source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -space-separated-tokens@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" - integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== - -spawndamnit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/spawndamnit/-/spawndamnit-2.0.0.tgz#9f762ac5c3476abb994b42ad592b5ad22bb4b0ad" - integrity sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA== +spawndamnit@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spawndamnit/-/spawndamnit-3.0.1.tgz#44410235d3dc4e21f8e4f740ae3266e4486c2aed" + integrity sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg== dependencies: - cross-spawn "^5.1.0" - signal-exit "^3.0.2" + cross-spawn "^7.0.5" + signal-exit "^4.0.1" spdx-exceptions@^2.1.0: version "2.3.0" @@ -5334,10 +5065,10 @@ statuses@^2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -std-env@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" - integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== +std-env@^3.8.0: + version "3.8.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.8.0.tgz#b56ffc1baf1a29dcc80a3bdf11d7fca7c315e7d5" + integrity sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w== strict-event-emitter@^0.5.1: version "0.5.1" @@ -5376,14 +5107,6 @@ string-width@^5.0.1, string-width@^5.1.2: emoji-regex "^9.2.2" strip-ansi "^7.0.1" -stringify-entities@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.4.tgz#b3b79ef5f277cc4ac73caeb0236c5ba939b3a4f3" - integrity sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg== - dependencies: - character-entities-html4 "^2.0.0" - character-entities-legacy "^3.0.0" - "strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -5487,35 +5210,30 @@ term-size@^2.1.0: resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== - tinybench@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.9.0.tgz#103c9f8ba6d7237a47ab6dd1dcff77251863426b" integrity sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg== -tinyexec@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.0.tgz#ed60cfce19c17799d4a241e06b31b0ec2bee69e6" - integrity sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg== +tinyexec@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.1.tgz#0ab0daf93b43e2c211212396bdb836b468c97c98" + integrity sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ== -tinypool@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.0.0.tgz#a68965218e04f4ad9de037d2a1cd63cda9afb238" - integrity sha512-KIKExllK7jp3uvrNtvRBYBWBOAXSX8ZvoaD8T+7KB/QHIuoJW3Pmr60zucywjAlMb5TeXUkcs/MWeWLu0qvuAQ== +tinypool@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.0.2.tgz#706193cc532f4c100f66aa00b01c42173d9051b2" + integrity sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA== tinyrainbow@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/tinyrainbow/-/tinyrainbow-1.2.0.tgz#5c57d2fc0fb3d1afd78465c33ca885d04f02abb5" integrity sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ== -tinyspy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-3.0.0.tgz#cb61644f2713cd84dee184863f4642e06ddf0585" - integrity sha512-q5nmENpTHgiPVd1cJDDc9cVoYN5x4vCvwT3FMilvKPKneCBZAxn2YWQjDF0UMcE9k0Cay1gBiDfTMU0g+mPMQA== +tinyspy@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-3.0.2.tgz#86dd3cf3d737b15adcf17d7887c84a75201df20a" + integrity sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q== titleize@^3.0.0: version "3.0.0" @@ -5600,16 +5318,6 @@ tree-sitter@0.22.1, tree-sitter@^0.16.1: node-addon-api "^8.2.1" node-gyp-build "^4.8.2" -trim-lines@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" - integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== - -ts-api-utils@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.3.tgz#f12c1c781d04427313dbac808f453f050e54a331" - integrity sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg== - ts-api-utils@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" @@ -5643,47 +5351,47 @@ tslib@^2.4.1, tslib@^2.5.0, tslib@^2.6.0, tslib@^2.6.2: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== -turbo-darwin-64@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/turbo-darwin-64/-/turbo-darwin-64-2.1.2.tgz#a694b4db22ab04a2d67b3b2c96fc11780af1c8ee" - integrity sha512-3TEBxHWh99h2yIzkuIigMEOXt/ItYQp0aPiJjPd1xN4oDcsKK5AxiFKPH9pdtfIBzYsY59kQhZiFj0ELnSP7Bw== +turbo-darwin-64@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/turbo-darwin-64/-/turbo-darwin-64-2.3.3.tgz#875975cddf7abdb52b28e9cab234fc73ca001e80" + integrity sha512-bxX82xe6du/3rPmm4aCC5RdEilIN99VUld4HkFQuw+mvFg6darNBuQxyWSHZTtc25XgYjQrjsV05888w1grpaA== -turbo-darwin-arm64@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/turbo-darwin-arm64/-/turbo-darwin-arm64-2.1.2.tgz#5a999ce271b9643cc0e535feb9d77c4b922e6de7" - integrity sha512-he0miWNq2WxJzsH82jS2Z4MXpnkzn9SH8a79iPXiJkq25QREImucscM4RPasXm8wARp91pyysJMq6aasD45CeA== +turbo-darwin-arm64@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/turbo-darwin-arm64/-/turbo-darwin-arm64-2.3.3.tgz#5e85d6dadac6560782bb91081fee56f9cfcd103e" + integrity sha512-DYbQwa3NsAuWkCUYVzfOUBbSUBVQzH5HWUFy2Kgi3fGjIWVZOFk86ss+xsWu//rlEAfYwEmopigsPYSmW4X15A== -turbo-linux-64@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/turbo-linux-64/-/turbo-linux-64-2.1.2.tgz#18e8c23d4bd8351c161994aef57f3948db3e8036" - integrity sha512-fKUBcc0rK8Vdqv5a/E3CSpMBLG1bzwv+Q0Q83F8fG2ZfNCNKGbcEYABdonNZkkx141Rj03cZQFCgxu3MVEGU+A== +turbo-linux-64@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/turbo-linux-64/-/turbo-linux-64-2.3.3.tgz#634f2053cff6ff056bec7f307c2fb4dd9a2bc86f" + integrity sha512-eHj9OIB0dFaP6BxB88jSuaCLsOQSYWBgmhy2ErCu6D2GG6xW3b6e2UWHl/1Ho9FsTg4uVgo4DB9wGsKa5erjUA== -turbo-linux-arm64@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/turbo-linux-arm64/-/turbo-linux-arm64-2.1.2.tgz#e6879fd0a9e37d7d4080ba34ef0c32354c08c4e8" - integrity sha512-sV8Bpmm0WiuxgbhxymcC7wSsuxfBBieI98GegSwbr/bs1ANAgzCg93urIrdKdQ3/b31zZxQwcaP4FBF1wx1Qdg== +turbo-linux-arm64@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/turbo-linux-arm64/-/turbo-linux-arm64-2.3.3.tgz#284e26825f5d692bffb5b126a9aeccaae6a4533b" + integrity sha512-NmDE/NjZoDj1UWBhMtOPmqFLEBKhzGS61KObfrDEbXvU3lekwHeoPvAMfcovzswzch+kN2DrtbNIlz+/rp8OCg== -turbo-windows-64@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/turbo-windows-64/-/turbo-windows-64-2.1.2.tgz#be6b8429beba956fabcbda06402fb89d1796aa2e" - integrity sha512-wcmIJZI9ORT9ykHGliFE6kWRQrlH930QGSjSgWC8uFChFFuOyUlvC7ttcxuSvU9VqC7NF4C+GVAcFJQ8lTjN7g== +turbo-windows-64@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/turbo-windows-64/-/turbo-windows-64-2.3.3.tgz#2900ac2c00d9609bc480d90564a98ca1cc7f4b17" + integrity sha512-O2+BS4QqjK3dOERscXqv7N2GXNcqHr9hXumkMxDj/oGx9oCatIwnnwx34UmzodloSnJpgSqjl8iRWiY65SmYoQ== -turbo-windows-arm64@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/turbo-windows-arm64/-/turbo-windows-arm64-2.1.2.tgz#8d3fa5e49cd7c54d7af4efe180c608ff1f03ac45" - integrity sha512-zdnXjrhk7YO6CP+Q5wPueEvOCLH4lDa6C4rrwiakcWcPgcQGbVozJlo4uaQ6awo8HLWQEvOwu84RkWTdLAc/Hw== +turbo-windows-arm64@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/turbo-windows-arm64/-/turbo-windows-arm64-2.3.3.tgz#395508cdf6b351d7dd324fb0b318c1b2cf1d66dd" + integrity sha512-dW4ZK1r6XLPNYLIKjC4o87HxYidtRRcBeo/hZ9Wng2XM/MqqYkAyzJXJGgRMsc0MMEN9z4+ZIfnSNBrA0b08ag== -turbo@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/turbo/-/turbo-2.1.2.tgz#c3b2e533977055458f70cc879c3d2a334a0f2469" - integrity sha512-Jb0rbU4iHEVQ18An/YfakdIv9rKnd3zUfSE117EngrfWXFHo3RndVH96US3GsT8VHpwTncPePDBT2t06PaFLrw== +turbo@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/turbo/-/turbo-2.3.3.tgz#70736263c75f7c0c501278214dee49859e1c7fcd" + integrity sha512-DUHWQAcC8BTiUZDRzAYGvpSpGLiaOQPfYXlCieQbwUvmml/LRGIe3raKdrOPOoiX0DYlzxs2nH6BoWJoZrj8hA== optionalDependencies: - turbo-darwin-64 "2.1.2" - turbo-darwin-arm64 "2.1.2" - turbo-linux-64 "2.1.2" - turbo-linux-arm64 "2.1.2" - turbo-windows-64 "2.1.2" - turbo-windows-arm64 "2.1.2" + turbo-darwin-64 "2.3.3" + turbo-darwin-arm64 "2.3.3" + turbo-linux-64 "2.3.3" + turbo-linux-arm64 "2.3.3" + turbo-windows-64 "2.3.3" + turbo-windows-arm64 "2.3.3" type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" @@ -5702,21 +5410,21 @@ type-fest@^0.21.3: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -type-fest@^4.9.0: - version "4.21.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-4.21.0.tgz#2eec399d9bda4ac686286314d07c6675fef3fdd8" - integrity sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA== +type-fest@^4.26.1: + version "4.30.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-4.30.2.tgz#d94429edde1f7deacf554741650aab394197a4cc" + integrity sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig== -typedoc@^0.26.7: - version "0.26.7" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.26.7.tgz#1980e3ed51c6c315b7a09786b2b9af1106a3aa80" - integrity sha512-gUeI/Wk99vjXXMi8kanwzyhmeFEGv1LTdTQsiyIsmSYsBebvFxhbcyAx7Zjo4cMbpLGxM4Uz3jVIjksu/I2v6Q== +typedoc@^0.27.5: + version "0.27.5" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.27.5.tgz#a86c89589213d7b36301eeafb4ddf6ad9dfd1ab3" + integrity sha512-x+fhKJtTg4ozXwKayh/ek4wxZQI/+2hmZUdO2i2NGDBRUflDble70z+ewHod3d4gRpXSO6fnlnjbDTnJk7HlkQ== dependencies: + "@gerrit0/mini-shiki" "^1.24.0" lunr "^2.3.9" markdown-it "^14.1.0" minimatch "^9.0.5" - shiki "^1.16.2" - yaml "^2.5.1" + yaml "^2.6.1" types-ramda@^0.30.1: version "0.30.1" @@ -5725,24 +5433,24 @@ types-ramda@^0.30.1: dependencies: ts-toolbelt "^9.6.0" -typescript-eslint@^8.7.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.7.0.tgz#6c84f94013a0cc0074da7d639c2644eae20c3171" - integrity sha512-nEHbEYJyHwsuf7c3V3RS7Saq+1+la3i0ieR3qP0yjqWSzVmh8Drp47uOl9LjbPANac4S7EFSqvcYIKXUUwIfIQ== +typescript-eslint@^8.15.0, typescript-eslint@^8.18.1: + version "8.18.1" + resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.18.1.tgz#197b284b6769678ed77d9868df180eeaf61108eb" + integrity sha512-Mlaw6yxuaDEPQvb/2Qwu3/TfgeBHy9iTJ3mTwe7OvpPmF6KPQjVOfGyEJpPv6Ez2C34OODChhXrzYw/9phI0MQ== dependencies: - "@typescript-eslint/eslint-plugin" "8.7.0" - "@typescript-eslint/parser" "8.7.0" - "@typescript-eslint/utils" "8.7.0" + "@typescript-eslint/eslint-plugin" "8.18.1" + "@typescript-eslint/parser" "8.18.1" + "@typescript-eslint/utils" "8.18.1" typescript@5.4.2: version "5.4.2" resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.2.tgz#0ae9cebcfae970718474fe0da2c090cad6577372" integrity sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ== -typescript@~5.6.2: - version "5.6.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.6.2.tgz#d1de67b6bef77c41823f822df8f0b3bcff60a5a0" - integrity sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw== +typescript@~5.7.2: + version "5.7.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.7.2.tgz#3169cf8c4c8a828cde53ba9ecb3d2b1d5dd67be6" + integrity sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg== uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" @@ -5759,15 +5467,10 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== -undici-types@~6.19.2: - version "6.19.8" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" - integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== - -unicorn-magic@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.1.0.tgz#1bb9a51c823aaf9d73a8bfcd3d1a23dde94b0ce4" - integrity sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ== +undici-types@~6.20.0: + version "6.20.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.20.0.tgz#8171bf22c1f588d1554d55bf204bc624af388433" + integrity sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg== union@~0.5.0: version "0.5.0" @@ -5776,44 +5479,6 @@ union@~0.5.0: dependencies: qs "^6.4.0" -unist-util-is@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.0.tgz#b775956486aff107a9ded971d996c173374be424" - integrity sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw== - dependencies: - "@types/unist" "^3.0.0" - -unist-util-position@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-5.0.0.tgz#678f20ab5ca1207a97d7ea8a388373c9cf896be4" - integrity sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA== - dependencies: - "@types/unist" "^3.0.0" - -unist-util-stringify-position@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz#449c6e21a880e0855bf5aabadeb3a740314abac2" - integrity sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ== - dependencies: - "@types/unist" "^3.0.0" - -unist-util-visit-parents@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz#4d5f85755c3b8f0dc69e21eca5d6d82d22162815" - integrity sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw== - dependencies: - "@types/unist" "^3.0.0" - unist-util-is "^6.0.0" - -unist-util-visit@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-5.0.0.tgz#a7de1f31f72ffd3519ea71814cccf5fd6a9217d6" - integrity sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg== - dependencies: - "@types/unist" "^3.0.0" - unist-util-is "^6.0.0" - unist-util-visit-parents "^6.0.0" - universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -5834,13 +5499,13 @@ untildify@^4.0.0: resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== -update-browserslist-db@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" - integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ== +update-browserslist-db@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" + integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== dependencies: - escalade "^3.1.2" - picocolors "^1.0.1" + escalade "^3.2.0" + picocolors "^1.1.0" uri-js@^4.2.2, uri-js@^4.4.1: version "4.4.1" @@ -5867,48 +5532,33 @@ util-deprecate@^1.0.2: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -vfile-message@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-4.0.2.tgz#c883c9f677c72c166362fd635f21fc165a7d1181" - integrity sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw== - dependencies: - "@types/unist" "^3.0.0" - unist-util-stringify-position "^4.0.0" - -vfile@^6.0.0: - version "6.0.3" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-6.0.3.tgz#3652ab1c496531852bf55a6bac57af981ebc38ab" - integrity sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q== - dependencies: - "@types/unist" "^3.0.0" - vfile-message "^4.0.0" - -vite-node@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-2.1.1.tgz#7d46f623c04dfed6df34e7127711508a3386fa1c" - integrity sha512-N/mGckI1suG/5wQI35XeR9rsMsPqKXzq1CdUndzVstBj/HvyxxGctwnK6WX43NGt5L3Z5tcRf83g4TITKJhPrA== +vite-node@2.1.8: + version "2.1.8" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-2.1.8.tgz#9495ca17652f6f7f95ca7c4b568a235e0c8dbac5" + integrity sha512-uPAwSr57kYjAUux+8E2j0q0Fxpn8M9VoyfGiRI8Kfktz9NcYMCenwY5RnZxnF1WTu3TGiYipirIzacLL3VVGFg== dependencies: cac "^6.7.14" - debug "^4.3.6" + debug "^4.3.7" + es-module-lexer "^1.5.4" pathe "^1.1.2" vite "^5.0.0" -vite-plugin-babel@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/vite-plugin-babel/-/vite-plugin-babel-1.2.0.tgz#0d803d489c2a7e63ceb93e37533de298e1537c71" - integrity sha512-ltAnq535Ubf9sDbVCkztAdkwx5aQbNrwPFs+iZTJ5FaAhTdxjqmLGpxsAaRfJWEKBJ/kFf9KwMoTdArm0IRUUw== +vite-plugin-babel@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/vite-plugin-babel/-/vite-plugin-babel-1.3.0.tgz#a565259e35fe819b8875098060aa421547abcbbf" + integrity sha512-C5WKX0UwvQKH8WD2GiyWUjI62UBfLbfUhiLexnIm4asLdENX5ymrRipFlBnGeVxoOaYgTL5dh5KW6YDGpWsR8A== -vite-plugin-css-injected-by-js@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/vite-plugin-css-injected-by-js/-/vite-plugin-css-injected-by-js-3.5.1.tgz#b9c568c21b131d08e31aa6d368ee39c9d6c1b6c1" - integrity sha512-9ioqwDuEBxW55gNoWFEDhfLTrVKXEEZgl5adhWmmqa88EQGKfTmexy4v1Rh0pAS6RhKQs2bUYQArprB32JpUZQ== +vite-plugin-css-injected-by-js@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/vite-plugin-css-injected-by-js/-/vite-plugin-css-injected-by-js-3.5.2.tgz#1f75d16ad5c05b6b49bf18018099a189ec2e46ad" + integrity sha512-2MpU/Y+SCZyWUB6ua3HbJCrgnF0KACAsmzOQt1UvRVJCGF6S8xdA3ZUhWcWdM9ivG4I5az8PnQmwwrkC2CAQrQ== -vite-plugin-dts@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/vite-plugin-dts/-/vite-plugin-dts-4.2.2.tgz#96fd412827e545564a6dfe2de678feec5ddbed5c" - integrity sha512-USwTMReZFf8yXV+cKkm4WOMqmFjbReAvkyxON5xzdnZzJEBnFgax6BBDZIGGr9WMJYvhHdpaIHLrOjXDcla4OA== +vite-plugin-dts@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/vite-plugin-dts/-/vite-plugin-dts-4.3.0.tgz#f7365e4969f018ee47e6dda55adf051aa47083a7" + integrity sha512-LkBJh9IbLwL6/rxh0C1/bOurDrIEmRE7joC+jFdOEEciAFPbpEKOLSAr5nNh5R7CJ45cMbksTrFfy52szzC5eA== dependencies: - "@microsoft/api-extractor" "7.47.7" + "@microsoft/api-extractor" "^7.47.11" "@rollup/pluginutils" "^5.1.0" "@volar/typescript" "^2.4.4" "@vue/language-core" "2.1.6" @@ -5926,20 +5576,20 @@ vite-plugin-no-bundle@^4.0.0: fast-glob "^3.3.2" micromatch "^4.0.5" -vite-plugin-static-copy@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/vite-plugin-static-copy/-/vite-plugin-static-copy-1.0.6.tgz#ff457c16e8cfa564472aafd1698790ac89d05508" - integrity sha512-3uSvsMwDVFZRitqoWHj0t4137Kz7UynnJeq1EZlRW7e25h2068fyIZX4ORCCOAkfp1FklGxJNVJBkBOD+PZIew== +vite-plugin-static-copy@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/vite-plugin-static-copy/-/vite-plugin-static-copy-2.2.0.tgz#8eec750f016e508b09234da880e9310cd1367b9b" + integrity sha512-ytMrKdR9iWEYHbUxs6x53m+MRl4SJsOSoMu1U1+Pfg0DjPeMlsRVx3RR5jvoonineDquIue83Oq69JvNsFSU5w== dependencies: chokidar "^3.5.3" fast-glob "^3.2.11" fs-extra "^11.1.0" picocolors "^1.0.0" -vite@^5.0.0, vite@^5.4.8: - version "5.4.8" - resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.8.tgz#af548ce1c211b2785478d3ba3e8da51e39a287e8" - integrity sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ== +vite@^5.0.0, vite@^5.4.11: + version "5.4.11" + resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.11.tgz#3b415cd4aed781a356c1de5a9ebafb837715f6e5" + integrity sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q== dependencies: esbuild "^0.21.3" postcss "^8.4.43" @@ -5947,29 +5597,30 @@ vite@^5.0.0, vite@^5.4.8: optionalDependencies: fsevents "~2.3.3" -vitest@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/vitest/-/vitest-2.1.1.tgz#24a6f6f5d894509f10685b82de008c507faacbb1" - integrity sha512-97We7/VC0e9X5zBVkvt7SGQMGrRtn3KtySFQG5fpaMlS+l62eeXRQO633AYhSTC3z7IMebnPPNjGXVGNRFlxBA== - dependencies: - "@vitest/expect" "2.1.1" - "@vitest/mocker" "2.1.1" - "@vitest/pretty-format" "^2.1.1" - "@vitest/runner" "2.1.1" - "@vitest/snapshot" "2.1.1" - "@vitest/spy" "2.1.1" - "@vitest/utils" "2.1.1" - chai "^5.1.1" - debug "^4.3.6" - magic-string "^0.30.11" +vitest@^2.1.8: + version "2.1.8" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-2.1.8.tgz#2e6a00bc24833574d535c96d6602fb64163092fa" + integrity sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ== + dependencies: + "@vitest/expect" "2.1.8" + "@vitest/mocker" "2.1.8" + "@vitest/pretty-format" "^2.1.8" + "@vitest/runner" "2.1.8" + "@vitest/snapshot" "2.1.8" + "@vitest/spy" "2.1.8" + "@vitest/utils" "2.1.8" + chai "^5.1.2" + debug "^4.3.7" + expect-type "^1.1.0" + magic-string "^0.30.12" pathe "^1.1.2" - std-env "^3.7.0" + std-env "^3.8.0" tinybench "^2.9.0" - tinyexec "^0.3.0" - tinypool "^1.0.0" + tinyexec "^0.3.1" + tinypool "^1.0.1" tinyrainbow "^1.2.0" vite "^5.0.0" - vite-node "2.1.1" + vite-node "2.1.8" why-is-node-running "^2.3.0" vscode-uri@^3.0.8: @@ -5982,19 +5633,6 @@ vue-component-type-helpers@^2.0.0: resolved "https://registry.yarnpkg.com/vue-component-type-helpers/-/vue-component-type-helpers-2.0.19.tgz#545988c2abade4744a0dcc2b6a68f8e4ac40cccc" integrity sha512-cN3f1aTxxKo4lzNeQAkVopswuImUrb5Iurll9Gaw5cqpnbTAxtEMM1mgi6ou4X79OCyqYv1U1mzBHJkzmiK82w== -vue-eslint-parser@^9.3.1: - version "9.4.2" - resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-9.4.2.tgz#02ffcce82042b082292f2d1672514615f0d95b6d" - integrity sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ== - dependencies: - debug "^4.3.4" - eslint-scope "^7.1.1" - eslint-visitor-keys "^3.3.0" - espree "^9.3.1" - esquery "^1.4.0" - lodash "^4.17.21" - semver "^7.3.6" - vue-eslint-parser@^9.4.3: version "9.4.3" resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-9.4.3.tgz#9b04b22c71401f1e8bca9be7c3e3416a4bde76a8" @@ -6008,28 +5646,20 @@ vue-eslint-parser@^9.4.3: lodash "^4.17.21" semver "^7.3.6" -vue-router@^4.4.5: - version "4.4.5" - resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-4.4.5.tgz#bdf535e4cf32414ebdea6b4b403593efdb541388" - integrity sha512-4fKZygS8cH1yCyuabAXGUAsyi1b2/o/OKgu/RUb+znIYOxPRxdkytJEx+0wGcpBE1pX6vUgh5jwWOKRGvuA/7Q== +vue-router@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-4.5.0.tgz#58fc5fe374e10b6018f910328f756c3dae081f14" + integrity sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w== dependencies: "@vue/devtools-api" "^6.6.4" -vue-template-compiler@^2.7.14: - version "2.7.14" - resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz#4545b7dfb88090744c1577ae5ac3f964e61634b1" - integrity sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ== - dependencies: - de-indent "^1.0.2" - he "^1.2.0" - -vue-tsc@^2.0.19: - version "2.0.19" - resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-2.0.19.tgz#db0158a36b7e3773d31855fad5185554bbc7584f" - integrity sha512-JWay5Zt2/871iodGF72cELIbcAoPyhJxq56mPPh+M2K7IwI688FMrFKc/+DvB05wDWEuCPexQJ6L10zSwzzapg== +vue-tsc@^2.1.10: + version "2.1.10" + resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-2.1.10.tgz#4d61a64e5fad763b8b40c1884259fd48986f0b4e" + integrity sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA== dependencies: - "@volar/typescript" "~2.2.4" - "@vue/language-core" "2.0.19" + "@volar/typescript" "~2.4.8" + "@vue/language-core" "2.1.10" semver "^7.5.4" vue@3.3.4: @@ -6105,13 +5735,6 @@ which-pm-runs@^1.1.0: resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.1.0.tgz#35ccf7b1a0fce87bd8b92a478c9d045785d3bf35" integrity sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA== -which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" @@ -6119,6 +5742,13 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +which@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/which/-/which-5.0.0.tgz#d93f2d93f79834d4363c7d0c23e00d07c466c8d6" + integrity sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ== + dependencies: + isexe "^3.1.1" + why-is-node-running@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.3.0.tgz#a3f69a97107f494b3cdc3bdddd883a7d65cebf04" @@ -6203,10 +5833,10 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.1.tgz#c9772aacf62cb7494a95b0c4f1fb065b563db130" - integrity sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q== +yaml@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.6.1.tgz#42f2b1ba89203f374609572d5349fb8686500773" + integrity sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg== yargs-parser@^21.1.1: version "21.1.1" @@ -6235,8 +5865,3 @@ yoctocolors-cjs@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yoctocolors-cjs/-/yoctocolors-cjs-2.1.2.tgz#f4b905a840a37506813a7acaa28febe97767a242" integrity sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA== - -zwitch@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" - integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A== From 70fb0fbaad108ec2453f3259fb824bc72a4f2941 Mon Sep 17 00:00:00 2001 From: eyelidlessness Date: Tue, 17 Dec 2024 09:37:25 -0800 Subject: [PATCH 6/6] Fix lint errors introduced by updated eslint etc --- packages/common/src/test/assertions/dom.ts | 1 + .../src/test/assertions/vitest/shared-extension-types.ts | 6 +++--- .../scenario/src/answer/ExpectedApproximateUOMAnswer.ts | 5 +++++ packages/web-forms/e2e/build/style.test.ts | 2 +- packages/web-forms/e2e/build/wf-preview.test.ts | 2 +- packages/web-forms/tests/components/FormPanel.test.ts | 2 +- .../sources/GeoJSONExternalSecondaryInstance.ts | 1 + .../xforms-engine/src/parse/xpath/semantic-analysis.ts | 7 ++++--- 8 files changed, 17 insertions(+), 9 deletions(-) diff --git a/packages/common/src/test/assertions/dom.ts b/packages/common/src/test/assertions/dom.ts index f77cbafdc..0636f7c5a 100644 --- a/packages/common/src/test/assertions/dom.ts +++ b/packages/common/src/test/assertions/dom.ts @@ -97,6 +97,7 @@ export const expectEqualNode = (actual: Node, expected: Node) => { } else if (isCommentNode(expected)) { expectEqualComment(actual, expected); } else { + // eslint-disable-next-line @typescript-eslint/no-base-to-string -- Intentional fallback throw new Error(`Unhandled expected node: ${String(expected)}`); } }; diff --git a/packages/common/src/test/assertions/vitest/shared-extension-types.ts b/packages/common/src/test/assertions/vitest/shared-extension-types.ts index 909d307e2..1b29efaf2 100644 --- a/packages/common/src/test/assertions/vitest/shared-extension-types.ts +++ b/packages/common/src/test/assertions/vitest/shared-extension-types.ts @@ -72,9 +72,9 @@ export type ExpectExtension = | TypedExpectExtension | UntypedExpectExtension; -export type ExpectExtensionRecord = { - [K in MethodName]: ExpectExtension; -}; +export type ExpectExtensionRecord = Readonly< + Record +>; // prettier-ignore export type DeriveStaticVitestExpectExtension< diff --git a/packages/scenario/src/answer/ExpectedApproximateUOMAnswer.ts b/packages/scenario/src/answer/ExpectedApproximateUOMAnswer.ts index 9e4c0eaad..c68252d4e 100644 --- a/packages/scenario/src/answer/ExpectedApproximateUOMAnswer.ts +++ b/packages/scenario/src/answer/ExpectedApproximateUOMAnswer.ts @@ -22,6 +22,7 @@ export abstract class UOMValue implements CustomInspectable { constructor(readonly unitValue: number) {} + [Symbol.toPrimitive](hint: 'string'): string; [Symbol.toPrimitive](hint: ToPrimitiveHint = 'default'): number | string { const { unitValue } = this; @@ -48,6 +49,10 @@ export abstract class UOMValue implements CustomInspectable { return `${baseResult} (± ${String(errorTolerance)} ${uom})`; } + + toString(): string { + return this[Symbol.toPrimitive]('string'); + } } export class ExpectedApproximateUOMAnswer< diff --git a/packages/web-forms/e2e/build/style.test.ts b/packages/web-forms/e2e/build/style.test.ts index 903ef05de..e5beeadc8 100644 --- a/packages/web-forms/e2e/build/style.test.ts +++ b/packages/web-forms/e2e/build/style.test.ts @@ -36,7 +36,7 @@ test('Build includes component-defined styles', async ({ page }) => { // variable, in OdkWebForm.vue. const colors = ['rgb(255, 0, 0)', 'rgb(0, 255, 0)', 'rgb(0, 0, 255)']; - for await (const color of colors) { + for (const color of colors) { await expect(page.locator('body')).not.toHaveCSS('background-color', color); await page.locator('html').evaluate((pageRoot, gray200) => { diff --git a/packages/web-forms/e2e/build/wf-preview.test.ts b/packages/web-forms/e2e/build/wf-preview.test.ts index 4d6c28df5..9c8510212 100644 --- a/packages/web-forms/e2e/build/wf-preview.test.ts +++ b/packages/web-forms/e2e/build/wf-preview.test.ts @@ -7,7 +7,7 @@ test('Web Forms Preview: demo forms load', async ({ context, page }) => { expect(formPreviewLinks.length).toBeGreaterThan(0); - for await (const link of formPreviewLinks) { + for (const link of formPreviewLinks) { const [previewPage] = await Promise.all([context.waitForEvent('page'), link.click()]); await previewPage.waitForSelector( diff --git a/packages/web-forms/tests/components/FormPanel.test.ts b/packages/web-forms/tests/components/FormPanel.test.ts index 4d1599eaa..06919ba2d 100644 --- a/packages/web-forms/tests/components/FormPanel.test.ts +++ b/packages/web-forms/tests/components/FormPanel.test.ts @@ -5,7 +5,7 @@ import { globalMountOptions } from '../helpers'; const mountComponent = (props: PanelProps) => { return mount(FormPanel, { - props, // eslint-disable-line @typescript-eslint/no-unsafe-assignment + props, global: globalMountOptions, }); }; diff --git a/packages/xforms-engine/src/parse/model/SecondaryInstance/sources/GeoJSONExternalSecondaryInstance.ts b/packages/xforms-engine/src/parse/model/SecondaryInstance/sources/GeoJSONExternalSecondaryInstance.ts index eca660a9c..6101d4599 100644 --- a/packages/xforms-engine/src/parse/model/SecondaryInstance/sources/GeoJSONExternalSecondaryInstance.ts +++ b/packages/xforms-engine/src/parse/model/SecondaryInstance/sources/GeoJSONExternalSecondaryInstance.ts @@ -305,6 +305,7 @@ class GeoJSONSecondaryInstanceFeaturePropertyElement extends StaticElement { const { id = propertiesId } = feature; if (id !== undefined) { + // eslint-disable-next-line @typescript-eslint/no-base-to-string -- Intentional fallback, we don't know what this is and it could be any permutation of JSON yield new this(parent, 'id', String(id)); } diff --git a/packages/xforms-engine/src/parse/xpath/semantic-analysis.ts b/packages/xforms-engine/src/parse/xpath/semantic-analysis.ts index dae48a92a..50b8ecc02 100644 --- a/packages/xforms-engine/src/parse/xpath/semantic-analysis.ts +++ b/packages/xforms-engine/src/parse/xpath/semantic-analysis.ts @@ -396,9 +396,10 @@ const findConstantExpressionNode = (expression: string): ConstantExpressionSynta } }; -type BrandedExpression = Expression & { - readonly [K in Brand]: true; -}; +// prettier-ignore +type BrandedExpression = + & Expression + & Readonly>; const CONSTANT_EXPRESSION = Symbol('CONSTANT_EXPRESSION'); type CONSTANT_EXPRESSION = typeof CONSTANT_EXPRESSION;