diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..9ec3e4da --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,13 @@ +name: extension:build +on: push +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Install modules + run: yarn + - name: Run compiler + run: yarn compile + - name: Run `extenion build` command + run: yarn test:build diff --git a/.github/workflows/cli.yml b/.github/workflows/cli.yml new file mode 100644 index 00000000..42280dc5 --- /dev/null +++ b/.github/workflows/cli.yml @@ -0,0 +1,13 @@ +name: extension:cli +on: push +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Install modules + run: yarn + - name: Run compiler + run: yarn compile + - name: Run `extenion` cli without arguments + run: yarn test:cli diff --git a/.github/workflows/create.yml b/.github/workflows/create.yml new file mode 100644 index 00000000..f52dc5a8 --- /dev/null +++ b/.github/workflows/create.yml @@ -0,0 +1,13 @@ +name: extension:create +on: push +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Install modules + run: yarn + - name: Run compiler + run: yarn compile + - name: Run extenion create command + run: yarn test:create diff --git a/package.json b/package.json index aa7adf68..a7210282 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,9 @@ "lint": "eslint . --config .eslintrc.js", "release": "dotenv -- turbo run compile && changeset publish", "test": "dotenv -- turbo run test", + "test:build": "dotenv -- turbo run test:build", + "test:create": "dotenv -- turbo run test:create", + "test:cli": "dotenv -- turbo run test:cli", "test:watch": "dotenv -- turbo run test:watch", "types": "tsc --noEmit --project tsconfig.json", "version-packages": "changeset version", diff --git a/packages/run-chrome-extension/steps/RunChromePlugin/chrome/browser.config.ts b/packages/run-chrome-extension/steps/RunChromePlugin/chrome/browser.config.ts index dd4d3e1f..e1242d5c 100644 --- a/packages/run-chrome-extension/steps/RunChromePlugin/chrome/browser.config.ts +++ b/packages/run-chrome-extension/steps/RunChromePlugin/chrome/browser.config.ts @@ -106,6 +106,8 @@ export default function browserConfig( '--disable-features=DialMediaRouteProvider', // Don't send hyperlink auditing pings '--no-pings', + // Ensure the side panel is visible. This is used for testing the side panel feature. + '--enable-features=SidePanelUpdates', // Flags to pass to Chrome // Any of http://peter.sh/experiments/chromium-command-line-switches/ diff --git a/programs/cli/cli.ts b/programs/cli/cli.ts index 9a81b727..7e155d94 100755 --- a/programs/cli/cli.ts +++ b/programs/cli/cli.ts @@ -7,7 +7,6 @@ // ╚██████╗███████╗██║ // ╚═════╝╚══════╝╚═╝ -import semver from 'semver' import {program} from 'commander' // Types @@ -15,7 +14,7 @@ import type {CreateOptions} from '@extension-create/create' import type {DevOptions} from '@extension-create/develop/extensionDev' import type {StartOptions} from '@extension-create/develop/extensionStart' import type {BuildOptions} from '@extension-create/develop/extensionBuild' -import type {PreviewOptions} from '@extension-create/develop/extensionPreview' +// import type {PreviewOptions} from '@extension-create/develop/extensionPreview' import type {BrowsersSupported} from './types' // Modules @@ -23,7 +22,7 @@ import createExtension from '@extension-create/create' import { extensionDev, extensionStart, - extensionBuild, + extensionBuild // extensionPreview } from '@extension-create/develop' @@ -34,29 +33,14 @@ import packageJson from './package.json' // Before all, check for updates. checkUpdates(packageJson) -if (semver.lte(process.version, '18.0.0')) { - messages.unsupportedNodeVersion() - process.exit(1) -} - const extensionJs = program -// ███████╗██╗ ██╗████████╗███████╗███╗ ██╗███████╗██╗ ██████╗ ███╗ ██╗ -// ██╔════╝╚██╗██╔╝╚══██╔══╝██╔════╝████╗ ██║██╔════╝██║██╔═══██╗████╗ ██║ -// █████╗ ╚███╔╝ ██║ █████╗ ██╔██╗ ██║███████╗██║██║ ██║██╔██╗ ██║ -// ██╔══╝ ██╔██╗ ██║ ██╔══╝ ██║╚██╗██║╚════██║██║██║ ██║██║╚██╗██║ -// ███████╗██╔╝ ██╗ ██║ ███████╗██║ ╚████║███████║██║╚██████╔╝██║ ╚████║ -// ╚══════╝╚═╝ ╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═══╝ -// ██████╗██████╗ ███████╗ █████╗ ████████╗███████╗ -// ██╔════╝██╔══██╗██╔════╝██╔══██╗╚══██╔══╝██╔════╝ -// ██║ ██████╔╝█████╗ ███████║ ██║ █████╗ -// ██║ ██╔══██╗██╔══╝ ██╔══██║ ██║ ██╔══╝ -// ╚██████╗██║ ██║███████╗██║ ██║ ██║ ███████╗ -// ╚═════╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ ╚═╝ ╚══════╝ - -if (process.env.EXTENSION_ENV === 'development') { - console.log(`Running extension via ${packageJson.name}...`) -} +// ███████╗██╗ ██╗████████╗███████╗███╗ ██╗███████╗██╗ ██████╗ ███╗ ██╗ ██╗███████╗ +// ██╔════╝╚██╗██╔╝╚══██╔══╝██╔════╝████╗ ██║██╔════╝██║██╔═══██╗████╗ ██║ ██║██╔════╝ +// █████╗ ╚███╔╝ ██║ █████╗ ██╔██╗ ██║███████╗██║██║ ██║██╔██╗ ██║ ██║███████╗ +// ██╔══╝ ██╔██╗ ██║ ██╔══╝ ██║╚██╗██║╚════██║██║██║ ██║██║╚██╗██║ ██ ██║╚════██║ +// ███████╗██╔╝ ██╗ ██║ ███████╗██║ ╚████║███████║██║╚██████╔╝██║ ╚████║██╗╚█████╔╝███████║ +// ╚══════╝╚═╝ ╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚════╝ ╚══════╝ extensionJs .name(packageJson.name) @@ -83,45 +67,8 @@ extensionJs '-t, --template ', 'specify a template for the created project' ) - .action(async function ( - pathOrRemoteUrl: string, - { - browser = 'chrome', - template, - ...otherCommandOptions - }: CreateOptions & DevOptions & StartOptions & BuildOptions & PreviewOptions - ) { - switch (pathOrRemoteUrl) { - case 'dev': - for (const vendor of vendors(browser)) { - await extensionDev(pathOrRemoteUrl, { - mode: 'development', - browser: vendor as any, - ...otherCommandOptions - }) - } - break - case 'start': - for (const vendor of vendors(browser)) { - await extensionStart(pathOrRemoteUrl, { - mode: 'production', - browser: vendor as any, - ...otherCommandOptions - }) - } - break - case 'build': - for (const vendor of vendors(browser)) { - await extensionBuild(pathOrRemoteUrl, { - browser: vendor as any, - ...otherCommandOptions - }) - } - break - default: - await createExtension(pathOrRemoteUrl, {template}) - break - } + .action(async function (pathOrRemoteUrl: string, {template}: CreateOptions) { + await createExtension(pathOrRemoteUrl, {template}) }) // ██████╗ ███████╗██╗ ██╗ diff --git a/programs/cli/jest.config.js b/programs/cli/jest.config.js index 89a3a1ca..758fa133 100644 --- a/programs/cli/jest.config.js +++ b/programs/cli/jest.config.js @@ -1,5 +1,4 @@ module.exports = { preset: 'ts-jest', - testEnvironment: 'node', - testMatch: ['**/*.spec.ts'] + testEnvironment: 'node' } diff --git a/programs/cli/package.json b/programs/cli/package.json index bf85ca18..121d04d8 100644 --- a/programs/cli/package.json +++ b/programs/cli/package.json @@ -26,13 +26,17 @@ "url": "https://cezaraugusto.com" }, "scripts": { + "watch": "yarn compile --watch", "compile:readme-files": "node ./scripts/copyMarkdownFilesToCli.js", "compile:tailwind-config": "node ./scripts/copyTailwindConfig.js", "compile:stylelint-config": "node ./scripts/copyStylelintConfig.js", "compile:cli": "tsup-node ./cli.ts --format cjs --dts --target=node18", "compile": "yarn compile:readme-files && yarn compile:tailwind-config && yarn compile:stylelint-config &&yarn compile:cli", "clean": "rm -rf dist", - "test": "jest" + "before:test": "./spec/fixtures/install-npm-deps-for-fixtures.sh", + "test:build": "npm run before:test && jest spec/build.spec.ts", + "test:cli": "npm run before:test && jest spec/cli.spec.ts", + "test:create": "npm run before:test && jest spec/create.spec.ts" }, "keywords": [ "zero-config", diff --git a/programs/cli/spec/build.spec.ts b/programs/cli/spec/build.spec.ts new file mode 100644 index 00000000..f6e327c8 --- /dev/null +++ b/programs/cli/spec/build.spec.ts @@ -0,0 +1,130 @@ +// ██████╗██╗ ██╗ +// ██╔════╝██║ ██║ +// ██║ ██║ ██║ +// ██║ ██║ ██║ +// ╚██████╗███████╗██║ +// ╚═════╝╚══════╝╚═╝ + +import path from 'path' +import {ALL_TEMPLATES, DEFAULT_TEMPLATE, BROWSERS} from './fixtures/constants' +import { + extensionProgram, + distFileExists, + removeAllTemplateFolders +} from './fixtures/helpers' + +describe('extension build', () => { + beforeEach(async () => { + await removeAllTemplateFolders() + }) + + describe('running built-in templates', () => { + it.each(ALL_TEMPLATES)( + `builds an extension created via "$name" template`, + async (template) => { + const extensionPath = path.join(__dirname, 'fixtures', template.name) + await extensionProgram(`build ${extensionPath}`) + + // Expect manifest file to exist + expect( + distFileExists(template.name, BROWSERS[0], 'manifest.json') + ).toBeTruthy() + + // TODO: cezaraugusto test ui context files output + + if (template.name !== 'init') { + expect( + distFileExists(template.name, BROWSERS[0], 'icons/icon_16.png') + ).toBeTruthy() + expect( + distFileExists(template.name, BROWSERS[0], 'icons/icon_48.png') + ).toBeTruthy() + } + }, + 80000 + ) + }) + + describe('using the --browser flag', () => { + it.each(ALL_TEMPLATES)( + `builds the "$name" extension template across all browsers`, + async (template) => { + const extensionPath = path.join(__dirname, 'fixtures', template.name) + // Firefox is skippeed because it can't handle service workers. + const [chrome, edge /*, firefox */] = BROWSERS + + await extensionProgram(`build ${extensionPath} --browser=chrome,edge`) + + expect(distFileExists(template.name, chrome)).toBeTruthy() + expect(distFileExists(template.name, edge)).toBeTruthy() + }, + 50000 + ) + }) + + describe.skip('using the --polyfill flag', () => { + it.skip.each(ALL_TEMPLATES)( + `builds an extension created via "$name" template with the polyfill code`, + async (template) => { + const extensionPath = path.join(__dirname, 'fixtures', template.name) + + await extensionProgram(`build ${extensionPath} --polyfill`) + + // TODO cezaraugusto test this + }, + 50000 + ) + }) + + describe('using the --zip flag', () => { + it.each([DEFAULT_TEMPLATE])( + `builds and zips the distribution files of an extension created via "$name" template`, + async (template) => { + const extensionPath = path.join(__dirname, 'fixtures', template.name) + + await extensionProgram(`build ${extensionPath} --zip`) + + expect(distFileExists(template.name, 'chrome')).toBeTruthy() + }, + 50000 + ) + + it.each([DEFAULT_TEMPLATE])( + `builds and zips the source files of an extension created via "$name" template`, + async (template) => { + const extensionPath = path.join(__dirname, 'fixtures', template.name) + + await extensionProgram(`build ${extensionPath} --zip-source`) + + expect( + distFileExists( + template.name, + BROWSERS[0], + `${template.name}-1.0-source.zip` + ) + ).toBeTruthy() + }, + 50000 + ) + + it.each([DEFAULT_TEMPLATE])( + `builds and zips the source files of an extension created via "$name" template with a custom output name using the --zip-filename flag`, + async (template) => { + const extensionPath = path.join(__dirname, 'fixtures', template.name) + + await extensionProgram( + `build ${extensionPath} --zip --zip-filename ${template.name}-nice` + ) + + expect( + distFileExists( + template.name, + BROWSERS[0], + `${template.name}-nice.zip` + ) + ).toBeTruthy() + }, + 50000 + ) + }) +}) diff --git a/programs/cli/spec/cli.spec.ts b/programs/cli/spec/cli.spec.ts index 43c4ced5..5dfe4616 100644 --- a/programs/cli/spec/cli.spec.ts +++ b/programs/cli/spec/cli.spec.ts @@ -5,189 +5,20 @@ // ╚██████╗███████╗██║ // ╚═════╝╚══════╝╚═╝ -import path from 'path' -import fs from 'fs' -import {exec} from 'child_process' -import {promisify} from 'util' -import mockFs from 'mock-fs' - -const execAsync = promisify(exec) - -async function executeCLI(command: string = '') { - const cliCommand = `ts-node ${path.join( - __dirname, - '..', - 'dist', - 'cli.js' - )} ${command}` - return await execAsync(cliCommand) -} - -async function removeDir(dirPath: string) { - if (fs.existsSync(dirPath)) { - await fs.promises.rm(dirPath, {recursive: true}) - } -} +import {extensionProgram} from './fixtures/helpers' describe('CLI Commands', () => { - describe.skip('The CLI itself', () => { - const extensionPath = path.join(__dirname, '..', 'my-extension') - const customPath = path.join(__dirname, '..', 'my-custom-path') - - beforeEach(async () => { - await removeDir(extensionPath) - await removeDir(customPath) - mockFs.restore() - }) - - afterAll(async () => { - await removeDir(extensionPath) - await removeDir(customPath) - }) - - it('throws an error if no command is provided', async () => { - try { - await executeCLI() - } catch (error: any) { - expect(error).toBeTruthy() - expect(error.message).toContain( - "missing required argument 'project-name|project-path" - ) - } - }) - - it('should exit if Node version is less than 18', async () => { - Object.defineProperty(process, 'version', {value: 'v17.0.0'}) - - try { - await executeCLI('create my-extension') - } catch (error: any) { - expect(error).toBeTruthy() - expect(error.message).toContain('unsupportedNodeVersion') - } - - Object.defineProperty(process, 'version', {value: 'v18.0.0'}) - }) - - it('should display the help message', async () => { - const {stdout} = await executeCLI('--help') - expect(stdout).toContain('Usage:') - }) - }) - - describe.skip('Create Command', () => { - const extensionPath = path.join(__dirname, '..', 'my-extension') - const customPath = path.join(__dirname, '..', 'my-custom-path') - - beforeEach(async () => { - await removeDir(extensionPath) - await removeDir(customPath) - mockFs.restore() - }) - - afterAll(async () => { - await removeDir(extensionPath) - await removeDir(customPath) - }) - - it('throws an error if target directory has conflicting files', async () => { - mockFs({ - 'my-extension': { - 'package.json': 'some content' - } - }) - - try { - await executeCLI('create my-extension') - } catch (error: any) { - expect(error).toBeTruthy() - expect(error.message).toContain('includes conflicting files') - } - }) - - it('throws an error if no project name is provided', async () => { - try { - await executeCLI('create') - } catch (error: any) { - expect(error).toBeTruthy() - expect(error.message).toContain( - "missing required argument 'project-name|project-path" - ) - } - }) - - it('creates a new extension', async () => { - const extensionPath = path.join(__dirname, '..', 'my-extension') - await executeCLI('create my-extension') - expect(fs.existsSync(extensionPath)).toBeTruthy() - }) - - it('creates a new extension from a react template', async () => { - const extensionPath = path.join(__dirname, '..', 'my-extension') - await executeCLI('create my-extension --template react') - expect(fs.existsSync(extensionPath)).toBeTruthy() - }) - - it('creates a new extension from a typescript template', async () => { - const extensionPath = path.join(__dirname, '..', 'my-extension') - await executeCLI('create my-extension --template typescript') - expect(fs.existsSync(extensionPath)).toBeTruthy() - }) - - it('creates a new extension from a react-typescript template', async () => { - const extensionPath = path.join(__dirname, '..', 'my-extension') - await executeCLI('create my-extension --template react-typescript') - expect(fs.existsSync(extensionPath)).toBeTruthy() - }) - - it('creates a new extension in a custom output directory', async () => { - const extensionPath = path.join(__dirname, '..', 'my-custom-path') - await executeCLI('create my-custom-path/my-extension') - expect(fs.existsSync(extensionPath)).toBeTruthy() - }) - - it('creates a new extension from a template in a custom output directory.', async () => { - const extensionPath = path.join(__dirname, '..', 'my-custom-path') - await executeCLI('create my-custom-path/my-extension --template react') - expect(fs.existsSync(extensionPath)).toBeTruthy() - }) - }) - - describe.skip('Dev Command', () => { - /** - * can develop an extension - * can develop an extension from a remote url - * can start an extension in a custom output directory - * can launch using chrome - * can launch using edge - * can launch using firefox - * can launch with a custom user data dir - * can launch without a polyfill (TODO) - * can launch with a custom port - */ - }) - - describe.skip('Start Command', () => { - /** - * can start an extension - * can start an extension from a remote url - * can start an extension in a custom output directory - * can launch using chrome - * can launch using edge - * can launch using firefox - * can launch with a custom user data dir - * can launch without a polyfill - * can launch with a custom port - */ - }) - - describe.skip('Build Command', () => { - /** - * can build an extension - * can build an extension with chrome - * can build an extension with edge - * can build an extension with firefox - * can build without a polyfill - */ - }) + it('returns usage instructions if no command is provided', async () => { + try { + await extensionProgram() + } catch (error: any) { + expect(error).toBeTruthy() + expect(error.message).toContain('Usage: extension [options] [command]') + } + }, 30000) + + it('should display the help message', async () => { + const {stdout} = await extensionProgram('--help') + expect(stdout).toContain('Usage:') + }, 30000) }) diff --git a/programs/cli/spec/create.spec.ts b/programs/cli/spec/create.spec.ts new file mode 100644 index 00000000..e26521e1 --- /dev/null +++ b/programs/cli/spec/create.spec.ts @@ -0,0 +1,152 @@ +// ██████╗██╗ ██╗ +// ██╔════╝██║ ██║ +// ██║ ██║ ██║ +// ██║ ██║ ██║ +// ╚██████╗███████╗██║ +// ╚═════╝╚══════╝╚═╝ + +import path from 'path' +import { + ALL_TEMPLATES, + ALL_TEMPLATES_BUT_DEFAULT, + DEFAULT_TEMPLATE +} from './fixtures/constants' +import { + extensionProgram, + fileExists, + removeAllTemplateFolders +} from './fixtures/helpers' + +describe('extension create', () => { + beforeEach(async () => { + await removeAllTemplateFolders() + }) + + it('throws an error if target directory has conflicting files', async () => { + const templatePath = path.join(__dirname, '..', 'dist', 'init') + + try { + // Create first extension. + await extensionProgram(`create ${templatePath}`) + + // Try recreating on top of existing directory. + await extensionProgram(`create ${templatePath}`) + } catch (error: any) { + expect(error).toBeTruthy() + expect(error.message).toContain('includes conflicting files') + } + }, 60000) + + it('throws an error if no project name is provided', async () => { + try { + await extensionProgram('create') + } catch (error: any) { + expect(error).toBeTruthy() + expect(error.message).toContain( + "missing required argument 'project-name|project-path" + ) + } + }, 30000) + + describe('using the --template flag', () => { + it.each(ALL_TEMPLATES)( + `creates the "$name" extension template`, + async (template) => { + const extensionPath = path.join(__dirname, '..', 'dist', template.name) + await extensionProgram( + `create ${extensionPath} --template="${template.name}"` + ) + + // UI frameworks will use either tsx or jsx files. + // Non-UI frameworks will use either ts or js files. + // TODO: cezaraugusto this is not going to scale well + // but better than nothing for now. + const ext = template.uiFramework + ? template.configFiles?.includes('tsconfig.json') + ? template.uiFramework === 'vue' + ? 'ts' + : 'tsx' + : template.uiFramework === 'vue' + ? 'js' + : 'jsx' + : template.configFiles?.includes('tsconfig.json') + ? 'ts' + : 'js' + + template.uiContext?.forEach((context: string) => { + // Expect [context]/index.html for all contexts except 'content' + if (context !== 'content') { + expect( + fileExists(template.name, `${context.toLowerCase()}/index.html`) + ).toBeTruthy() + } + + // Expect [uiContext]/[uiContext].[ext] for scripts + expect( + fileExists(template.name, `${context.toLowerCase()}/scripts.${ext}`) + ).toBeTruthy() + + // Expect [uiContext]/styles.css for styles + expect( + fileExists(template.name, `${context.toLowerCase()}/styles.css`) + ).toBeTruthy() + + // Expect [ContextApp].[ext] for all contexts using frameworks + if (template.uiFramework) { + const capitalizedtemplate = + context?.charAt(0).toUpperCase() + context?.slice(1) + + // Vue uses its own file extension + const fileExt = template.uiFramework === 'vue' ? 'vue' : ext + + expect( + fileExists( + template.name, + `${context.toLowerCase()}/${capitalizedtemplate}App.${fileExt}` + ) + ).toBeTruthy() + } + }) + + // Expect images/icons/icon_16.png and expect images/icons/icon_16.png + if (template.name !== 'init') { + expect( + fileExists(template.name, 'images/icons/icon_16.png') + ).toBeTruthy() + expect( + fileExists(template.name, 'images/icons/icon_48.png') + ).toBeTruthy() + } + + // Expect manifest.json to exist + expect(fileExists(template.name, 'manifest.json')).toBeTruthy() + + // Expect package.json to exist + expect(fileExists(template.name, 'package.json')).toBeTruthy() + + // Expect README.md to exist + expect(fileExists(template.name, 'README.md')).toBeTruthy() + + // Expect .gitignore to exist + expect(fileExists(template.name, '.gitignore')).toBeTruthy() + + // TODO: Expect project to be a .git project + // See https://github.com/extension-js/extension.js/issues/54 + // expect(fileExists(template.name, '.git')).toBeTruthy() + + if (template.hasEnv) { + // For those who need it: Expect .env.sample + expect(fileExists(template.name, '.env.example')).toBeTruthy() + } + + if (template.configFiles) { + template.configFiles.forEach((configFile) => { + // Expect every config file declared in the template to exist + expect(fileExists(template.name, configFile)).toBeTruthy() + }) + } + }, + ALL_TEMPLATES.length * 50000 + ) + }) +}) diff --git a/programs/cli/spec/fixtures/chatgpt/.env.example b/programs/cli/spec/fixtures/chatgpt/.env.example new file mode 100644 index 00000000..37a04ea5 --- /dev/null +++ b/programs/cli/spec/fixtures/chatgpt/.env.example @@ -0,0 +1 @@ +EXTENSION_OPENAI_API_KEY='My API Key' diff --git a/programs/cli/spec/fixtures/chatgpt/.gitignore b/programs/cli/spec/fixtures/chatgpt/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/chatgpt/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/chatgpt/README.md b/programs/cli/spec/fixtures/chatgpt/README.md new file mode 100644 index 00000000..a0785ea9 --- /dev/null +++ b/programs/cli/spec/fixtures/chatgpt/README.md @@ -0,0 +1,37 @@ +# chatgpt + +> This project was bootstrapped using the Extension.js React-TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/chatgpt/images/chatgpt.png b/programs/cli/spec/fixtures/chatgpt/images/chatgpt.png new file mode 100644 index 00000000..37b27118 Binary files /dev/null and b/programs/cli/spec/fixtures/chatgpt/images/chatgpt.png differ diff --git a/programs/create/templates/chatgpt/template/images/extensionjs.png b/programs/cli/spec/fixtures/chatgpt/images/extension.png similarity index 100% rename from programs/create/templates/chatgpt/template/images/extensionjs.png rename to programs/cli/spec/fixtures/chatgpt/images/extension.png diff --git a/programs/cli/spec/fixtures/my-extension/public/icon/icon_16.png b/programs/cli/spec/fixtures/chatgpt/images/icons/icon_16.png similarity index 100% rename from programs/cli/spec/fixtures/my-extension/public/icon/icon_16.png rename to programs/cli/spec/fixtures/chatgpt/images/icons/icon_16.png diff --git a/programs/cli/spec/fixtures/my-extension/public/icon/icon_48.png b/programs/cli/spec/fixtures/chatgpt/images/icons/icon_48.png similarity index 100% rename from programs/cli/spec/fixtures/my-extension/public/icon/icon_48.png rename to programs/cli/spec/fixtures/chatgpt/images/icons/icon_48.png diff --git a/programs/cli/spec/fixtures/chatgpt/manifest.json b/programs/cli/spec/fixtures/chatgpt/manifest.json new file mode 100644 index 00000000..900e6f42 --- /dev/null +++ b/programs/cli/spec/fixtures/chatgpt/manifest.json @@ -0,0 +1,14 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "chatgpt", + "description": "An Extension.js template integrated with ChatGPT. This template includes a sidebar panel.", + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + }, + "side_panel": { + "default_path": "sidebar/index.html" + }, + "permissions": ["sidePanel"] +} diff --git a/programs/cli/spec/fixtures/chatgpt/package.json b/programs/cli/spec/fixtures/chatgpt/package.json new file mode 100644 index 00000000..2f4fc321 --- /dev/null +++ b/programs/cli/spec/fixtures/chatgpt/package.json @@ -0,0 +1,21 @@ +{ + "devDependencies": { + "@types/react": "^18.0.9", + "@types/react-dom": "^18.0.5", + "daisyui": "^4.7.3", + "openai": "^4.28.4", + "react": "^18.1.0", + "react-dom": "^18.1.0", + "tailwindcss": "^3.4.1", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-chatgpt", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/chatgpt/postcss.config.js b/programs/cli/spec/fixtures/chatgpt/postcss.config.js new file mode 100644 index 00000000..85f717cc --- /dev/null +++ b/programs/cli/spec/fixtures/chatgpt/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {} + } +} diff --git a/programs/create/templates/chatgpt/template/side_panel/SidePanelApp.jsx b/programs/cli/spec/fixtures/chatgpt/sidebar/SidebarApp.jsx similarity index 98% rename from programs/create/templates/chatgpt/template/side_panel/SidePanelApp.jsx rename to programs/cli/spec/fixtures/chatgpt/sidebar/SidebarApp.jsx index 640a0b4a..7a208a7f 100644 --- a/programs/create/templates/chatgpt/template/side_panel/SidePanelApp.jsx +++ b/programs/cli/spec/fixtures/chatgpt/sidebar/SidebarApp.jsx @@ -1,7 +1,7 @@ import { useState } from 'react'; import OpenAI from "openai"; import chatgptLogo from '../images/chatgpt.png' -import extensionJsLogo from '../images/extensionjs.png' +import extensionJsLogo from '../images/extension.png' const openai = new OpenAI({ apiKey: process.env.EXTENSION_OPENAI_API_KEY, diff --git a/programs/create/templates/chatgpt/template/side_panel/index.html b/programs/cli/spec/fixtures/chatgpt/sidebar/index.html similarity index 88% rename from programs/create/templates/chatgpt/template/side_panel/index.html rename to programs/cli/spec/fixtures/chatgpt/sidebar/index.html index 9a7433df..a6e44c73 100644 --- a/programs/create/templates/chatgpt/template/side_panel/index.html +++ b/programs/cli/spec/fixtures/chatgpt/sidebar/index.html @@ -9,5 +9,5 @@
- + diff --git a/programs/create/templates/chatgpt/template/side_panel/sidepanel.jsx b/programs/cli/spec/fixtures/chatgpt/sidebar/sidebar.jsx similarity index 77% rename from programs/create/templates/chatgpt/template/side_panel/sidepanel.jsx rename to programs/cli/spec/fixtures/chatgpt/sidebar/sidebar.jsx index 2ed082e1..2d965775 100644 --- a/programs/create/templates/chatgpt/template/side_panel/sidepanel.jsx +++ b/programs/cli/spec/fixtures/chatgpt/sidebar/sidebar.jsx @@ -1,12 +1,12 @@ import React from 'react' import ReactDOM from 'react-dom/client' -import SidePanelApp from './SidePanelApp' +import SidebarApp from './SidebarApp' import './styles.css' const root = ReactDOM.createRoot(document.getElementById('root')) root.render( - + ) diff --git a/programs/create/templates/chatgpt/template/side_panel/styles.css b/programs/cli/spec/fixtures/chatgpt/sidebar/styles.css similarity index 100% rename from programs/create/templates/chatgpt/template/side_panel/styles.css rename to programs/cli/spec/fixtures/chatgpt/sidebar/styles.css diff --git a/programs/cli/spec/fixtures/chatgpt/tailwind.config.js b/programs/cli/spec/fixtures/chatgpt/tailwind.config.js new file mode 100644 index 00000000..c92094be --- /dev/null +++ b/programs/cli/spec/fixtures/chatgpt/tailwind.config.js @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['**/*.html', '**/*.jsx'], + theme: { + extend: {} + }, + plugins: [require('daisyui')] +} diff --git a/programs/cli/spec/fixtures/constants.ts b/programs/cli/spec/fixtures/constants.ts new file mode 100644 index 00000000..5fcb4ea7 --- /dev/null +++ b/programs/cli/spec/fixtures/constants.ts @@ -0,0 +1,161 @@ +type UIContext = 'sidebar' | 'newTab' | 'content' | 'popup' | 'devTools' +type ConfigFiles = + | 'postcss.config.js' + | 'tailwind.config.js' + | 'tsconfig.json' + | 'babel.config.js' + | 'stylelint.config.js' + +interface Template { + name: string + uiContext: UIContext[] | undefined + uiFramework: 'react' | 'preact' | 'vue' | undefined + hasBackground: boolean + hasEnv: boolean + configFiles: ConfigFiles[] | undefined +} + +const DEFAULT_TEMPLATE: Template = { + name: 'init', + uiContext: undefined, + uiFramework: undefined, + hasBackground: false, + hasEnv: false, + configFiles: undefined +} + +const JS_TEMPLATES: Template[] = [ + { + name: 'new', + uiContext: ['newTab'], + uiFramework: undefined, + hasBackground: false, + hasEnv: false, + configFiles: undefined + }, + { + name: 'content', + uiContext: ['content'], + uiFramework: undefined, + hasBackground: true, + hasEnv: false, + configFiles: undefined + } +] + +// const WASM_TEMPLATES: Template[]: string[] = [] + +const TS_TEMPLATES: Template[] = [ + { + name: 'typescript', + uiContext: ['newTab'], + uiFramework: undefined, + hasBackground: false, + hasEnv: false, + configFiles: ['tsconfig.json'] + } +] + +const CUSTOM_TEMPLATES: Template[] = [ + { + name: 'chatgpt', + uiContext: ['sidebar'], + uiFramework: 'react', + hasBackground: false, + hasEnv: true, + + configFiles: ['postcss.config.js', 'tailwind.config.js'] + } +] + +const FRAMEWORK_TEMPLATES: Template[] = [ + { + name: 'react', + uiContext: ['newTab'], + uiFramework: 'react', + hasBackground: false, + hasEnv: false, + configFiles: undefined + }, + { + name: 'react-typescript', + uiContext: ['content'], + uiFramework: 'react', + hasBackground: false, + hasEnv: false, + configFiles: ['postcss.config.js', 'tailwind.config.js', 'tsconfig.json'] + }, + { + name: 'preact', + uiContext: ['newTab'], + uiFramework: 'preact', + hasBackground: false, + hasEnv: false, + configFiles: undefined + }, + { + name: 'preact-typescript', + uiContext: ['content'], + uiFramework: 'preact', + hasBackground: false, + hasEnv: false, + + configFiles: ['postcss.config.js', 'tailwind.config.js', 'tsconfig.json'] + }, + { + name: 'vue', + uiContext: ['newTab'], + uiFramework: 'vue', + hasBackground: false, + hasEnv: false, + configFiles: undefined + }, + { + name: 'vue-typescript', + uiContext: ['content'], + uiFramework: 'vue', + hasBackground: false, + hasEnv: false, + configFiles: ['postcss.config.js', 'tailwind.config.js', 'tsconfig.json'] + } +] + +const TAILWIND_TEMPLATES: Template[] = [ + { + name: 'tailwind', + uiContext: ['newTab'], + uiFramework: 'react', + hasBackground: false, + hasEnv: false, + configFiles: ['postcss.config.js', 'tailwind.config.js'] + } +] + +const ALL_TEMPLATES: Template[] = [ + DEFAULT_TEMPLATE, + ...JS_TEMPLATES, + // ...WASM_TEMPLATES, + ...TS_TEMPLATES, + ...CUSTOM_TEMPLATES, + ...FRAMEWORK_TEMPLATES, + ...TAILWIND_TEMPLATES +] + +const ALL_TEMPLATES_BUT_DEFAULT = ALL_TEMPLATES.filter( + (template) => template.name !== 'init' +) + +const BROWSERS = ['chrome', 'edge', 'firefox'] + +export { + BROWSERS, + DEFAULT_TEMPLATE, + JS_TEMPLATES, + // WASM_TEMPLATES, + TS_TEMPLATES, + CUSTOM_TEMPLATES, + FRAMEWORK_TEMPLATES, + TAILWIND_TEMPLATES, + ALL_TEMPLATES, + ALL_TEMPLATES_BUT_DEFAULT +} diff --git a/programs/cli/spec/fixtures/content/.gitignore b/programs/cli/spec/fixtures/content/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/content/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/content/README.md b/programs/cli/spec/fixtures/content/README.md new file mode 100644 index 00000000..f4fd5c08 --- /dev/null +++ b/programs/cli/spec/fixtures/content/README.md @@ -0,0 +1,37 @@ +# content + +> This project was bootstrapped using the Extension.js TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/create/templates/content/template/service-worker.js b/programs/cli/spec/fixtures/content/background.js similarity index 100% rename from programs/create/templates/content/template/service-worker.js rename to programs/cli/spec/fixtures/content/background.js diff --git a/programs/create/templates/content/template/content.js b/programs/cli/spec/fixtures/content/content/scripts.js similarity index 90% rename from programs/create/templates/content/template/content.js rename to programs/cli/spec/fixtures/content/content/scripts.js index 91fc2162..d49a238a 100644 --- a/programs/create/templates/content/template/content.js +++ b/programs/cli/spec/fixtures/content/content/scripts.js @@ -1,5 +1,5 @@ -import extensionJsLogo from './images/extensionjs.svg' -import './content.css' +import extensionJsLogo from '../images/extension.png' +import './styles.css' document.body.innerHTML += `
diff --git a/programs/create/templates/content/template/content.css b/programs/cli/spec/fixtures/content/content/styles.css similarity index 100% rename from programs/create/templates/content/template/content.css rename to programs/cli/spec/fixtures/content/content/styles.css diff --git a/programs/create/templates/new/template/images/extensionjs.png b/programs/cli/spec/fixtures/content/images/extension.png similarity index 100% rename from programs/create/templates/new/template/images/extensionjs.png rename to programs/cli/spec/fixtures/content/images/extension.png diff --git a/programs/create/templates/preact-typescript/template/public/icon/icon_16.png b/programs/cli/spec/fixtures/content/images/icons/icon_16.png similarity index 100% rename from programs/create/templates/preact-typescript/template/public/icon/icon_16.png rename to programs/cli/spec/fixtures/content/images/icons/icon_16.png diff --git a/programs/create/templates/preact-typescript/template/public/icon/icon_48.png b/programs/cli/spec/fixtures/content/images/icons/icon_48.png similarity index 100% rename from programs/create/templates/preact-typescript/template/public/icon/icon_48.png rename to programs/cli/spec/fixtures/content/images/icons/icon_48.png diff --git a/programs/cli/spec/fixtures/content/manifest.json b/programs/cli/spec/fixtures/content/manifest.json new file mode 100644 index 00000000..906760bf --- /dev/null +++ b/programs/cli/spec/fixtures/content/manifest.json @@ -0,0 +1,21 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "content", + "description": "An Extension.js template using web technologies. This template includes a content script.", + "permissions": ["activeTab", "scripting"], + "host_permissions": [""], + "background": { + "service_worker": "background.js" + }, + "content_scripts": [ + { + "matches": [""], + "js": ["content/scripts.js"] + } + ], + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + } +} diff --git a/programs/cli/spec/fixtures/content/package.json b/programs/cli/spec/fixtures/content/package.json new file mode 100644 index 00000000..996ce59a --- /dev/null +++ b/programs/cli/spec/fixtures/content/package.json @@ -0,0 +1,14 @@ +{ + "devDependencies": { + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-content", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/helpers.ts b/programs/cli/spec/fixtures/helpers.ts new file mode 100644 index 00000000..7a0f8c9d --- /dev/null +++ b/programs/cli/spec/fixtures/helpers.ts @@ -0,0 +1,79 @@ +// ██████╗██╗ ██╗ +// ██╔════╝██║ ██║ +// ██║ ██║ ██║ +// ██║ ██║ ██║ +// ╚██████╗███████╗██║ +// ╚═════╝╚══════╝╚═╝ + +import path from 'path' +import fs from 'fs' +import {exec} from 'child_process' +import {promisify} from 'util' +import {ALL_TEMPLATES} from './constants' + +const execAsync = promisify(exec) + +export async function extensionProgram(command: string = '') { + const cliCommand = `ts-node ${path.join( + __dirname, + '..', + '..', + 'dist', + 'cli.js' + )} ${command}` + return await execAsync(cliCommand) +} + +export function fileExists(template: string, filePath?: string): boolean { + const templatePath = path.join(__dirname, '..', '..', 'dist', template) + return fs.existsSync(path.join(templatePath, filePath || '')) +} + +export function distFileExists( + template: string, + browser: string, + filePath?: string +): boolean { + const templatePath = path.join(__dirname, template, 'dist', browser) + + return fs.existsSync(path.join(templatePath, filePath || '')) +} + +export async function removeDir(dirPath: string) { + if (fs.existsSync(dirPath)) { + await fs.promises.rm(dirPath, {recursive: true}) + } +} + +export async function removeAllTemplateFolders() { + await Promise.all( + ALL_TEMPLATES.map(async (template) => { + const templatePath = path.join( + __dirname, + '..', + '..', + 'dist', + template.name + ) + + await removeDir(templatePath) + return true + }) + ) +} + +export async function removeAllTemplateDistFolders() { + await Promise.all( + ALL_TEMPLATES.map(async (template) => { + const templatePath = path.join( + __dirname, + 'fixtures', + template.name, + 'dist' + ) + + await removeDir(templatePath) + return true + }) + ) +} diff --git a/programs/cli/spec/fixtures/init/.gitignore b/programs/cli/spec/fixtures/init/.gitignore new file mode 100644 index 00000000..7f06b448 --- /dev/null +++ b/programs/cli/spec/fixtures/init/.gitignore @@ -0,0 +1,27 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/my-extension/README.md b/programs/cli/spec/fixtures/init/README.md similarity index 100% rename from programs/cli/spec/fixtures/my-extension/README.md rename to programs/cli/spec/fixtures/init/README.md diff --git a/programs/cli/spec/fixtures/init/manifest.json b/programs/cli/spec/fixtures/init/manifest.json new file mode 100644 index 00000000..2d94053b --- /dev/null +++ b/programs/cli/spec/fixtures/init/manifest.json @@ -0,0 +1,6 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "init", + "description": "A minimum extension template. This template includes a manifest file." +} diff --git a/programs/cli/spec/fixtures/init/package.json b/programs/cli/spec/fixtures/init/package.json new file mode 100644 index 00000000..034a3d29 --- /dev/null +++ b/programs/cli/spec/fixtures/init/package.json @@ -0,0 +1,14 @@ +{ + "devDependencies": { + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-init", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/install-npm-deps-for-fixtures.sh b/programs/cli/spec/fixtures/install-npm-deps-for-fixtures.sh new file mode 100755 index 00000000..b37dc833 --- /dev/null +++ b/programs/cli/spec/fixtures/install-npm-deps-for-fixtures.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +# Navigate to the fixtures directory +cd ./spec/fixtures/ + +# Loop through each top-level directory +for dir in */; do + if [ -d "$dir" ]; then + echo "Running npm install in $dir" + (cd "$dir" && npm install) + fi +done + +echo "All installations are complete." \ No newline at end of file diff --git a/programs/cli/spec/fixtures/my-extension/manifest.json b/programs/cli/spec/fixtures/my-extension/manifest.json deleted file mode 100644 index 8a269b46..00000000 --- a/programs/cli/spec/fixtures/my-extension/manifest.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "manifest_version": 2, - "version": "1.0", - "name": "Welcome Extension", - "description": "An extension to welcome you!", - "icons": { - "16": "public/icon/icon_16.png", - "32": "public/icon/icon_32.png", - "48": "public/icon/icon_48.png", - "64": "public/icon/icon_64.png" - }, - "permissions": ["tabs"], - "web_accessible_resources": ["public/*"], - "browser_action": { - "default_icon": { - "16": "public/icon/icon_16.png", - "32": "public/icon/icon_32.png", - "48": "public/icon/icon_48.png", - "64": "public/icon/icon_64.png" - }, - "default_popup": "popup/popup.html", - "default_title": "Welcome Extension" - }, - "chrome_url_overrides": { - "newtab": "newtab/newtab.html" - } -} diff --git a/programs/cli/spec/fixtures/my-extension/newtab/newtab.css b/programs/cli/spec/fixtures/my-extension/newtab/newtab.css deleted file mode 100644 index c94fdd34..00000000 --- a/programs/cli/spec/fixtures/my-extension/newtab/newtab.css +++ /dev/null @@ -1,43 +0,0 @@ -body { - font-family: 'Lato', sans-serif; - font-size: 32px; - line-height: 1.4; - text-align: center; - height: 100vh; - display: flex; - color: #1b2d45; - background-color: #f2f4f6; - margin: 0; -} - -.hello-box { - background-color: #fff; - border-radius: 4px; - max-width: 600px; - padding: 40px; - margin: auto; - box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), - 0 2px 4px -1px rgba(0, 0, 0, 0.06); -} - -img { - display: block; - margin: auto; - width: 150px; -} - -h1 { - font-size: 2.5rem; - line-height: 1.75rem; - color: #00214d; -} - -p { - font-family: 'Courier New'; - font-size: 1.25rem; - color: #94a1b2; -} - -header + p { - margin: 1rem 0; -} diff --git a/programs/cli/spec/fixtures/my-extension/newtab/newtab.html b/programs/cli/spec/fixtures/my-extension/newtab/newtab.html deleted file mode 100644 index 7577e675..00000000 --- a/programs/cli/spec/fixtures/my-extension/newtab/newtab.html +++ /dev/null @@ -1,27 +0,0 @@ - - - - - New tab page - - - - - -
-
- A puzzle icon -

Welcome to your extension

-

Browser extensions are 🙌🙌🙌

-
-

- This page is being watched, and so are all entries in manifest.json. - Happy hacking!! -

-
- - - diff --git a/programs/cli/spec/fixtures/my-extension/newtab/newtab.js b/programs/cli/spec/fixtures/my-extension/newtab/newtab.js deleted file mode 100644 index 3a123101..00000000 --- a/programs/cli/spec/fixtures/my-extension/newtab/newtab.js +++ /dev/null @@ -1 +0,0 @@ -console.log('newtab script loaded') diff --git a/programs/cli/spec/fixtures/my-extension/package.json b/programs/cli/spec/fixtures/my-extension/package.json deleted file mode 100644 index b48f3ee4..00000000 --- a/programs/cli/spec/fixtures/my-extension/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "devDependencies": { - "extension": "latest" - }, - "scripts": { - "dev": "node node_modules/extension dev", - "start": "node node_modules/extension start", - "build": "node node_modules/extension build" - }, - "dependencies": {}, - "name": "my-extension", - "private": true, - "version": "0.0.0" -} diff --git a/programs/cli/spec/fixtures/my-extension/popup/popup.css b/programs/cli/spec/fixtures/my-extension/popup/popup.css deleted file mode 100644 index 9767db7b..00000000 --- a/programs/cli/spec/fixtures/my-extension/popup/popup.css +++ /dev/null @@ -1,26 +0,0 @@ -body { - background: #00214d; - width: 300px; - height: 300px; - display: flex; -} - -main { - display: flex; - align-items: center; - justify-content: center; - flex-direction: column; - text-align: center; - padding: 40px 20px; -} - -h1 { - font-size: 2.5rem; - line-height: 1; - color: #27fbb7; - margin: auto; -} - -div { - font-size: 4rem; -} diff --git a/programs/cli/spec/fixtures/my-extension/popup/popup.html b/programs/cli/spec/fixtures/my-extension/popup/popup.html deleted file mode 100644 index e759fe93..00000000 --- a/programs/cli/spec/fixtures/my-extension/popup/popup.html +++ /dev/null @@ -1,15 +0,0 @@ - - - - - Popup page - - - -
-

Your extension popup

-
🧩
-
- - - diff --git a/programs/cli/spec/fixtures/my-extension/popup/popup.js b/programs/cli/spec/fixtures/my-extension/popup/popup.js deleted file mode 100644 index 6d422cbc..00000000 --- a/programs/cli/spec/fixtures/my-extension/popup/popup.js +++ /dev/null @@ -1 +0,0 @@ -console.log('popup script loaded') diff --git a/programs/cli/spec/fixtures/my-extension/public/icon/icon_32.png b/programs/cli/spec/fixtures/my-extension/public/icon/icon_32.png deleted file mode 100644 index a411754c..00000000 Binary files a/programs/cli/spec/fixtures/my-extension/public/icon/icon_32.png and /dev/null differ diff --git a/programs/cli/spec/fixtures/my-extension/public/icon/icon_64.png b/programs/cli/spec/fixtures/my-extension/public/icon/icon_64.png deleted file mode 100644 index 53aea884..00000000 Binary files a/programs/cli/spec/fixtures/my-extension/public/icon/icon_64.png and /dev/null differ diff --git a/programs/cli/spec/fixtures/my-extension/public/puzzle.png b/programs/cli/spec/fixtures/my-extension/public/puzzle.png deleted file mode 100644 index bed9389a..00000000 Binary files a/programs/cli/spec/fixtures/my-extension/public/puzzle.png and /dev/null differ diff --git a/programs/cli/spec/fixtures/new/.gitignore b/programs/cli/spec/fixtures/new/.gitignore new file mode 100644 index 00000000..7f06b448 --- /dev/null +++ b/programs/cli/spec/fixtures/new/.gitignore @@ -0,0 +1,27 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/new/README.md b/programs/cli/spec/fixtures/new/README.md new file mode 100644 index 00000000..65e2e6a6 --- /dev/null +++ b/programs/cli/spec/fixtures/new/README.md @@ -0,0 +1,37 @@ +# new + +> This project was bootstrapped using the Extension.js TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/new/images/extension.png b/programs/cli/spec/fixtures/new/images/extension.png new file mode 100644 index 00000000..66a7b933 Binary files /dev/null and b/programs/cli/spec/fixtures/new/images/extension.png differ diff --git a/programs/create/templates/preact/template/public/icons/icon_16.png b/programs/cli/spec/fixtures/new/images/icons/icon_16.png similarity index 100% rename from programs/create/templates/preact/template/public/icons/icon_16.png rename to programs/cli/spec/fixtures/new/images/icons/icon_16.png diff --git a/programs/create/templates/preact/template/public/icons/icon_48.png b/programs/cli/spec/fixtures/new/images/icons/icon_48.png similarity index 100% rename from programs/create/templates/preact/template/public/icons/icon_48.png rename to programs/cli/spec/fixtures/new/images/icons/icon_48.png diff --git a/programs/cli/spec/fixtures/new/manifest.json b/programs/cli/spec/fixtures/new/manifest.json new file mode 100644 index 00000000..bc84d70b --- /dev/null +++ b/programs/cli/spec/fixtures/new/manifest.json @@ -0,0 +1,13 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "new", + "description": "An Extension.js template using web technologies. This template includes a new tab override.", + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + }, + "chrome_url_overrides": { + "newtab": "newtab/index.html" + } +} diff --git a/programs/cli/spec/fixtures/new/newtab/index.html b/programs/cli/spec/fixtures/new/newtab/index.html new file mode 100644 index 00000000..58a5e51a --- /dev/null +++ b/programs/cli/spec/fixtures/new/newtab/index.html @@ -0,0 +1,25 @@ + + + + + + New Extension + + + + + +
+

+ The Extension logo +
+ Welcome to your New Extension. +

+

+ Learn more about creating browser extensions at + https://extension.js.org. +

+
+ + + diff --git a/programs/cli/spec/fixtures/new/newtab/scripts.js b/programs/cli/spec/fixtures/new/newtab/scripts.js new file mode 100644 index 00000000..5c74d4cf --- /dev/null +++ b/programs/cli/spec/fixtures/new/newtab/scripts.js @@ -0,0 +1,10 @@ +function getManifest() { + return chrome.runtime.getManifest() +} +const manifest = getManifest() + +console.table({ + name: manifest.name, + version: manifest.version, + description: manifest.description +}) diff --git a/programs/cli/spec/fixtures/new/newtab/styles.css b/programs/cli/spec/fixtures/new/newtab/styles.css new file mode 100644 index 00000000..17313d18 --- /dev/null +++ b/programs/cli/spec/fixtures/new/newtab/styles.css @@ -0,0 +1,25 @@ +body { + display: flex; + justify-content: center; + align-items: center; + height: calc(100vh - 26px); +} + +h1 { + font-size: 4.7em; +} + +.new { + border-radius: 24px; + border: 4px solid; + background: white; + border-color: #ccc; + border-radius: 24px; + filter: grayscale(1); + transition: filter 2s, border-color 2s; +} + +.new:hover { + filter: grayscale(0); + border-color: aquamarine; +} diff --git a/programs/cli/spec/fixtures/new/package.json b/programs/cli/spec/fixtures/new/package.json new file mode 100644 index 00000000..d143ca21 --- /dev/null +++ b/programs/cli/spec/fixtures/new/package.json @@ -0,0 +1,14 @@ +{ + "devDependencies": { + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-new", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/preact-typescript/.gitignore b/programs/cli/spec/fixtures/preact-typescript/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/preact-typescript/README.md b/programs/cli/spec/fixtures/preact-typescript/README.md new file mode 100644 index 00000000..4e3fed08 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/README.md @@ -0,0 +1,37 @@ +# preact-typescript + +> This project was bootstrapped using the Extension.js Preact-TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/preact-typescript/background.ts b/programs/cli/spec/fixtures/preact-typescript/background.ts new file mode 100644 index 00000000..798d5018 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/background.ts @@ -0,0 +1 @@ +console.log('Hello from the background script!') diff --git a/programs/cli/spec/fixtures/preact-typescript/content/ContentApp.tsx b/programs/cli/spec/fixtures/preact-typescript/content/ContentApp.tsx new file mode 100644 index 00000000..b69c8202 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/content/ContentApp.tsx @@ -0,0 +1,93 @@ +import {Component} from 'preact' +import {signal} from '@preact/signals' + +import preactLogo from '../images/preact.png' +import tailwindBg from '../images/tailwind_bg.png' +import typescriptLogo from '../images/typescript.png' +import tailwindLogo from '../images/tailwind.png' +import chromeWindowBg from '../images/chromeWindow.png' + +export default function ContentApp() { + const isdialogOpen = signal(true) + + const setIsDialogOpen = (bool: boolean) => { + isdialogOpen.value = bool + } + + if (!isdialogOpen) { + return ( +
+ +
+ ) + } + + return ( +
+
+
+
+ + + +
+
+
+
+ Preact logo +
+
+ TypeScript logo +
+
+ Tailwind logo +
+

+ This is a content script running Preact, TypeScript, and + Tailwind.css. +

+

+ Learn more about creating cross-browser extensions by{' '} + + . +

+
+
+ Chrome window screenshot +
+
+
+ ) +} diff --git a/programs/create/templates/preact-typescript/template/content/content.tsx b/programs/cli/spec/fixtures/preact-typescript/content/scripts.tsx similarity index 88% rename from programs/create/templates/preact-typescript/template/content/content.tsx rename to programs/cli/spec/fixtures/preact-typescript/content/scripts.tsx index 83af0e79..bed0b743 100644 --- a/programs/create/templates/preact-typescript/template/content/content.tsx +++ b/programs/cli/spec/fixtures/preact-typescript/content/scripts.tsx @@ -1,7 +1,6 @@ import {render} from 'preact' import ContentApp from './ContentApp' -import './base.css' -import './content.css' +import './styles.css' setTimeout(initial, 1000) diff --git a/programs/create/templates/vue-typescript/template/content/content.css b/programs/cli/spec/fixtures/preact-typescript/content/styles.css similarity index 57% rename from programs/create/templates/vue-typescript/template/content/content.css rename to programs/cli/spec/fixtures/preact-typescript/content/styles.css index b8195ee8..dc79ebb5 100644 --- a/programs/create/templates/vue-typescript/template/content/content.css +++ b/programs/cli/spec/fixtures/preact-typescript/content/styles.css @@ -1,3 +1,7 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + #extension-root { position: fixed; bottom: 0; diff --git a/programs/cli/spec/fixtures/preact-typescript/extension-env.d.ts b/programs/cli/spec/fixtures/preact-typescript/extension-env.d.ts new file mode 100644 index 00000000..356fb729 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/extension-env.d.ts @@ -0,0 +1,9 @@ +// Required Extension.js types for TypeScript projects. +// This file auto-generated and should not be excluded. +// If you need extra types, consider creating a new *.d.ts and +// referencing it in the "include" array in your tsconfig.json file. +// See https://www.typescriptlang.org/tsconfig#include for info. +/// + +// Polyfill types for browser.* APIs. +/// diff --git a/programs/create/templates/preact-typescript/template/public/chromeWindow.png b/programs/cli/spec/fixtures/preact-typescript/images/chromeWindow.png similarity index 100% rename from programs/create/templates/preact-typescript/template/public/chromeWindow.png rename to programs/cli/spec/fixtures/preact-typescript/images/chromeWindow.png diff --git a/programs/create/templates/react-typescript/template/public/icon/icon_16.png b/programs/cli/spec/fixtures/preact-typescript/images/icons/icon_16.png similarity index 100% rename from programs/create/templates/react-typescript/template/public/icon/icon_16.png rename to programs/cli/spec/fixtures/preact-typescript/images/icons/icon_16.png diff --git a/programs/create/templates/react-typescript/template/public/icon/icon_48.png b/programs/cli/spec/fixtures/preact-typescript/images/icons/icon_48.png similarity index 100% rename from programs/create/templates/react-typescript/template/public/icon/icon_48.png rename to programs/cli/spec/fixtures/preact-typescript/images/icons/icon_48.png diff --git a/programs/create/templates/preact-typescript/template/public/preact.png b/programs/cli/spec/fixtures/preact-typescript/images/preact.png similarity index 100% rename from programs/create/templates/preact-typescript/template/public/preact.png rename to programs/cli/spec/fixtures/preact-typescript/images/preact.png diff --git a/programs/create/templates/preact-typescript/template/public/tailwind.png b/programs/cli/spec/fixtures/preact-typescript/images/tailwind.png similarity index 100% rename from programs/create/templates/preact-typescript/template/public/tailwind.png rename to programs/cli/spec/fixtures/preact-typescript/images/tailwind.png diff --git a/programs/create/templates/preact-typescript/template/public/tailwind_bg.png b/programs/cli/spec/fixtures/preact-typescript/images/tailwind_bg.png similarity index 100% rename from programs/create/templates/preact-typescript/template/public/tailwind_bg.png rename to programs/cli/spec/fixtures/preact-typescript/images/tailwind_bg.png diff --git a/programs/create/templates/preact-typescript/template/public/typescript.png b/programs/cli/spec/fixtures/preact-typescript/images/typescript.png similarity index 100% rename from programs/create/templates/preact-typescript/template/public/typescript.png rename to programs/cli/spec/fixtures/preact-typescript/images/typescript.png diff --git a/programs/cli/spec/fixtures/preact-typescript/manifest.json b/programs/cli/spec/fixtures/preact-typescript/manifest.json new file mode 100644 index 00000000..d4205dc2 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/manifest.json @@ -0,0 +1,19 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "preact-typescript", + "description": "An extension template using Preact and TypeScript. This template includes a content script using Tailwind.css. To see it in action, visit https://extension.js.org.", + "background": { + "service_worker": "./background.ts" + }, + "content_scripts": [ + { + "matches": ["https://extension.js.org/*"], + "js": ["./content/scripts.tsx"] + } + ], + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + } +} diff --git a/programs/cli/spec/fixtures/preact-typescript/package.json b/programs/cli/spec/fixtures/preact-typescript/package.json new file mode 100644 index 00000000..9185c926 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/package.json @@ -0,0 +1,18 @@ +{ + "devDependencies": { + "@preact/signals": "^1.2.3", + "preact": "^10.22.0", + "tailwindcss": "^3.4.1", + "typescript": "5.3.3", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-preact-typescript", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/preact-typescript/postcss.config.js b/programs/cli/spec/fixtures/preact-typescript/postcss.config.js new file mode 100644 index 00000000..85f717cc --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {} + } +} diff --git a/programs/cli/spec/fixtures/preact-typescript/tailwind.config.js b/programs/cli/spec/fixtures/preact-typescript/tailwind.config.js new file mode 100644 index 00000000..069e1bc3 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/tailwind.config.js @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['**/*.html', '**/*.tsx'], + theme: { + extend: {} + }, + plugins: [] +} diff --git a/programs/cli/spec/fixtures/preact-typescript/tsconfig.json b/programs/cli/spec/fixtures/preact-typescript/tsconfig.json new file mode 100644 index 00000000..1d045996 --- /dev/null +++ b/programs/cli/spec/fixtures/preact-typescript/tsconfig.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "allowJs": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "isolatedModules": false, + "jsx": "react-jsx", + "lib": ["dom", "dom.iterable", "esnext"], + "moduleResolution": "node", + "module": "esnext", + "resolveJsonModule": true, + "strict": true, + "target": "esnext", + "skipLibCheck": true, + "baseUrl": "./", + "paths": { + "react": ["./node_modules/preact/compat/"], + "react/jsx-runtime": ["./node_modules/preact/jsx-runtime"], + "react-dom": ["./node_modules/preact/compat/"], + "react-dom/*": ["./node_modules/preact/compat/*"] + } + }, + "include": ["./"], + "exclude": ["node_modules", "dist"] +} diff --git a/programs/cli/spec/fixtures/preact/.gitignore b/programs/cli/spec/fixtures/preact/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/preact/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/preact/README.md b/programs/cli/spec/fixtures/preact/README.md new file mode 100644 index 00000000..946bd64b --- /dev/null +++ b/programs/cli/spec/fixtures/preact/README.md @@ -0,0 +1,37 @@ +# preact + +> This project was bootstrapped using the Extension.js Preact-TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/preact/babel.config.json b/programs/cli/spec/fixtures/preact/babel.config.json new file mode 100644 index 00000000..1a720f1c --- /dev/null +++ b/programs/cli/spec/fixtures/preact/babel.config.json @@ -0,0 +1,11 @@ +{ + "plugins": [ + [ + "@babel/plugin-transform-react-jsx", + { + "runtime": "automatic", + "importSource": "preact" + } + ] + ] +} diff --git a/programs/create/templates/react/template/public/icons/icon_16.png b/programs/cli/spec/fixtures/preact/images/icons/icon_16.png similarity index 100% rename from programs/create/templates/react/template/public/icons/icon_16.png rename to programs/cli/spec/fixtures/preact/images/icons/icon_16.png diff --git a/programs/create/templates/react/template/public/icons/icon_48.png b/programs/cli/spec/fixtures/preact/images/icons/icon_48.png similarity index 100% rename from programs/create/templates/react/template/public/icons/icon_48.png rename to programs/cli/spec/fixtures/preact/images/icons/icon_48.png diff --git a/programs/cli/spec/fixtures/preact/manifest.json b/programs/cli/spec/fixtures/preact/manifest.json new file mode 100644 index 00000000..4db6fd6c --- /dev/null +++ b/programs/cli/spec/fixtures/preact/manifest.json @@ -0,0 +1,13 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "preact", + "description": "An Extension.js template using Preact. This template includes a new tab override.", + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + }, + "chrome_url_overrides": { + "newtab": "newtab/index.html" + } +} diff --git a/programs/cli/spec/fixtures/preact/newtab/NewTabApp.jsx b/programs/cli/spec/fixtures/preact/newtab/NewTabApp.jsx new file mode 100644 index 00000000..78fb3d69 --- /dev/null +++ b/programs/cli/spec/fixtures/preact/newtab/NewTabApp.jsx @@ -0,0 +1,25 @@ +import {Component} from 'preact' +import 'sakura.css' +import './styles.css' +import Logo from './logo' + +export default class NewTabApp extends Component { + render() { + return ( +
+

+ +
+ Welcome to your Preact Extension. +

+

+ Learn more about creating browser extensions at{' '} + + https://extension.js.org + + . +

+
+ ) + } +} diff --git a/programs/cli/spec/fixtures/preact/newtab/index.html b/programs/cli/spec/fixtures/preact/newtab/index.html new file mode 100644 index 00000000..56192396 --- /dev/null +++ b/programs/cli/spec/fixtures/preact/newtab/index.html @@ -0,0 +1,13 @@ + + + + + + Preact Template + + + +
+ + + diff --git a/programs/cli/spec/fixtures/preact/newtab/logo.jsx b/programs/cli/spec/fixtures/preact/newtab/logo.jsx new file mode 100644 index 00000000..93018894 --- /dev/null +++ b/programs/cli/spec/fixtures/preact/newtab/logo.jsx @@ -0,0 +1,100 @@ +/** + * Logo Component from Preact Website Logo + * https://github.dev/preactjs/preact-www/blob/master/src/index.jsx + */ +import {Component} from 'preact' + +export default class Logo extends Component { + state = {i: 0, hover: false} + + hover = () => { + this.setState({hover: true}) + } + + hoverOut = () => { + this.setState({hover: false}) + } + + frame = () => { + this.timer = null + if (!this.mounted) return + this.setState({i: this.state.i + 1}, this.next) + } + + next = () => { + let {hover} = this.state + if (!this.mounted || !hover || this.timer) return + this.timer = (requestAnimationFrame || setTimeout)(this.frame, 15) + } + + componentDidMount() { + this.mounted = true + this.startTimer = setTimeout(this.next, 5000) + } + + componentWillUnmount() { + clearTimeout(this.startTimer) + ;(cancelAnimationFrame || clearTimeout)(this.timer) + this.mounted = this.timer = false + } + + componentDidUpdate() { + this.next() + } + + renderEllipse(fg, deg, offset) { + let gapLength = Math.sin((offset / 500) * Math.PI) * 30 + 60 + let lineLength = 894 / 2 - gapLength + return ( + + ) + } + + render( + { + inverted = false, + fg = '#673ab8', + bg = 'white', + component, + title, + ...props + }, + {i} + ) { + if (inverted) [bg, fg] = [fg, bg] + + return ( + + + {this.renderEllipse(fg, 52, i)} + {this.renderEllipse(fg, -52, -0.7 * i)} + + + ) + } +} diff --git a/programs/create/templates/preact/template/newtab/index.jsx b/programs/cli/spec/fixtures/preact/newtab/scripts.jsx similarity index 84% rename from programs/create/templates/preact/template/newtab/index.jsx rename to programs/cli/spec/fixtures/preact/newtab/scripts.jsx index e845ce92..20684ed2 100644 --- a/programs/create/templates/preact/template/newtab/index.jsx +++ b/programs/cli/spec/fixtures/preact/newtab/scripts.jsx @@ -1,5 +1,5 @@ import {render} from 'preact' import NewTabApp from './NewTabApp' -import './base.css' +import './styles.css' render(, document.getElementById('root')) diff --git a/programs/create/templates/preact/template/newtab/base.css b/programs/cli/spec/fixtures/preact/newtab/styles.css similarity index 100% rename from programs/create/templates/preact/template/newtab/base.css rename to programs/cli/spec/fixtures/preact/newtab/styles.css diff --git a/programs/cli/spec/fixtures/preact/package.json b/programs/cli/spec/fixtures/preact/package.json new file mode 100644 index 00000000..bd680c30 --- /dev/null +++ b/programs/cli/spec/fixtures/preact/package.json @@ -0,0 +1,16 @@ +{ + "devDependencies": { + "preact": "^10.22.0", + "sakura.css": "^1.5.0", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-preact", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/react-typescript/.gitignore b/programs/cli/spec/fixtures/react-typescript/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/react-typescript/README.md b/programs/cli/spec/fixtures/react-typescript/README.md new file mode 100644 index 00000000..741e4fe7 --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/README.md @@ -0,0 +1,37 @@ +# react-typescript + +> This project was bootstrapped using the Extension.js React-TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/react-typescript/background.ts b/programs/cli/spec/fixtures/react-typescript/background.ts new file mode 100644 index 00000000..798d5018 --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/background.ts @@ -0,0 +1 @@ +console.log('Hello from the background script!') diff --git a/programs/cli/spec/fixtures/react-typescript/content/ContentApp.tsx b/programs/cli/spec/fixtures/react-typescript/content/ContentApp.tsx new file mode 100644 index 00000000..446e3add --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/content/ContentApp.tsx @@ -0,0 +1,87 @@ +import React from 'react' +import reactLogo from '../images/react.png' +import tailwindBg from '../images/tailwind_bg.png' +import typescriptLogo from '../images/typescript.png' +import tailwindLogo from '../images/tailwind.png' +import chromeWindowBg from '../images/chromeWindow.png' + +export default function ContentApp() { + const [isdialogOpen, setIsDialogOpen] = React.useState(true) + + if (!isdialogOpen) { + return ( +
+ +
+ ) + } + + return ( +
+
+
+
+ + + +
+
+
+
+ React logo +
+
+ TypeScript logo +
+
+ Tailwind logo +
+

+ This is a content script running React, TypeScript, and + Tailwind.css. +

+

+ Learn more about creating cross-browser extensions by{' '} + + . +

+
+
+ Chrome window screenshot +
+
+
+ ) +} diff --git a/programs/create/templates/react-typescript/template/content/content.tsx b/programs/cli/spec/fixtures/react-typescript/content/scripts.tsx similarity index 92% rename from programs/create/templates/react-typescript/template/content/content.tsx rename to programs/cli/spec/fixtures/react-typescript/content/scripts.tsx index 424d76a7..89050dc3 100644 --- a/programs/create/templates/react-typescript/template/content/content.tsx +++ b/programs/cli/spec/fixtures/react-typescript/content/scripts.tsx @@ -1,7 +1,6 @@ import ReactDOM from 'react-dom/client' import ContentApp from './ContentApp' -import './base.css' -import './content.css' +import './styles.css' setTimeout(initial, 1000) diff --git a/programs/create/templates/preact-typescript/template/content/content.css b/programs/cli/spec/fixtures/react-typescript/content/styles.css similarity index 57% rename from programs/create/templates/preact-typescript/template/content/content.css rename to programs/cli/spec/fixtures/react-typescript/content/styles.css index b8195ee8..dc79ebb5 100644 --- a/programs/create/templates/preact-typescript/template/content/content.css +++ b/programs/cli/spec/fixtures/react-typescript/content/styles.css @@ -1,3 +1,7 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + #extension-root { position: fixed; bottom: 0; diff --git a/programs/cli/spec/fixtures/react-typescript/extension-env.d.ts b/programs/cli/spec/fixtures/react-typescript/extension-env.d.ts new file mode 100644 index 00000000..356fb729 --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/extension-env.d.ts @@ -0,0 +1,9 @@ +// Required Extension.js types for TypeScript projects. +// This file auto-generated and should not be excluded. +// If you need extra types, consider creating a new *.d.ts and +// referencing it in the "include" array in your tsconfig.json file. +// See https://www.typescriptlang.org/tsconfig#include for info. +/// + +// Polyfill types for browser.* APIs. +/// diff --git a/programs/create/templates/react-typescript/template/public/chromeWindow.png b/programs/cli/spec/fixtures/react-typescript/images/chromeWindow.png similarity index 100% rename from programs/create/templates/react-typescript/template/public/chromeWindow.png rename to programs/cli/spec/fixtures/react-typescript/images/chromeWindow.png diff --git a/programs/create/templates/tailwind/template/public/icons/icon_16.png b/programs/cli/spec/fixtures/react-typescript/images/icons/icon_16.png similarity index 100% rename from programs/create/templates/tailwind/template/public/icons/icon_16.png rename to programs/cli/spec/fixtures/react-typescript/images/icons/icon_16.png diff --git a/programs/create/templates/tailwind/template/public/icons/icon_48.png b/programs/cli/spec/fixtures/react-typescript/images/icons/icon_48.png similarity index 100% rename from programs/create/templates/tailwind/template/public/icons/icon_48.png rename to programs/cli/spec/fixtures/react-typescript/images/icons/icon_48.png diff --git a/programs/create/templates/react-typescript/template/public/react.png b/programs/cli/spec/fixtures/react-typescript/images/react.png similarity index 100% rename from programs/create/templates/react-typescript/template/public/react.png rename to programs/cli/spec/fixtures/react-typescript/images/react.png diff --git a/programs/create/templates/react-typescript/template/public/tailwind.png b/programs/cli/spec/fixtures/react-typescript/images/tailwind.png similarity index 100% rename from programs/create/templates/react-typescript/template/public/tailwind.png rename to programs/cli/spec/fixtures/react-typescript/images/tailwind.png diff --git a/programs/create/templates/react-typescript/template/public/tailwind_bg.png b/programs/cli/spec/fixtures/react-typescript/images/tailwind_bg.png similarity index 100% rename from programs/create/templates/react-typescript/template/public/tailwind_bg.png rename to programs/cli/spec/fixtures/react-typescript/images/tailwind_bg.png diff --git a/programs/create/templates/react-typescript/template/public/typescript.png b/programs/cli/spec/fixtures/react-typescript/images/typescript.png similarity index 100% rename from programs/create/templates/react-typescript/template/public/typescript.png rename to programs/cli/spec/fixtures/react-typescript/images/typescript.png diff --git a/programs/cli/spec/fixtures/react-typescript/manifest.json b/programs/cli/spec/fixtures/react-typescript/manifest.json new file mode 100644 index 00000000..7351b9fe --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/manifest.json @@ -0,0 +1,19 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "react-typescript", + "description": "An extension template using React and TypeScript. This template includes a content script using Tailwind.css. To see it in action, visit https://extension.js.org.", + "background": { + "service_worker": "./background.ts" + }, + "content_scripts": [ + { + "matches": ["https://extension.js.org/*"], + "js": ["./content/scripts.tsx"] + } + ], + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + } +} diff --git a/programs/cli/spec/fixtures/react-typescript/package.json b/programs/cli/spec/fixtures/react-typescript/package.json new file mode 100644 index 00000000..27b261ff --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/package.json @@ -0,0 +1,20 @@ +{ + "devDependencies": { + "@types/react": "^18.0.9", + "@types/react-dom": "^18.0.5", + "react": "^18.1.0", + "react-dom": "^18.1.0", + "tailwindcss": "^3.4.1", + "typescript": "5.3.3", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-react-typescript", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/react-typescript/postcss.config.js b/programs/cli/spec/fixtures/react-typescript/postcss.config.js new file mode 100644 index 00000000..85f717cc --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {} + } +} diff --git a/programs/cli/spec/fixtures/react-typescript/tailwind.config.js b/programs/cli/spec/fixtures/react-typescript/tailwind.config.js new file mode 100644 index 00000000..069e1bc3 --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/tailwind.config.js @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['**/*.html', '**/*.tsx'], + theme: { + extend: {} + }, + plugins: [] +} diff --git a/programs/cli/spec/fixtures/react-typescript/tsconfig.json b/programs/cli/spec/fixtures/react-typescript/tsconfig.json new file mode 100644 index 00000000..520f3602 --- /dev/null +++ b/programs/cli/spec/fixtures/react-typescript/tsconfig.json @@ -0,0 +1,18 @@ +{ + "compilerOptions": { + "allowJs": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "isolatedModules": false, + "jsx": "react-jsx", + "lib": ["dom", "dom.iterable", "esnext"], + "moduleResolution": "node", + "module": "esnext", + "resolveJsonModule": true, + "strict": true, + "target": "esnext" + }, + "include": ["./"], + "exclude": ["node_modules", "dist"] +} diff --git a/programs/cli/spec/fixtures/react/.gitignore b/programs/cli/spec/fixtures/react/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/react/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/react/README.md b/programs/cli/spec/fixtures/react/README.md new file mode 100644 index 00000000..386b8944 --- /dev/null +++ b/programs/cli/spec/fixtures/react/README.md @@ -0,0 +1,37 @@ +# react + +> This project was bootstrapped using the Extension.js TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/create/templates/vue-typescript/template/public/icon/icon_16.png b/programs/cli/spec/fixtures/react/images/icons/icon_16.png similarity index 100% rename from programs/create/templates/vue-typescript/template/public/icon/icon_16.png rename to programs/cli/spec/fixtures/react/images/icons/icon_16.png diff --git a/programs/create/templates/vue-typescript/template/public/icon/icon_48.png b/programs/cli/spec/fixtures/react/images/icons/icon_48.png similarity index 100% rename from programs/create/templates/vue-typescript/template/public/icon/icon_48.png rename to programs/cli/spec/fixtures/react/images/icons/icon_48.png diff --git a/programs/create/templates/react/template/public/react.png b/programs/cli/spec/fixtures/react/images/react.png similarity index 100% rename from programs/create/templates/react/template/public/react.png rename to programs/cli/spec/fixtures/react/images/react.png diff --git a/programs/cli/spec/fixtures/react/manifest.json b/programs/cli/spec/fixtures/react/manifest.json new file mode 100644 index 00000000..857f16e3 --- /dev/null +++ b/programs/cli/spec/fixtures/react/manifest.json @@ -0,0 +1,13 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "react", + "description": "An Extension.js template using React. This template includes a new tab override.", + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + }, + "chrome_url_overrides": { + "newtab": "newtab/index.html" + } +} diff --git a/programs/cli/spec/fixtures/react/newtab/NewtabApp.jsx b/programs/cli/spec/fixtures/react/newtab/NewtabApp.jsx new file mode 100644 index 00000000..b57a8923 --- /dev/null +++ b/programs/cli/spec/fixtures/react/newtab/NewtabApp.jsx @@ -0,0 +1,23 @@ +import React from 'react' +import 'sakura.css' +import './styles.css' +import reactLogo from '../images/react.png' + +export default function NewTabApp() { + return ( +
+

+ The React logo +
+ Welcome to your React Extension. +

+

+ Learn more about creating browser extensions at{' '} + + https://extension.js.org + + . +

+
+ ) +} diff --git a/programs/cli/spec/fixtures/react/newtab/index.html b/programs/cli/spec/fixtures/react/newtab/index.html new file mode 100644 index 00000000..75582e5f --- /dev/null +++ b/programs/cli/spec/fixtures/react/newtab/index.html @@ -0,0 +1,13 @@ + + + + + + React Template + + + +
+ + + diff --git a/programs/cli/spec/fixtures/react/newtab/scripts.jsx b/programs/cli/spec/fixtures/react/newtab/scripts.jsx new file mode 100644 index 00000000..1c7a64d0 --- /dev/null +++ b/programs/cli/spec/fixtures/react/newtab/scripts.jsx @@ -0,0 +1,12 @@ +import React from 'react' +import ReactDOM from 'react-dom/client' +import NewtabApp from './NewtabApp' +import './styles.css' + +const root = ReactDOM.createRoot(document.getElementById('root')) + +root.render( + + + +) diff --git a/programs/create/templates/react/template/newtab/base.css b/programs/cli/spec/fixtures/react/newtab/styles.css similarity index 100% rename from programs/create/templates/react/template/newtab/base.css rename to programs/cli/spec/fixtures/react/newtab/styles.css diff --git a/programs/cli/spec/fixtures/react/package.json b/programs/cli/spec/fixtures/react/package.json new file mode 100644 index 00000000..6f8db0c1 --- /dev/null +++ b/programs/cli/spec/fixtures/react/package.json @@ -0,0 +1,19 @@ +{ + "devDependencies": { + "@types/react": "^18.2.64", + "@types/react-dom": "^18.2.21", + "react": "^18.1.0", + "react-dom": "^18.1.0", + "sakura.css": "^1.5.0", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-react", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/tailwind/.gitignore b/programs/cli/spec/fixtures/tailwind/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/tailwind/README.md b/programs/cli/spec/fixtures/tailwind/README.md new file mode 100644 index 00000000..4ef90769 --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/README.md @@ -0,0 +1,37 @@ +# tailwind + +> This project was bootstrapped using the Extension.js Tailwind template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/create/templates/tailwind/template/public/chromeWindow.png b/programs/cli/spec/fixtures/tailwind/images/chromeWindow.png similarity index 100% rename from programs/create/templates/tailwind/template/public/chromeWindow.png rename to programs/cli/spec/fixtures/tailwind/images/chromeWindow.png diff --git a/programs/create/templates/vue/template/public/icons/icon_16.png b/programs/cli/spec/fixtures/tailwind/images/icons/icon_16.png similarity index 100% rename from programs/create/templates/vue/template/public/icons/icon_16.png rename to programs/cli/spec/fixtures/tailwind/images/icons/icon_16.png diff --git a/programs/create/templates/vue/template/public/icons/icon_48.png b/programs/cli/spec/fixtures/tailwind/images/icons/icon_48.png similarity index 100% rename from programs/create/templates/vue/template/public/icons/icon_48.png rename to programs/cli/spec/fixtures/tailwind/images/icons/icon_48.png diff --git a/programs/create/templates/tailwind/template/public/react.png b/programs/cli/spec/fixtures/tailwind/images/react.png similarity index 100% rename from programs/create/templates/tailwind/template/public/react.png rename to programs/cli/spec/fixtures/tailwind/images/react.png diff --git a/programs/create/templates/tailwind/template/public/tailwind.png b/programs/cli/spec/fixtures/tailwind/images/tailwind.png similarity index 100% rename from programs/create/templates/tailwind/template/public/tailwind.png rename to programs/cli/spec/fixtures/tailwind/images/tailwind.png diff --git a/programs/create/templates/tailwind/template/public/tailwind_bg.png b/programs/cli/spec/fixtures/tailwind/images/tailwind_bg.png similarity index 100% rename from programs/create/templates/tailwind/template/public/tailwind_bg.png rename to programs/cli/spec/fixtures/tailwind/images/tailwind_bg.png diff --git a/programs/cli/spec/fixtures/tailwind/manifest.json b/programs/cli/spec/fixtures/tailwind/manifest.json new file mode 100644 index 00000000..3f88c51a --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/manifest.json @@ -0,0 +1,13 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "tailwind", + "description": "An extension template using Tailwind. This template includes a new tab override.", + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + }, + "chrome_url_overrides": { + "newtab": "newtab/index.html" + } +} diff --git a/programs/cli/spec/fixtures/tailwind/newtab/NewTabApp.jsx b/programs/cli/spec/fixtures/tailwind/newtab/NewTabApp.jsx new file mode 100644 index 00000000..9d75a8b7 --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/newtab/NewTabApp.jsx @@ -0,0 +1,68 @@ +import React from 'react' +import reactLogo from '../images/react.png' +import tailwindLogo from '../images/tailwind.png' +import chromeWindowBg from '../images/chromeWindow.png' + +export default function NewTabApp() { + return ( +
+ +
+
+ React logo +
+
+ Tailwind logo +
+

+ This is a new tab page running React and Tailwind.css. +

+

+ Learn more about creating browser extensions at{' '} + + https://extension.js.org + + . +

+
+
+ Chrome screenshot +
+
+ ) +} diff --git a/programs/cli/spec/fixtures/tailwind/newtab/index.html b/programs/cli/spec/fixtures/tailwind/newtab/index.html new file mode 100644 index 00000000..c6dff892 --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/newtab/index.html @@ -0,0 +1,13 @@ + + + + + + Tailwind Template + + + +
+ + + diff --git a/programs/create/templates/tailwind/template/newtab/index.jsx b/programs/cli/spec/fixtures/tailwind/newtab/scripts.jsx similarity index 91% rename from programs/create/templates/tailwind/template/newtab/index.jsx rename to programs/cli/spec/fixtures/tailwind/newtab/scripts.jsx index 45d674de..a6755c29 100644 --- a/programs/create/templates/tailwind/template/newtab/index.jsx +++ b/programs/cli/spec/fixtures/tailwind/newtab/scripts.jsx @@ -1,7 +1,7 @@ import React from 'react' import ReactDOM from 'react-dom/client' import NewTabApp from './NewTabApp' -import './base.css' +import './styles.css' const root = ReactDOM.createRoot(document.getElementById('root')) diff --git a/programs/create/templates/preact-typescript/template/content/base.css b/programs/cli/spec/fixtures/tailwind/newtab/styles.css similarity index 64% rename from programs/create/templates/preact-typescript/template/content/base.css rename to programs/cli/spec/fixtures/tailwind/newtab/styles.css index bd6213e1..b5c61c95 100644 --- a/programs/create/templates/preact-typescript/template/content/base.css +++ b/programs/cli/spec/fixtures/tailwind/newtab/styles.css @@ -1,3 +1,3 @@ @tailwind base; @tailwind components; -@tailwind utilities; \ No newline at end of file +@tailwind utilities; diff --git a/programs/cli/spec/fixtures/tailwind/package.json b/programs/cli/spec/fixtures/tailwind/package.json new file mode 100644 index 00000000..8cec52a5 --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/package.json @@ -0,0 +1,19 @@ +{ + "devDependencies": { + "@types/react": "^18.2.64", + "@types/react-dom": "^18.2.21", + "react": "^18.1.0", + "react-dom": "^18.1.0", + "tailwindcss": "^3.4.1", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-tailwind", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/tailwind/postcss.config.js b/programs/cli/spec/fixtures/tailwind/postcss.config.js new file mode 100644 index 00000000..85f717cc --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {} + } +} diff --git a/programs/cli/spec/fixtures/tailwind/tailwind.config.js b/programs/cli/spec/fixtures/tailwind/tailwind.config.js new file mode 100644 index 00000000..fe8d881a --- /dev/null +++ b/programs/cli/spec/fixtures/tailwind/tailwind.config.js @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['**/*.html', '**/*.jsx'], + theme: { + extend: {} + }, + plugins: [] +} diff --git a/programs/cli/spec/fixtures/typescript/.gitignore b/programs/cli/spec/fixtures/typescript/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/typescript/README.md b/programs/cli/spec/fixtures/typescript/README.md new file mode 100644 index 00000000..c61bb79e --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/README.md @@ -0,0 +1,37 @@ +# typescript + +> This project was bootstrapped using the Extension.js TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/typescript/extension-env.d.ts b/programs/cli/spec/fixtures/typescript/extension-env.d.ts new file mode 100644 index 00000000..356fb729 --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/extension-env.d.ts @@ -0,0 +1,9 @@ +// Required Extension.js types for TypeScript projects. +// This file auto-generated and should not be excluded. +// If you need extra types, consider creating a new *.d.ts and +// referencing it in the "include" array in your tsconfig.json file. +// See https://www.typescriptlang.org/tsconfig#include for info. +/// + +// Polyfill types for browser.* APIs. +/// diff --git a/programs/cli/spec/fixtures/typescript/images/icons/icon_16.png b/programs/cli/spec/fixtures/typescript/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/cli/spec/fixtures/typescript/images/icons/icon_16.png differ diff --git a/programs/cli/spec/fixtures/typescript/images/icons/icon_48.png b/programs/cli/spec/fixtures/typescript/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/cli/spec/fixtures/typescript/images/icons/icon_48.png differ diff --git a/programs/create/templates/vue-typescript/template/public/typescript.png b/programs/cli/spec/fixtures/typescript/images/typescript.png similarity index 100% rename from programs/create/templates/vue-typescript/template/public/typescript.png rename to programs/cli/spec/fixtures/typescript/images/typescript.png diff --git a/programs/cli/spec/fixtures/typescript/manifest.json b/programs/cli/spec/fixtures/typescript/manifest.json new file mode 100644 index 00000000..06ee1646 --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/manifest.json @@ -0,0 +1,13 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "typescript", + "description": "An Extension.js template using TypeScript. This template includes a new tab override.", + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + }, + "chrome_url_overrides": { + "newtab": "newtab/index.html" + } +} diff --git a/programs/cli/spec/fixtures/typescript/newtab/index.html b/programs/cli/spec/fixtures/typescript/newtab/index.html new file mode 100644 index 00000000..88ca346a --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/newtab/index.html @@ -0,0 +1,25 @@ + + + + + + TypeScript Extension + + + + + +
+

+ The TypeScript logo +
+ Welcome to your TypeScript Extension. +

+

+ Learn more about creating browser extensions at + https://extension.js.org. +

+
+ + + diff --git a/programs/cli/spec/fixtures/typescript/newtab/scripts.ts b/programs/cli/spec/fixtures/typescript/newtab/scripts.ts new file mode 100644 index 00000000..5c74d4cf --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/newtab/scripts.ts @@ -0,0 +1,10 @@ +function getManifest() { + return chrome.runtime.getManifest() +} +const manifest = getManifest() + +console.table({ + name: manifest.name, + version: manifest.version, + description: manifest.description +}) diff --git a/programs/cli/spec/fixtures/typescript/newtab/styles.css b/programs/cli/spec/fixtures/typescript/newtab/styles.css new file mode 100644 index 00000000..da1dcbdb --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/newtab/styles.css @@ -0,0 +1,18 @@ +body { + display: flex; + justify-content: center; + align-items: center; + height: calc(100vh - 26px); +} + +h1 { + font-size: 3.7em; +} + +.typescript { + transition: all 400ms cubic-bezier(.47,1.64,.41,.8); +} + +.typescript:hover { + transform: scale(1.5); +} diff --git a/programs/cli/spec/fixtures/typescript/package.json b/programs/cli/spec/fixtures/typescript/package.json new file mode 100644 index 00000000..8f5e0775 --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/package.json @@ -0,0 +1,15 @@ +{ + "devDependencies": { + "typescript": "5.3.3", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-typescript", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/typescript/tsconfig.json b/programs/cli/spec/fixtures/typescript/tsconfig.json new file mode 100644 index 00000000..3c2220f7 --- /dev/null +++ b/programs/cli/spec/fixtures/typescript/tsconfig.json @@ -0,0 +1,18 @@ +{ + "compilerOptions": { + "allowJs": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "jsx": "preserve", + "lib": ["dom", "dom.iterable", "esnext"], + "moduleResolution": "node", + "module": "esnext", + "resolveJsonModule": true, + "strict": true, + "target": "esnext", + "isolatedModules": false + }, + "include": ["./"], + "exclude": ["node_modules", "dist"] +} diff --git a/programs/cli/spec/fixtures/vue-typescript/.gitignore b/programs/cli/spec/fixtures/vue-typescript/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/vue-typescript/README.md b/programs/cli/spec/fixtures/vue-typescript/README.md new file mode 100644 index 00000000..ec413527 --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/README.md @@ -0,0 +1,37 @@ +# vue-typescript + +> This project was bootstrapped using the Extension Vue-TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/vue-typescript/background.ts b/programs/cli/spec/fixtures/vue-typescript/background.ts new file mode 100644 index 00000000..798d5018 --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/background.ts @@ -0,0 +1 @@ +console.log('Hello from the background script!') diff --git a/programs/cli/spec/fixtures/vue-typescript/content/ContentApp.vue b/programs/cli/spec/fixtures/vue-typescript/content/ContentApp.vue new file mode 100644 index 00000000..a0752c8b --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/content/ContentApp.vue @@ -0,0 +1,90 @@ + + diff --git a/programs/create/templates/vue-typescript/template/content/content.ts b/programs/cli/spec/fixtures/vue-typescript/content/scripts.ts similarity index 86% rename from programs/create/templates/vue-typescript/template/content/content.ts rename to programs/cli/spec/fixtures/vue-typescript/content/scripts.ts index 4f2c764d..bbee32a8 100644 --- a/programs/create/templates/vue-typescript/template/content/content.ts +++ b/programs/cli/spec/fixtures/vue-typescript/content/scripts.ts @@ -1,7 +1,6 @@ -import './base.css' -import './content.css' import {createApp} from 'vue' import ContentApp from './ContentApp.vue' +import './styles.css' function initial() { const rootDiv = document.createElement('div') diff --git a/programs/cli/spec/fixtures/vue-typescript/content/shims-vue.d.ts b/programs/cli/spec/fixtures/vue-typescript/content/shims-vue.d.ts new file mode 100644 index 00000000..69226d04 --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/content/shims-vue.d.ts @@ -0,0 +1,6 @@ +/* eslint-disable */ +declare module '*.vue' { + import type {DefineComponent} from 'vue' + const component: DefineComponent<{}, {}, any> + export default component +} diff --git a/programs/create/templates/react-typescript/template/content/content.css b/programs/cli/spec/fixtures/vue-typescript/content/styles.css similarity index 57% rename from programs/create/templates/react-typescript/template/content/content.css rename to programs/cli/spec/fixtures/vue-typescript/content/styles.css index b8195ee8..dc79ebb5 100644 --- a/programs/create/templates/react-typescript/template/content/content.css +++ b/programs/cli/spec/fixtures/vue-typescript/content/styles.css @@ -1,3 +1,7 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + #extension-root { position: fixed; bottom: 0; diff --git a/programs/cli/spec/fixtures/vue-typescript/extension-env.d.ts b/programs/cli/spec/fixtures/vue-typescript/extension-env.d.ts new file mode 100644 index 00000000..356fb729 --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/extension-env.d.ts @@ -0,0 +1,9 @@ +// Required Extension.js types for TypeScript projects. +// This file auto-generated and should not be excluded. +// If you need extra types, consider creating a new *.d.ts and +// referencing it in the "include" array in your tsconfig.json file. +// See https://www.typescriptlang.org/tsconfig#include for info. +/// + +// Polyfill types for browser.* APIs. +/// diff --git a/programs/create/templates/vue-typescript/template/public/chromeWindow.png b/programs/cli/spec/fixtures/vue-typescript/images/chromeWindow.png similarity index 100% rename from programs/create/templates/vue-typescript/template/public/chromeWindow.png rename to programs/cli/spec/fixtures/vue-typescript/images/chromeWindow.png diff --git a/programs/cli/spec/fixtures/vue-typescript/images/icons/icon_16.png b/programs/cli/spec/fixtures/vue-typescript/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/cli/spec/fixtures/vue-typescript/images/icons/icon_16.png differ diff --git a/programs/cli/spec/fixtures/vue-typescript/images/icons/icon_48.png b/programs/cli/spec/fixtures/vue-typescript/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/cli/spec/fixtures/vue-typescript/images/icons/icon_48.png differ diff --git a/programs/create/templates/vue-typescript/template/public/tailwind.png b/programs/cli/spec/fixtures/vue-typescript/images/tailwind.png similarity index 100% rename from programs/create/templates/vue-typescript/template/public/tailwind.png rename to programs/cli/spec/fixtures/vue-typescript/images/tailwind.png diff --git a/programs/create/templates/vue-typescript/template/public/tailwind_bg.png b/programs/cli/spec/fixtures/vue-typescript/images/tailwind_bg.png similarity index 100% rename from programs/create/templates/vue-typescript/template/public/tailwind_bg.png rename to programs/cli/spec/fixtures/vue-typescript/images/tailwind_bg.png diff --git a/programs/cli/spec/fixtures/vue-typescript/images/typescript.png b/programs/cli/spec/fixtures/vue-typescript/images/typescript.png new file mode 100644 index 00000000..93614694 Binary files /dev/null and b/programs/cli/spec/fixtures/vue-typescript/images/typescript.png differ diff --git a/programs/create/templates/vue-typescript/template/public/vue.svg b/programs/cli/spec/fixtures/vue-typescript/images/vue.svg similarity index 100% rename from programs/create/templates/vue-typescript/template/public/vue.svg rename to programs/cli/spec/fixtures/vue-typescript/images/vue.svg diff --git a/programs/cli/spec/fixtures/vue-typescript/manifest.json b/programs/cli/spec/fixtures/vue-typescript/manifest.json new file mode 100644 index 00000000..e7bf7e91 --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/manifest.json @@ -0,0 +1,19 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "vue-typescript", + "description": "An extension template using Vue and TypeScript. This template includes a content script using Tailwind.css. To see it in action, visit https://extension.js.org.", + "background": { + "service_worker": "./background.ts" + }, + "content_scripts": [ + { + "matches": ["https://extension.js.org/*"], + "js": ["./content/scripts.ts"] + } + ], + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + } +} diff --git a/programs/cli/spec/fixtures/vue-typescript/package.json b/programs/cli/spec/fixtures/vue-typescript/package.json new file mode 100644 index 00000000..56514c1d --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/package.json @@ -0,0 +1,17 @@ +{ + "devDependencies": { + "vue": "^3.4.27", + "tailwindcss": "^3.4.1", + "typescript": "5.3.3", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-vue-typescript", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/vue-typescript/postcss.config.js b/programs/cli/spec/fixtures/vue-typescript/postcss.config.js new file mode 100644 index 00000000..85f717cc --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {} + } +} diff --git a/programs/cli/spec/fixtures/vue-typescript/tailwind.config.js b/programs/cli/spec/fixtures/vue-typescript/tailwind.config.js new file mode 100644 index 00000000..0abdfe65 --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/tailwind.config.js @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['**/*.html', '**/*.vue'], + theme: { + extend: {} + }, + plugins: [] +} diff --git a/programs/cli/spec/fixtures/vue-typescript/tsconfig.json b/programs/cli/spec/fixtures/vue-typescript/tsconfig.json new file mode 100644 index 00000000..b17ae463 --- /dev/null +++ b/programs/cli/spec/fixtures/vue-typescript/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "types": ["webpack/module"], + "allowJs": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "isolatedModules": false, + "jsx": "preserve", + "lib": ["dom", "dom.iterable", "esnext"], + "moduleResolution": "node", + "module": "esnext", + "resolveJsonModule": true, + "strict": true, + "target": "esnext" + }, + "include": ["./"], + "exclude": ["node_modules", "dist"] +} diff --git a/programs/cli/spec/fixtures/vue/.gitignore b/programs/cli/spec/fixtures/vue/.gitignore new file mode 100644 index 00000000..ed0a520d --- /dev/null +++ b/programs/cli/spec/fixtures/vue/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +yarn.lock +package-lock.json diff --git a/programs/cli/spec/fixtures/vue/README.md b/programs/cli/spec/fixtures/vue/README.md new file mode 100644 index 00000000..48e8d8af --- /dev/null +++ b/programs/cli/spec/fixtures/vue/README.md @@ -0,0 +1,37 @@ +# vue + +> This project was bootstrapped using the Extension.js TypeScript template. + +## Scripts Available + +In the project directory, you can run: + +### yarn dev + +``` +// Runs the app in the development mode. +// Will open a new browser instance with your extension loaded. +// The page will reload when you make changes. +yarn dev +``` + +### yarn start + +``` +// Runs the app in the production mode. +// Will open a new browser instance with your extension loaded. +// This is how your browser extension will work once published. +yarn start +``` + +### yarn build + +``` +// Builds the app for production. +// Bundles your browser extension in production mode for the target browser. +yarn run build +``` + +## Learn More + +You can learn more in the [Extension.js](https://extension.js.org) documentation. diff --git a/programs/cli/spec/fixtures/vue/images/icons/icon_16.png b/programs/cli/spec/fixtures/vue/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/cli/spec/fixtures/vue/images/icons/icon_16.png differ diff --git a/programs/cli/spec/fixtures/vue/images/icons/icon_48.png b/programs/cli/spec/fixtures/vue/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/cli/spec/fixtures/vue/images/icons/icon_48.png differ diff --git a/programs/create/templates/vue/template/public/vue.svg b/programs/cli/spec/fixtures/vue/images/vue.svg similarity index 100% rename from programs/create/templates/vue/template/public/vue.svg rename to programs/cli/spec/fixtures/vue/images/vue.svg diff --git a/programs/cli/spec/fixtures/vue/manifest.json b/programs/cli/spec/fixtures/vue/manifest.json new file mode 100644 index 00000000..c60475c8 --- /dev/null +++ b/programs/cli/spec/fixtures/vue/manifest.json @@ -0,0 +1,13 @@ +{ + "manifest_version": 3, + "version": "1.0", + "name": "vue", + "description": "An Extension.js template using Vue. This template includes a new tab override.", + "icons": { + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" + }, + "chrome_url_overrides": { + "newtab": "newtab/index.html" + } +} diff --git a/programs/cli/spec/fixtures/vue/newtab/NewTabApp.vue b/programs/cli/spec/fixtures/vue/newtab/NewTabApp.vue new file mode 100644 index 00000000..47fc2529 --- /dev/null +++ b/programs/cli/spec/fixtures/vue/newtab/NewTabApp.vue @@ -0,0 +1,30 @@ + + diff --git a/programs/cli/spec/fixtures/vue/newtab/index.html b/programs/cli/spec/fixtures/vue/newtab/index.html new file mode 100644 index 00000000..90a5ebca --- /dev/null +++ b/programs/cli/spec/fixtures/vue/newtab/index.html @@ -0,0 +1,13 @@ + + + + + + Vue Template + + + +
+ + + diff --git a/programs/create/templates/vue/template/newtab/main.js b/programs/cli/spec/fixtures/vue/newtab/scripts.js similarity index 85% rename from programs/create/templates/vue/template/newtab/main.js rename to programs/cli/spec/fixtures/vue/newtab/scripts.js index 94e495eb..d4dd397f 100644 --- a/programs/create/templates/vue/template/newtab/main.js +++ b/programs/cli/spec/fixtures/vue/newtab/scripts.js @@ -1,5 +1,5 @@ import 'sakura.css' -import './base.css' +import './styles.css' import {createApp} from 'vue' import NewTabApp from './NewTabApp.vue' diff --git a/programs/create/templates/vue/template/newtab/base.css b/programs/cli/spec/fixtures/vue/newtab/styles.css similarity index 100% rename from programs/create/templates/vue/template/newtab/base.css rename to programs/cli/spec/fixtures/vue/newtab/styles.css diff --git a/programs/cli/spec/fixtures/vue/package.json b/programs/cli/spec/fixtures/vue/package.json new file mode 100644 index 00000000..544ad4db --- /dev/null +++ b/programs/cli/spec/fixtures/vue/package.json @@ -0,0 +1,16 @@ +{ + "devDependencies": { + "vue": "^3.4.27", + "sakura.css": "^1.5.0", + "extension": "latest" + }, + "scripts": { + "dev": "extension dev", + "start": "extension start", + "build": "extension build" + }, + "dependencies": {}, + "name": "my-vue", + "private": true, + "version": "0.0.0" +} diff --git a/programs/cli/spec/fixtures/my-extension/.gitignore b/programs/create/templates/chatgpt/template/.gitignore similarity index 100% rename from programs/cli/spec/fixtures/my-extension/.gitignore rename to programs/create/templates/chatgpt/template/.gitignore diff --git a/programs/create/templates/chatgpt/template/images/extension.png b/programs/create/templates/chatgpt/template/images/extension.png new file mode 100644 index 00000000..66a7b933 Binary files /dev/null and b/programs/create/templates/chatgpt/template/images/extension.png differ diff --git a/programs/create/templates/chatgpt/template/manifest.json b/programs/create/templates/chatgpt/template/manifest.json index 37f15612..20c88929 100644 --- a/programs/create/templates/chatgpt/template/manifest.json +++ b/programs/create/templates/chatgpt/template/manifest.json @@ -2,13 +2,13 @@ "manifest_version": 3, "version": "1.0", "name": "ChatGPT Template", - "description": "An Extension.js template integrated with ChatGPT. This template includes a side panel.", + "description": "An Extension.js template integrated with ChatGPT. This template includes a sidebar panel.", "icons": { "16": "images/icons/icon_16.png", "48": "images/icons/icon_48.png" }, "side_panel": { - "default_path": "side_panel/index.html" + "default_path": "sidebar/index.html" }, "permissions": ["sidePanel"] } diff --git a/programs/create/templates/chatgpt/template/sidebar/SidebarApp.jsx b/programs/create/templates/chatgpt/template/sidebar/SidebarApp.jsx new file mode 100644 index 00000000..7a208a7f --- /dev/null +++ b/programs/create/templates/chatgpt/template/sidebar/SidebarApp.jsx @@ -0,0 +1,91 @@ +import { useState } from 'react'; +import OpenAI from "openai"; +import chatgptLogo from '../images/chatgpt.png' +import extensionJsLogo from '../images/extension.png' + +const openai = new OpenAI({ + apiKey: process.env.EXTENSION_OPENAI_API_KEY, + dangerouslyAllowBrowser: true, +}); + +function SidebarApp() { + const [messages, setMessages] = useState([ + { + content: ( + "Hello there! This is your ChatGPT extension sample, " + + "built with React, Tailwind.css, and DaisyUI. " + + "For it to work, create a .env file with your EXTENSION_OPENAI_API_KEY. " + + "You can get an API key from OpenAI's website." + ), + role: "assistant" + }, + { + content: "https://platform.openai.com/api-keys", + role: "assistant" + }, + ]); + + const [isTyping, setIsTyping] = useState(false); + + + const handleSubmit = async (e) => { + e.preventDefault(); + + const newMessage = { + content: e.target[0].value, + role: "user" + } + + const newMessages = [...messages, newMessage]; + + setMessages(newMessages); + setIsTyping(true); + e.target.reset(); + + const completion = await openai.chat.completions.create({ + model: "gpt-3.5-turbo", + messages: [...newMessages], + }); + + setMessages([...newMessages, completion.choices[0].message]); + setIsTyping(false); + } + + return ( +
+
+
+ { + messages.length && messages.map((msg, i) => { + return ( +
+
+
+ +
+
+
{msg.content}
+
+ ) + }) + } +
+ +
handleSubmit(e)}> +
+ {isTyping && ChatGPT Extension is typing...} + + + +
+
+
+
+ ); +} + +export default SidebarApp; \ No newline at end of file diff --git a/programs/create/templates/chatgpt/template/sidebar/index.html b/programs/create/templates/chatgpt/template/sidebar/index.html new file mode 100644 index 00000000..12494f55 --- /dev/null +++ b/programs/create/templates/chatgpt/template/sidebar/index.html @@ -0,0 +1,13 @@ + + + + + + ChatGPT Template + + + +
+ + + diff --git a/programs/create/templates/chatgpt/template/sidebar/scripts.jsx b/programs/create/templates/chatgpt/template/sidebar/scripts.jsx new file mode 100644 index 00000000..2d965775 --- /dev/null +++ b/programs/create/templates/chatgpt/template/sidebar/scripts.jsx @@ -0,0 +1,12 @@ +import React from 'react' +import ReactDOM from 'react-dom/client' +import SidebarApp from './SidebarApp' +import './styles.css' + +const root = ReactDOM.createRoot(document.getElementById('root')) + +root.render( + + + +) diff --git a/programs/create/templates/react-typescript/template/content/base.css b/programs/create/templates/chatgpt/template/sidebar/styles.css similarity index 64% rename from programs/create/templates/react-typescript/template/content/base.css rename to programs/create/templates/chatgpt/template/sidebar/styles.css index bd6213e1..b5c61c95 100644 --- a/programs/create/templates/react-typescript/template/content/base.css +++ b/programs/create/templates/chatgpt/template/sidebar/styles.css @@ -1,3 +1,3 @@ @tailwind base; @tailwind components; -@tailwind utilities; \ No newline at end of file +@tailwind utilities; diff --git a/programs/create/templates/content/template/.gitignore b/programs/create/templates/content/template/.gitignore new file mode 100644 index 00000000..aab4db30 --- /dev/null +++ b/programs/create/templates/content/template/.gitignore @@ -0,0 +1,21 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules + +# testing +/coverage + +# production +/dist + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* diff --git a/programs/create/templates/content/template/background.js b/programs/create/templates/content/template/background.js new file mode 100644 index 00000000..962dbf0b --- /dev/null +++ b/programs/create/templates/content/template/background.js @@ -0,0 +1,19 @@ +chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { + if (request.action === 'changeBackgroundColor') { + changeBackgroundColor(request.color, sender.tab.id) + } +}) + +function changeBackgroundColor(color, tabId) { + chrome.scripting + .executeScript({ + target: {tabId}, + function: setPageBackgroundColor, + args: [color] + }) + .catch(console.error) +} + +function setPageBackgroundColor(color) { + document.body.style.backgroundColor = color +} diff --git a/programs/create/templates/content/template/content/scripts.js b/programs/create/templates/content/template/content/scripts.js new file mode 100644 index 00000000..d49a238a --- /dev/null +++ b/programs/create/templates/content/template/content/scripts.js @@ -0,0 +1,30 @@ +import extensionJsLogo from '../images/extension.png' +import './styles.css' + +document.body.innerHTML += ` +
+ +

+ Change the background-color ⬇ +

+ +

+ Learn more about creating browser extensions at + https://extension.js.org + +

+
+` + +document.getElementById('colorPicker').addEventListener('input', (event) => { + chrome.runtime + .sendMessage({ + action: 'changeBackgroundColor', + color: event.target.value + }) + .catch(console.error) +}) diff --git a/programs/create/templates/content/template/content/styles.css b/programs/create/templates/content/template/content/styles.css new file mode 100644 index 00000000..114bc325 --- /dev/null +++ b/programs/create/templates/content/template/content/styles.css @@ -0,0 +1,56 @@ + +.content_script-box { + background: white; + position: fixed; + right: 0; + bottom: 0; + z-index: 9; + width: 315px; + height: 345px; + margin: 1em; + padding: 1em; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + gap: 1em; + box-shadow: 0px 0px 4px 1px #ccc; +} + +.content_script-logo { + background: white; + width: 90px; + align-self: flex-start; + border: 4px solid; + border-color: #ccc; + border-radius: 24px; + filter: grayscale(1); + transition: filter 2s, border-color 2s; +} + +.content_script-logo:hover { + filter: grayscale(0); + border-color: aquamarine; +} + +.content_script-title { + font-size: 2.35em; + color: #333; + line-height: 1.1; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; + font-weight: 700; + overflow-wrap: break-word; + word-wrap: break-word; + -ms-word-break: break-all; + word-break: break-word; +} + +.content_script-description { + color: #999; +} + +.content_script-colorPicker { + display: block; + width: 100%; + height: 50px; +} diff --git a/programs/create/templates/content/template/images/extension.png b/programs/create/templates/content/template/images/extension.png new file mode 100644 index 00000000..66a7b933 Binary files /dev/null and b/programs/create/templates/content/template/images/extension.png differ diff --git a/programs/create/templates/content/template/images/extensionjs.svg b/programs/create/templates/content/template/images/extensionjs.svg deleted file mode 100644 index adc99aef..00000000 --- a/programs/create/templates/content/template/images/extensionjs.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/programs/create/templates/content/template/manifest.json b/programs/create/templates/content/template/manifest.json index c685dcea..5375f374 100644 --- a/programs/create/templates/content/template/manifest.json +++ b/programs/create/templates/content/template/manifest.json @@ -6,12 +6,12 @@ "permissions": ["activeTab", "scripting"], "host_permissions": [""], "background": { - "service_worker": "service-worker.js" + "service_worker": "background.js" }, "content_scripts": [ { "matches": [""], - "js": ["content.js"] + "js": ["content/scripts.js"] } ], "icons": { diff --git a/programs/create/templates/new/template/images/extension.png b/programs/create/templates/new/template/images/extension.png new file mode 100644 index 00000000..66a7b933 Binary files /dev/null and b/programs/create/templates/new/template/images/extension.png differ diff --git a/programs/create/templates/new/template/images/extensionjs.svg b/programs/create/templates/new/template/images/extensionjs.svg deleted file mode 100644 index adc99aef..00000000 --- a/programs/create/templates/new/template/images/extensionjs.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/programs/create/templates/new/template/newtab/index.html b/programs/create/templates/new/template/newtab/index.html index d4008ccf..58a5e51a 100644 --- a/programs/create/templates/new/template/newtab/index.html +++ b/programs/create/templates/new/template/newtab/index.html @@ -11,7 +11,7 @@

- The Extension logo + The Extension logo
Welcome to your New Extension.

diff --git a/programs/create/templates/preact-typescript/template/content/ContentApp.tsx b/programs/create/templates/preact-typescript/template/content/ContentApp.tsx index ce42190c..b69c8202 100644 --- a/programs/create/templates/preact-typescript/template/content/ContentApp.tsx +++ b/programs/create/templates/preact-typescript/template/content/ContentApp.tsx @@ -1,11 +1,11 @@ import {Component} from 'preact' import {signal} from '@preact/signals' -import preactLogo from '../public/preact.png' -import tailwindBg from '../public/tailwind_bg.png' -import typescriptLogo from '../public/typescript.png' -import tailwindLogo from '../public/tailwind.png' -import chromeWindowBg from '../public/chromeWindow.png' +import preactLogo from '../images/preact.png' +import tailwindBg from '../images/tailwind_bg.png' +import typescriptLogo from '../images/typescript.png' +import tailwindLogo from '../images/tailwind.png' +import chromeWindowBg from '../images/chromeWindow.png' export default function ContentApp() { const isdialogOpen = signal(true) @@ -63,7 +63,7 @@ export default function ContentApp() { />

- This is a content script running React, TypeScript, and + This is a content script running Preact, TypeScript, and Tailwind.css.

diff --git a/programs/create/templates/preact-typescript/template/content/scripts.tsx b/programs/create/templates/preact-typescript/template/content/scripts.tsx new file mode 100644 index 00000000..bed0b743 --- /dev/null +++ b/programs/create/templates/preact-typescript/template/content/scripts.tsx @@ -0,0 +1,14 @@ +import {render} from 'preact' +import ContentApp from './ContentApp' +import './styles.css' + +setTimeout(initial, 1000) + +function initial() { + // Create a new div element and append it to the document's body + const rootDiv = document.createElement('div') + rootDiv.id = 'extension-root' + document.body.appendChild(rootDiv) + + render(, rootDiv) +} diff --git a/programs/create/templates/preact-typescript/template/content/styles.css b/programs/create/templates/preact-typescript/template/content/styles.css new file mode 100644 index 00000000..dc79ebb5 --- /dev/null +++ b/programs/create/templates/preact-typescript/template/content/styles.css @@ -0,0 +1,10 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +#extension-root { + position: fixed; + bottom: 0; + right: 0; + z-index: 99999; +} diff --git a/programs/create/templates/preact-typescript/template/images/chromeWindow.png b/programs/create/templates/preact-typescript/template/images/chromeWindow.png new file mode 100644 index 00000000..da525dd8 Binary files /dev/null and b/programs/create/templates/preact-typescript/template/images/chromeWindow.png differ diff --git a/programs/create/templates/preact-typescript/template/images/icons/icon_16.png b/programs/create/templates/preact-typescript/template/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/create/templates/preact-typescript/template/images/icons/icon_16.png differ diff --git a/programs/create/templates/preact-typescript/template/images/icons/icon_48.png b/programs/create/templates/preact-typescript/template/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/create/templates/preact-typescript/template/images/icons/icon_48.png differ diff --git a/programs/create/templates/preact-typescript/template/images/preact.png b/programs/create/templates/preact-typescript/template/images/preact.png new file mode 100644 index 00000000..9bd16ecc Binary files /dev/null and b/programs/create/templates/preact-typescript/template/images/preact.png differ diff --git a/programs/create/templates/preact-typescript/template/images/tailwind.png b/programs/create/templates/preact-typescript/template/images/tailwind.png new file mode 100644 index 00000000..83ed5e12 Binary files /dev/null and b/programs/create/templates/preact-typescript/template/images/tailwind.png differ diff --git a/programs/create/templates/preact-typescript/template/images/tailwind_bg.png b/programs/create/templates/preact-typescript/template/images/tailwind_bg.png new file mode 100644 index 00000000..edc40be8 Binary files /dev/null and b/programs/create/templates/preact-typescript/template/images/tailwind_bg.png differ diff --git a/programs/create/templates/preact-typescript/template/images/typescript.png b/programs/create/templates/preact-typescript/template/images/typescript.png new file mode 100644 index 00000000..93614694 Binary files /dev/null and b/programs/create/templates/preact-typescript/template/images/typescript.png differ diff --git a/programs/create/templates/preact-typescript/template/manifest.json b/programs/create/templates/preact-typescript/template/manifest.json index daa14958..5610295e 100644 --- a/programs/create/templates/preact-typescript/template/manifest.json +++ b/programs/create/templates/preact-typescript/template/manifest.json @@ -9,11 +9,11 @@ "content_scripts": [ { "matches": ["https://extension.js.org/*"], - "js": ["./content/content.tsx"] + "js": ["./content/scripts.tsx"] } ], "icons": { - "16": "public/icon/icon_16.png", - "48": "public/icon/icon_48.png" + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" } } diff --git a/programs/create/templates/preact/template/images/icons/icon_16.png b/programs/create/templates/preact/template/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/create/templates/preact/template/images/icons/icon_16.png differ diff --git a/programs/create/templates/preact/template/images/icons/icon_48.png b/programs/create/templates/preact/template/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/create/templates/preact/template/images/icons/icon_48.png differ diff --git a/programs/create/templates/preact/template/manifest.json b/programs/create/templates/preact/template/manifest.json index b075ca5a..3af892f7 100644 --- a/programs/create/templates/preact/template/manifest.json +++ b/programs/create/templates/preact/template/manifest.json @@ -4,8 +4,8 @@ "name": "Preact Template", "description": "An Extension.js template using Preact. This template includes a new tab override.", "icons": { - "16": "public/icons/icon_16.png", - "48": "public/icons/icon_48.png" + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" }, "chrome_url_overrides": { "newtab": "newtab/index.html" diff --git a/programs/create/templates/preact/template/newtab/NewTabApp.jsx b/programs/create/templates/preact/template/newtab/NewTabApp.jsx index 228df2d7..78fb3d69 100644 --- a/programs/create/templates/preact/template/newtab/NewTabApp.jsx +++ b/programs/create/templates/preact/template/newtab/NewTabApp.jsx @@ -1,6 +1,6 @@ import {Component} from 'preact' import 'sakura.css' -import './base.css' +import './styles.css' import Logo from './logo' export default class NewTabApp extends Component { diff --git a/programs/create/templates/preact/template/newtab/index.html b/programs/create/templates/preact/template/newtab/index.html index 75f15882..56192396 100644 --- a/programs/create/templates/preact/template/newtab/index.html +++ b/programs/create/templates/preact/template/newtab/index.html @@ -9,5 +9,5 @@

- + diff --git a/programs/create/templates/preact/template/newtab/scripts.jsx b/programs/create/templates/preact/template/newtab/scripts.jsx new file mode 100644 index 00000000..20684ed2 --- /dev/null +++ b/programs/create/templates/preact/template/newtab/scripts.jsx @@ -0,0 +1,5 @@ +import {render} from 'preact' +import NewTabApp from './NewTabApp' +import './styles.css' + +render(, document.getElementById('root')) diff --git a/programs/create/templates/preact/template/newtab/styles.css b/programs/create/templates/preact/template/newtab/styles.css new file mode 100644 index 00000000..1a72e896 --- /dev/null +++ b/programs/create/templates/preact/template/newtab/styles.css @@ -0,0 +1,10 @@ +body { + display: flex; + justify-content: center; + align-items: center; + height: calc(100vh - 26px); +} + +h1 { + font-size: 4.7em; +} diff --git a/programs/create/templates/react-typescript/template/content/ContentApp.tsx b/programs/create/templates/react-typescript/template/content/ContentApp.tsx index a0715969..446e3add 100644 --- a/programs/create/templates/react-typescript/template/content/ContentApp.tsx +++ b/programs/create/templates/react-typescript/template/content/ContentApp.tsx @@ -1,9 +1,9 @@ import React from 'react' -import reactLogo from '../public/react.png' -import tailwindBg from '../public/tailwind_bg.png' -import typescriptLogo from '../public/typescript.png' -import tailwindLogo from '../public/tailwind.png' -import chromeWindowBg from '../public/chromeWindow.png' +import reactLogo from '../images/react.png' +import tailwindBg from '../images/tailwind_bg.png' +import typescriptLogo from '../images/typescript.png' +import tailwindLogo from '../images/tailwind.png' +import chromeWindowBg from '../images/chromeWindow.png' export default function ContentApp() { const [isdialogOpen, setIsDialogOpen] = React.useState(true) diff --git a/programs/create/templates/react-typescript/template/content/scripts.tsx b/programs/create/templates/react-typescript/template/content/scripts.tsx new file mode 100644 index 00000000..89050dc3 --- /dev/null +++ b/programs/create/templates/react-typescript/template/content/scripts.tsx @@ -0,0 +1,17 @@ +import ReactDOM from 'react-dom/client' +import ContentApp from './ContentApp' +import './styles.css' + +setTimeout(initial, 1000) + +function initial() { + // Create a new div element and append it to the document's body + const rootDiv = document.createElement('div') + rootDiv.id = 'extension-root' + document.body.appendChild(rootDiv) + + // Use `createRoot` to create a root, then render the component + // Note that `createRoot` takes the container DOM node, not the React element + const root = ReactDOM.createRoot(rootDiv) + root.render() +} diff --git a/programs/create/templates/react-typescript/template/content/styles.css b/programs/create/templates/react-typescript/template/content/styles.css new file mode 100644 index 00000000..dc79ebb5 --- /dev/null +++ b/programs/create/templates/react-typescript/template/content/styles.css @@ -0,0 +1,10 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +#extension-root { + position: fixed; + bottom: 0; + right: 0; + z-index: 99999; +} diff --git a/programs/create/templates/react-typescript/template/images/chromeWindow.png b/programs/create/templates/react-typescript/template/images/chromeWindow.png new file mode 100644 index 00000000..da525dd8 Binary files /dev/null and b/programs/create/templates/react-typescript/template/images/chromeWindow.png differ diff --git a/programs/create/templates/react-typescript/template/images/icons/icon_16.png b/programs/create/templates/react-typescript/template/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/create/templates/react-typescript/template/images/icons/icon_16.png differ diff --git a/programs/create/templates/react-typescript/template/images/icons/icon_48.png b/programs/create/templates/react-typescript/template/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/create/templates/react-typescript/template/images/icons/icon_48.png differ diff --git a/programs/create/templates/react-typescript/template/images/react.png b/programs/create/templates/react-typescript/template/images/react.png new file mode 100644 index 00000000..9080fddd Binary files /dev/null and b/programs/create/templates/react-typescript/template/images/react.png differ diff --git a/programs/create/templates/react-typescript/template/images/tailwind.png b/programs/create/templates/react-typescript/template/images/tailwind.png new file mode 100644 index 00000000..83ed5e12 Binary files /dev/null and b/programs/create/templates/react-typescript/template/images/tailwind.png differ diff --git a/programs/create/templates/react-typescript/template/images/tailwind_bg.png b/programs/create/templates/react-typescript/template/images/tailwind_bg.png new file mode 100644 index 00000000..edc40be8 Binary files /dev/null and b/programs/create/templates/react-typescript/template/images/tailwind_bg.png differ diff --git a/programs/create/templates/react-typescript/template/images/typescript.png b/programs/create/templates/react-typescript/template/images/typescript.png new file mode 100644 index 00000000..93614694 Binary files /dev/null and b/programs/create/templates/react-typescript/template/images/typescript.png differ diff --git a/programs/create/templates/react-typescript/template/manifest.json b/programs/create/templates/react-typescript/template/manifest.json index f3868336..215d880e 100644 --- a/programs/create/templates/react-typescript/template/manifest.json +++ b/programs/create/templates/react-typescript/template/manifest.json @@ -9,11 +9,11 @@ "content_scripts": [ { "matches": ["https://extension.js.org/*"], - "js": ["./content/content.tsx"] + "js": ["./content/scripts.tsx"] } ], "icons": { - "16": "public/icon/icon_16.png", - "48": "public/icon/icon_48.png" + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" } } diff --git a/programs/create/templates/react/template/images/icons/icon_16.png b/programs/create/templates/react/template/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/create/templates/react/template/images/icons/icon_16.png differ diff --git a/programs/create/templates/react/template/images/icons/icon_48.png b/programs/create/templates/react/template/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/create/templates/react/template/images/icons/icon_48.png differ diff --git a/programs/create/templates/react/template/images/react.png b/programs/create/templates/react/template/images/react.png new file mode 100644 index 00000000..9080fddd Binary files /dev/null and b/programs/create/templates/react/template/images/react.png differ diff --git a/programs/create/templates/react/template/manifest.json b/programs/create/templates/react/template/manifest.json index e2f27884..8baccd54 100644 --- a/programs/create/templates/react/template/manifest.json +++ b/programs/create/templates/react/template/manifest.json @@ -4,8 +4,8 @@ "name": "React Template", "description": "An Extension.js template using React. This template includes a new tab override.", "icons": { - "16": "public/icons/icon_16.png", - "48": "public/icons/icon_48.png" + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" }, "chrome_url_overrides": { "newtab": "newtab/index.html" diff --git a/programs/create/templates/react/template/newtab/NewTabApp.jsx b/programs/create/templates/react/template/newtab/NewTabApp.jsx index 399bcae6..b57a8923 100644 --- a/programs/create/templates/react/template/newtab/NewTabApp.jsx +++ b/programs/create/templates/react/template/newtab/NewTabApp.jsx @@ -1,7 +1,7 @@ import React from 'react' import 'sakura.css' -import './base.css' -import reactLogo from '../public/react.png' +import './styles.css' +import reactLogo from '../images/react.png' export default function NewTabApp() { return ( diff --git a/programs/create/templates/react/template/newtab/index.html b/programs/create/templates/react/template/newtab/index.html index 05567c29..75582e5f 100644 --- a/programs/create/templates/react/template/newtab/index.html +++ b/programs/create/templates/react/template/newtab/index.html @@ -9,5 +9,5 @@
- + diff --git a/programs/create/templates/react/template/newtab/scripts.jsx b/programs/create/templates/react/template/newtab/scripts.jsx new file mode 100644 index 00000000..1c7a64d0 --- /dev/null +++ b/programs/create/templates/react/template/newtab/scripts.jsx @@ -0,0 +1,12 @@ +import React from 'react' +import ReactDOM from 'react-dom/client' +import NewtabApp from './NewtabApp' +import './styles.css' + +const root = ReactDOM.createRoot(document.getElementById('root')) + +root.render( + + + +) diff --git a/programs/create/templates/react/template/newtab/styles.css b/programs/create/templates/react/template/newtab/styles.css new file mode 100644 index 00000000..11e3a190 --- /dev/null +++ b/programs/create/templates/react/template/newtab/styles.css @@ -0,0 +1,23 @@ +body { + display: flex; + justify-content: center; + align-items: center; + height: calc(100vh - 26px); +} + +h1 { + font-size: 4.7em; +} + +.react { + animation: spin 5s linear infinite; +} + +@keyframes spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} \ No newline at end of file diff --git a/programs/create/templates/tailwind/template/images/chromeWindow.png b/programs/create/templates/tailwind/template/images/chromeWindow.png new file mode 100644 index 00000000..d70571be Binary files /dev/null and b/programs/create/templates/tailwind/template/images/chromeWindow.png differ diff --git a/programs/create/templates/tailwind/template/images/icons/icon_16.png b/programs/create/templates/tailwind/template/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/create/templates/tailwind/template/images/icons/icon_16.png differ diff --git a/programs/create/templates/tailwind/template/images/icons/icon_48.png b/programs/create/templates/tailwind/template/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/create/templates/tailwind/template/images/icons/icon_48.png differ diff --git a/programs/create/templates/tailwind/template/images/react.png b/programs/create/templates/tailwind/template/images/react.png new file mode 100644 index 00000000..9080fddd Binary files /dev/null and b/programs/create/templates/tailwind/template/images/react.png differ diff --git a/programs/create/templates/tailwind/template/images/tailwind.png b/programs/create/templates/tailwind/template/images/tailwind.png new file mode 100644 index 00000000..83ed5e12 Binary files /dev/null and b/programs/create/templates/tailwind/template/images/tailwind.png differ diff --git a/programs/create/templates/tailwind/template/images/tailwind_bg.png b/programs/create/templates/tailwind/template/images/tailwind_bg.png new file mode 100644 index 00000000..edc40be8 Binary files /dev/null and b/programs/create/templates/tailwind/template/images/tailwind_bg.png differ diff --git a/programs/create/templates/tailwind/template/manifest.json b/programs/create/templates/tailwind/template/manifest.json index 60e8030d..760e4783 100644 --- a/programs/create/templates/tailwind/template/manifest.json +++ b/programs/create/templates/tailwind/template/manifest.json @@ -4,8 +4,8 @@ "name": "Tailwind Template", "description": "An extension template using Tailwind. This template includes a new tab override.", "icons": { - "16": "public/icons/icon_16.png", - "48": "public/icons/icon_48.png" + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" }, "chrome_url_overrides": { "newtab": "newtab/index.html" diff --git a/programs/create/templates/tailwind/template/newtab/NewTabApp.jsx b/programs/create/templates/tailwind/template/newtab/NewTabApp.jsx index d5bd0f3c..9d75a8b7 100644 --- a/programs/create/templates/tailwind/template/newtab/NewTabApp.jsx +++ b/programs/create/templates/tailwind/template/newtab/NewTabApp.jsx @@ -1,7 +1,7 @@ import React from 'react' -import reactLogo from '../public/react.png' -import tailwindLogo from '../public/tailwind.png' -import chromeWindowBg from '../public/chromeWindow.png' +import reactLogo from '../images/react.png' +import tailwindLogo from '../images/tailwind.png' +import chromeWindowBg from '../images/chromeWindow.png' export default function NewTabApp() { return ( diff --git a/programs/create/templates/tailwind/template/newtab/index.html b/programs/create/templates/tailwind/template/newtab/index.html index 6f8e194c..c6dff892 100644 --- a/programs/create/templates/tailwind/template/newtab/index.html +++ b/programs/create/templates/tailwind/template/newtab/index.html @@ -9,5 +9,5 @@
- + diff --git a/programs/create/templates/react/template/newtab/index.jsx b/programs/create/templates/tailwind/template/newtab/scripts.jsx similarity index 91% rename from programs/create/templates/react/template/newtab/index.jsx rename to programs/create/templates/tailwind/template/newtab/scripts.jsx index 45d674de..a6755c29 100644 --- a/programs/create/templates/react/template/newtab/index.jsx +++ b/programs/create/templates/tailwind/template/newtab/scripts.jsx @@ -1,7 +1,7 @@ import React from 'react' import ReactDOM from 'react-dom/client' import NewTabApp from './NewTabApp' -import './base.css' +import './styles.css' const root = ReactDOM.createRoot(document.getElementById('root')) diff --git a/programs/create/templates/tailwind/template/newtab/base.css b/programs/create/templates/tailwind/template/newtab/styles.css similarity index 64% rename from programs/create/templates/tailwind/template/newtab/base.css rename to programs/create/templates/tailwind/template/newtab/styles.css index bd6213e1..b5c61c95 100644 --- a/programs/create/templates/tailwind/template/newtab/base.css +++ b/programs/create/templates/tailwind/template/newtab/styles.css @@ -1,3 +1,3 @@ @tailwind base; @tailwind components; -@tailwind utilities; \ No newline at end of file +@tailwind utilities; diff --git a/programs/create/templates/vue-typescript/template/content/ContentApp.vue b/programs/create/templates/vue-typescript/template/content/ContentApp.vue index ec98c0de..a0752c8b 100644 --- a/programs/create/templates/vue-typescript/template/content/ContentApp.vue +++ b/programs/create/templates/vue-typescript/template/content/ContentApp.vue @@ -16,7 +16,7 @@ const setIsDialogOpen = (value: boolean) => (isdialogOpen.value = value)
(isdialogOpen.value = value) > Vue logo
+
TypeScript logo
+
Tailwind logo
@@ -68,7 +68,7 @@ const setIsDialogOpen = (value: boolean) => (isdialogOpen.value = value)
Chrome window screenshot + + + + diff --git a/programs/create/templates/vue-typescript/template/manifest.json b/programs/create/templates/vue-typescript/template/manifest.json index 2446fa5b..74236ed2 100644 --- a/programs/create/templates/vue-typescript/template/manifest.json +++ b/programs/create/templates/vue-typescript/template/manifest.json @@ -9,11 +9,11 @@ "content_scripts": [ { "matches": ["https://extension.js.org/*"], - "js": ["./content/content.ts"] + "js": ["./content/scripts.ts"] } ], "icons": { - "16": "public/icon/icon_16.png", - "48": "public/icon/icon_48.png" + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" } } diff --git a/programs/create/templates/vue/template/images/icons/icon_16.png b/programs/create/templates/vue/template/images/icons/icon_16.png new file mode 100644 index 00000000..651139b5 Binary files /dev/null and b/programs/create/templates/vue/template/images/icons/icon_16.png differ diff --git a/programs/create/templates/vue/template/images/icons/icon_48.png b/programs/create/templates/vue/template/images/icons/icon_48.png new file mode 100644 index 00000000..73b36f0f Binary files /dev/null and b/programs/create/templates/vue/template/images/icons/icon_48.png differ diff --git a/programs/create/templates/vue/template/images/vue.svg b/programs/create/templates/vue/template/images/vue.svg new file mode 100644 index 00000000..d4d5f0bd --- /dev/null +++ b/programs/create/templates/vue/template/images/vue.svg @@ -0,0 +1,8 @@ + + + + + diff --git a/programs/create/templates/vue/template/manifest.json b/programs/create/templates/vue/template/manifest.json index 98339578..ef0904b8 100644 --- a/programs/create/templates/vue/template/manifest.json +++ b/programs/create/templates/vue/template/manifest.json @@ -4,8 +4,8 @@ "name": "Vue Template", "description": "An Extension.js template using Vue. This template includes a new tab override.", "icons": { - "16": "public/icons/icon_16.png", - "48": "public/icons/icon_48.png" + "16": "images/icons/icon_16.png", + "48": "images/icons/icon_48.png" }, "chrome_url_overrides": { "newtab": "newtab/index.html" diff --git a/programs/create/templates/vue/template/newtab/NewTabApp.vue b/programs/create/templates/vue/template/newtab/NewTabApp.vue index d472fc96..47fc2529 100644 --- a/programs/create/templates/vue/template/newtab/NewTabApp.vue +++ b/programs/create/templates/vue/template/newtab/NewTabApp.vue @@ -12,7 +12,7 @@ export default {

The Vue logo diff --git a/programs/create/templates/vue/template/newtab/index.html b/programs/create/templates/vue/template/newtab/index.html index 70332e63..90a5ebca 100644 --- a/programs/create/templates/vue/template/newtab/index.html +++ b/programs/create/templates/vue/template/newtab/index.html @@ -9,5 +9,5 @@
- + diff --git a/programs/create/templates/vue/template/newtab/scripts.js b/programs/create/templates/vue/template/newtab/scripts.js new file mode 100644 index 00000000..d4dd397f --- /dev/null +++ b/programs/create/templates/vue/template/newtab/scripts.js @@ -0,0 +1,7 @@ +import 'sakura.css' +import './styles.css' + +import {createApp} from 'vue' +import NewTabApp from './NewTabApp.vue' + +createApp(NewTabApp).mount('#app') diff --git a/programs/create/templates/vue/template/newtab/styles.css b/programs/create/templates/vue/template/newtab/styles.css new file mode 100644 index 00000000..26ef4ee5 --- /dev/null +++ b/programs/create/templates/vue/template/newtab/styles.css @@ -0,0 +1,36 @@ +body { + display: flex; + justify-content: center; + align-items: center; + height: calc(100vh - 26px); +} + +h1 { + font-size: 4.7em; +} + +.vue { + animation: heartbeat 1s linear infinite; +} + +@keyframes heartbeat { + 0% { + transform: scale(0.9); + } + + 20% { + transform: scale(1); + } + + 30% { + transform: scale(0.9); + } + + 40% { + transform: scale(1); + } + + 100% { + transform: scale(0.9); + } +} diff --git a/turbo.json b/turbo.json index 437d3ba8..c28c76bf 100644 --- a/turbo.json +++ b/turbo.json @@ -14,6 +14,9 @@ "dependsOn": ["^compile"] }, "test": {}, + "test:build": {}, + "test:create": {}, + "test:cli": {}, "test:watch": { "cache": false }, diff --git a/yarn.lock b/yarn.lock index bd1eb750..c53a77b2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2630,9 +2630,9 @@ "@types/node" "*" "@types/node@*", "@types/node@^20.11.5": - version "20.14.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.6.tgz#f3c19ffc98c2220e18de259bb172dd4d892a6075" - integrity sha512-JbA0XIJPL1IiNnU7PFxDXyfAwcwVVrOoqyzzyQTyMeVhBzkJVMSkC1LlVsRQ2lpqiY4n6Bb9oCS6lzDKVQxbZw== + version "20.14.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.8.tgz#45c26a2a5de26c3534a9504530ddb3b27ce031ac" + integrity sha512-DO+2/jZinXfROG7j7WKFn/3C6nFwxy2lLpgLjEXJz+0XKphZlTLJ14mo8Vfg8X5BWN6XjyESXq+LcYdT7tR3bA== dependencies: undici-types "~5.26.4" @@ -2875,52 +2875,52 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== -"@vue/compiler-core@3.4.29": - version "3.4.29" - resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.29.tgz#6c0878e98716b1cb64e7d44ed07feda96ab7f639" - integrity sha512-TFKiRkKKsRCKvg/jTSSKK7mYLJEQdUiUfykbG49rubC9SfDyvT2JrzTReopWlz2MxqeLyxh9UZhvxEIBgAhtrg== +"@vue/compiler-core@3.4.30": + version "3.4.30" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.30.tgz#a554978f68199a0f254ad5159e9665370c8c1250" + integrity sha512-ZL8y4Xxdh8O6PSwfdZ1IpQ24PjTAieOz3jXb/MDTfDtANcKBMxg1KLm6OX2jofsaQGYfIVzd3BAG22i56/cF1w== dependencies: "@babel/parser" "^7.24.7" - "@vue/shared" "3.4.29" + "@vue/shared" "3.4.30" entities "^4.5.0" estree-walker "^2.0.2" source-map-js "^1.2.0" -"@vue/compiler-dom@3.4.29": - version "3.4.29" - resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.29.tgz#c8f55528c8d8c8c36687d56a19e53b268c7d6c56" - integrity sha512-A6+iZ2fKIEGnfPJejdB7b1FlJzgiD+Y/sxxKwJWg1EbJu6ZPgzaPQQ51ESGNv0CP6jm6Z7/pO6Ia8Ze6IKrX7w== +"@vue/compiler-dom@3.4.30": + version "3.4.30" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.30.tgz#5af9a5f6f0752f7882d4eba0795e4d00525006dc" + integrity sha512-+16Sd8lYr5j/owCbr9dowcNfrHd+pz+w2/b5Lt26Oz/kB90C9yNbxQ3bYOvt7rI2bxk0nqda39hVcwDFw85c2Q== dependencies: - "@vue/compiler-core" "3.4.29" - "@vue/shared" "3.4.29" + "@vue/compiler-core" "3.4.30" + "@vue/shared" "3.4.30" "@vue/compiler-sfc@^3.4.27": - version "3.4.29" - resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.29.tgz#da7927c5c736048995fe9c6604288633e0ac161a" - integrity sha512-zygDcEtn8ZimDlrEQyLUovoWgKQic6aEQqRXce2WXBvSeHbEbcAsXyCk9oG33ZkyWH4sl9D3tkYc1idoOkdqZQ== + version "3.4.30" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.30.tgz#6a3cc86c20349f8c1976c968a8c80dd7cfef2430" + integrity sha512-8vElKklHn/UY8+FgUFlQrYAPbtiSB2zcgeRKW7HkpSRn/JjMRmZvuOtwDx036D1aqKNSTtXkWRfqx53Qb+HmMg== dependencies: "@babel/parser" "^7.24.7" - "@vue/compiler-core" "3.4.29" - "@vue/compiler-dom" "3.4.29" - "@vue/compiler-ssr" "3.4.29" - "@vue/shared" "3.4.29" + "@vue/compiler-core" "3.4.30" + "@vue/compiler-dom" "3.4.30" + "@vue/compiler-ssr" "3.4.30" + "@vue/shared" "3.4.30" estree-walker "^2.0.2" magic-string "^0.30.10" postcss "^8.4.38" source-map-js "^1.2.0" -"@vue/compiler-ssr@3.4.29": - version "3.4.29" - resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.29.tgz#210b0267667fe1e5ec69ca4e3c473f94da6ac37f" - integrity sha512-rFbwCmxJ16tDp3N8XCx5xSQzjhidYjXllvEcqX/lopkoznlNPz3jyy0WGJCyhAaVQK677WWFt3YO/WUEkMMUFQ== +"@vue/compiler-ssr@3.4.30": + version "3.4.30" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.30.tgz#7938b51f17d62b883d2a61ae42ec4f8398115b1d" + integrity sha512-ZJ56YZGXJDd6jky4mmM0rNaNP6kIbQu9LTKZDhcpddGe/3QIalB1WHHmZ6iZfFNyj5mSypTa4+qDJa5VIuxMSg== dependencies: - "@vue/compiler-dom" "3.4.29" - "@vue/shared" "3.4.29" + "@vue/compiler-dom" "3.4.30" + "@vue/shared" "3.4.30" -"@vue/shared@3.4.29": - version "3.4.29" - resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.29.tgz#84908c284e88a269f8bceee59707b14eb4b2d284" - integrity sha512-hQ2gAQcBO/CDpC82DCrinJNgOHI2v+FA7BDW4lMSPeBpQ7sRe2OLHWe5cph1s7D8DUQAwRt18dBDfJJ220APEA== +"@vue/shared@3.4.30": + version "3.4.30" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.30.tgz#72acfe8df65139dcf298e965fb2ab1cff419e400" + integrity sha512-CLg+f8RQCHQnKvuHY9adMsMaQOcqclh6Z5V9TaoMgy0ut0tz848joZ7/CYFFyF/yZ5i2yaw7Fn498C+CNZVHIg== "@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": version "1.12.1" @@ -2930,64 +2930,21 @@ "@webassemblyjs/helper-numbers" "1.11.6" "@webassemblyjs/helper-wasm-bytecode" "1.11.6" -"@webassemblyjs/ast@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" - integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== - dependencies: - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - "@webassemblyjs/floating-point-hex-parser@1.11.6": version "1.11.6" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== -"@webassemblyjs/floating-point-hex-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" - integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== - "@webassemblyjs/helper-api-error@1.11.6": version "1.11.6" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== -"@webassemblyjs/helper-api-error@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" - integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== - "@webassemblyjs/helper-buffer@1.12.1": version "1.12.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6" integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw== -"@webassemblyjs/helper-buffer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" - integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== - -"@webassemblyjs/helper-code-frame@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" - integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== - dependencies: - "@webassemblyjs/wast-printer" "1.9.0" - -"@webassemblyjs/helper-fsm@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" - integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== - -"@webassemblyjs/helper-module-context@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" - integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-numbers@1.11.6": version "1.11.6" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" @@ -3002,11 +2959,6 @@ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== -"@webassemblyjs/helper-wasm-bytecode@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" - integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== - "@webassemblyjs/helper-wasm-section@1.12.1": version "1.12.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf" @@ -3017,16 +2969,6 @@ "@webassemblyjs/helper-wasm-bytecode" "1.11.6" "@webassemblyjs/wasm-gen" "1.12.1" -"@webassemblyjs/helper-wasm-section@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" - integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/ieee754@1.11.6": version "1.11.6" resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" @@ -3034,13 +2976,6 @@ dependencies: "@xtuc/ieee754" "^1.2.0" -"@webassemblyjs/ieee754@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" - integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== - dependencies: - "@xtuc/ieee754" "^1.2.0" - "@webassemblyjs/leb128@1.11.6": version "1.11.6" resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" @@ -3048,37 +2983,11 @@ dependencies: "@xtuc/long" "4.2.2" -"@webassemblyjs/leb128@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" - integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== - dependencies: - "@xtuc/long" "4.2.2" - "@webassemblyjs/utf8@1.11.6": version "1.11.6" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== -"@webassemblyjs/utf8@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" - integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== - -"@webassemblyjs/wasm-edit@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" - integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/helper-wasm-section" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-opt" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - "@webassemblyjs/wast-printer" "1.9.0" - "@webassemblyjs/wasm-edit@^1.12.1": version "1.12.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b" @@ -3104,17 +3013,6 @@ "@webassemblyjs/leb128" "1.11.6" "@webassemblyjs/utf8" "1.11.6" -"@webassemblyjs/wasm-gen@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" - integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" - "@webassemblyjs/wasm-opt@1.12.1": version "1.12.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5" @@ -3125,16 +3023,6 @@ "@webassemblyjs/wasm-gen" "1.12.1" "@webassemblyjs/wasm-parser" "1.12.1" -"@webassemblyjs/wasm-opt@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" - integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - "@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1": version "1.12.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937" @@ -3147,30 +3035,6 @@ "@webassemblyjs/leb128" "1.11.6" "@webassemblyjs/utf8" "1.11.6" -"@webassemblyjs/wasm-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" - integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" - -"@webassemblyjs/wast-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" - integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/floating-point-hex-parser" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-code-frame" "1.9.0" - "@webassemblyjs/helper-fsm" "1.9.0" - "@xtuc/long" "4.2.2" - "@webassemblyjs/wast-printer@1.12.1": version "1.12.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac" @@ -3179,15 +3043,6 @@ "@webassemblyjs/ast" "1.12.1" "@xtuc/long" "4.2.2" -"@webassemblyjs/wast-printer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" - integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - "@xtuc/long" "4.2.2" - "@webpack-cli/configtest@^2.1.1": version "2.1.1" resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-2.1.1.tgz#3b2f852e91dac6e3b85fb2a314fb8bef46d94646" @@ -3236,33 +3091,23 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-walk@^8.1.1, acorn-walk@^8.2.0: +acorn-walk@^8.1.1: version "8.3.3" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.3.tgz#9caeac29eefaa0c41e3d4c65137de4d6f34df43e" integrity sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw== dependencies: acorn "^8.11.0" -acorn@8.x, acorn@^8.11.0, acorn@^8.4.1, acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: +acorn@^8.11.0, acorn@^8.4.1, acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: version "8.12.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.0.tgz#1627bfa2e058148036133b8d9b51a700663c294c" integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw== -acorn@^6.4.1: - version "6.4.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" - integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== - adm-zip@^0.5.12, adm-zip@~0.5.x: version "0.5.14" resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.5.14.tgz#2c557c0bf12af4311cf6d32970f4060cf8133b2a" integrity sha512-DnyqqifT4Jrcvb8USYjp6FHtBpEIz1mnXu6pTRHZ0RL69LbQYiO+0lDFg5+OKA7U29oWSs3a/i8fhn8ZcceIWg== -ajv-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== - ajv-formats@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" @@ -3270,7 +3115,7 @@ ajv-formats@^2.1.1: dependencies: ajv "^8.0.0" -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: +ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== @@ -3282,7 +3127,7 @@ ajv-keywords@^5.1.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.12.5: +ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -3363,14 +3208,6 @@ any-promise@^1.0.0: resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - anymatch@^3.0.0, anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -3379,11 +3216,6 @@ anymatch@^3.0.0, anymatch@^3.0.3, anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" -aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - arg@^4.1.0: version "4.1.3" resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" @@ -3406,21 +3238,6 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== - array-buffer-byte-length@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" @@ -3451,11 +3268,6 @@ array-union@^2.1.0: resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== - array.prototype.findlast@^1.2.4: version "1.2.5" resolved "https://registry.yarnpkg.com/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz#3e4fbcb30a15a7f5bf64cf2faae22d139c2e4904" @@ -3540,38 +3352,11 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== -asn1.js@^4.10.1: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -assert@^1.1.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.1.tgz#038ab248e4ff078e7bc2485ba6e6388466c78f76" - integrity sha512-zzw1uCAgLbsKwBfFc8CX78DDg+xZeBksSO3vwVIDDN5i94eOrPsSSyiVhmsSABFDM/OcpE2aagCat9dnWQLG1A== - dependencies: - object.assign "^4.1.4" - util "^0.10.4" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== - astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== -async-each@^1.0.1: - version "1.0.6" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.6.tgz#52f1d9403818c179b7561e11a5d1b77eb2160e77" - integrity sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg== - asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" @@ -3582,11 +3367,6 @@ at-least-node@^1.0.0: resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - autoprefixer@^10.4.19: version "10.4.19" resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.19.tgz#ad25a856e82ee9d7898c59583c1afeb3fa65f89f" @@ -3740,24 +3520,6 @@ balanced-match@^2.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz#dc70f920d78db8b858535795867bf48f820633d9" integrity sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA== -base64-js@^1.0.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" - integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - batch@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" @@ -3775,38 +3537,11 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== - binary-extensions@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== - dependencies: - file-uri-to-path "1.0.0" - -bluebird@^3.5.5: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: - version "4.12.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" - integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== - -bn.js@^5.0.0, bn.js@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" - integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== - body-parser@1.20.2: version "1.20.2" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd" @@ -3853,22 +3588,6 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - braces@^3.0.3, braces@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" @@ -3883,73 +3602,6 @@ breakword@^1.0.5: dependencies: wcwidth "^1.0.1" -brorand@^1.0.1, brorand@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== - -browserify-aes@^1.0.4, browserify-aes@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0, browserify-rsa@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" - integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== - dependencies: - bn.js "^5.0.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.2.3" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.3.tgz#7afe4c01ec7ee59a89a558a4b75bd85ae62d4208" - integrity sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw== - dependencies: - bn.js "^5.2.1" - browserify-rsa "^4.1.0" - create-hash "^1.2.0" - create-hmac "^1.1.7" - elliptic "^6.5.5" - hash-base "~3.0" - inherits "^2.0.4" - parse-asn1 "^5.1.7" - readable-stream "^2.3.8" - safe-buffer "^5.2.1" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - browserslist@^4.21.10, browserslist@^4.22.2, browserslist@^4.22.3, browserslist@^4.23.0: version "4.23.1" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.1.tgz#ce4af0534b3d37db5c1a4ca98b9080f985041e96" @@ -3979,30 +3631,11 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== - -buffer@^4.3.0: - version "4.9.2" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" - integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - builtin-modules@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ== - builtins@^5.0.1: version "5.1.0" resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" @@ -4039,42 +3672,6 @@ cac@^6.7.12: resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== -cacache@^12.0.2: - version "12.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" - integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== - dependencies: - bluebird "^3.5.5" - chownr "^1.1.1" - figgy-pudding "^3.5.1" - glob "^7.1.4" - graceful-fs "^4.1.15" - infer-owner "^1.0.3" - lru-cache "^5.1.1" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.3" - ssri "^6.0.1" - unique-filename "^1.1.1" - y18n "^4.0.0" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" @@ -4133,14 +3730,6 @@ case-sensitive-paths-webpack-plugin@^2.4.0: resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz#db64066c6422eed2e08cc14b986ca43796dbc6d4" integrity sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw== -chalk@4.x, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - chalk@^2.1.0, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -4150,6 +3739,14 @@ chalk@^2.1.0, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chalk@~5.3: version "5.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" @@ -4165,7 +3762,7 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1, chokidar@^3.5.1, chokidar@^3.5.3, chokidar@^3.6.0: +"chokidar@>=3.0.0 <4.0.0", chokidar@^3.5.1, chokidar@^3.5.3, chokidar@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== @@ -4180,30 +3777,6 @@ chardet@^0.7.0: optionalDependencies: fsevents "~2.3.2" -chokidar@^2.1.8: - version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - -chownr@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - chrome-extension-manifest-json-schema@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/chrome-extension-manifest-json-schema/-/chrome-extension-manifest-json-schema-0.2.0.tgz#ad9316098393258f32c054f87e78207bb07221d2" @@ -4227,29 +3800,11 @@ ci-info@^3.2.0, ci-info@^3.7.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - cjs-module-lexer@^1.0.0: version "1.3.1" resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.3.1.tgz#c485341ae8fd999ca4ee5af2d7a1c9ae01e0099c" integrity sha512-a3KdPAANPbNE4ZUv9h6LckSl9zLsYOP4MBmhIPkRaeyybt+r4UghLvq+xw/YwUcC1gqylCkL4rdVs3Lwupjm4Q== -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - clean-css@^5.2.2: version "5.3.3" resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.3.tgz#b330653cd3bd6b75009cc25c714cae7b93351ccd" @@ -4282,11 +3837,6 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" -clone-buffer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" - integrity sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g== - clone-deep@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" @@ -4296,41 +3846,11 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" -clone-stats@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" - integrity sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag== - clone@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== -clone@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== - -cloneable-readable@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.1.3.tgz#120a00cb053bfb63a222e709f9683ea2e11d8cec" - integrity sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ== - dependencies: - inherits "^2.0.1" - process-nextick-args "^2.0.0" - readable-stream "^2.3.5" - -closure-webpack-plugin@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/closure-webpack-plugin/-/closure-webpack-plugin-2.6.1.tgz#5b9a700b81a95f844baf4de75026f19f91f43914" - integrity sha512-oLzxOCqPdvfeX70AG+mkx+uzEutcE2aX7K/SeuA44t2X/arc+B7lMlNvkf3rIvs0ffhqO2DcSEw56GmjWHDK+Q== - dependencies: - acorn "8.x" - acorn-walk "^8.2.0" - schema-utils "1.x" - unquoted-property-validator "^1.0.2" - webpack-sources "1.x" - co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -4341,14 +3861,6 @@ collect-v8-coverage@^1.0.0: resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -4432,16 +3944,6 @@ common-path-prefix@^3.0.0: resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0" integrity sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w== -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== - -component-emitter@^1.2.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17" - integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== - compressible@~2.0.16: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" @@ -4467,7 +3969,7 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -concat-stream@^1.4.7, concat-stream@^1.5.0: +concat-stream@^1.4.7: version "1.6.2" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== @@ -4482,16 +3984,6 @@ connect-history-api-fallback@^2.0.0: resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz#647264845251a0daf25b97ce87834cace0f5f1c8" integrity sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA== -console-browserify@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" - integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ== - content-disposition@0.5.4: version "0.5.4" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" @@ -4531,23 +4023,6 @@ copy-anything@^2.0.1: dependencies: is-what "^3.14.1" -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== - copy-file-util@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/copy-file-util/-/copy-file-util-1.2.1.tgz#01b3321b02518307271142fcd4a09cb857629570" @@ -4608,37 +4083,6 @@ cosmiconfig@^9.0.0: js-yaml "^4.1.0" parse-json "^5.2.0" -create-ecdh@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" - integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== - dependencies: - bn.js "^4.1.0" - elliptic "^6.5.3" - -create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - create-jest@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320" @@ -4675,23 +4119,6 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - css-blank-pseudo@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-6.0.2.tgz#50db072d4fb5b40c2df9ffe5ca5fbb9b19c77fc8" @@ -4804,11 +4231,6 @@ csv@^5.5.3: csv-stringify "^5.6.5" stream-transform "^2.1.3" -cyclist@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.2.tgz#673b5f233bf34d8e602b949429f8171d9121bea3" - integrity sha512-0sVXIohTfLqVIW3kb/0n6IiWF3Ifj5nm2XaSrLq2DI6fKIGa2fYAZdk917rUneaeLVpYfFcyXE2ft0fe3remsA== - data-view-buffer@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2" @@ -4836,7 +4258,7 @@ data-view-byte-offset@^1.0.0: es-errors "^1.3.0" is-data-view "^1.0.1" -debug@2.6.9, debug@^2.2.0, debug@^2.3.3: +debug@2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -4870,11 +4292,6 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== -decode-uri-component@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" - integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== - dedent@^1.0.0: version "1.5.3" resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a" @@ -4945,28 +4362,6 @@ define-properties@^1.2.0, define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -4982,14 +4377,6 @@ depd@~1.1.2: resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== -des.js@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.1.0.tgz#1d37f5766f3bbff4ee9638e871a8768c173b81da" - integrity sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg== - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - destroy@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" @@ -5025,15 +4412,6 @@ diff@^4.0.1: resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -5088,11 +4466,6 @@ dom-serializer@^1.0.1: domhandler "^4.2.0" entities "^2.0.0" -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - domelementtype@^2.0.1, domelementtype@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" @@ -5161,16 +4534,6 @@ dotenv@^8.2.0: resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - eastasianwidth@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" @@ -5190,22 +4553,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.796: - version "1.4.806" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.806.tgz#2cb046631cbabceb26fc72be68d273fa183e36bc" - integrity sha512-nkoEX2QIB8kwCOtvtgwhXWy2IHVcOLQZu9Qo36uaGB835mdX/h8uLRlosL6QIhLVUnAiicXRW00PwaPZC74Nrg== - -elliptic@^6.5.3, elliptic@^6.5.5: - version "6.5.5" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.5.tgz#c715e09f78b6923977610d4c2346d6ce22e6dded" - integrity sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw== - dependencies: - bn.js "^4.11.9" - brorand "^1.1.0" - hash.js "^1.0.0" - hmac-drbg "^1.0.1" - inherits "^2.0.4" - minimalistic-assert "^1.0.1" - minimalistic-crypto-utils "^1.0.1" + version "1.4.810" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.810.tgz#7dee01b090b9e048e6db752f7b30921790230654" + integrity sha512-Kaxhu4T7SJGpRQx99tq216gCq2nMxJo+uuT6uzz9l8TVN2stL7M06MIIXAtr9jsrLs2Glflgf2vMQRepxawOdQ== emittery@^0.13.1: version "0.13.1" @@ -5232,29 +4582,6 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== -encoding@^0.1.12: - 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" - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" - integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.5.0" - tapable "^1.0.0" - enhanced-resolve@^5.0.0, enhanced-resolve@^5.16.0, enhanced-resolve@^5.17.0: version "5.17.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" @@ -5291,7 +4618,7 @@ envinfo@^7.7.3: resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.13.0.tgz#81fbb81e5da35d74e814941aeab7c325a606fb31" integrity sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q== -errno@^0.1.1, errno@^0.1.3, errno@~0.1.7: +errno@^0.1.1: version "0.1.8" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== @@ -5622,14 +4949,6 @@ eslint-scope@5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-scope@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" - integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - eslint-scope@^7.2.2: version "7.2.2" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" @@ -5708,7 +5027,7 @@ esquery@^1.4.2: dependencies: estraverse "^5.1.0" -esrecurse@^4.1.0, esrecurse@^4.3.0: +esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== @@ -5745,19 +5064,11 @@ eventemitter3@^4.0.0: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== -events@^3.0.0, events@^3.2.0: +events@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -5778,19 +5089,6 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - expect@^29.0.0, expect@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" @@ -5839,21 +5137,6 @@ express@^4.17.3: utils-merge "1.0.1" vary "~1.1.2" -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - extendable-error@^0.1.5: version "0.1.7" resolved "https://registry.yarnpkg.com/extendable-error/-/extendable-error-0.1.7.tgz#60b9adf206264ac920058a7395685ae4670c2b96" @@ -5868,20 +5151,6 @@ external-editor@^3.1.0: iconv-lite "^0.4.24" tmp "^0.0.33" -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - fancy-log@~2.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-2.0.0.tgz#cad207b8396d69ae4796d74d17dff5f68b2f7343" @@ -5946,11 +5215,6 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" -figgy-pudding@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" - integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== - file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -5965,21 +5229,6 @@ file-entry-cache@^9.0.0: dependencies: flat-cache "^5.0.0" -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -6000,15 +5249,6 @@ finalhandler@1.2.0: statuses "2.0.1" unpipe "~1.0.0" -find-cache-dir@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" - integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== - dependencies: - commondir "^1.0.1" - make-dir "^2.0.0" - pkg-dir "^3.0.0" - find-cache-dir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-4.0.0.tgz#a30ee0448f81a3990708f6453633c733e2f6eec2" @@ -6017,13 +5257,6 @@ find-cache-dir@^4.0.0: common-path-prefix "^3.0.0" pkg-dir "^7.0.0" -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -6102,14 +5335,6 @@ flatted@^3.2.9, flatted@^3.3.1: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== -flush-write-stream@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" - integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== - dependencies: - inherits "^2.0.3" - readable-stream "^2.3.6" - follow-redirects@^1.0.0, follow-redirects@^1.15.6: version "1.15.6" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" @@ -6122,11 +5347,6 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== - foreground-child@^3.1.0: version "3.2.1" resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.2.1.tgz#767004ccf3a5b30df39bed90718bab43fe0a59f7" @@ -6172,26 +5392,11 @@ fraction.js@^4.3.7: resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== - dependencies: - map-cache "^0.2.2" - fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - fs-extra@^10.0.0: version "10.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" @@ -6243,29 +5448,11 @@ fs-monkey@^1.0.4: resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.6.tgz#8ead082953e88d992cf3ff844faa907b26756da2" integrity sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg== -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA== - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@^1.2.7: - version "1.2.13" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" - integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== - dependencies: - bindings "^1.5.0" - nan "^2.12.1" - fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" @@ -6350,19 +5537,6 @@ get-tsconfig@^4.7.0: dependencies: resolve-pkg-maps "^1.0.0" -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" @@ -6480,46 +5654,6 @@ go-git-it@^1.2.2: progress "^2.0.3" shelljs "^0.8.5" -google-closure-compiler-java@^20240317.0.0: - version "20240317.0.0" - resolved "https://registry.yarnpkg.com/google-closure-compiler-java/-/google-closure-compiler-java-20240317.0.0.tgz#8c8842ce9064b2d0b79cb41d75c4eb5eb461edaa" - integrity sha512-oWURPChjcCrVfiQOuVtpSoUJVvtOYo41JGEQ2qtArsTGmk/DpWh40vS6hitwKRM/0YzJX/jYUuyt9ibuXXJKmg== - -google-closure-compiler-js@^20200719.0.0: - version "20200719.0.0" - resolved "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20200719.0.0.tgz#a7ce8f0a450973018d91fa2b377a3906ce0f7da9" - integrity sha512-cuowL5A4VOx9yxxMc3sSiqcj/d9aYjnHgFDvDB/dpMMOhlUMN1MDsVubuEc32tut7k/FTYFZY114CLH4r2q9/A== - -google-closure-compiler-linux@^20240317.0.0: - version "20240317.0.0" - resolved "https://registry.yarnpkg.com/google-closure-compiler-linux/-/google-closure-compiler-linux-20240317.0.0.tgz#8e6b708bf5f231d6bb48cf1a9ee707c3142de771" - integrity sha512-dYLtcbbJdbbBS0lTy9SzySdVv/aGkpyTekQiW4ADhT/i1p1b4r0wQTKj6kpVVmFvbZ6t9tW/jbXc9EXXNUahZw== - -google-closure-compiler-osx@^20240317.0.0: - version "20240317.0.0" - resolved "https://registry.yarnpkg.com/google-closure-compiler-osx/-/google-closure-compiler-osx-20240317.0.0.tgz#c170b709a7a9591967bc7f213fea2096c2199ff6" - integrity sha512-0mABwjD4HP11rikFd8JRIb9OgPqn9h3o3wS0otufMfmbwS7zRpnnoJkunifhORl3VoR1gFm6vcTC9YziTEFdOw== - -google-closure-compiler-windows@^20240317.0.0: - version "20240317.0.0" - resolved "https://registry.yarnpkg.com/google-closure-compiler-windows/-/google-closure-compiler-windows-20240317.0.0.tgz#76489c3d2c8d081e261e89e9f5ffabffa8a6e961" - integrity sha512-fTueVFzNOWURFlXZmrFkAB7yA+jzpA2TeDOYeBEFwVlVGHwi8PV3Q9vCIWlbkE8wLpukKEg5wfRHYrLwVPINCA== - -google-closure-compiler@^20240317.0.0: - version "20240317.0.0" - resolved "https://registry.yarnpkg.com/google-closure-compiler/-/google-closure-compiler-20240317.0.0.tgz#2b35b296047d6824c1876777c88c2e5ac6050fb9" - integrity sha512-PlC5aU2vwsypKbxyFNXOW4psDZfhDoOr2dCwuo8VcgQji+HVIgRi2lviO66x2SfTi0ilm3kI6rq/RSdOMFczcQ== - dependencies: - chalk "4.x" - google-closure-compiler-java "^20240317.0.0" - minimist "1.x" - vinyl "2.x" - vinyl-sourcemaps-apply "^0.2.0" - optionalDependencies: - google-closure-compiler-linux "^20240317.0.0" - google-closure-compiler-osx "^20240317.0.0" - google-closure-compiler-windows "^20240317.0.0" - gopd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" @@ -6527,7 +5661,7 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: 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== @@ -6596,67 +5730,11 @@ has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: dependencies: has-symbols "^1.0.3" -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -hash-base@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== - dependencies: - inherits "^2.0.4" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -hash-base@~3.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - integrity sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - hash-sum@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a" integrity sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg== -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" @@ -6669,15 +5747,6 @@ he@^1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -hmac-drbg@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -6793,11 +5862,6 @@ http-proxy@^1.18.1: follow-redirects "^1.0.0" requires-port "^1.0.0" -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== - human-id@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/human-id/-/human-id-1.0.2.tgz#e654d4b2b0d8b07e45da9f6020d8af17ec0a5df3" @@ -6820,7 +5884,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@^0.6.2, iconv-lite@^0.6.3: +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== @@ -6832,16 +5896,6 @@ icss-utils@^5.0.0, icss-utils@^5.1.0: resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== -ieee754@^1.1.4: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" - integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA== - ignore@^5.2.0, ignore@^5.2.4, ignore@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" @@ -6883,11 +5937,6 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -infer-owner@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" - integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -6896,7 +5945,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -6952,13 +6001,6 @@ is-absolute@^0.1.7: dependencies: is-relative "^0.1.0" -is-accessor-descriptor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz#3223b10628354644b86260db29b3e693f5ceedd4" - integrity sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA== - dependencies: - hasown "^2.0.0" - is-array-buffer@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" @@ -6986,13 +6028,6 @@ is-bigint@^1.0.1: dependencies: has-bigints "^1.0.1" -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== - dependencies: - binary-extensions "^1.0.0" - 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" @@ -7008,11 +6043,6 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - is-builtin-module@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.1.tgz#f03271717d8654cfcaf07ab0463faa3571581169" @@ -7026,18 +6056,11 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== is-core-module@^2.12.1, is-core-module@^2.13.0, is-core-module@^2.13.1: - version "2.13.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== - dependencies: - hasown "^2.0.0" - -is-data-descriptor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz#2109164426166d32ea38c405c1e0945d9e6a4eeb" - integrity sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw== + version "2.14.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.14.0.tgz#43b8ef9f46a6a08888db67b1ffd4ec9e3dfd59d1" + integrity sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A== dependencies: - hasown "^2.0.0" + hasown "^2.0.2" is-data-view@^1.0.1: version "1.0.1" @@ -7053,40 +6076,12 @@ is-date-object@^1.0.1, is-date-object@^1.0.5: dependencies: has-tostringtag "^1.0.0" -is-descriptor@^0.1.0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.7.tgz#2727eb61fd789dcd5bdf0ed4569f551d2fe3be33" - integrity sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg== - dependencies: - is-accessor-descriptor "^1.0.1" - is-data-descriptor "^1.0.1" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.3.tgz#92d27cb3cd311c4977a4db47df457234a13cb306" - integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw== - dependencies: - is-accessor-descriptor "^1.0.1" - is-data-descriptor "^1.0.1" - is-docker@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^2.1.0, is-extglob@^2.1.1: +is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== @@ -7115,13 +6110,6 @@ is-generator-function@^1.0.10: dependencies: has-tostringtag "^1.0.0" -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== - dependencies: - is-extglob "^2.1.0" - is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -7158,13 +6146,6 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== - dependencies: - kind-of "^3.0.2" - is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -7185,7 +6166,7 @@ is-plain-obj@^3.0.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== -is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -7280,16 +6261,11 @@ is-what@^3.14.1: resolved "https://registry.yarnpkg.com/is-what/-/is-what-3.14.1.tgz#e1222f46ddda85dead0fd1c9df131760e77755c1" integrity sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA== -is-windows@^1.0.0, is-windows@^1.0.2: +is-windows@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== - is-wsl@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-3.1.0.tgz#e1c657e39c10090afcbedec61720f6b924c3cbd2" @@ -7297,16 +6273,16 @@ is-wsl@^3.1.0: dependencies: is-inside-container "^1.0.0" -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - isarray@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isexe@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0" @@ -7317,14 +6293,7 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: +isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== @@ -7814,11 +6783,6 @@ json-buffer@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-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" @@ -7839,7 +6803,7 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json5@^1.0.1, json5@^1.0.2: +json5@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== @@ -7884,20 +6848,6 @@ keyv@^4.5.3, keyv@^4.5.4: dependencies: json-buffer "3.0.1" -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== - dependencies: - is-buffer "^1.1.5" - kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" @@ -7991,25 +6941,11 @@ load-yaml-file@^0.2.0: pify "^4.0.1" strip-bom "^3.0.0" -loader-runner@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" - integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== - loader-runner@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== -loader-utils@^1.2.3: - version "1.4.2" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.2.tgz#29a957f3a63973883eb684f10ffd3d151fec01a3" - integrity sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^1.0.1" - loader-utils@^2.0.0, loader-utils@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" @@ -8024,14 +6960,6 @@ loader-utils@^3.2.1, loader-utils@^3.3.1: resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-3.3.1.tgz#735b9a19fd63648ca7adbd31c2327dfe281304e5" integrity sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg== -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -8129,7 +7057,7 @@ magic-string@^0.30.10: dependencies: "@jridgewell/sourcemap-codec" "^1.4.15" -make-dir@^2.0.0, make-dir@^2.1.0: +make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== @@ -8156,11 +7084,6 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== - map-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" @@ -8171,27 +7094,11 @@ map-obj@^4.0.0: resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== - dependencies: - object-visit "^1.0.0" - mathml-tag-names@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3" integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg== -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - mdn-data@2.0.30: version "2.0.30" resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" @@ -8219,22 +7126,6 @@ memfs@^4.6.0: tree-dump "^1.0.1" tslib "^2.0.0" -memory-fs@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ== - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -memory-fs@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" - integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - meow@^13.2.0: version "13.2.0" resolved "https://registry.yarnpkg.com/meow/-/meow-13.2.0.tgz#6b7d63f913f984063b3cc261b6e8800c4cd3474f" @@ -8277,40 +7168,13 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^3.1.10, micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - micromatch@^4.0.0, micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5, micromatch@^4.0.7: version "4.0.7" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== dependencies: - braces "^3.0.3" - picomatch "^2.3.1" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" + braces "^3.0.3" + picomatch "^2.3.1" mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": version "1.52.0" @@ -8347,16 +7211,11 @@ mini-css-extract-plugin@^2.8.1: schema-utils "^4.0.0" tapable "^2.2.1" -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: +minimalistic-assert@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== - minimatch@9.0.3: version "9.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" @@ -8387,7 +7246,7 @@ minimist-options@^4.0.2: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@1.x, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: +minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== @@ -8397,59 +7256,16 @@ minimist@1.x, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - mixme@^0.5.1: version "0.5.10" resolved "https://registry.yarnpkg.com/mixme/-/mixme-0.5.10.tgz#d653b2984b75d9018828f1ea333e51717ead5f51" integrity sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q== -mkdirp@^0.5.1, mkdirp@^0.5.3: - version "0.5.6" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" - integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== - dependencies: - minimist "^1.2.6" - mock-fs@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/mock-fs/-/mock-fs-5.2.0.tgz#3502a9499c84c0a1218ee4bf92ae5bf2ea9b2b5e" integrity sha512-2dF2R6YMSZbpip1V1WHKGLNjr/k48uQClqMVb5H3MOvwc9qhYis3/IWbj02qIg/Y8MDXKFF4c5v0rxx2o6xTZw== -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ== - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -8482,33 +7298,11 @@ mz@^2.7.0: object-assign "^4.0.1" thenify-all "^1.0.0" -nan@^2.12.1: - 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" integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -8527,7 +7321,7 @@ negotiator@0.6.3: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -neo-async@^2.5.0, neo-async@^2.6.1, neo-async@^2.6.2: +neo-async@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== @@ -8555,35 +7349,6 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-libs-browser@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" - integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^3.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.1" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.11.0" - vm-browserify "^1.0.1" - node-releases@^2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" @@ -8599,13 +7364,6 @@ normalize-package-data@^2.5.0: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== - dependencies: - remove-trailing-separator "^1.0.1" - normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" @@ -8635,37 +7393,21 @@ object-assign@^4.0.1, object-assign@^4.1.1: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - object-hash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== object-inspect@^1.13.1: - version "1.13.1" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" - integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== + version "1.13.2" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" + integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== - dependencies: - isobject "^3.0.0" - object.assign@^4.1.4, object.assign@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" @@ -8713,13 +7455,6 @@ object.hasown@^1.1.3: es-abstract "^1.23.2" es-object-atoms "^1.0.0" -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== - dependencies: - isobject "^3.0.1" - object.values@^1.1.6, object.values@^1.1.7: version "1.2.0" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b" @@ -8746,7 +7481,7 @@ on-headers@~1.0.2: resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== -once@^1.3.0, once@^1.3.1, once@^1.4.0: +once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -8782,11 +7517,6 @@ optionator@^0.9.3: type-check "^0.4.0" word-wrap "^1.2.5" -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A== - os-shim@^0.1.2: version "0.1.3" resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917" @@ -8809,7 +7539,7 @@ p-filter@^2.1.0: dependencies: p-map "^2.0.0" -p-limit@^2.0.0, p-limit@^2.2.0: +p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -8830,13 +7560,6 @@ p-limit@^4.0.0: dependencies: yocto-queue "^1.0.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -8882,25 +7605,11 @@ package-json-from-dist@^1.0.0: resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz#e501cd3094b278495eb4258d4c9f6d5ac3019f00" integrity sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw== -pako@~1.0.5: - version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" - integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== - papaparse@^5.2.0: version "5.4.1" resolved "https://registry.yarnpkg.com/papaparse/-/papaparse-5.4.1.tgz#f45c0f871853578bd3a30f92d96fdcfb6ebea127" integrity sha512-HipMsgJkZu8br23pW15uvo6sib6wne/4woLZPlFf3rpDyMe9ywEXUsuD7+6K9PRkJlVT51j/sCOYDKGGS3ZJrw== -parallel-transform@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" - integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== - dependencies: - cyclist "^1.0.1" - inherits "^2.0.3" - readable-stream "^2.1.5" - param-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" @@ -8916,18 +7625,6 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-asn1@^5.0.0, parse-asn1@^5.1.7: - version "5.1.7" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.7.tgz#73cdaaa822125f9647165625eb45f8a051d2df06" - integrity sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg== - dependencies: - asn1.js "^4.10.1" - browserify-aes "^1.2.0" - evp_bytestokey "^1.0.3" - hash-base "~3.0" - pbkdf2 "^3.1.2" - safe-buffer "^5.2.1" - parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" @@ -8975,26 +7672,6 @@ pascal-case@^3.1.2: no-case "^3.0.4" tslib "^2.0.3" -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== - -path-browserify@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" - integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -9043,17 +7720,6 @@ path-type@^5.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-5.0.0.tgz#14b01ed7aea7ddf9c7c3f46181d4d04f9c785bb8" integrity sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg== -pbkdf2@^3.0.3, pbkdf2@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" - integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - picocolors@^1.0.0, picocolors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" @@ -9079,13 +7745,6 @@ pirates@^4.0.1, pirates@^4.0.4: resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -9100,11 +7759,6 @@ pkg-dir@^7.0.0: dependencies: find-up "^6.3.0" -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== - possible-typed-array-names@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" @@ -9554,26 +8208,16 @@ pretty-format@^29.0.0, pretty-format@^29.7.0: ansi-styles "^5.0.0" react-is "^18.0.0" -process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: +process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== - progress@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== - prompts@^2.0.1: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" @@ -9614,48 +8258,6 @@ pseudomap@^1.0.2: resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== - punycode@^2.1.0: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" @@ -9673,18 +8275,6 @@ qs@6.11.0: dependencies: side-channel "^1.0.4" -qs@^6.11.2: - version "6.12.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.12.1.tgz#39422111ca7cbdb70425541cba20c7d7b216599a" - integrity sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ== - dependencies: - side-channel "^1.0.6" - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -9695,21 +8285,13 @@ quick-lru@^4.0.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: +randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -9786,7 +8368,7 @@ read-yaml-file@^1.1.0: pify "^4.0.1" strip-bom "^3.0.0" -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@^2.3.8, readable-stream@~2.3.6: +readable-stream@^2.0.1, readable-stream@^2.2.2: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -9799,7 +8381,7 @@ read-yaml-file@^1.1.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6, readable-stream@^3.6.0: +readable-stream@^3.0.6: version "3.6.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== @@ -9808,15 +8390,6 @@ readable-stream@^3.0.6, readable-stream@^3.6.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -9883,14 +8456,6 @@ regenerator-transform@^0.15.2: dependencies: "@babel/runtime" "^7.8.4" -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - regexp.prototype.flags@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" @@ -9940,11 +8505,6 @@ relateurl@^0.2.7: resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== - renderkid@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" @@ -9956,21 +8516,6 @@ renderkid@^3.0.0: lodash "^4.17.21" strip-ansi "^6.0.1" -repeat-element@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" - integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== - -repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== - -replace-ext@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz#2d6d996d04a15855d967443631dd5f77825b016a" - integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw== - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -10013,11 +8558,6 @@ resolve-pkg-maps@^1.0.0: resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f" integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw== -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== - resolve.exports@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" @@ -10041,11 +8581,6 @@ resolve@^2.0.0-next.5: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - retry@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -10056,13 +8591,6 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^2.5.4, rimraf@^2.6.3: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -10077,14 +8605,6 @@ rimraf@^5.0.5: dependencies: glob "^10.3.7" -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - rollup@^4.0.2: version "4.18.0" resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.18.0.tgz#497f60f0c5308e4602cf41136339fbf87d5f5dda" @@ -10122,13 +8642,6 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg== - dependencies: - aproba "^1.1.1" - safe-array-concat@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" @@ -10144,7 +8657,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -10158,13 +8671,6 @@ safe-regex-test@^1.0.3: es-errors "^1.3.0" is-regex "^1.1.4" -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== - dependencies: - ret "~0.1.10" - "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -10196,15 +8702,6 @@ sax@>=0.6.0, sax@^1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f" integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg== -schema-utils@1.x, schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - schema-utils@^3.1.1, schema-utils@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" @@ -10271,13 +8768,6 @@ send@0.18.0: range-parser "~1.2.1" statuses "2.0.1" -serialize-javascript@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" - integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== - dependencies: - randombytes "^2.1.0" - serialize-javascript@^6.0.1, serialize-javascript@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" @@ -10335,21 +8825,6 @@ set-function-name@^2.0.1, set-function-name@^2.0.2: functions-have-names "^1.2.3" has-property-descriptors "^1.0.2" -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== - setprototypeof@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" @@ -10360,14 +8835,6 @@ setprototypeof@1.2.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - shallow-clone@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" @@ -10479,36 +8946,6 @@ smartwrap@^2.0.2: wcwidth "^1.0.1" yargs "^15.1.0" -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - sockjs@^0.3.24: version "0.3.24" resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" @@ -10518,27 +8955,11 @@ sockjs@^0.3.24: uuid "^8.3.2" websocket-driver "^0.7.4" -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - "source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.1, source-map-js@^1.2.0: version "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-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - source-map-support@0.5.13: version "0.5.13" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" @@ -10547,7 +8968,7 @@ source-map-support@0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-support@~0.5.12, source-map-support@~0.5.20: +source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -10555,11 +8976,6 @@ source-map-support@~0.5.12, source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== - source-map@0.8.0-beta.0: version "0.8.0-beta.0" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.8.0-beta.0.tgz#d4c1bb42c3f7ee925f005927ba10709e0d1d1f11" @@ -10567,12 +8983,7 @@ source-map@0.8.0-beta.0: dependencies: whatwg-url "^7.0.0" -source-map@^0.5.1, source-map@^0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== @@ -10647,25 +9058,11 @@ spdy@^4.0.2: select-hose "^2.0.0" spdy-transport "^3.0.0" -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - 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@^6.0.1: - version "6.0.2" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5" - integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q== - dependencies: - figgy-pudding "^3.5.1" - stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" @@ -10678,14 +9075,6 @@ stackframe@^1.3.4: resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - statuses@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" @@ -10696,38 +9085,6 @@ statuses@2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== -stream-browserify@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" - integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.3.tgz#85b8fab4d71010fc3ba8772e8046cc49b8a3864b" - integrity sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ== - stream-transform@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-2.1.3.tgz#a1c3ecd72ddbf500aa8d342b0b9df38f5aa598e3" @@ -10807,7 +9164,7 @@ string.prototype.trimstart@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -string_decoder@^1.0.0, string_decoder@^1.1.1: +string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -10881,10 +9238,10 @@ stylelint-config-recommended-scss@^14.0.0: stylelint-config-recommended "^14.0.0" stylelint-scss "^6.0.0" -stylelint-config-recommended@^14.0.0: - version "14.0.0" - resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-14.0.0.tgz#b395c7014838d2aaca1755eebd914d0bb5274994" - integrity sha512-jSkx290CglS8StmrLp2TxAppIajzIBZKYm3IxT89Kg6fGlxbPiTiyH9PS5YUuVAFwaJLl1ikiXX0QWjI0jmgZQ== +stylelint-config-recommended@^14.0.0, stylelint-config-recommended@^14.0.1: + version "14.0.1" + resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-14.0.1.tgz#d25e86409aaf79ee6c6085c2c14b33c7e23c90c6" + integrity sha512-bLvc1WOz/14aPImu/cufKAZYfXs/A/owZfSMZ4N+16WGXLoX5lOir53M6odBxvhgmgdxCVnNySJmZKx73T93cg== stylelint-config-standard-scss@^13.0.0: version "13.1.0" @@ -10895,11 +9252,11 @@ stylelint-config-standard-scss@^13.0.0: stylelint-config-standard "^36.0.0" stylelint-config-standard@^36.0.0: - version "36.0.0" - resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-36.0.0.tgz#6704c044d611edc12692d4a5e37b039a441604d4" - integrity sha512-3Kjyq4d62bYFp/Aq8PMKDwlgUyPU4nacXsjDLWJdNPRUgpuxALu1KnlAHIj36cdtxViVhXexZij65yM0uNIHug== + version "36.0.1" + resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-36.0.1.tgz#727cbb2a1ef3e210f5ce8329cde531129f156609" + integrity sha512-8aX8mTzJ6cuO8mmD5yon61CWuIM4UD8Q5aBcWKGSf6kg+EC3uhB+iOywpTK4ca6ZL7B49en8yanOFtUW0qNzyw== dependencies: - stylelint-config-recommended "^14.0.0" + stylelint-config-recommended "^14.0.1" stylelint-scss@^6.0.0: version "6.3.2" @@ -11067,11 +9424,6 @@ tailwindcss@^3.4.1: resolve "^1.22.2" sucrase "^3.32.0" -tapable@^1.0.0, tapable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" - integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== - tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" @@ -11082,21 +9434,6 @@ 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== -terser-webpack-plugin@^1.4.3: - version "1.4.5" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" - integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== - dependencies: - cacache "^12.0.2" - find-cache-dir "^2.1.0" - is-wsl "^1.1.0" - schema-utils "^1.0.0" - serialize-javascript "^4.0.0" - source-map "^0.6.1" - terser "^4.1.2" - webpack-sources "^1.4.0" - worker-farm "^1.7.0" - terser-webpack-plugin@^5.3.10: version "5.3.10" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" @@ -11108,15 +9445,6 @@ terser-webpack-plugin@^5.3.10: serialize-javascript "^6.0.1" terser "^5.26.0" -terser@^4.1.2: - version "4.8.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.1.tgz#a00e5634562de2239fd404c649051bf6fc21144f" - integrity sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw== - dependencies: - commander "^2.20.0" - source-map "~0.6.1" - source-map-support "~0.5.12" - terser@^5.10.0, terser@^5.26.0: version "5.31.1" resolved "https://registry.yarnpkg.com/terser/-/terser-5.31.1.tgz#735de3c987dd671e95190e6b98cfe2f07f3cf0d4" @@ -11160,26 +9488,11 @@ thingies@^1.20.0: resolved "https://registry.yarnpkg.com/thingies/-/thingies-1.21.0.tgz#e80fbe58fd6fdaaab8fad9b67bd0a5c943c445c1" integrity sha512-hsqsJsFMsV+aD4s3CWKk85ep/3I9XzYV/IXaSouJMYIoDlgyi11cBhsqYe9/geRfB0YIikBQg6raRaM+nIMP9g== -through2@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - thunky@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== -timers-browserify@^2.0.4: - version "2.0.12" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" - integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== - dependencies: - setimmediate "^1.0.4" - tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -11192,31 +9505,11 @@ tmpl@1.0.5: resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA== - to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -11224,16 +9517,6 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - toidentifier@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" @@ -11350,11 +9633,6 @@ tsup@^8.0.1, tsup@^8.1.0: sucrase "^3.20.3" tree-kill "^1.2.2" -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw== - tty-table@^4.1.5: version "4.2.3" resolved "https://registry.yarnpkg.com/tty-table/-/tty-table-4.2.3.tgz#e33eb4007a0a9c976c97c37fa13ba66329a5c515" @@ -11557,30 +9835,6 @@ unicorn-magic@^0.1.0: resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.1.0.tgz#1bb9a51c823aaf9d73a8bfcd3d1a23dde94b0ce4" integrity sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ== -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -unique-filename@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== - dependencies: - imurmurhash "^0.1.4" - universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -11601,24 +9855,6 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -unquoted-property-validator@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unquoted-property-validator/-/unquoted-property-validator-1.1.0.tgz#c173769e9ef655d0fa18a3b2885622fdf5296021" - integrity sha512-ZWeQoYZ7HN8DCLeaowNv2GvZIXqJptKB1uUWd08ZYc1qAmJt8tXh9nck26aoYmhJtE3jCjDqdqEfUTqcJ0R7bw== - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - update-browserslist-db@^1.0.16: version "1.0.16" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" @@ -11642,24 +9878,6 @@ uri-js@^4.2.2, uri-js@^4.4.1: dependencies: punycode "^2.1.0" -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== - -url@^0.11.0: - version "0.11.3" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.3.tgz#6f495f4b935de40ce4a0a52faee8954244f3d3ad" - integrity sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw== - dependencies: - punycode "^1.4.1" - qs "^6.11.2" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - userhome@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/userhome/-/userhome-1.0.0.tgz#b6491ff12d21a5e72671df9ccc8717e1c6688c0b" @@ -11670,20 +9888,6 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -util@^0.10.4: - version "0.10.4" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" - integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== - dependencies: - inherits "2.0.3" - -util@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" - integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== - dependencies: - inherits "2.0.3" - utila@~0.4: version "0.4.0" resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" @@ -11705,9 +9909,9 @@ v8-compile-cache-lib@^3.0.1: integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== v8-to-istanbul@^9.0.1: - version "9.2.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz#2ed7644a245cddd83d4e087b9b33b3e62dfd10ad" - integrity sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA== + version "9.3.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz#b9572abfa62bd556c16d75fdebc1a411d5ff3175" + integrity sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA== dependencies: "@jridgewell/trace-mapping" "^0.3.12" "@types/istanbul-lib-coverage" "^2.0.1" @@ -11726,30 +9930,6 @@ vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -vinyl-sourcemaps-apply@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz#ab6549d61d172c2b1b87be5c508d239c8ef87705" - integrity sha512-+oDh3KYZBoZC8hfocrbrxbLUeaYtQK7J5WU5Br9VqWqmCll3tFJqKp97GC9GmMsVIL0qnx2DgEDVxdo5EZ5sSw== - dependencies: - source-map "^0.5.1" - -vinyl@2.x: - version "2.2.1" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.1.tgz#23cfb8bbab5ece3803aa2c0a1eb28af7cbba1974" - integrity sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw== - dependencies: - clone "^2.1.1" - clone-buffer "^1.0.0" - clone-stats "^1.0.0" - cloneable-readable "^1.0.0" - remove-trailing-separator "^1.0.1" - replace-ext "^1.0.0" - -vm-browserify@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" - integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== - vue-loader@^17.4.2: version "17.4.2" resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-17.4.2.tgz#f87f0d8adfcbbe8623de9eba1979d41ba223c6da" @@ -11766,24 +9946,6 @@ walker@^1.0.8: dependencies: makeerror "1.0.12" -watchpack-chokidar2@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" - integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww== - dependencies: - chokidar "^2.1.8" - -watchpack@^1.7.4: - version "1.7.5" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" - integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ== - dependencies: - graceful-fs "^4.1.2" - neo-async "^2.5.0" - optionalDependencies: - chokidar "^3.4.1" - watchpack-chokidar2 "^2.0.1" - watchpack@^2.4.0, watchpack@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.1.tgz#29308f2cac150fa8e4c92f90e0ec954a9fed7fff" @@ -11902,15 +10064,6 @@ webpack-dev-server@^5.0.2: webpack-dev-middleware "^7.1.0" ws "^8.16.0" -webpack-encoding-plugin@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/webpack-encoding-plugin/-/webpack-encoding-plugin-0.3.1.tgz#33039123049f26d54f408a1d91dfb8896b0bc3b9" - integrity sha512-o4NsCDlhFo4swyj5FPCRwMv5vjSzrtG2rd+6NG/NUWUMEnCRZRRDuh+ILyFqrkO6P7XUpbBNj3zcvh3qTlk54Q== - dependencies: - encoding "^0.1.12" - webpack "^4.29.5" - webpack-sources "^1.3.0" - webpack-merge@^5.10.0, webpack-merge@^5.7.3: version "5.10.0" resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.10.0.tgz#a3ad5d773241e9c682803abf628d4cd62b8a4177" @@ -11920,14 +10073,6 @@ webpack-merge@^5.10.0, webpack-merge@^5.7.3: flat "^5.0.2" wildcard "^2.0.0" -webpack-sources@1.x, webpack-sources@^1.3.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: - version "1.4.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" - integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - webpack-sources@^3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" @@ -11938,40 +10083,6 @@ webpack-target-webextension@*, webpack-target-webextension@^1.1.0, webpack-targe resolved "https://registry.yarnpkg.com/webpack-target-webextension/-/webpack-target-webextension-1.1.2.tgz#3966d69f754e7e270e253383314e48e2fbfab056" integrity sha512-/BwCTlnkq4BmY4pD3HV2tLZVTMJhM+YslbJFi8Yl4GL8FsPsHvg0jcDs/XGtHwm59A9oK3Oiaz+0y1nJNZESrg== -webpack-utf8-bom@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/webpack-utf8-bom/-/webpack-utf8-bom-1.4.0.tgz#8ae14392c5d72922674c5d79a460093ba1a38062" - integrity sha512-VsGG9GKqcXtOk9028DLPuoTzsdGPUUpCJkK6EV//1LrkthrDQO7+mrQl6Zq9B+KuOXGdbzsFU7ADuMYpaiUaZg== - -webpack@^4.29.5: - version "4.47.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.47.0.tgz#8b8a02152d7076aeb03b61b47dad2eeed9810ebc" - integrity sha512-td7fYwgLSrky3fI1EuU5cneU4+pbH6GgOfuKNS1tNPcfdGinGELAqsb/BP4nnvZyKSG2i/xFGU7+n2PvZA8HJQ== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/wasm-edit" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - acorn "^6.4.1" - ajv "^6.10.2" - ajv-keywords "^3.4.1" - chrome-trace-event "^1.0.2" - enhanced-resolve "^4.5.0" - eslint-scope "^4.0.3" - json-parse-better-errors "^1.0.2" - loader-runner "^2.4.0" - loader-utils "^1.2.3" - memory-fs "^0.4.1" - micromatch "^3.1.10" - mkdirp "^0.5.3" - neo-async "^2.6.1" - node-libs-browser "^2.2.1" - schema-utils "^1.0.0" - tapable "^1.1.3" - terser-webpack-plugin "^1.4.3" - watchpack "^1.7.4" - webpack-sources "^1.4.1" - webpack@^5, webpack@~5.92.0: version "5.92.1" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.92.1.tgz#eca5c1725b9e189cffbd86e8b6c3c7400efc5788" @@ -12160,13 +10271,6 @@ word-wrap@^1.2.5: resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== -worker-farm@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" - integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== - dependencies: - errno "~0.1.7" - "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -12238,11 +10342,6 @@ xmlbuilder@~11.0.0: resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== -xtend@^4.0.0, xtend@~4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" - integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== - y18n@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf"