diff --git a/.commitlintrc.json b/.commitlintrc.json new file mode 100644 index 000000000..1ca018349 --- /dev/null +++ b/.commitlintrc.json @@ -0,0 +1,4 @@ +{ + "extends": ["@commitlint/config-conventional"], + "rules": {} +} diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 826a1702e..000000000 --- a/.eslintrc.js +++ /dev/null @@ -1,86 +0,0 @@ -module.exports = { - root: true, - env: { - node: true, - builtin: true, - es6: true, - browser: true, - }, - parser: 'babel-eslint', - parserOptions: { - ecmaVersion: 2018, - sourceType: 'module', - allowImportExportEverywhere: true, - ecmaFeatures: { - jsx: true, - experimentalDecorators: true, - }, - }, - globals: {}, - plugins: ['prettier'], - extends: ['eslint-config-prettier'].map(require.resolve), - rules: { - 'prettier/prettier': 'error', - 'block-scoped-var': 0, - camelcase: 0, - 'consistent-return': 2, - curly: [2, 'all'], - 'dot-notation': [1, { allowKeywords: true }], - eqeqeq: [2, 'allow-null'], - 'global-strict': [0, 'never'], - 'guard-for-in': 2, - 'key-spacing': 0, - 'new-cap': 0, - 'no-alert': 2, - 'no-bitwise': 2, - 'no-caller': 2, - 'no-cond-assign': [2, 'except-parens'], - 'no-debugger': 2, - 'no-dupe-args': 2, - 'no-dupe-keys': 2, - 'no-empty': 2, - 'no-eval': 2, - 'no-extend-native': 2, - 'no-extra-bind': 2, - 'no-extra-parens': 0, - 'no-func-assign': 2, - 'no-implied-eval': 2, - 'no-invalid-regexp': 2, - 'no-irregular-whitespace': 1, - 'no-iterator': 2, - 'no-loop-func': 2, - 'no-mixed-requires': 0, - 'no-multi-str': 2, - 'no-native-reassign': 2, - 'no-new': 2, - 'no-param-reassign': 1, - 'no-proto': 2, - 'no-redeclare': 0, - 'no-script-url': 2, - 'no-self-assign': 2, - 'no-self-compare': 2, - 'no-sequences': 2, - 'no-shadow': 2, - 'no-undef': 2, - 'no-underscore-dangle': 0, - 'no-unreachable': 1, - 'no-unused-vars': 1, - 'no-use-before-define': 1, - 'no-useless-call': 2, - 'no-useless-concat': 2, - 'no-var': 2, - 'no-with': 2, - quotes: [0, 'single'], - radix: 2, - strict: 0, - 'valid-typeof': 2, - 'vars-on-top': 0, - 'prefer-const': [ - 'error', - { - destructuring: 'any', - ignoreReadBeforeAssign: false, - }, - ], - }, -}; diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 000000000..bcec6507d --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,53 @@ +{ + "root": true, + "ignorePatterns": ["**/*"], + "plugins": ["@nx"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": { + "@nx/enforce-module-boundaries": [ + "error", + { + "enforceBuildableLibDependency": true, + "allow": [], + "depConstraints": [ + { + "sourceTag": "*", + "onlyDependOnLibsWithTags": ["*"] + } + ] + } + ] + } + }, + { + "files": ["*.ts", "*.tsx"], + "extends": ["plugin:@nx/typescript"], + "rules": { + "@typescript-eslint/explicit-function-return-type": "error", + "no-unused-vars": "off", + "@typescript-eslint/no-unused-vars": [ + "warn", + { + "argsIgnorePattern": "^_", + "varsIgnorePattern": "^_", + "caughtErrorsIgnorePattern": "^_" + } + ] + } + }, + { + "files": ["*.js", "*.jsx"], + "extends": ["plugin:@nx/javascript"], + "rules": {} + }, + { + "files": ["*.spec.ts", "*.spec.tsx", "*.spec.js", "*.spec.jsx"], + "env": { + "jest": true + }, + "rules": {} + } + ] +} diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 648d89c97..59dd2d6ba 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -17,12 +17,6 @@ jobs: - name: Setup the project run: | yarn run setup - npx lerna add @pattern-lab/engine-mustache --scope=@pattern-lab/core - npx lerna add @pattern-lab/engine-handlebars --scope=@pattern-lab/core - npx lerna add @pattern-lab/engine-underscore --scope=@pattern-lab/core - npx lerna add @pattern-lab/engine-liquid --scope=@pattern-lab/core - npx lerna add @pattern-lab/engine-twig --scope=@pattern-lab/core - npx lerna add @pattern-lab/engine-react --scope=@pattern-lab/core - name: Run Unit Tests run: yarn run test diff --git a/.gitignore b/.gitignore index fd845fc5a..1550b1c17 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,7 @@ node_modules/ pattern_exports/ -.DS_Store -Thumbs.db .nyc_output/ .idea/ -.env packages/core/test/public packages/*/public !packages/core/test/patterns/public/.gitkeep @@ -12,5 +9,42 @@ packages/*/public lerna-debug.log packages/edition-node-gulp/dependencyGraph.json packages/uikit-workshop/dist +.yarn + +yarn-error.log + +# compiled output +dist +tmp +/out-tsc +# misc +/.sass-cache +/connect.lock +/coverage +/libpeerconnection.log +npm-debug.log yarn-error.log +testem.log +/typings +.env + +# System Files +.DS_Store +Thumbs.db + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json diff --git a/.husky/commit-msg b/.husky/commit-msg new file mode 100644 index 000000000..5ec6e36d9 --- /dev/null +++ b/.husky/commit-msg @@ -0,0 +1,4 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" + +# npx --no-install commitlint --edit $1 diff --git a/.husky/pre-commit b/.husky/pre-commit index f91359dc2..bad5ce455 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,4 +1,4 @@ #!/bin/sh . "$(dirname "$0")/_/husky.sh" -npx --no-install pretty-quick --staged +# npx --no-install pretty-quick --staged diff --git a/.prettierignore b/.prettierignore index bdfdbff8b..37b0881b8 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,4 +1,3 @@ -**/*.json **/README.md **/node_modules/ **/bower_components/ @@ -9,9 +8,10 @@ packages/core/scripts/api.handlebars packages/core/scripts/events.handlebars packages/core/test/files/annotations.js packages/**/annotations.js -*.json *.md **/reset.scss **/_meta/_head.* **/_meta/_foot.* **/development-edition*/source/_patterns/** +/dist +/coverage diff --git a/.prettierrc b/.prettierrc index 3baced411..8fdaa2055 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,4 +1,9 @@ { "singleQuote": true, - "endOfLine": "auto" + "endOfLine": "auto", + "trailingComma": "all", + "printWidth": 112, + "arrowParens": "always", + "useTabs": false, + "tabWidth": 2 } diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 6d97db0dc..dd2daaeea 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,3 +1,3 @@ { - "recommendations": ["editorconfig.editorconfig", "henrynguyen5-vsc.vsc-nvm"] + "recommendations": ["editorconfig.editorconfig", "henrynguyen5-vsc.vsc-nvm", "firsttris.vscode-jest-runner"] } diff --git a/CODEOWNERS b/CODEOWNERS index 532d55de7..65abada1a 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -9,6 +9,3 @@ # uikit-workshop owner /packages/uikit-workshop @sghoweri - -# engine-nunjucks owner -/packages/engine-nunjucks @danwhite85 diff --git a/babel.config.js b/babel.config.js deleted file mode 100644 index 6960ccf61..000000000 --- a/babel.config.js +++ /dev/null @@ -1,27 +0,0 @@ -module.exports = { - presets: [ - [ - '@babel/preset-env', - { - targets: { - node: 'current', - }, - }, - ], - ], - plugins: [ - /** - * 1. Helps with our Web Component Preact renderer - */ - '@babel/plugin-syntax-jsx' /* [1] */, - [ - '@babel/plugin-transform-react-jsx' /* [1] */, - { - pragma: 'h', - pragmaFrag: '"span"', - throwIfNamespace: false, - useBuiltIns: false, - }, - ], - ], -}; diff --git a/jest.config.ts b/jest.config.ts new file mode 100644 index 000000000..d0dbd1b88 --- /dev/null +++ b/jest.config.ts @@ -0,0 +1,5 @@ +import { getJestProjects } from '@nx/jest'; + +export default { + projects: getJestProjects(), +}; diff --git a/jest.preset.js b/jest.preset.js new file mode 100644 index 000000000..7e7a713da --- /dev/null +++ b/jest.preset.js @@ -0,0 +1,7 @@ +const nxPreset = require('@nx/jest/preset').default; + +module.exports = { + ...nxPreset, + collectCoverage: true, + coverageReporters: ['lcov', 'text'], +}; diff --git a/lerna.json b/lerna.json deleted file mode 100644 index 82ccc8058..000000000 --- a/lerna.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "lerna": "4.0.0", - "version": "6.0.1", - "packages": [ - "packages/*" - ], - "command": { - "init": { - "exact": true - }, - "publish": { - "allowBranch": [ - "master", - "dev" - ], - "conventionalCommits": true, - "gitReset": true, - "includeMergedTags": true, - "noCommitHooks": true, - "verifyAccess": true - }, - "changed": { - "includeMergedTags": true - } - }, - "ignoreChanges": [ - "**/__fixtures__/**", - "**/__tests__/**", - "**/*.md", - "**/__snapshots__/**" - ], - "npmClient": "yarn", - "npmClientArgs": [ - "--ignore-optional", - "--registry=https://registry.npmjs.org/" - ], - "useWorkspaces": true -} diff --git a/migrations.json b/migrations.json new file mode 100644 index 000000000..8f2b3a612 --- /dev/null +++ b/migrations.json @@ -0,0 +1,172 @@ +{ + "migrations": [ + { + "version": "15.7.0-beta.0", + "description": "Split global configuration files into individual project.json files. This migration has been added automatically to the beginning of your migration set to retroactively make them work with the new version of Nx.", + "cli": "nx", + "implementation": "./src/migrations/update-15-7-0/split-configuration-into-project-json-files", + "package": "@nx/workspace", + "name": "15-7-0-split-configuration-into-project-json-files" + }, + { + "cli": "nx", + "version": "15.8.2-beta.0", + "description": "Updates the nx wrapper.", + "implementation": "./src/migrations/update-15-8-2/update-nxw", + "package": "nx", + "name": "15.8.2-update-nx-wrapper" + }, + { + "cli": "nx", + "version": "16.0.0-beta.0", + "description": "Remove @nrwl/cli.", + "implementation": "./src/migrations/update-16-0-0/remove-nrwl-cli", + "package": "nx", + "name": "16.0.0-remove-nrwl-cli" + }, + { + "cli": "nx", + "version": "16.0.0-beta.9", + "description": "Replace `dependsOn.projects` and `inputs` definitions with new configuration format.", + "implementation": "./src/migrations/update-16-0-0/update-depends-on-to-tokens", + "package": "nx", + "name": "16.0.0-tokens-for-depends-on" + }, + { + "cli": "nx", + "version": "16.0.0-beta.0", + "description": "Replace @nrwl/nx-cloud with nx-cloud", + "implementation": "./src/migrations/update-16-0-0/update-nx-cloud-runner", + "package": "nx", + "name": "16.0.0-update-nx-cloud-runner" + }, + { + "cli": "nx", + "version": "16.2.0-beta.0", + "description": "Remove outputPath from run commands", + "implementation": "./src/migrations/update-16-2-0/remove-run-commands-output-path", + "package": "nx", + "name": "16.2.0-remove-output-path-from-run-commands" + }, + { + "version": "15.7.0-beta.0", + "description": "Split global configuration files (e.g., workspace.json) into individual project.json files.", + "cli": "nx", + "implementation": "./src/migrations/update-15-7-0/split-configuration-into-project-json-files", + "package": "@nx/workspace", + "name": "15-7-0-split-configuration-into-project-json-files" + }, + { + "cli": "nx", + "version": "16.0.0-beta.1", + "description": "Replace @nx/workspace with @nx/workspace", + "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages", + "package": "@nx/workspace", + "name": "update-16-0-0-add-nx-packages" + }, + { + "version": "16.0.0-beta.4", + "description": "Generates a plugin called 'workspace-plugin' containing your workspace generators.", + "cli": "nx", + "implementation": "./src/migrations/update-16-0-0/move-workspace-generators-to-local-plugin", + "package": "@nx/workspace", + "name": "16-0-0-move-workspace-generators-into-local-plugin" + }, + { + "version": "16.0.0-beta.9", + "description": "Fix .babelrc presets if it contains an invalid entry for @nx/web/babel.", + "cli": "nx", + "implementation": "./src/migrations/update-16-0-0/fix-invalid-babelrc", + "package": "@nx/workspace", + "name": "16-0-0-fix-invalid-babelrc" + }, + { + "cli": "nx", + "version": "15.8.0-beta.0", + "description": "Rename .lib.swcrc to .swcrc for better SWC support throughout the workspace", + "factory": "./src/migrations/update-15-8-0/rename-swcrc-config", + "package": "@nx/js", + "name": "rename-swcrc-config" + }, + { + "cli": "nx", + "version": "16.0.0-beta.1", + "description": "Replace @nx/js with @nx/js", + "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages", + "package": "@nx/js", + "name": "update-16-0-0-add-nx-packages" + }, + { + "cli": "nx", + "version": "16.0.0-beta.1", + "description": "Replace @nx/eslint-plugin with @nx/eslint-plugin", + "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages", + "package": "@nx/eslint-plugin", + "name": "update-16-0-0-add-nx-packages" + }, + { + "cli": "nx", + "version": "16.0.0-beta.1", + "description": "Replace @nx/web with @nx/web", + "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages", + "package": "@nx/web", + "name": "update-16-0-0-add-nx-packages" + }, + { + "cli": "nx", + "version": "16.0.0-beta.4", + "description": "Replace @nx/web executors with @nx/webpack and @nx/rollup", + "implementation": "./src/migrations/update-16-0-0-update-executors/update-16-0-0-update-executors", + "package": "@nx/web", + "name": "update-16-0-0-update-executors" + }, + { + "cli": "nx", + "version": "15.7.1-beta.0", + "description": "Add node_modules to root eslint ignore", + "factory": "./src/migrations/update-15-7-1/add-eslint-ignore", + "package": "@nx/linter", + "name": "add-eslint-ignore" + }, + { + "cli": "nx", + "version": "16.0.0-beta.1", + "description": "Replace @nx/linter with @nx/linter", + "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages", + "package": "@nx/linter", + "name": "update-16-0-0-add-nx-packages" + }, + { + "version": "15.8.0-beta.0", + "cli": "nx", + "description": "Update jest configs to support jest 29 changes (https://jestjs.io/docs/upgrading-to-jest29)", + "factory": "./src/migrations/update-15-8-0/update-configs-jest-29", + "package": "@nx/jest", + "name": "update-configs-jest-29" + }, + { + "version": "15.8.0-beta.0", + "cli": "nx", + "description": "Update jest test files to support jest 29 changes (https://jestjs.io/docs/upgrading-to-jest29)", + "factory": "./src/migrations/update-15-8-0/update-tests-jest-29", + "package": "@nx/jest", + "name": "update-tests-jest-29" + }, + { + "cli": "nx", + "version": "16.0.0-beta.1", + "description": "Replace @nx/jest with @nx/jest", + "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages", + "package": "@nx/jest", + "name": "update-16-0-0-add-nx-packages" + }, + { + "cli": "nx", + "version": "16.0.0-beta.1", + "description": "Replace @nx/webpack with @nx/webpack", + "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages", + "package": "@nx/webpack", + "name": "update-16-0-0-add-nx-packages" + } + ] +} diff --git a/nx.json b/nx.json new file mode 100644 index 000000000..5c38e5817 --- /dev/null +++ b/nx.json @@ -0,0 +1,54 @@ +{ + "$schema": "./node_modules/nx/schemas/nx-schema.json", + "npmScope": "pattern-lab", + "affected": { + "defaultBase": "dev" + }, + "tasksRunnerOptions": { + "default": { + "runner": "nx/tasks-runners/default", + "options": { + "cacheableOperations": ["build", "lint", "test", "e2e"] + } + } + }, + "targetDefaults": { + "build": { + "dependsOn": ["^build"], + "inputs": ["production", "^production"] + }, + "lint": { + "inputs": ["default", "{workspaceRoot}/.eslintrc.json"] + }, + "test": { + "inputs": ["default", "^production", "{workspaceRoot}/jest.preset.js"] + } + }, + "namedInputs": { + "default": ["{projectRoot}/**/*"], + "production": [ + "default", + "!{projectRoot}/.eslintrc.json", + "!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)", + "!{projectRoot}/tsconfig.spec.json", + "!{projectRoot}/jest.config.[jt]s" + ] + }, + "workspaceLayout": { + "appsDir": "packages", + "libsDir": "packages" + }, + "generators": { + "@nx/web:application": { + "style": "scss", + "linter": "eslint", + "unitTestRunner": "jest", + "e2eTestRunner": "none" + }, + "@nx/web:library": { + "style": "scss", + "linter": "eslint", + "unitTestRunner": "jest" + } + } +} diff --git a/package.json b/package.json index 3a33784a5..1bcbfe35f 100644 --- a/package.json +++ b/package.json @@ -1,56 +1,185 @@ { - "workspaces": { - "packages": [ - "packages/*" - ], - "nohoist": [ - "@pattern-lab/engine-*", - "**/@pattern-lab/engine-*", - "**/@pattern-lab/uikit-workshop" - ] - }, - "dependencies": { - "@auto-it/released": "^10.27.0", - "@babel/plugin-proposal-decorators": "^7.13.5", - "@babel/plugin-syntax-jsx": "^7.12.13", - "auto": "^10.27.0", - "babel-eslint": "^10.0.2", - "eslint": "^6.1.0", - "eslint-config-prettier": "^6.0.0", - "eslint-plugin-prettier": "^3.1.0", - "lerna": "4.0.0", - "prettier": "^2.8.1", - "pretty-quick": "^3.1.3" - }, "repository": { "type": "git", "url": "git+https://github.com/pattern-lab/patternlab-node.git" }, + "version": "6.0.1", "private": true, "scripts": { - "postinstall": "lerna run postbootstrap", + "postinstall": "yarn build:all", "setup": "yarn", - "build:uikit": "cd packages/uikit-workshop && npm run build", - "precommit": "pretty-quick --staged", - "lint:fix": "npm run lint -- --fix", - "lint": "eslint --max-warnings 0 './packages/{core,cli,uikit-workshop}/**/*.js ' --ignore-path .eslintignore", - "test": "lerna run test", + "lint": "nx run-many --target=lint", + "test": "nx run-many --target=test", + "build:all": "nx run-many --target=build --configuration=production", + "version:all": "nx run-many --target=version --baseBranch=master --syncVersions --noVerify", + "dev:prepare": "symlink-dir dist/packages node_modules/@pattern-lab && nx run-many --target=pl:starterkit", + "dev:build:handlebars": "nx run development-edition-engine-handlebars:pl:build", + "dev:build:twig": "nx run development-edition-engine-twig:pl:build", + "dev:build:twig-php": "nx run development-edition-engine-twig-php:pl:build", + "dev:serve:handlebars": "nx run development-edition-engine-handlebars:pl:serve", + "dev:serve:twig": "nx run development-edition-engine-twig:pl:serve", + "dev:serve:twig-php": "nx run development-edition-engine-twig-php:pl:serve", "clean": "git clean -dfx", - "publish": "npx lerna publish -m \"[skip travis] chore(release): publish %s\"", - "postpublish": "auto release", - "preview:docs": "cd packages/docs && yarn production", - "preview:hbs": "cd packages/development-edition-engine-handlebars && yarn pl:starterkit && yarn pl:build", "prepare": "husky install" }, - "nyc": { - "exclude": [ - "**/*_tests.js", - "packages/cli", - "packages/core/test", - "packages/live-server" - ] + "dependencies": { + "@11ty/eleventy": "^0.12.1", + "@11ty/eleventy-plugin-rss": "^1.1.2", + "@11ty/eleventy-plugin-syntaxhighlight": "^3.1.3", + "@basalt/twig-renderer": "^2.0.0", + "@tbranyen/jsdom": "^13.0.0", + "archiver": "5.3.0", + "chalk": "^4.1.0", + "chokidar": "3.5.1", + "colors": "1.4.0", + "commander": "9.4.1", + "concurrently": "^4.1.0", + "connect": "3.7.0", + "cors": "2.8.5", + "deepmerge": "^4.2.2", + "dive": "0.5.0", + "event-stream": "3.3.4", + "execa": "5.0.0", + "faye-websocket": "0.11.x", + "fs-extra": "^10.0.0", + "glob": "^7.1.6", + "graphlib": "2.1.8", + "handlebars": "^4.7.7", + "has-yarn": "2.1.0", + "html-minifier": "^4.0.0", + "http-auth": "4.1.x", + "http-auth-connect": "^1.0.5", + "inquirer": "8.0.0", + "js-beautify": "1.13.5", + "js-yaml": "4.1.0", + "liquidjs": "10.4.0", + "lodash": "4.17.21", + "markdown-it": "12.3.2", + "morgan": "1.10.0", + "mustache": "3.1.0", + "node-fetch": "2.6.7", + "nunjucks": "^3.2.3", + "object-assign": "4.1.1", + "open": "8.0.9", + "ora": "5.4.0", + "proxy-middleware": "0.15.0", + "recursive-copy": "2.0.13", + "sass": "1.43.4", + "send": "0.18.0", + "serve-index": "1.9.1", + "slugify": "^1.5.0", + "tslib": "^2.3.0", + "twing": "^5.0.2", + "underscore": "1.13.0", + "update-notifier": "5.1.0" }, "devDependencies": { - "husky": "^8.0.2" + "@11ty/eleventy-navigation": "^0.3.2", + "@auto-it/all-contributors": "10.38.5", + "@auto-it/conventional-commits": "10.38.5", + "@auto-it/first-time-contributor": "10.38.5", + "@auto-it/released": "^10.27.0", + "@babel/core": "^7.13.14", + "@babel/plugin-proposal-class-properties": "^7.13.0", + "@babel/plugin-proposal-decorators": "^7.13.5", + "@babel/plugin-proposal-optional-chaining": "^7.13.12", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-jsx": "^7.12.13", + "@babel/plugin-transform-react-jsx": "^7.13.12", + "@babel/plugin-transform-runtime": "^7.13.10", + "@babel/preset-env": "^7.13.12", + "@babel/preset-react": "7.18.6", + "@babel/runtime": "^7.13.10", + "@commitlint/cli": "^17.0.0", + "@commitlint/config-conventional": "^17.0.0", + "@erquhart/rollup-plugin-node-builtins": "^2.1.5", + "@fontsource/abel": "^4.5.7", + "@fontsource/raleway": "^4.5.11", + "@jscutlery/semver": "^2.29.3", + "@nx/webpack": "16.3.1", + "@reach/visually-hidden": "^0.1.2", + "@types/fs-extra": "^11.0.1", + "@types/glob": "^8.0.1", + "@types/jest": "29.4.4", + "@types/mustache": "^4.2.2", + "@types/node": "18.11.18", + "@types/nunjucks": "^3.2.1", + "@types/underscore": "^1.11.4", + "@typescript-eslint/eslint-plugin": "5.58.0", + "@typescript-eslint/parser": "5.58.0", + "auto": "^10.27.0", + "autoprefixer": "^10.2.5", + "babel-jest": "29.4.3", + "babel-loader": "^9.1.2", + "chokidar-cli": "^2.1.0", + "classnames": "^2.3.1", + "clean-css-loader": "^4.2.1", + "clean-webpack-plugin": "4.0.0", + "clipboard": "^2.0.8", + "copy-webpack-plugin": "^11.0.0", + "copyfiles": "^2.4.1", + "cross-env": "^5.2.0", + "css-loader": "^6.7.3", + "eslint": "~8.15.0", + "eslint-config-prettier": "8.1.0", + "eslint-plugin-prettier": "^3.1.0", + "fuse.js": "^6.4.6", + "handlebars": "^4.7.7", + "html-loader": "^4.2.0", + "html-webpack-plugin": "^5.5.0", + "husky": "^8.0.2", + "jest": "29.4.3", + "jest-environment-jsdom": "29.4.3", + "json-to-scss": "1.6.2", + "lit-element": "^2.2.1", + "lit-html": "^1.1.2", + "make-dir-cli": "^2.0.0", + "mini-css-extract-plugin": "^2.7.2", + "mousetrap": "^1.6.5", + "nx": "16.3.1", + "postcss": "^8.2.8", + "postcss-loader": "^7.0.2", + "preact": "^10.0.5", + "preload-webpack-plugin": "^3.0.0-beta.3", + "prettier": "^2.8.1", + "pretty": "^2.0.0", + "prismjs": "^1.25.0", + "pwa-helpers": "^0.9.1", + "react-autosuggest": "^9.4.2", + "react-dom": "^16.8.6", + "react-html-parser": "^2.0.2", + "redux": "4.1.2", + "redux-thunk": "^2.4.0", + "reflect-metadata": "0.1.13", + "rollup": "^1.16.1", + "rollup-plugin-commonjs": "^10.0.0", + "rollup-plugin-json": "^4.0.0", + "rollup-plugin-node-resolve": "^5.0.3", + "sass-loader": "^13.2.0", + "scriptjs": "^2.5.9", + "scroll-js": "3.4.x", + "skatejs": "^5.2.4", + "style-loader": "^3.3.1", + "svg-sprite-loader": "^6.0.11", + "svg-transform-loader": "^2.0.13", + "svgo-loader": "^4.0.0", + "symlink-dir": "^5.1.1", + "ts-jest": "29.1.0", + "ts-loader": "^9.4.2", + "ts-node": "10.9.1", + "typescript": "5.0.4", + "webpack": "^5.75.0", + "webpack-cli": "^5.0.1", + "webpack-hot-middleware": "^2.25.3", + "webpack-merge": "^5.8.0", + "webpackbar": "5.0.2", + "wolfy87-eventemitter": "^5.2.9", + "yargs": "^17.0.1", + "@nx/workspace": "16.3.1", + "@nx/js": "16.3.1", + "@nx/eslint-plugin": "16.3.1", + "@nx/web": "16.3.1", + "@nx/linter": "16.3.1", + "@nx/jest": "16.3.1" } } diff --git a/packages/cli/.eslintrc.json b/packages/cli/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/cli/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/cli/.gitattributes b/packages/cli/.gitattributes deleted file mode 100644 index 141034634..000000000 --- a/packages/cli/.gitattributes +++ /dev/null @@ -1,3 +0,0 @@ -* text=auto -bin/patternlab.js lf -readme.md merge=union diff --git a/packages/cli/.gitignore b/packages/cli/.gitignore deleted file mode 100644 index 511707a54..000000000 --- a/packages/cli/.gitignore +++ /dev/null @@ -1,81 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* - -# Runtime data -pids -*.pid -*.seed - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules -jspm_packages - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional REPL history -.node_repl_history - -# macOS specific -*.DS_Store -.AppleDouble -.LSOverride - -# Icon must end with two \r -Icon - - -# Thumbnails -._* - -# Files that might appear in the root of a volume -.DocumentRevisions-V100 -.fseventsd -.Spotlight-V100 -.TemporaryItems -.Trashes -.VolumeIcon.icns -.com.apple.timemachine.donotpresent - -# Directories potentially created on remote AFP share -.AppleDB -.AppleDesktop -Network Trash Folder -Temporary Items -.apdisk - -# Pattern Lab CLI specific - -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public -tmp diff --git a/packages/cli/.npmrc b/packages/cli/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/cli/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/cli/.nvmrc b/packages/cli/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/cli/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/cli/.travis.yml b/packages/cli/.travis.yml deleted file mode 100644 index 1f0e15052..000000000 --- a/packages/cli/.travis.yml +++ /dev/null @@ -1,11 +0,0 @@ -language: node_js -node_js: - - node - - 8 -before_script: - - npm install edition-node - - npm install starterkit-mustache-base - - npm install eslint -branches: - only: - - master diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 12ca13960..c89d40092 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,7 +1,72 @@ -# Change Log +# Changelog -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver). + +## 1.0.0 (2023-02-11) + + +### ⚠ BREAKING CHANGES + +* **cli:** previously, we concatenated arrays, which is unlikely to be intended +* **API:** change `version()` to return a string representation of the version, removing `v()` + +### Features + +* add nx workspace settings ([5bbee08](https://github.com/pattern-lab/patternlab-node/commit/5bbee082c4e0d2d8187fbd487827090baf010fbe)) +* add release feature ([7f731c4](https://github.com/pattern-lab/patternlab-node/commit/7f731c4b56e663b57d71c7776c0c5e6424c1575e)) +* **API:** standardize v() and version() into a single call ([6309e69](https://github.com/pattern-lab/patternlab-node/commit/6309e693b0971ea26c86e0e2b957ba413492e1b7)) +* **cli:** if starterkit has pl config, deep merge it in ([cd91786](https://github.com/pattern-lab/patternlab-node/commit/cd9178675a906d9f1d46815233db70cd3ae258ac)) +* **cli:** make options more user friendly ([ad845b3](https://github.com/pattern-lab/patternlab-node/commit/ad845b394ef81f90895ebb5bc6f12cc608e5e3d4)) +* **cli:** Rename package ([9ea40d4](https://github.com/pattern-lab/patternlab-node/commit/9ea40d4a8f35247a3995ce20fad5e716b582ee10)) +* move dev packages ([0136648](https://github.com/pattern-lab/patternlab-node/commit/0136648039233f82a608bd194f686bcf99159192)) +* **package:** add npmrc file ([55f5bc2](https://github.com/pattern-lab/patternlab-node/commit/55f5bc26d635805648caa2d35d1bf306fe4740d5)) +* **package:** pin all dependencies ([415698e](https://github.com/pattern-lab/patternlab-node/commit/415698eb9a70d477ffb7b2906e679ac8f2051c60)) +* **package:** remove package-lock.json files ([5ab3995](https://github.com/pattern-lab/patternlab-node/commit/5ab399599a1dbea8239fbd09a34d5f39ad762e21)) +* **package:** standardize and hoist common devDependencies ([7f4ce6f](https://github.com/pattern-lab/patternlab-node/commit/7f4ce6ff1238986bed906c27d2f4bf7329752d92)) +* **README:** simplify README and add CLI configuration instructions ([ceec673](https://github.com/pattern-lab/patternlab-node/commit/ceec673b1a9b473949534a444b4334c48bcdf5cd)) +* **serve:** change calling method ([3b86a0d](https://github.com/pattern-lab/patternlab-node/commit/3b86a0dbb29ec8842d49e2158bd0c6ace45fb86b)) +* setup edition-twig in cli init ([480ed5d](https://github.com/pattern-lab/patternlab-node/commit/480ed5d14042a31d566d8d1107f7ca820ea18293)) +* **starterkits:** add starterkit-handlebars-demo ([384d2cf](https://github.com/pattern-lab/patternlab-node/commit/384d2cfa3440c1e6f456d39f56ca6381f82f7689)) +* **tests:** use lerna run test at the monorepo level ([38a01b1](https://github.com/pattern-lab/patternlab-node/commit/38a01b148a5356e2f8b30182e0453f6746347d96)) +* update workspace settings ([39092c1](https://github.com/pattern-lab/patternlab-node/commit/39092c13ed91cfd2a6a51929d4bd612abc937038)) + + +### Bug Fixes + +* **cli:** add custom install logic to edition-node ([f04fd26](https://github.com/pattern-lab/patternlab-node/commit/f04fd266429cd806987dab747e6d69bff9b926a4)) +* **cli:** allow any package to be installed as a starterkit ([d2aa1be](https://github.com/pattern-lab/patternlab-node/commit/d2aa1be810a0a7473dcc52391a2263dacfdda0b8)), closes [#1067](https://github.com/pattern-lab/patternlab-node/issues/1067) +* **cli:** change line-endings of cli entrypoint ([3fc86c2](https://github.com/pattern-lab/patternlab-node/commit/3fc86c29030189276baa655da02ff4ed68dcb80e)) +* **cli:** change whitespace to spaces per standard ([4556fc7](https://github.com/pattern-lab/patternlab-node/commit/4556fc7d12a1d11b401821919ff2f3ddc5658c93)) +* **cli:** do not call build before serve ([663d8e1](https://github.com/pattern-lab/patternlab-node/commit/663d8e185efd951ae67a37e3ec97f76d6cec0d5e)), closes [#917](https://github.com/pattern-lab/patternlab-node/issues/917) +* **cli:** ensure specified directory exists prior to scaffold ([cc3b696](https://github.com/pattern-lab/patternlab-node/commit/cc3b69624d486c94ee3b1f4b1bbb0334a514fa59)) +* **cli:** fix test script glob ([ff18eb5](https://github.com/pattern-lab/patternlab-node/commit/ff18eb51ce24fc5423b009168e85ede366069139)) +* **cli:** merge config arrays via overwrite instead of concatenate ([42e5f7b](https://github.com/pattern-lab/patternlab-node/commit/42e5f7b42a26b4fc1f262c68ee4b474b546f2eac)) +* **cli:** pass watch options cleanly to core ([8bf186b](https://github.com/pattern-lab/patternlab-node/commit/8bf186b8e2ea2ea5ddcd2d6242b670275b65567f)) +* **cli:** proper path resolution to helpers ([a18fe5e](https://github.com/pattern-lab/patternlab-node/commit/a18fe5ef4d1c074a5eba8bfa255ebbee2261bf74)) +* **cli:** re-order and clarify engines ([e39e301](https://github.com/pattern-lab/patternlab-node/commit/e39e301a33306c6615fabf64262f1893ca682b97)) +* **cli:** remove copy-source-files ([64311a1](https://github.com/pattern-lab/patternlab-node/commit/64311a155f82ddd86806087ad165b9ed880118f3)), closes [#833](https://github.com/pattern-lab/patternlab-node/issues/833) +* **cli:** run npm init -y if needed ([105e91c](https://github.com/pattern-lab/patternlab-node/commit/105e91ce08b4e8a21c5c53e95b0cd2d7287340fe)) +* **cli:** set current working directory before scaffolded npm init ([6d2186d](https://github.com/pattern-lab/patternlab-node/commit/6d2186d8e8a74634198a4474ca8ae83221dd70a9)) +* **cli:** set initialized to false during plugin installation ([88cce3f](https://github.com/pattern-lab/patternlab-node/commit/88cce3f9e91824f6650b1ea82eca950a480edf06)) +* **cli:** support scoped plugins ([4ae13ce](https://github.com/pattern-lab/patternlab-node/commit/4ae13ce99ea17ffa0ab48a0f6370a5b70834d6d3)) +* **config:** Add npm registry to lerna config ([1473cd5](https://github.com/pattern-lab/patternlab-node/commit/1473cd554c24b4c1baa4ee5ac59958f3499b9902)) +* **install:** add break statements to install edition command ([3b1813c](https://github.com/pattern-lab/patternlab-node/commit/3b1813c53b65c64eb135dfb35b54ab513992521c)) +* **install:** copy dependencies ([1acef87](https://github.com/pattern-lab/patternlab-node/commit/1acef874765d21e75a65a9b6cad0a0291822f804)) +* **install:** use process to find package.json ([200c7cb](https://github.com/pattern-lab/patternlab-node/commit/200c7cb4f5e909d7ac88070f7ab6a07563b35f22)) +* manually bump package.json versions of packages published in September but with mismatched package.json versions ([98dfadf](https://github.com/pattern-lab/patternlab-node/commit/98dfadf083eacc6741a8a8d4a79ef0cf869360d2)) +* **nvmrc:** bump Node version ([36a917f](https://github.com/pattern-lab/patternlab-node/commit/36a917ff9cd75ff7645e054ff8ceba67371b927a)) +* **package:** update publish config and installation target ([27d2c8f](https://github.com/pattern-lab/patternlab-node/commit/27d2c8f5cdcf2c6497af5016517c0a9c66b9972c)) +* **package:** update tap dependency ([2b70ff4](https://github.com/pattern-lab/patternlab-node/commit/2b70ff4f2766d6dd8189c2db1f00d31a8d28e333)) +* **plugin:** correct spelling error and function locations ([d4abd88](https://github.com/pattern-lab/patternlab-node/commit/d4abd88cb017550002407241b5045a2ad1adb1dc)) +* **tests:** change test command name similar to live-server until this passes CI ([5c39be1](https://github.com/pattern-lab/patternlab-node/commit/5c39be1328f0533827f5de38286073367b9483df)) +* updates to fix eslint / prettier issues; update packages/core to reuse root .eslintrc.js file ([5b7a057](https://github.com/pattern-lab/patternlab-node/commit/5b7a057d46ccd16b5832af1441030c7b76f237a8)) +* **version:** use static core method getVersion ([f9dcd4d](https://github.com/pattern-lab/patternlab-node/commit/f9dcd4d4a8c1ab31202b4e723788c8fba72a059e)) +* **wording:** reconcile Pattern Lab vs PatternLab ([f3d1e0d](https://github.com/pattern-lab/patternlab-node/commit/f3d1e0d807584ffbbbf2ea5869af7b916f25bbc8)) + + +### Reverts + +* Revert "[skip travis] chore(release): publish v5.10.0" ([7496318](https://github.com/pattern-lab/patternlab-node/commit/7496318e083f667b6da914e21595c52442d62703)) ## [6.0.1](https://github.com/pattern-lab/patternlab-node/compare/v6.0.0...v6.0.1) (2023-02-01) diff --git a/packages/cli/jest.config.ts b/packages/cli/jest.config.ts new file mode 100644 index 000000000..da515128d --- /dev/null +++ b/packages/cli/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'cli', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/cli', +}; diff --git a/packages/cli/package.json b/packages/cli/package.json index 6fe53072e..ac2eae113 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -8,29 +8,6 @@ "author": { "name": "Patternlab contributors" }, - "dependencies": { - "@pattern-lab/core": "^6.0.1", - "archiver": "5.3.0", - "chalk": "4.1.0", - "commander": "9.4.1", - "deepmerge": "^4.2.2", - "execa": "5.0.0", - "fs-extra": "10.0.0", - "glob": "7.1.6", - "has-yarn": "2.1.0", - "inquirer": "8.0.0", - "lodash": "4.17.21", - "ora": "5.4.0" - }, - "devDependencies": { - "dos2unix-cli": "^1.0.1", - "eslint": "4.18.2", - "eslint-config-prettier": "2.9.0", - "eslint-plugin-prettier": "2.6.0", - "prettier": "2.8.1", - "proxyquire": "2.1.3", - "tap": "14.11.0" - }, "files": [ "bin" ], @@ -40,19 +17,14 @@ "Node", "JavaScript" ], - "scripts": { - "lint": "eslint ./{bin,test}", - "test:separate": "tap './test/*.test.js' --reporter spec --timeout=120", - "prepublish": "npx dos2unix-cli bin/patternlab.js" - }, "repository": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/cli", "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "license": "MIT", + "devDependencies": { + "dos2unix-cli": "^1.0.1" + }, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/cli/project.json b/packages/cli/project.json new file mode 100644 index 000000000..9c44df2e9 --- /dev/null +++ b/packages/cli/project.json @@ -0,0 +1,55 @@ +{ + "name": "cli", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/cli/src", + "projectType": "library", + "implicitDependencies": ["core"], + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/cli", + "main": "packages/cli/bin/patternlab.ts", + "tsConfig": "packages/cli/tsconfig.lib.json", + "assets": ["packages/cli/*.md", "packages/cli/LICENSE"], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs cli {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/cli/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/cli/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/cli/readme.md b/packages/cli/readme.md index b415e63dd..729001aaf 100644 --- a/packages/cli/readme.md +++ b/packages/cli/readme.md @@ -5,14 +5,16 @@ [](https://github.com/pattern-lab/patternlab-node/actions/workflows/continuous-integration.yml) [](https://github.com/pattern-lab/patternlab-node/actions/workflows/codeql-analysis.yml) - ## Installation -*Note: Global installs are currently not supported and will be fixed when the Pattern Lab core hits v3.0.0* + +_Note: Global installs are currently not supported and will be fixed when the Pattern Lab core hits v3.0.0_ #### Via NPM + `npm install @pattern-lab/cli --save-dev` #### Via Yarn + `yarn add @pattern-lab/cli --dev` ## Configuring Your Project to Use the CLI @@ -28,6 +30,7 @@ Open `package.json` and add the following to your `scripts` object: + "patternlab": "patternlab" }, ``` + This tells `npm` to look in the local `node_modules/.bin` directory for the `patternlab` CLI. Subcommands and options can then be forwarded to the CLI like this: @@ -55,7 +58,9 @@ npm run pl:serve ``` ## API & Usage + ### General usage + ``` Usage: patternlab <cmd> [options] Commands: @@ -74,6 +79,7 @@ Usage: patternlab <cmd> [options] ``` ### Build/Compile Pattern Lab + ``` Usage: build|compile [options] @@ -85,6 +91,7 @@ Build Pattern Lab. Optionally (re-)build only the patterns ``` ### Initialize Pattern Lab + ``` Usage: init [options] @@ -99,6 +106,7 @@ Passing no options starts the init in interactive mode ``` ### Serve Pattern Lab + ``` Usage: serve|browse [options] @@ -111,6 +119,7 @@ Starts a server to inspect files in browser ``` ### Export Pattern Lab + ``` Usage: export [options] @@ -121,6 +130,7 @@ Export a Pattern Lab patterns into a compressed format ``` ### Install Pattern Lab starterkits or plugins + ``` Usage: install|add [options] @@ -134,10 +144,13 @@ Installs Pattern Lab related modules like starterkits or plugins ``` ## Examples + ``` $ patternlab init # Initialize a Pattern Lab project. $ patternlab build # Builds Pattern Lab from the current dir $ patternlab build --config <path/to/patternlab-config> # Builds Pattern Lab from different project directory ``` + ## License + MIT © [Patternlab contributors](https://github.com/pattern-lab/patternlab-node/blob/master/CODEOWNERS) diff --git a/packages/cli/test/build.test.js b/packages/cli/test/build.test.js deleted file mode 100644 index 8ee4770f4..000000000 --- a/packages/cli/test/build.test.js +++ /dev/null @@ -1,45 +0,0 @@ -const patternlab = require('@pattern-lab/core'); -const proxyquire = require('proxyquire'); -const tap = require('tap'); -const patternLabMock = require('./mocks/patternlab.mock.js'); -const config = patternlab.getDefaultConfig(); - -// Require build and mock patternlab.build() so that we only test the build module behavior -const build = proxyquire('../bin/build', { - '@pattern-lab/core': patternLabMock, -}); -const opts = { patternsOnly: true }; - -tap.test('Build ->', (t) => { - t.throws( - () => { - build(); - }, - {}, - 'throws when config is empty' - ); - t.throws( - () => { - build(123); - }, - {}, - 'throws when config is not of type object' - ); - t.throws( - () => { - build(undefined, opts); - }, - {}, - '--patterns-only throws when config is empty' - ); - t.throws( - () => { - build(undefined, opts); - }, - {}, - '--patterns-only throws when config is not of type object' - ); - t.type(build(config), 'boolean', 'returns a bool'); - t.type(build(config, opts), 'boolean', '--patterns-only returns a bool'); - t.end(); -}); diff --git a/packages/cli/test/cli-build.test.js b/packages/cli/test/cli-build.test.js deleted file mode 100644 index 644d56429..000000000 --- a/packages/cli/test/cli-build.test.js +++ /dev/null @@ -1,49 +0,0 @@ -const fs = require('fs-extra'); -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const path = require('path'); -const spawnCmd = require('./utils/spawnCmd'); -const tap = require('tap'); -const wrapAsync = require('../bin/utils').wrapAsync; - -const projectRoot = getUniqueProjectPath(); - -tap.test('Init and build ->', (t) => - wrapAsync(function* () { - yield spawnCmd([ - 'init', - '--verbose', - '--project-dir', - projectRoot, - '--edition', - '@pattern-lab/edition-node', - '--starterkit', - '@pattern-lab/starterkit-handlebars-demo', - ]); - yield spawnCmd([ - 'build', - '--config', - `${projectRoot}/patternlab-config.json`, - ]); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'public')), - 'should build all files into public dir' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'public', 'annotations')), - 'with an annotations dir' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'public', 'css')), - 'with a css dir' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'public', 'images')), - 'with a images dir' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'public', 'styleguide')), - 'with a styleguide dir' - ); - t.end(); - }) -); diff --git a/packages/cli/test/cli-disable.test.js b/packages/cli/test/cli-disable.test.js deleted file mode 100644 index dfe2f2925..000000000 --- a/packages/cli/test/cli-disable.test.js +++ /dev/null @@ -1,52 +0,0 @@ -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const spawnCmd = require('./utils/spawnCmd'); -const tap = require('tap'); -const { readFileSync } = require('fs'); -const wrapAsync = require('../bin/utils').wrapAsync; - -const projectRoot = getUniqueProjectPath(); - -tap.test('Disable ->', (t) => - wrapAsync(function* () { - yield spawnCmd([ - 'init', - '--verbose', - '--project-dir', - projectRoot, - '--edition', - '@pattern-lab/edition-node', - '--starterkit', - '@pattern-lab/starterkit-handlebars-vanilla', - ]); - yield spawnCmd([ - 'install', - '--plugins', - '@pattern-lab/plugin-tab', - '--config', - `${projectRoot}/patternlab-config.json`, - ]); - yield spawnCmd([ - 'enable', - '--plugins', - '@pattern-lab/plugin-tab', - '--config', - `${projectRoot}/patternlab-config.json`, - ]); - yield spawnCmd([ - 'disable', - '--plugins', - '@pattern-lab/plugin-tab', - '--config', - `${projectRoot}/patternlab-config.json`, - ]); - const config = JSON.parse( - readFileSync(`${projectRoot}/patternlab-config.json`, 'utf8') - ); - t.equal( - config.plugins['@pattern-lab/plugin-tab'].enabled, - false, - 'and set the enabled flag to false in patternlab-config.json' - ); - t.end(); - }) -); diff --git a/packages/cli/test/cli-enable.test.js b/packages/cli/test/cli-enable.test.js deleted file mode 100644 index 8ea48d7ef..000000000 --- a/packages/cli/test/cli-enable.test.js +++ /dev/null @@ -1,45 +0,0 @@ -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const spawnCmd = require('./utils/spawnCmd'); -const tap = require('tap'); -const { readFileSync } = require('fs'); -const wrapAsync = require('../bin/utils').wrapAsync; - -const projectRoot = getUniqueProjectPath(); - -tap.test('Enable ->', (t) => - wrapAsync(function* () { - yield spawnCmd([ - 'init', - '--verbose', - '--project-dir', - projectRoot, - '--edition', - '@pattern-lab/edition-node', - '--starterkit', - '@pattern-lab/starterkit-handlebars-vanilla', - ]); - yield spawnCmd([ - 'install', - '--plugins', - '@pattern-lab/plugin-tab', - '--config', - `${projectRoot}/patternlab-config.json`, - ]); - yield spawnCmd([ - 'enable', - '--plugins', - '@pattern-lab/plugin-tab', - '--config', - `${projectRoot}/patternlab-config.json`, - ]); - const config = JSON.parse( - readFileSync(`${projectRoot}/patternlab-config.json`, 'utf8') - ); - t.equal( - config.plugins['@pattern-lab/plugin-tab'].enabled, - true, - 'and set the enabled flag in patternlab-config.json' - ); - t.end(); - }) -); diff --git a/packages/cli/test/cli-export.test.js b/packages/cli/test/cli-export.test.js deleted file mode 100644 index e0caa8e7d..000000000 --- a/packages/cli/test/cli-export.test.js +++ /dev/null @@ -1,35 +0,0 @@ -const fs = require('fs-extra'); -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const path = require('path'); -const spawnCmd = require('./utils/spawnCmd'); -const tap = require('tap'); -const wrapAsync = require('../bin/utils').wrapAsync; - -const projectRoot = getUniqueProjectPath(); - -tap.test('Init and export ->', (t) => - wrapAsync(function* () { - yield spawnCmd([ - 'init', - '--verbose', - '--project-dir', - projectRoot, - '--edition', - '@pattern-lab/edition-node', - '--starterkit', - '@pattern-lab/starterkit-handlebars-vanilla', - ]); - yield spawnCmd([ - 'export', - '--config', - `${projectRoot}/patternlab-config.json`, - ]); - t.ok( - fs.existsSync( - path.resolve(projectRoot, 'pattern_exports', 'patterns.zip') - ), - ' should create patterns.zip' - ); - t.end(); - }) -); diff --git a/packages/cli/test/cli-init.test.js b/packages/cli/test/cli-init.test.js deleted file mode 100644 index 34ad1d190..000000000 --- a/packages/cli/test/cli-init.test.js +++ /dev/null @@ -1,44 +0,0 @@ -const fs = require('fs-extra'); -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const path = require('path'); -const spawnCmd = require('./utils/spawnCmd'); -const tap = require('tap'); -const wrapAsync = require('../bin/utils').wrapAsync; - -const projectRoot = getUniqueProjectPath(); - -tap.test('Init ->', (t) => - wrapAsync(function* () { - yield spawnCmd([ - 'init', - '--verbose', - '--project-dir', - projectRoot, - '--edition', - '@pattern-lab/edition-node', - '--starterkit', - '@pattern-lab/starterkit-handlebars-vanilla', - ]); - t.ok( - fs.existsSync(path.resolve(projectRoot)), - 'should initialize a Pattern Lab project' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'source')), - 'with a source dir' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'public')), - 'with a public dir' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'pattern_exports')), - 'with a pattern_exports dir' - ); - t.ok( - fs.existsSync(path.resolve(projectRoot, 'patternlab-config.json')), - 'with a pattern_exports dir' - ); - t.end(); - }) -); diff --git a/packages/cli/test/export.test.js b/packages/cli/test/export.test.js deleted file mode 100644 index e9b600b24..000000000 --- a/packages/cli/test/export.test.js +++ /dev/null @@ -1,31 +0,0 @@ -const exportPatterns = require('../bin/cli-actions/export'); -const tap = require('tap'); -const wrapAsync = require('../bin/utils').wrapAsync; - -tap.test('Export ->', (t) => { - t.plan(2); - t.test('with options empty', (tt) => - wrapAsync(function* () { - try { - yield exportPatterns(); - } catch (err) { - tt.type(err, TypeError, 'throws when options are empty'); - tt.end(); - } - }) - ); - t.test('with options not an object', (tt) => - wrapAsync(function* () { - try { - yield exportPatterns(123); - } catch (err) { - tt.type( - err, - TypeError, - 'throws when passed options are not of type object' - ); - tt.end(); - } - }) - ); -}); diff --git a/packages/cli/test/fixtures/patternlab-config.json b/packages/cli/test/fixtures/patternlab-config.json deleted file mode 100644 index 615be9273..000000000 --- a/packages/cli/test/fixtures/patternlab-config.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "cacheBust": true, - "cleanPublic": true, - "defaultPattern": "all", - "defaultShowPatternInfo": false, - "ishControlsHide": { - "s": false, - "m": false, - "l": false, - "full": false, - "random": false, - "disco": false, - "hay": true, - "mqs": false, - "find": false, - "views-all": false, - "views-annotations": false, - "views-code": false, - "views-new": false, - "tools-all": false, - "tools-docs": false - }, - "ishViewportRange": { - "s": [240, 500], - "m": [500, 800], - "l": [800, 2600] - }, - "logLevel": "info", - "outputFileSuffixes": { - "rendered": ".rendered", - "rawTemplate": "", - "markupOnly": ".markup-only" - }, - "paths": { - "source": { - "root": "./test/fixtures/source/", - "patterns": "./test/fixtures/source/_patterns/", - "data": "./test/fixtures/source/_data/", - "meta": "./test/fixtures/source/_meta/", - "annotations": "./test/fixtures/source/_annotations/", - "styleguide": "node_modules/@pattern-lab/uikit-workshop/dist/", - "patternlabFiles": { - "general-header": - "node_modules/@pattern-lab/uikit-workshop/views/partials/general-header.mustache", - "general-footer": - "node_modules/@pattern-lab/uikit-workshop/views/partials/general-footer.mustache", - "patternSection": - "node_modules/@pattern-lab/uikit-workshop/views/partials/patternSection.mustache", - "patternSectionSubgroup": - "node_modules/@pattern-lab/uikit-workshop/views/partials/patternSectionSubgroup.mustache", - "viewall": - "node_modules/@pattern-lab/uikit-workshop/views/viewall.mustache" - }, - "js": "./test/fixtures/source/js", - "images": "./test/fixtures/source/images", - "fonts": "./test/fixtures/source/fonts", - "css": "./test/fixtures/source/css/" - }, - "public": { - "root": "./test/fixtures/public/", - "patterns": "./test/fixtures/public/patterns/", - "data": "./test/fixtures/public/styleguide/data/", - "annotations": "./test/fixtures/public/annotations/", - "styleguide": "./test/fixtures/public/styleguide/", - "js": "./test/fixtures/public/js", - "images": "./test/fixtures/public/images", - "fonts": "./test/fixtures/public/fonts", - "css": "./test/fixtures/public/css" - } - }, - "patternExtension": "hbs", - "patternStateCascade": ["inprogress", "inreview", "complete"], - "patternExportDirectory": "./pattern_exports/", - "patternExportPatternPartials": [], - "patternMergeVariantArrays": true, - "renderFlatPatternsOnViewAllPages": false, - "serverOptions": { - "wait": 1000 - }, - "starterkitSubDir": "dist", - "styleGuideExcludes": [], - "theme": { - "color": "dark", - "density": "compact", - "layout": "horizontal" - }, - "engines": { - "handlebars": { - "package": "@pattern-lab/engine-handlebars", - "fileExtensions": [ - "handlebars", - "hbs" - ], - "extend": "helpers/*.js" - } - } -} diff --git a/packages/cli/test/install-plugin.test.js b/packages/cli/test/install-plugin.test.js deleted file mode 100644 index c941d95d1..000000000 --- a/packages/cli/test/install-plugin.test.js +++ /dev/null @@ -1,29 +0,0 @@ -const tap = require('tap'); -const installPlugin = require('../bin/install-plugin'); -const wrapAsync = require('../bin/utils').wrapAsync; -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const moduleExist = require.resolve; - -const projectRoot = getUniqueProjectPath(); - -const minimalConfig = { - paths: { - source: { - root: projectRoot, - }, - }, -}; - -tap.test('Install plugin-tab ->', (t) => - wrapAsync(function* () { - yield installPlugin('@pattern-lab/plugin-tab', minimalConfig); - const pkg = yield moduleExist('@pattern-lab/plugin-tab'); - t.ok(pkg, 'module should exist after install'); - t.equal( - minimalConfig.plugins['@pattern-lab/plugin-tab'].enabled, - false, - 'and persist it on the patternlab-config.json' - ); - t.end(); - }) -); diff --git a/packages/cli/test/install-starterkit.test.js b/packages/cli/test/install-starterkit.test.js deleted file mode 100644 index 97a7599c1..000000000 --- a/packages/cli/test/install-starterkit.test.js +++ /dev/null @@ -1,48 +0,0 @@ -const tap = require('tap'); -const installStarterkit = require('../bin/install-starterkit'); -const wrapAsync = require('../bin/utils').wrapAsync; -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const moduleExist = require.resolve; - -const projectRoot = getUniqueProjectPath(); - -const minimalConfig = { - paths: { - source: { - root: projectRoot, - }, - }, -}; - -tap.test('Install @pattern-lab/starterkit-handlebars-vanilla ->', (t) => - wrapAsync(function* () { - yield installStarterkit( - '@pattern-lab/starterkit-handlebars-vanilla', - minimalConfig - ); - const pkg = yield moduleExist('@pattern-lab/starterkit-handlebars-vanilla'); - t.ok(pkg, 'module should exist after install'); - t.end(); - }) -); - -tap.test('Install @pattern-lab/starterkit-handlebars-demo ->', (t) => - wrapAsync(function* () { - yield installStarterkit( - '@pattern-lab/starterkit-handlebars-demo', - minimalConfig - ); - const pkg = yield moduleExist('@pattern-lab/starterkit-handlebars-demo'); - t.ok(pkg, 'module should exist after install'); - t.end(); - }) -); - -tap.test('Install @pattern-lab/starterkit-twig-demo ->', (t) => - wrapAsync(function* () { - yield installStarterkit('@pattern-lab/starterkit-twig-demo', minimalConfig); - const pkg = yield moduleExist('@pattern-lab/starterkit-twig-demo'); - t.ok(pkg, 'module should exist after install'); - t.end(); - }) -); diff --git a/packages/cli/test/mocks/liverserver.mock.js b/packages/cli/test/mocks/liverserver.mock.js deleted file mode 100644 index 868f34fd5..000000000 --- a/packages/cli/test/mocks/liverserver.mock.js +++ /dev/null @@ -1,15 +0,0 @@ -function liveServerMock() { - return { - reload: function () { - return true; - }, - refreshCSS: function () { - return true; - }, - start: function () { - return true; - }, - }; -} - -module.exports = liveServerMock; diff --git a/packages/cli/test/mocks/patternlab.mock.js b/packages/cli/test/mocks/patternlab.mock.js deleted file mode 100644 index 718767245..000000000 --- a/packages/cli/test/mocks/patternlab.mock.js +++ /dev/null @@ -1,21 +0,0 @@ -function patternLabMock() { - return { - build: function () { - return true; - }, - help: function () { - return true; - }, - patternsonly: function () { - return true; - }, - liststarterkits: function () { - return true; - }, - loadstarterkit: function () { - return true; - }, - }; -} - -module.exports = patternLabMock; diff --git a/packages/cli/test/replace_config_paths.test.js b/packages/cli/test/replace_config_paths.test.js deleted file mode 100644 index 11d5bd84d..000000000 --- a/packages/cli/test/replace_config_paths.test.js +++ /dev/null @@ -1,44 +0,0 @@ -const patternlab = require('@pattern-lab/core'); -const tap = require('tap'); -const replaceConfigPaths = require('../bin/replace-config'); -const config = patternlab.getDefaultConfig(); - -tap.test('replaceConfigPaths ->', (t) => { - const newConfig = replaceConfigPaths( - config, - 'projectDir', - 'sourceDir', - 'publicDir', - 'exportDir' - ); - for (const k of Object.keys(newConfig.paths.source)) { - if (k === 'patternlabFiles') { - for (const l of Object.keys(newConfig.paths.source[k])) { - t.ok( - /^projectDir\/sourceDir\/|^\.\/node_modules/.test( - newConfig.paths.source[k][l] - ), - `should be ok for newConfig.paths.source.${k}.${l}` - ); - } - } else { - t.ok( - /^projectDir\/sourceDir\/|^\.\/node_modules/.test( - newConfig.paths.source[k] - ), - `should be ok for newConfig.paths.source.${k}` - ); - } - } - for (const l of Object.keys(newConfig.paths.public)) { - t.ok( - /^projectDir\/publicDir\//.test(newConfig.paths.public[l]), - `should be ok for newConfig.paths.public.${l}` - ); - } - t.ok( - /^projectDir\/exportDir/.test(newConfig.patternExportDirectory), - `should be ok for newConfig.patternExportDirectory` - ); - t.end(); -}); diff --git a/packages/cli/test/resolve_config.test.js b/packages/cli/test/resolve_config.test.js deleted file mode 100644 index 87feb8231..000000000 --- a/packages/cli/test/resolve_config.test.js +++ /dev/null @@ -1,18 +0,0 @@ -const tap = require('tap'); -const wrapAsync = require('../bin/utils').wrapAsync; -const resolveConfig = require('../bin/resolve-config'); - -tap.test('resolveConfig ->', (t) => - wrapAsync(function* () { - const config = yield resolveConfig( - './test/fixtures/patternlab-config.json' - ); - const badConfig = yield resolveConfig(123); - const configNotFound = yield resolveConfig('./test/fixtures/some-config'); - t.type(config, 'object', 'should return a config of type object'); - t.ok(config.paths, 'config should have a paths property'); - t.notOk(badConfig, 'returns false when configPath is not of type string'); - t.notOk(configNotFound, 'returns false when configPath is not found'); - t.end(); - }) -); diff --git a/packages/cli/test/scaffold.test.js b/packages/cli/test/scaffold.test.js deleted file mode 100644 index f1f3037d5..000000000 --- a/packages/cli/test/scaffold.test.js +++ /dev/null @@ -1,31 +0,0 @@ -const tap = require('tap'); -const path = require('path'); -const fs = require('fs-extra'); -const scaffold = require('../bin/scaffold'); -const getUniqueProjectPath = require('./utils/getUniqueProjectPath'); -const wrapAsync = require('../bin/utils').wrapAsync; - -const projectDir = getUniqueProjectPath(); -const sourceDir = 'source'; -const publicDir = 'public'; -const exportDir = 'patterns_export'; - -tap.test('Scaffold ->', (t) => - wrapAsync(function* () { - yield scaffold(projectDir, sourceDir, publicDir, exportDir); - t.ok(fs.existsSync(path.resolve(projectDir)), 'should create project dir'); - t.ok( - fs.existsSync(path.resolve(projectDir, sourceDir)), - 'should create source dir' - ); - t.ok( - fs.existsSync(path.resolve(projectDir, publicDir)), - 'should create public dir' - ); - t.ok( - fs.existsSync(path.resolve(projectDir, exportDir)), - 'should create export dir' - ); - t.end(); - }) -); diff --git a/packages/cli/test/serve.test.js b/packages/cli/test/serve.test.js deleted file mode 100644 index 0d733cde0..000000000 --- a/packages/cli/test/serve.test.js +++ /dev/null @@ -1,51 +0,0 @@ -const proxyquire = require('proxyquire'); -const tap = require('tap'); -const _ = require('lodash'); -const resolveConfig = require('../bin/resolve-config'); -const patternLabMock = require('./mocks/patternlab.mock.js'); -const wrapAsync = require('../bin/utils').wrapAsync; - -// Require preview but mock patternlab so that we only test the module behavior -const preview = proxyquire('../bin/serve', { - '@pattern-lab/core': patternLabMock, -}); - -tap.test('Serve ->', (t) => - wrapAsync(function* () { - const config = yield resolveConfig( - './test/fixtures/patternlab-config.json' - ); - config.paths.source.root = undefined; - t.throws( - () => { - preview(); - }, - {}, - 'throws when config is empty' - ); - t.throws( - () => { - preview(123); - }, - {}, - 'throws when config is not of type object' - ); - t.throws( - () => { - _.unset(config, 'paths.source.root'); - preview(config); - }, - {}, - 'throws when no source root dir is set on config' - ); - t.throws( - () => { - _.unset(config, 'paths.public.root'); - preview(config); - }, - {}, - 'throws when no public root dir is set on config' - ); - t.end(); - }) -); diff --git a/packages/cli/test/utils/getUniqueProjectPath.js b/packages/cli/test/utils/getUniqueProjectPath.js deleted file mode 100644 index 0ac892b19..000000000 --- a/packages/cli/test/utils/getUniqueProjectPath.js +++ /dev/null @@ -1,6 +0,0 @@ -const crypto = require('crypto'); - -module.exports = () => { - const UUID = crypto.randomBytes(16).toString('hex'); - return `./tmp/${UUID}`; -}; diff --git a/packages/cli/test/utils/spawnCmd.js b/packages/cli/test/utils/spawnCmd.js deleted file mode 100644 index f02cb91d4..000000000 --- a/packages/cli/test/utils/spawnCmd.js +++ /dev/null @@ -1,13 +0,0 @@ -const path = require('path'); -const spawn = require('execa'); -const wrapAsync = require('../../bin/utils').wrapAsync; -const cli = path.resolve(__dirname, '../../bin/patternlab.js'); - -const spawnCmd = (args, endFn) => - wrapAsync(function* () { - const fn = endFn || function () {}; - yield spawn('node', [cli].concat(args)); - fn(); - }); - -module.exports = spawnCmd; diff --git a/packages/cli/tsconfig.json b/packages/cli/tsconfig.json new file mode 100644 index 000000000..9d7f15bc8 --- /dev/null +++ b/packages/cli/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "allowJs": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/cli/tsconfig.lib.json b/packages/cli/tsconfig.lib.json new file mode 100644 index 000000000..70e7b0657 --- /dev/null +++ b/packages/cli/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["bin/**/*.ts", "bin/**/*.js"], + "exclude": ["jest.config.ts", "bin/**/*.spec.ts", "bin/**/*.test.ts", "bin/**/*.spec.js", "bin/**/*.test.js"] +} diff --git a/packages/cli/tsconfig.spec.json b/packages/cli/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/cli/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/core/.eslintrc.js b/packages/core/.eslintrc.js deleted file mode 100644 index 5a2cc7f1e..000000000 --- a/packages/core/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['../../.eslintrc.js'], -}; diff --git a/packages/core/.eslintrc.json b/packages/core/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/core/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/core/.npmignore b/packages/core/.npmignore deleted file mode 100644 index c1e1ac97f..000000000 --- a/packages/core/.npmignore +++ /dev/null @@ -1,2 +0,0 @@ -test -.nyc_output diff --git a/packages/core/.npmrc b/packages/core/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/core/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/core/.nvmrc b/packages/core/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/core/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index eef54297b..4b2ffe8e2 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,7 +1,126 @@ -# Change Log +# Changelog -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver). + +## 1.0.0 (2023-02-11) + + +### ⚠ BREAKING CHANGES + +* **core:** plugins now use async functions instead of events +* **API:** change `version()` to return a string representation of the version, removing `v()` + +### Features + +* add nx workspace settings ([5bbee08](https://github.com/pattern-lab/patternlab-node/commit/5bbee082c4e0d2d8187fbd487827090baf010fbe)) +* add release feature ([7f731c4](https://github.com/pattern-lab/patternlab-node/commit/7f731c4b56e663b57d71c7776c0c5e6424c1575e)) +* added https description to the docs ([#1355](https://github.com/pattern-lab/patternlab-node/issues/1355)) ([4118f74](https://github.com/pattern-lab/patternlab-node/commit/4118f740810842b16cf86b9ee28bda2a623aa9c7)) +* **api:** expose getVersion statically ([4683cd0](https://github.com/pattern-lab/patternlab-node/commit/4683cd00ae493be18d08a29e2ff370b70928c9de)) +* **API:** remove reliance on patternlab object during plugin install ([0850fd6](https://github.com/pattern-lab/patternlab-node/commit/0850fd6909ac1939a89be9840fbfa7d64fdda56d)) +* **API:** standardize v() and version() into a single call ([6309e69](https://github.com/pattern-lab/patternlab-node/commit/6309e693b0971ea26c86e0e2b957ba413492e1b7)) +* **config:** add new default pattern export options ([a7487a0](https://github.com/pattern-lab/patternlab-node/commit/a7487a0681cb11e6f3c5c8eaefd62e5648ad5ea3)) +* **core:** Add tests for help command ([62cd8fb](https://github.com/pattern-lab/patternlab-node/commit/62cd8fb2fb05a676ea9b730f4c9340eac005e9eb)) +* **core:** fix pattern export all conflicts ([b210d82](https://github.com/pattern-lab/patternlab-node/commit/b210d820ba8ac0b64c82c7ff0f18c9f8a900fce2)) +* **core:** invoke registered plugin hooks ([a54d775](https://github.com/pattern-lab/patternlab-node/commit/a54d7753b6939fe6a58da543f4fb34f64dd8901a)) +* **core:** remove plugin install / disable / enable logic ([5a58824](https://github.com/pattern-lab/patternlab-node/commit/5a588240400870203c682d5071cd32f6dff9f94d)), closes [#872](https://github.com/pattern-lab/patternlab-node/issues/872) +* **documentation:** added (sub)groups documentation again [#1262](https://github.com/pattern-lab/patternlab-node/issues/1262) ([#1334](https://github.com/pattern-lab/patternlab-node/issues/1334)) ([9fac269](https://github.com/pattern-lab/patternlab-node/commit/9fac2699d2f6c64c4544e8e4d8e18c1a1ce7e49f)) +* **events:** add PATTERNLAB_BUILD_END event and rename BUILD_START ([5b7bfa3](https://github.com/pattern-lab/patternlab-node/commit/5b7bfa38c22f37737c59bbf945defec48718a7d9)) +* **help:** remove help. API is now documented ([2aef3a1](https://github.com/pattern-lab/patternlab-node/commit/2aef3a14e72c22fc6c3fba584bd8df6d4dc54fb9)) +* integrate @hadl/patternlab-plugin-pattern-wrap into core ([#1433](https://github.com/pattern-lab/patternlab-node/issues/1433)) ([414e038](https://github.com/pattern-lab/patternlab-node/commit/414e0383732b4bc4682981000908d1e0d1292703)), closes [#1432](https://github.com/pattern-lab/patternlab-node/issues/1432) [#1432](https://github.com/pattern-lab/patternlab-node/issues/1432) +* move dev packages ([0136648](https://github.com/pattern-lab/patternlab-node/commit/0136648039233f82a608bd194f686bcf99159192)) +* **package:** add npmrc file ([55f5bc2](https://github.com/pattern-lab/patternlab-node/commit/55f5bc26d635805648caa2d35d1bf306fe4740d5)) +* **package:** Hoist up tap and test command. ([6cacdb6](https://github.com/pattern-lab/patternlab-node/commit/6cacdb64b4327777bdea8c6c9f36ad20e608278f)) +* **package:** pin all dependencies ([415698e](https://github.com/pattern-lab/patternlab-node/commit/415698eb9a70d477ffb7b2906e679ac8f2051c60)) +* **package:** remove package-lock.json files ([5ab3995](https://github.com/pattern-lab/patternlab-node/commit/5ab399599a1dbea8239fbd09a34d5f39ad762e21)) +* **package:** standardize and hoist common devDependencies ([7f4ce6f](https://github.com/pattern-lab/patternlab-node/commit/7f4ce6ff1238986bed906c27d2f4bf7329752d92)) +* **packages:** Update all package.json repo and bug links ([5eb2c11](https://github.com/pattern-lab/patternlab-node/commit/5eb2c1148d428170236907cbbc42ba05d046e408)) +* **plugin-tab, core:** initial plugin hook exploration ([2f3d39a](https://github.com/pattern-lab/patternlab-node/commit/2f3d39ac6b125ad4c6b872e27ee224ce2ea33a12)) +* **README:** Update for brevity and consistency ([aec7c50](https://github.com/pattern-lab/patternlab-node/commit/aec7c50aedb1e081c541cd106f31125f70658dec)) +* **server:** beginning of refator ([a3d65c3](https://github.com/pattern-lab/patternlab-node/commit/a3d65c3af547371c6c10b33ec8133b48e9ed2a1d)) +* **server:** continue server refactor ([8f6cd91](https://github.com/pattern-lab/patternlab-node/commit/8f6cd91d7aac80c4110f5bb99b7f01af451c0a1b)) +* **uikits:** add uikits to test config ([43a2017](https://github.com/pattern-lab/patternlab-node/commit/43a2017c330736343569a5cc12c378284665c137)) +* **uikits:** additional test coverage ([f5b60b2](https://github.com/pattern-lab/patternlab-node/commit/f5b60b2462bd1659db8c900874b728a5eec0b584)) +* **uikits:** additional test coverage of the main API ([fbcacfb](https://github.com/pattern-lab/patternlab-node/commit/fbcacfb9bbabf70d4f55336bec5ab0f9133ebf15)) +* **uikits:** clean each build directory if configured ([8e11342](https://github.com/pattern-lab/patternlab-node/commit/8e1134280d2c031825f716a7710618bcb04e22f9)) +* **uikits:** copy pattern-specific javascript ([3ac93dc](https://github.com/pattern-lab/patternlab-node/commit/3ac93dc06ad3d2f725fa36e6f20c6aba6bebb0e9)) +* **uikits:** create MVP output to disk ([e1598d3](https://github.com/pattern-lab/patternlab-node/commit/e1598d37e0b3e4aa9dd34a1f5da6eddde353d8dd)) +* **uikits:** filter out excluded pattern states from uikit output ([87c9d0d](https://github.com/pattern-lab/patternlab-node/commit/87c9d0d2c315d9f6060df70fc41a7f4a9a5e9f9d)) +* **uikits:** load uikits before build ([4565202](https://github.com/pattern-lab/patternlab-node/commit/4565202d32e5498512d01ff03e21f9fdb51b4c20)) +* **uikits:** output assets and annotations to each location ([b0a84ca](https://github.com/pattern-lab/patternlab-node/commit/b0a84cad95242867d5cf1fa1dd0edb0a6adff3c6)) +* **uikits:** output pattern files to each location ([5df87b0](https://github.com/pattern-lab/patternlab-node/commit/5df87b058ccd128b41f72f90671084bd4373bf71)) +* **uikits:** promote dependencyGraph.json output to root ([dd3e708](https://github.com/pattern-lab/patternlab-node/commit/dd3e708570b8dda69626cc19264c40e745755a96)) +* **uikits:** render header and footer data correctly ([f2a6f23](https://github.com/pattern-lab/patternlab-node/commit/f2a6f23eff6d730a2b493d470b3b159b8c6880d2)) +* **uikits:** support incremental builds ([6670364](https://github.com/pattern-lab/patternlab-node/commit/66703646401b18af17e81d8ce2495f659408387c)) +* **uikits:** support watched-asset copying ([4f05311](https://github.com/pattern-lab/patternlab-node/commit/4f0531137b19cd2e49ed09edeab24392d1eb1a28)) +* **uikits:** uikits config to default ([a393851](https://github.com/pattern-lab/patternlab-node/commit/a39385165e6d7398c0aa4fd2283651b5c10ac872)) +* update workspace settings ([e8f3746](https://github.com/pattern-lab/patternlab-node/commit/e8f37460a50ac56c4cdcc8fd942ed9adc1ca7c30)) +* update workspace settings ([39092c1](https://github.com/pattern-lab/patternlab-node/commit/39092c13ed91cfd2a6a51929d4bd612abc937038)) +* **watches:** add additional assets to ignore ([18e74c2](https://github.com/pattern-lab/patternlab-node/commit/18e74c2f34aacd3b5cd983337ea41b202496e717)) + + +### Bug Fixes + +* **1049:** Treat folders like patterns only if they're subfolders of pattern groupings ([4eb79ab](https://github.com/pattern-lab/patternlab-node/commit/4eb79ab48b335a35b2e5ed3b7053974b8e8bb6b6)) +* add a new method to check if PL is currently compiling + add new method to get the config PL is using ([26e886c](https://github.com/pattern-lab/patternlab-node/commit/26e886c93db5d135c91de648724f7278c4d5b3e9)) +* add eslint fixes ([00d7bbe](https://github.com/pattern-lab/patternlab-node/commit/00d7bbe319ea77a6ee8cc9cd0348856feaaf13ad)) +* **build:** improve stability of changes causing a live-server reload ([06c6123](https://github.com/pattern-lab/patternlab-node/commit/06c61237a8c197a58129846296e7b7e20b254aa3)) +* **buildPatterns:** move meta processing back into function for now ([cea2c45](https://github.com/pattern-lab/patternlab-node/commit/cea2c45ba6d6f3f0ed5772027dbec2b28aba0bf1)) +* **changes_hunter:** guard for incrementalRebuild while watching ([c652b9c](https://github.com/pattern-lab/patternlab-node/commit/c652b9ced3c87c80239174a50c90d2695ed1a1a3)), closes [#794](https://github.com/pattern-lab/patternlab-node/issues/794) [#802](https://github.com/pattern-lab/patternlab-node/issues/802) +* clean up Pattern.createEmpty conditionals to improve readability; fix typo / formatting bug causing mustache loader to not compile base UI templates as expected ([0c965cc](https://github.com/pattern-lab/patternlab-node/commit/0c965cc7f7fca2d5100f2e92438f5799bb934fe7)) +* **cli:** pass watch options cleanly to core ([8bf186b](https://github.com/pattern-lab/patternlab-node/commit/8bf186b8e2ea2ea5ddcd2d6242b670275b65567f)) +* code scanning alert ([#1442](https://github.com/pattern-lab/patternlab-node/issues/1442)) ([749a3e7](https://github.com/pattern-lab/patternlab-node/commit/749a3e722249846c522e3f7de6e73b5afa8531b1)) +* **config:** Add npm registry to lerna config ([1473cd5](https://github.com/pattern-lab/patternlab-node/commit/1473cd554c24b4c1baa4ee5ac59958f3499b9902)) +* **config:** update patch to uikit files ([5ccd0d2](https://github.com/pattern-lab/patternlab-node/commit/5ccd0d2ed89ee031f940432b3177cd29417835fa)) +* **core:** allow plugin resolution to follow normal algorithm ([3f6b83b](https://github.com/pattern-lab/patternlab-node/commit/3f6b83be080c88aec1d8b73bececb76f0f57a79d)) +* **core:** do not warn about uikit-polyfills ([6bb68e7](https://github.com/pattern-lab/patternlab-node/commit/6bb68e763769969546542bf7aaf6d1f4235c6622)) +* **core:** find plugins from config only and with simpler args ([fe7351c](https://github.com/pattern-lab/patternlab-node/commit/fe7351cba346425512cbb2ef3a1b7728ab06ae60)) +* **core:** Fix tests ([31d67a7](https://github.com/pattern-lab/patternlab-node/commit/31d67a778796c475f1a0a0c3e05477f3eaa8ecc7)) +* **core:** re-add cleanPublic fix ([c100bbc](https://github.com/pattern-lab/patternlab-node/commit/c100bbca3f339e9132acb9c482e98c1c8a66b8b5)) +* **core:** ReadDocumentation throw error on older node versions ([#1295](https://github.com/pattern-lab/patternlab-node/issues/1295)) ([399d0e1](https://github.com/pattern-lab/patternlab-node/commit/399d0e118ab77a414a926b078da9abbcb5347969)) +* **core:** rename serverModule import to avoid conflict with CLI ([f3170e7](https://github.com/pattern-lab/patternlab-node/commit/f3170e7db1f004e99828884743ab74adc0ddf783)) +* **core:** Subgroup cannot be hidden ([#1368](https://github.com/pattern-lab/patternlab-node/issues/1368)) ([3ce13ab](https://github.com/pattern-lab/patternlab-node/commit/3ce13abffaab2810194003aeca88be671fedd38f)) +* correct typo in build logging ([96d989f](https://github.com/pattern-lab/patternlab-node/commit/96d989f8869630ba9f59705bfca66755f20e35ab)) +* **data_loader:** look for exact name of the file passed in ([eb46be2](https://github.com/pattern-lab/patternlab-node/commit/eb46be232ef6ea92b02e460803ecc1ca656e7184)) +* **docs:** regenerate API documentation ([830c568](https://github.com/pattern-lab/patternlab-node/commit/830c568dae28e743917a9d19860a5ec13641c8d8)) +* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/issues/1192) ([cae9420](https://github.com/pattern-lab/patternlab-node/commit/cae94208c52e4068430e048e729f4ff97847715a)) +* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/issues/1192) ([b4eb12e](https://github.com/pattern-lab/patternlab-node/commit/b4eb12e68ceb402964a7e303610e5b0c008876ba)) +* **docs:** update event info with tab example ([0f227a3](https://github.com/pattern-lab/patternlab-node/commit/0f227a374ee0bec02d6e9d8a3ec8735d7bb55761)) +* enable partial build via option ([8aaa533](https://github.com/pattern-lab/patternlab-node/commit/8aaa53398563ade14123c481bf509f9ee0c768f5)) +* **get:** add internal ability to omit missing pattern warning ([e3dddc6](https://github.com/pattern-lab/patternlab-node/commit/e3dddc66a648f01987847320dd887c47eb7bc592)), closes [#786](https://github.com/pattern-lab/patternlab-node/issues/786) +* **lint:** run code through prettier ([ca52fde](https://github.com/pattern-lab/patternlab-node/commit/ca52fded2a3cebe294aa0bfa2ea09d8694abd85e)), closes [#825](https://github.com/pattern-lab/patternlab-node/issues/825) +* manually bump package.json versions of packages published in September but with mismatched package.json versions ([98dfadf](https://github.com/pattern-lab/patternlab-node/commit/98dfadf083eacc6741a8a8d4a79ef0cf869360d2)) +* **node16:** prevent warning on installation process ([#1352](https://github.com/pattern-lab/patternlab-node/issues/1352)) ([d58e4c6](https://github.com/pattern-lab/patternlab-node/commit/d58e4c6f2979f5e0bba9a14e17e0dbc4afc64f75)) +* **package:** Allow .json extension on annotations file (issue [#836](https://github.com/pattern-lab/patternlab-node/issues/836)) ([b92e62b](https://github.com/pattern-lab/patternlab-node/commit/b92e62b6d258a46487a9d6a6e1d1b123fd495ab7)) +* **package:** clarify description of package ([c65611e](https://github.com/pattern-lab/patternlab-node/commit/c65611e0a94ccfa175a3ad38ba2065e3638889e6)) +* **packages:** Allow scoped publishing ([58beeb6](https://github.com/pattern-lab/patternlab-node/commit/58beeb6ee8a111d0caa4e2da6af138d634dc5355)) +* **package:** update LICENSE ([337aa32](https://github.com/pattern-lab/patternlab-node/commit/337aa32a22eab42641c087b0909d6c3bf5525399)) +* **package:** update tap dependency ([2b70ff4](https://github.com/pattern-lab/patternlab-node/commit/2b70ff4f2766d6dd8189c2db1f00d31a8d28e333)) +* **pattern graph:** move support and coverage of graph file to root ([bb9ef3c](https://github.com/pattern-lab/patternlab-node/commit/bb9ef3c4ffa12813b9580bed6308ad2790e6583e)) +* **pattern watch:** Defensively add change listeners ([cdbd11f](https://github.com/pattern-lab/patternlab-node/commit/cdbd11f445bb940c377ddff89e920a0510d8f5c8)) +* **patterns:** find all patterns inlcuding pseudo patterns ([d0672f6](https://github.com/pattern-lab/patternlab-node/commit/d0672f65e7f35616621f9ebc7d703905b697a6a2)), closes [#975](https://github.com/pattern-lab/patternlab-node/issues/975) +* **plugin:** correct spelling error and function locations ([d4abd88](https://github.com/pattern-lab/patternlab-node/commit/d4abd88cb017550002407241b5045a2ad1adb1dc)) +* **plugins:** support scoped packages ([44f0f8e](https://github.com/pattern-lab/patternlab-node/commit/44f0f8e421ad7f9f5ae8f6f8ef771da2875700c5)) +* revert fixing prettier issues with annotations.js file to fix failing tests ([962020b](https://github.com/pattern-lab/patternlab-node/commit/962020b0acabfa62f8aeac964e18bef8f56ce3fe)) +* revert previous uikit configurable path updates to unblock Twig renderer work getting merged in ([42bfe29](https://github.com/pattern-lab/patternlab-node/commit/42bfe29aeaa68b956110f3b7fe88d6395cf98286)) +* **server:** remove setInterval hack ([a76e4a2](https://github.com/pattern-lab/patternlab-node/commit/a76e4a247f21262e90218ae0a2154cfa181b5875)) +* **test:** fix the test please and thank you ([cdc6c38](https://github.com/pattern-lab/patternlab-node/commit/cdc6c3867afb5a1d746c37c0ae0af2bc8040df93)) +* **test:** sledgehammer a test ([8b34be0](https://github.com/pattern-lab/patternlab-node/commit/8b34be0a39b1ec499d454304db33229175fd675f)) +* **tests:** prevent dependency graph output file from being written ([0d9c57e](https://github.com/pattern-lab/patternlab-node/commit/0d9c57ebe44ad5858668cc8453a973e033c8f3ed)) +* **tests:** Revert annotations file back to expected legacy format ([3618f27](https://github.com/pattern-lab/patternlab-node/commit/3618f27bc32aaf7c3b0f6da60d746e7274d07ff8)) +* transformed asset types is ignored ([#1426](https://github.com/pattern-lab/patternlab-node/issues/1426)) ([8cbe189](https://github.com/pattern-lab/patternlab-node/commit/8cbe189d45afaa753ce6de41bdd9de1596e074f3)), closes [#1339](https://github.com/pattern-lab/patternlab-node/issues/1339) +* **twig engine:** startup and running problems ([#1478](https://github.com/pattern-lab/patternlab-node/issues/1478)) ([e5a1904](https://github.com/pattern-lab/patternlab-node/commit/e5a19049f083315939406677b1c0480f4b420569)) +* **uikits:** fix generation of view all pages within uikits ([7d6bdce](https://github.com/pattern-lab/patternlab-node/commit/7d6bdce1b380da15621db27958c57f4b576526db)) +* **uikits:** fix ui_builder_tests ([e75f434](https://github.com/pattern-lab/patternlab-node/commit/e75f4348633457bdaa3e90bbac22c194285fcbe7)) +* updates to address eslint / prettier issues ([d945acc](https://github.com/pattern-lab/patternlab-node/commit/d945acc13b8e4e36f3815b017fbc12266c323d1f)) +* updates to fix eslint / prettier issues; update packages/core to reuse root .eslintrc.js file ([5b7a057](https://github.com/pattern-lab/patternlab-node/commit/5b7a057d46ccd16b5832af1441030c7b76f237a8)) +* **viewall:** fix viewall generation ([543558a](https://github.com/pattern-lab/patternlab-node/commit/543558a692d4db04b7d29f11f940cfd67ae25a6a)) +* **watch:** wire up serve and watch listeners correctly ([04cd18e](https://github.com/pattern-lab/patternlab-node/commit/04cd18e2439f9d44ef1540f3722ea82a7f623c5e)) + + +### Reverts + +* Revert "refactor: optimized engines directory retrieval (#1359)" (#1363) ([a275d36](https://github.com/pattern-lab/patternlab-node/commit/a275d36c50c3846fc51c78baf6e11dba5309f5dc)), closes [#1359](https://github.com/pattern-lab/patternlab-node/issues/1359) [#1363](https://github.com/pattern-lab/patternlab-node/issues/1363) +* Revert "[skip travis] chore(release): publish v5.10.0" ([7496318](https://github.com/pattern-lab/patternlab-node/commit/7496318e083f667b6da914e21595c52442d62703)) ## [6.0.1](https://github.com/pattern-lab/patternlab-node/compare/v6.0.0...v6.0.1) (2023-02-01) diff --git a/packages/core/LICENSE b/packages/core/LICENSE index 3bb526cd2..e4746ea6b 100644 --- a/packages/core/LICENSE +++ b/packages/core/LICENSE @@ -1,20 +1,21 @@ The MIT License (MIT) -Copyright (c) 2018 Brian Muenzenmeyer, https://brianmuenzenmeyer.com & Brad Frost, https://bradfrost.com +Copyright Patternlab contributors -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/packages/core/jest.config.js b/packages/core/jest.config.js new file mode 100644 index 000000000..df9d0aa1f --- /dev/null +++ b/packages/core/jest.config.js @@ -0,0 +1,17 @@ +/* eslint-disable */ +module.exports = { + displayName: 'core', + preset: '../../jest.preset.js', + globals: {}, + testEnvironment: 'node', + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/core', +}; diff --git a/packages/core/package.json b/packages/core/package.json index 5e82b674c..8b23b070c 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -2,39 +2,6 @@ "name": "@pattern-lab/core", "description": "Create atomic design systems with Pattern Lab. This is the core API and orchestrator of the ecosystem.", "version": "6.0.1", - "main": "./src/index.js", - "dependencies": { - "@pattern-lab/engine-handlebars": "^6.0.0", - "@pattern-lab/engine-mustache": "^6.0.0", - "@pattern-lab/live-server": "^6.0.0", - "chalk": "4.1.0", - "chokidar": "3.5.1", - "dive": "0.5.0", - "fs-extra": "10.0.0", - "glob": "7.1.6", - "graphlib": "2.1.8", - "js-beautify": "1.13.5", - "js-yaml": "4.1.0", - "lodash": "4.17.21", - "markdown-it": "12.3.2", - "node-fetch": "2.6.7", - "recursive-copy": "2.0.13", - "update-notifier": "5.1.0" - }, - "devDependencies": { - "@babel/core": "^7.13.14", - "@babel/plugin-proposal-decorators": "^7.13.5", - "@babel/plugin-syntax-jsx": "^7.12.13", - "babel-eslint": "^10.0.2", - "eslint": "^6.1.0", - "eslint-config-prettier": "^6.0.0", - "eslint-plugin-prettier": "^3.1.0", - "jsdoc-to-markdown": "6.0.1", - "prettier": "^2.8.1", - "rewire": "2.5.2", - "standard-version": "9.1.1", - "tap": "14.11.0" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -58,17 +25,10 @@ ], "license": "MIT", "scripts": { - "docs": "node ./scripts/docs.js", - "lint": "eslint -c ../../.eslintrc.js src/**/*.js", - "pretest": "npm run lint", - "release": "standard-version", - "test": "tap test/*_tests.js --reporter spec --coverage" + "docs": "node ./scripts/docs.js" }, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/core/project.json b/packages/core/project.json new file mode 100644 index 000000000..d2a60dab1 --- /dev/null +++ b/packages/core/project.json @@ -0,0 +1,54 @@ +{ + "name": "core", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/core/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/core", + "main": "packages/core/src/index.js", + "tsConfig": "packages/core/tsconfig.lib.json", + "assets": ["packages/core/*.md", "packages/core/LICENSE", "packages/core/patternlab-config.json"], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs core {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/core/**/*.js"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/core/jest.config.js", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/core/src/index.js b/packages/core/src/index.js index 1d46b5788..0df9e9926 100644 --- a/packages/core/src/index.js +++ b/packages/core/src/index.js @@ -8,8 +8,6 @@ * @license MIT */ -'use strict'; - const updateNotifier = require('update-notifier'); const packageInfo = require('../package.json'); @@ -123,18 +121,12 @@ const patternlab_module = function (config) { // }); if (patternlab && patternlab.isBusy) { - logger.info( - 'Pattern Lab is busy building a previous run - returning early.' - ); + logger.info('Pattern Lab is busy building a previous run - returning early.'); return Promise.resolve(); } patternlab.isBusy = true; - return await buildPatterns( - options.cleanPublic, - patternlab, - options.data - ).then(() => { + return await buildPatterns(options.cleanPublic, patternlab, options.data).then(() => { return new ui_builder().buildFrontend(patternlab).then(() => { copier() .copyAndWatch(patternlab.config.paths, patternlab, options) @@ -144,9 +136,7 @@ const patternlab_module = function (config) { // figure out how to detect if serve was called. we should not assume it was if ( patternlab.serverReady //check for server presence - ? this.events.listenerCount( - events.PATTERNLAB_PATTERN_CHANGE - ) === 1 //if the server is started, it has already setup one listener + ? this.events.listenerCount(events.PATTERNLAB_PATTERN_CHANGE) === 1 //if the server is started, it has already setup one listener : !this.events.listenerCount(events.PATTERNLAB_PATTERN_CHANGE) // else, check for the presnce of none ) { this.events.on(events.PATTERNLAB_PATTERN_CHANGE, () => { @@ -163,7 +153,7 @@ const patternlab_module = function (config) { this.events.on(events.PATTERNLAB_GLOBAL_CHANGE, () => { if (!patternlab.isBusy) { return this.build( - Object.assign({}, options, { cleanPublic: true }) // rebuild everything + Object.assign({}, options, { cleanPublic: true }), // rebuild everything ); } return Promise.resolve(); @@ -240,17 +230,11 @@ const patternlab_module = function (config) { */ patternsonly: async function (options) { if (patternlab && patternlab.isBusy) { - logger.info( - 'Pattern Lab is busy building a previous run - returning early.' - ); + logger.info('Pattern Lab is busy building a previous run - returning early.'); return Promise.resolve(); } patternlab.isBusy = true; - return await buildPatterns( - options.cleanPublic, - patternlab, - options.data - ).then(() => { + return await buildPatterns(options.cleanPublic, patternlab, options.data).then(() => { patternlab.isBusy = false; }); }, @@ -277,9 +261,7 @@ const patternlab_module = function (config) { return _api .build(options) .then(() => server.serve()) - .catch((e) => - logger.error(`error inside core index.js server serve: ${e}`) - ); + .catch((e) => logger.error(`error inside core index.js server serve: ${e}`)); }, /** * Reloads any active live-server instances diff --git a/packages/core/src/lib/copier.js b/packages/core/src/lib/copier.js index ba1c22788..f6160ee99 100644 --- a/packages/core/src/lib/copier.js +++ b/packages/core/src/lib/copier.js @@ -11,15 +11,7 @@ const copier = () => { const transform_paths = (directories) => { //create array with all source keys minus our blacklist const dirs = {}; - const blackList = [ - 'root', - 'patterns', - 'data', - 'meta', - 'annotations', - 'patternlabFiles', - 'styleguide', - ]; + const blackList = ['root', 'patterns', 'data', 'meta', 'annotations', 'patternlabFiles', 'styleguide']; _.each(directories.source, (dir, key) => { if (blackList.includes(key)) { return; @@ -57,10 +49,7 @@ const copier = () => { // Adding assets to filter for in case of transformedAssetTypes defined; adapted regex from https://stackoverflow.com/a/6745455 if (patternlab.config.transformedAssetTypes) { - copyOptions.filter = new RegExp( - `.*(?<}))$`, - 'i' - ); + copyOptions.filter = new RegExp(`.*(?<}))$`, 'i'); } //loop through each directory asset object (source / public pairing) @@ -75,12 +64,8 @@ const copier = () => { //just copy copyPromises.push( _.map(patternlab.uikits, (uikit) => { - copyFile( - dir.source, - path.join(basePath, uikit.outputDir, dir.public), - copyOptions - ); - }) + copyFile(dir.source, path.join(basePath, uikit.outputDir, dir.public), copyOptions); + }), ); } }); @@ -91,9 +76,9 @@ const copier = () => { copyFile( path.join(uikit.modulePath, assetDirectories.source.styleguide), path.join(basePath, uikit.outputDir, assetDirectories.public.root), - copyOptions + copyOptions, ); - }) + }), ); // copy the favicon @@ -101,14 +86,10 @@ const copier = () => { _.map(patternlab.uikits, (uikit) => { copyFile( `${assetDirectories.source.root}favicon.ico`, - path.join( - basePath, - uikit.outputDir, - `${assetDirectories.public.root}/favicon.ico` - ), - copyOptions + path.join(basePath, uikit.outputDir, `${assetDirectories.public.root}/favicon.ico`), + copyOptions, ); - }) + }), ); return Promise.all(copyPromises).then(() => { diff --git a/packages/core/src/lib/exportData.js b/packages/core/src/lib/exportData.js index aeef0a845..5fd0750d5 100644 --- a/packages/core/src/lib/exportData.js +++ b/packages/core/src/lib/exportData.js @@ -24,10 +24,7 @@ module.exports = function (patternlab, uikit) { //ishControls output += - 'var ishControls = {"ishControlsHide":' + - JSON.stringify(patternlab.config.ishControlsHide) + - '};' + - eol; + 'var ishControls = {"ishControlsHide":' + JSON.stringify(patternlab.config.ishControlsHide) + '};' + eol; //navItems output += @@ -39,47 +36,32 @@ module.exports = function (patternlab, uikit) { eol; //patternPaths - output += - 'var patternPaths = ' + JSON.stringify(patternlab.patternPaths) + ';' + eol; + output += 'var patternPaths = ' + JSON.stringify(patternlab.patternPaths) + ';' + eol; //viewAllPaths - output += - 'var viewAllPaths = ' + JSON.stringify(patternlab.viewAllPaths) + ';' + eol; + output += 'var viewAllPaths = ' + JSON.stringify(patternlab.viewAllPaths) + ';' + eol; //plugins - output += - 'var plugins = ' + JSON.stringify(patternlab.plugins || []) + ';' + eol; + output += 'var plugins = ' + JSON.stringify(patternlab.plugins || []) + ';' + eol; //smaller config elements output += 'var defaultShowPatternInfo = ' + - (patternlab.config.defaultShowPatternInfo - ? patternlab.config.defaultShowPatternInfo - : 'false') + + (patternlab.config.defaultShowPatternInfo ? patternlab.config.defaultShowPatternInfo : 'false') + ';' + eol; output += 'var defaultPattern = "' + - (patternlab.config.defaultPattern - ? patternlab.config.defaultPattern - : 'all') + + (patternlab.config.defaultPattern ? patternlab.config.defaultPattern : 'all') + '";' + eol; //annotations const annotationsJSON = annotationExporter.gather(); - const annotations = - 'var comments = { "comments" : ' + JSON.stringify(annotationsJSON) + '};'; + const annotations = 'var comments = { "comments": ' + JSON.stringify(annotationsJSON) + '};'; fs.outputFileSync( - path.resolve( - path.join( - process.cwd(), - uikit.outputDir, - paths.public.annotations, - 'annotations.js' - ) - ), - annotations + path.resolve(path.join(process.cwd(), uikit.outputDir, paths.public.annotations, 'annotations.js')), + annotations, ); // add module.export to the Nodejs-specific file generated. @@ -89,18 +71,12 @@ module.exports = function (patternlab, uikit) { //write all output to patternlab-data fs.outputFileSync( - path.resolve( - path.join(process.cwd(), uikit.outputDir, paths.public.data), - 'patternlab-data.js' - ), - output + path.resolve(path.join(process.cwd(), uikit.outputDir, paths.public.data), 'patternlab-data.js'), + output, ); fs.outputFileSync( - path.resolve( - path.join(process.cwd(), uikit.outputDir, paths.public.data), - 'patternlab-data.cjs.js' - ), - exportedOutput + path.resolve(path.join(process.cwd(), uikit.outputDir, paths.public.data), 'patternlab-data.cjs.js'), + exportedOutput, ); return output; diff --git a/packages/core/src/lib/loadPattern.js b/packages/core/src/lib/loadPattern.js index b5990fecf..e7d75067d 100644 --- a/packages/core/src/lib/loadPattern.js +++ b/packages/core/src/lib/loadPattern.js @@ -19,6 +19,12 @@ let fs = require('fs-extra'); //eslint-disable-line prefer-const // loads a pattern from disk, creates a Pattern object from it and // all its associated files, and records it in patternlab.patterns[] +/** + * @type Class + * @param {*} relPath + * @param {*} patternlab + * @returns + */ module.exports = function (relPath, patternlab) { const fileObject = path.parse(relPath); @@ -42,25 +48,17 @@ module.exports = function (relPath, patternlab) { relPath + ' was found greater than 3 levels deep from ' + patternlab.config.paths.source.patterns + - '.' - ); - logger.warning( - "It's strongly suggested to not deviate from the following structure under _patterns/" - ); - logger.warning( - '[patternGroup]/[patternSubgroup]/[patternName].[patternExtension]' + '.', ); + logger.warning("It's strongly suggested to not deviate from the following structure under _patterns/"); + logger.warning('[patternGroup]/[patternSubgroup]/[patternName].[patternExtension]'); logger.warning('or'); - logger.warning( - '[patternGroup]/[patternSubgroup]/[patternName]/[patternName].[patternExtension]' - ); + logger.warning('[patternGroup]/[patternSubgroup]/[patternName]/[patternName].[patternExtension]'); logger.warning(''); logger.warning( - 'While Pattern Lab may still function, assets may 404 and frontend links may break. Consider yourself warned. ' - ); - logger.warning( - 'Read More: https://patternlab.io/docs/overview-of-patterns/' + 'While Pattern Lab may still function, assets may 404 and frontend links may break. Consider yourself warned. ', ); + logger.warning('Read More: https://patternlab.io/docs/overview-of-patterns/'); logger.warning(''); } @@ -80,23 +78,15 @@ module.exports = function (relPath, patternlab) { //look for a json file for this template let jsonFilename; try { - jsonFilename = path.resolve( - patternsPath, - currentPattern.subdir, - currentPattern.fileName - ); + jsonFilename = path.resolve(patternsPath, currentPattern.subdir, currentPattern.fileName); const patternData = dataLoader.loadDataFromFile(jsonFilename, fs); if (patternData) { currentPattern.jsonFileData = patternData; - logger.debug( - `found pattern-specific data for ${currentPattern.patternPartial}` - ); + logger.debug(`found pattern-specific data for ${currentPattern.patternPartial}`); } } catch (err) { - logger.error( - `There was an error parsing sibling JSON for ${currentPattern.relPath}` - ); + logger.error(`There was an error parsing sibling JSON for ${currentPattern.relPath}`); logger.error(err); } @@ -106,21 +96,17 @@ module.exports = function (relPath, patternlab) { listJsonFileName = path.resolve( patternsPath, currentPattern.subdir, - `${currentPattern.fileName}.listitems` + `${currentPattern.fileName}.listitems`, ); const listItemsData = dataLoader.loadDataFromFile(listJsonFileName, fs); if (listItemsData) { - logger.debug( - `found pattern-specific listitems data for ${currentPattern.patternPartial}` - ); + logger.debug(`found pattern-specific listitems data for ${currentPattern.patternPartial}`); currentPattern.listitems = listItemsData; buildListItems(currentPattern); } } catch (err) { - logger.error( - `There was an error parsing sibling listitem JSON for ${currentPattern.relPath}` - ); + logger.error(`There was an error parsing sibling listitem JSON for ${currentPattern.relPath}`); logger.error(err); } @@ -133,8 +119,7 @@ module.exports = function (relPath, patternlab) { currentPattern.template = fs.readFileSync(templatePath, 'utf8'); //find any pattern parameters that may be in the current pattern - currentPattern.parameteredPartials = - currentPattern.findPartialsWithPatternParameters(); + currentPattern.parameteredPartials = currentPattern.findPartialsWithPatternParameters(); [ templatePath, diff --git a/packages/core/src/lib/loadPatternGraph.js b/packages/core/src/lib/loadPatternGraph.js index c1f4ab851..d400c0e2b 100644 --- a/packages/core/src/lib/loadPatternGraph.js +++ b/packages/core/src/lib/loadPatternGraph.js @@ -8,6 +8,7 @@ const PatternGraph = require('./pattern_graph').PatternGraph; * For that reason an empty graph is returned in this case, so every pattern will be flagged as * "needs recompile". Otherwise the pattern graph is loaded from the meta data. * + * @type Class * @param patternlab * @param {boolean} deletePatternDir When {@code true}, an empty graph is returned * @return {PatternGraph} diff --git a/packages/core/src/lib/object_factory.js b/packages/core/src/lib/object_factory.js index 318b4cd25..12b2fe00b 100644 --- a/packages/core/src/lib/object_factory.js +++ b/packages/core/src/lib/object_factory.js @@ -22,17 +22,13 @@ const prefixMatcherDeprecationCheckHidden = /^_.+/; * https://github.com/pattern-lab/patternlab-node/pull/1016 * https://github.com/pattern-lab/patternlab-node/pull/1143 * + * @type Class * @param {string} relPath relative directory * @param {Object} jsonFileData The JSON used to render values in the pattern. * @param {Patternlab} patternlab The actual pattern lab instance * @param {boolean} isPromoteToFlatPatternRun specifies if the pattern needs to be removed from its deep nesting folder */ -const Pattern = function ( - relPath, - jsonFileData, - patternlab, - isPromoteToFlatPatternRun -) { +export const Pattern = function (relPath, jsonFileData, patternlab, isPromoteToFlatPatternRun) { this.relPath = path.normalize(relPath); // 'atoms/global/colors.mustache' /** @@ -45,9 +41,7 @@ const Pattern = function ( pathObj, patternlab, isPromoteToFlatPatternRun || - (patternlab && - patternlab.config && - patternlab.config.allPatternsAreDeeplyNested) + (patternlab && patternlab.config && patternlab.config.allPatternsAreDeeplyNested), ); this.fileName = pathObj.name; // 'colors' @@ -65,7 +59,7 @@ const Pattern = function ( !patternlab.config.disableDeprecationWarningForOrderPatterns ) { logger.warning( - `${info.shortNotation}-${this.fileName} "Pattern", "Group" and "Subgroup" ordering by number prefix (##-) will be deprecated in the future.\n See https://patternlab.io/docs/reorganizing-patterns/` + `${info.shortNotation}-${this.fileName} "Pattern", "Group" and "Subgroup" ordering by number prefix (##-) will be deprecated in the future.\n See https://patternlab.io/docs/reorganizing-patterns/`, ); } @@ -79,7 +73,7 @@ const Pattern = function ( !patternlab.config.disableDeprecationWarningForHiddenPatterns ) { logger.warning( - `${info.shortNotation}/${this.fileName} "Pattern", "Group" and "Subgroup" hiding by underscore prefix (_*) will be deprecated in the future.\n See https://patternlab.io/docs/hiding-patterns-in-the-navigation/` + `${info.shortNotation}/${this.fileName} "Pattern", "Group" and "Subgroup" hiding by underscore prefix (_*) will be deprecated in the future.\n See https://patternlab.io/docs/hiding-patterns-in-the-navigation/`, ); } @@ -101,9 +95,7 @@ const Pattern = function ( this.jsonFileData = jsonFileData || {}; // flip tildes to dashes - this.patternBaseName = this.fileName - .replace(prefixMatcher, '') - .replace('~', '-'); // 'colors' + this.patternBaseName = this.fileName.replace(prefixMatcher, '').replace('~', '-'); // 'colors' // Fancy name - Uppercase letters of pattern name partials. // global-colors -> 'Global Colors' @@ -121,9 +113,7 @@ const Pattern = function ( // Calculated path from the root of the public directory to the generated // (rendered!) html file for this pattern, to be shown in the iframe - this.patternLink = patternlab - ? this.getPatternLink(patternlab, 'rendered') - : null; + this.patternLink = patternlab ? this.getPatternLink(patternlab, 'rendered') : null; // The canonical "key" by which this pattern is known. This is the callable // name of the pattern. UPDATE: this.key is now known as this.patternPartial @@ -145,8 +135,7 @@ const Pattern = function ( * molecules * flatPattern */ - this.isFlatPattern = - this.patternGroup === this.patternSubgroup || !this.patternSubgroup; + this.isFlatPattern = this.patternGroup === this.patternSubgroup || !this.patternSubgroup; this.isPattern = true; this.patternState = ''; @@ -207,11 +196,7 @@ Pattern.prototype = { } if (this.engine) { - const promise = this.engine.renderPattern( - this, - data || this.jsonFileData, - partials - ); + const promise = this.engine.renderPattern(this, data || this.jsonFileData, partials); return promise .then((results) => { return results; @@ -242,9 +227,7 @@ Pattern.prototype = { getPatternLink: function (patternlab, suffixType, customFileExtension) { // if no suffixType is provided, we default to rendered const suffixConfig = patternlab.config.outputFileSuffixes; - const suffix = suffixType - ? suffixConfig[suffixType] - : suffixConfig.rendered; + const suffix = suffixType ? suffixConfig[suffixType] : suffixConfig.rendered; if (suffixType === 'rawTemplate') { return this.name + path.sep + this.name + suffix + this.fileExtension; @@ -346,8 +329,7 @@ Pattern.prototype = { // colors(.mustache) is deeply nested in atoms-/global/colors patternlab: patternlab, patternHasOwnDir: isPromoteToFlatPatternRun - ? path.basename(pathObj.dir).replace(prefixMatcher, '') === - pathObj.name.replace(prefixMatcher, '') || + ? path.basename(pathObj.dir).replace(prefixMatcher, '') === pathObj.name.replace(prefixMatcher, '') || path.basename(pathObj.dir).replace(prefixMatcher, '') === pathObj.name.split('~')[0].replace(prefixMatcher, '') : false, @@ -367,9 +349,7 @@ Pattern.prototype = { } else if (info.dirLevel === 2 && info.patternHasOwnDir) { // -> ./folder info.shortNotation = path.dirname(pathObj.dir).replace(prefixMatcher, ''); - info.patternGroupOrder = Pattern.prototype.setPatternOrderDataForInfo( - path.dirname(pathObj.dir) - ); + info.patternGroupOrder = Pattern.prototype.setPatternOrderDataForInfo(path.dirname(pathObj.dir)); } else { // -> ./folder/folder info.shortNotation = pathObj.dir @@ -377,14 +357,12 @@ Pattern.prototype = { .map((o, i) => { if (i === 0) { // TODO: Remove when prefix gets deprecated - info.patternGroupOrder = - Pattern.prototype.setPatternOrderDataForInfo(o); + info.patternGroupOrder = Pattern.prototype.setPatternOrderDataForInfo(o); } if (i === 1) { // TODO: Remove when prefix gets deprecated - info.patternSubgroupOrder = - Pattern.prototype.setPatternOrderDataForInfo(o); + info.patternSubgroupOrder = Pattern.prototype.setPatternOrderDataForInfo(o); } return o.replace(prefixMatcher, ''); @@ -435,13 +413,8 @@ Pattern.create = function (relPath, data, customProps, patternlab) { return Object.assign(newPattern, customProps); }; -const CompileState = { +export const CompileState = { NEEDS_REBUILD: 'needs rebuild', BUILDING: 'building', CLEAN: 'clean', }; - -module.exports = { - Pattern: Pattern, - CompileState: CompileState, -}; diff --git a/packages/core/src/lib/pattern_engines.js b/packages/core/src/lib/pattern_engines.js index 71d4da883..3124f8fbc 100644 --- a/packages/core/src/lib/pattern_engines.js +++ b/packages/core/src/lib/pattern_engines.js @@ -67,10 +67,10 @@ function findEnginesInConfig(config) { return config.engines; } logger.warning( - "Scanning the 'node_modules' folder for pattern engines is deprecated and will be removed in v7." + "Scanning the 'node_modules' folder for pattern engines is deprecated and will be removed in v7.", ); logger.warning( - 'To configure your engines in patternlab-config.json, see https://patternlab.io/docs/editing-the-configuration-options/#heading-engines' + 'To configure your engines in patternlab-config.json, see https://patternlab.io/docs/editing-the-configuration-options/#heading-engines', ); return null; } @@ -106,10 +106,8 @@ const PatternEngines = Object.create({ // Quick fix until we've removed @pattern-lab/engine-mustache, starting with https://github.com/pattern-lab/patternlab-node/issues/1239 & https://github.com/pattern-lab/patternlab-node/pull/1455 // @TODO: Remove after removing @pattern-lab/engine-mustache dependency enginesInConfig.mustache = enginesInConfig.mustache || {}; - enginesInConfig.mustache.package = - enginesInConfig.mustache.package || '@pattern-lab/engine-mustache'; - enginesInConfig.mustache.extensions = - enginesInConfig.mustache.extensions || 'mustache'; + enginesInConfig.mustache.package = enginesInConfig.mustache.package || '@pattern-lab/engine-mustache'; + enginesInConfig.mustache.extensions = enginesInConfig.mustache.extensions || 'mustache'; // Try loading each of the configured pattern engines // eslint-disable-next-line guard-for-in @@ -127,7 +125,9 @@ const PatternEngines = Object.create({ throw new Error('already loaded, skipping.'); } if ('package' in engineConfig) { - self[name] = require(engineConfig.package); + const Engine = require(engineConfig.package).default; + const engine = new Engine(); + self[name] = engine; if (typeof self[name].usePatternLabConfig === 'function') { self[name].usePatternLabConfig(patternLabConfig); } @@ -136,7 +136,7 @@ const PatternEngines = Object.create({ } } else { logger.warning( - `Engine ${name} not configured correctly. Please configure your engines in patternlab-config.json as documented in https://patternlab.io/docs/editing-the-configuration-options/#heading-engines` + `Engine ${name} not configured correctly. Please configure your engines in patternlab-config.json as documented in https://patternlab.io/docs/editing-the-configuration-options/#heading-engines`, ); } } catch (err) { @@ -146,7 +146,7 @@ const PatternEngines = Object.create({ logger.info( `Pattern Engine ${name} / package ${engineConfig.package}: ${ errorMessage ? errorMessage : successMessage - }` + }`, ); } } @@ -154,9 +154,7 @@ const PatternEngines = Object.create({ // Try to load engines! We scan for engines at each path specified above. This // function is kind of a big deal. enginesDirectories.forEach(function (engineDirectory) { - const enginesInThisDir = findEngineModulesInDirectory( - engineDirectory.path - ); + const enginesInThisDir = findEngineModulesInDirectory(engineDirectory.path); `Loading engines from ${engineDirectory.displayName}: ${engineDirectory.path} ...`; @@ -174,11 +172,10 @@ const PatternEngines = Object.create({ if (self[engineDiscovery.name]) { throw new Error('already loaded, skipping.'); } - self[engineDiscovery.name] = require(engineDiscovery.modulePath); - if ( - typeof self[engineDiscovery.name].usePatternLabConfig === - 'function' - ) { + const Engine = require(engineDiscovery.modulePath).default; + const engine = new Engine(); + self[engineDiscovery.name] = engine; + if (typeof self[engineDiscovery.name].usePatternLabConfig === 'function') { self[engineDiscovery.name].usePatternLabConfig(patternLabConfig); } if (typeof self[engineDiscovery.name].spawnMeta === 'function') { @@ -189,11 +186,9 @@ const PatternEngines = Object.create({ } finally { // report on the status of the engine, one way or another! logger.info( - `Pattern Engine ${ - engineDiscovery.name - } by discovery (deprecated): ${ + `Pattern Engine ${engineDiscovery.name} by discovery (deprecated): ${ errorMessage ? errorMessage : successMessage - }` + }`, ); } }); @@ -216,11 +211,7 @@ const PatternEngines = Object.create({ getEngineNameForPattern: function (pattern) { // avoid circular dependency by putting this in here. TODO: is this slow? const of = require('./object_factory'); - if ( - pattern instanceof of.Pattern && - typeof pattern.fileExtension === 'string' && - pattern.fileExtension - ) { + if (pattern instanceof of.Pattern && typeof pattern.fileExtension === 'string' && pattern.fileExtension) { //loop through known engines and find the one that supports the pattern's fileExtension const engineNames = Object.keys(this); for (let i = 0; i < engineNames.length; i++) { @@ -315,8 +306,7 @@ const PatternEngines = Object.create({ } // not a hidden pattern, let's dig deeper - const supportedPatternFileExtensions = - PatternEngines.getSupportedFileExtensions(); + const supportedPatternFileExtensions = PatternEngines.getSupportedFileExtensions(); return ( supportedPatternFileExtensions.lastIndexOf(extension) !== -1 || PatternEngines.isPseudoPatternJSON(filename) diff --git a/packages/core/src/lib/pattern_graph.js b/packages/core/src/lib/pattern_graph.js index a5320292d..7bc17e3c8 100644 --- a/packages/core/src/lib/pattern_graph.js +++ b/packages/core/src/lib/pattern_graph.js @@ -25,6 +25,7 @@ const PATTERN_GRAPH_VERSION = 1; * * @constructor Constructs a new PatternGraph from a JSON-style JavaScript object or an empty graph * if no argument is given. + * @type Class * * @param {Graph} graph The graphlib graph object * @param {int} timestamp The unix timestamp @@ -173,9 +174,7 @@ PatternGraph.prototype = { }); const nodes = this.graph.nodes(); - const changedNodes = nodes.filter((n) => - compileStateFilter(this.patterns, n) - ); + const changedNodes = nodes.filter((n) => compileStateFilter(this.patterns, n)); this.nodes2patterns(changedNodes).forEach((pattern) => { const patternNode = nodeName(pattern); if (!compileGraph.hasNode(patternNode)) { @@ -360,10 +359,7 @@ PatternGraph.fromJson = function (o) { * @param {string} [fileName='dependencyGraph.json'] Name of the graph file * @return {string} */ -PatternGraph.resolveJsonGraphFile = function ( - filePath = process.cwd(), - fileName = 'dependencyGraph.json' -) { +PatternGraph.resolveJsonGraphFile = function (filePath = process.cwd(), fileName = 'dependencyGraph.json') { return path.resolve(filePath, fileName); }; diff --git a/packages/core/src/lib/pseudopattern_hunter.js b/packages/core/src/lib/pseudopattern_hunter.js index 28d4f3e1a..fe37f9ee1 100644 --- a/packages/core/src/lib/pseudopattern_hunter.js +++ b/packages/core/src/lib/pseudopattern_hunter.js @@ -15,21 +15,17 @@ const changes_hunter = new ch(); const yaml = require('js-yaml'); const dataMerger = require('./dataMerger'); +/** + * @type Class + */ const pseudopattern_hunter = function () {}; -pseudopattern_hunter.prototype.find_pseudopatterns = function ( - currentPattern, - patternlab -) { +pseudopattern_hunter.prototype.find_pseudopatterns = function (currentPattern, patternlab) { const paths = patternlab.config.paths; //look for a pseudo pattern by checking if there is a file containing same //name, with ~ in it, ending in .json, .yml or .yaml - const needle = - currentPattern.subdir + - '/' + - currentPattern.fileName + - '~*.{json,yml,yaml}'; + const needle = currentPattern.subdir + '/' + currentPattern.fileName + '~*.{json,yml,yaml}'; const pseudoPatterns = glob.sync(needle, { cwd: paths.source.patterns, debug: false, @@ -38,42 +34,27 @@ pseudopattern_hunter.prototype.find_pseudopatterns = function ( if (pseudoPatterns.length > 0) { for (let i = 0; i < pseudoPatterns.length; i++) { - logger.debug( - `Found pseudoPattern variant of ${currentPattern.patternPartial}` - ); + logger.debug(`Found pseudoPattern variant of ${currentPattern.patternPartial}`); //we want to do everything we normally would here, except instead read the pseudoPattern data let variantFileFullPath; let variantFileData; try { - variantFileFullPath = path.resolve( - paths.source.patterns, - pseudoPatterns[i] - ); - variantFileData = yaml.load( - fs.readFileSync(variantFileFullPath, 'utf8') - ); + variantFileFullPath = path.resolve(paths.source.patterns, pseudoPatterns[i]); + variantFileData = yaml.load(fs.readFileSync(variantFileFullPath, 'utf8')); } catch (err) { - logger.error( - `There was an error parsing pseudopattern JSON for ${currentPattern.relPath}` - ); + logger.error(`There was an error parsing pseudopattern JSON for ${currentPattern.relPath}`); logger.error(err); } //extend any existing data with variant data - variantFileData = dataMerger( - currentPattern.jsonFileData, - variantFileData, - patternlab.config - ); + variantFileData = dataMerger(currentPattern.jsonFileData, variantFileData, patternlab.config); - const variantName = pseudoPatterns[i] - .substring(pseudoPatterns[i].indexOf('~') + 1) - .split('.')[0]; + const variantName = pseudoPatterns[i].substring(pseudoPatterns[i].indexOf('~') + 1).split('.')[0]; const variantExtension = pseudoPatterns[i].split('.').slice(-1).pop(); const variantFilePath = path.join( currentPattern.subdir, - currentPattern.fileName + '~' + variantName + '.' + variantExtension + currentPattern.fileName + '~' + variantName + '.' + variantExtension, ); const lm = fs.statSync(variantFileFullPath); const patternVariant = Pattern.create( @@ -95,7 +76,7 @@ pseudopattern_hunter.prototype.find_pseudopatterns = function ( // use the same template engine as the non-variant engine: currentPattern.engine, }, - patternlab + patternlab, ); patternVariant.order = _.clone(currentPattern.order); patternVariant.hidden = _.clone(currentPattern.hidden); diff --git a/packages/core/tsconfig.json b/packages/core/tsconfig.json new file mode 100644 index 000000000..9d7f15bc8 --- /dev/null +++ b/packages/core/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "allowJs": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/core/tsconfig.lib.json b/packages/core/tsconfig.lib.json new file mode 100644 index 000000000..f9de8b874 --- /dev/null +++ b/packages/core/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts", "src/**/*.js"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts", "src/**/*.spec.js", "src/**/*.test.js"] +} diff --git a/packages/core/tsconfig.spec.json b/packages/core/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/core/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/create/.eslintrc.json b/packages/create/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/create/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/development-edition-engine-react/LICENSE b/packages/create/LICENSE similarity index 96% rename from packages/development-edition-engine-react/LICENSE rename to packages/create/LICENSE index 0e6363fb1..e4746ea6b 100644 --- a/packages/development-edition-engine-react/LICENSE +++ b/packages/create/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2016 Pattern Lab +Copyright Patternlab contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/create/README.md b/packages/create/README.md index 28d56e5da..f996b84fa 100644 --- a/packages/create/README.md +++ b/packages/create/README.md @@ -6,7 +6,7 @@ To get started, simply run: npm create pattern-lab ``` -Then follow the prompts. +Then follow the prompts. This is the same as using the main Pattern Lab CLI's `init` command: diff --git a/packages/create/jest.config.ts b/packages/create/jest.config.ts new file mode 100644 index 000000000..c2d323de3 --- /dev/null +++ b/packages/create/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'create', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/create', +}; diff --git a/packages/create/package.json b/packages/create/package.json index 48d67ba5a..3b3c6edf4 100644 --- a/packages/create/package.json +++ b/packages/create/package.json @@ -2,17 +2,9 @@ "name": "create-pattern-lab", "version": "6.0.1", "description": "", - "bin": "index.js", - "main": "index.js", - "scripts": {}, - "dependencies": { - "@pattern-lab/cli": "^6.0.1" - }, + "bin": "src/index.js", "author": "", "license": "MIT", - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac", "engines": { "node": ">=14.21.1" diff --git a/packages/create/project.json b/packages/create/project.json new file mode 100644 index 000000000..8f2e02baf --- /dev/null +++ b/packages/create/project.json @@ -0,0 +1,55 @@ +{ + "name": "create", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/create/src", + "projectType": "library", + "implicitDependencies": ["cli"], + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/create", + "main": "packages/create/src/index.js", + "tsConfig": "packages/create/tsconfig.lib.json", + "assets": ["packages/create/*.md", "packages/create/LICENSE"], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs create {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/create/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/create/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/create/index.js b/packages/create/src/index.js old mode 100755 new mode 100644 similarity index 100% rename from packages/create/index.js rename to packages/create/src/index.js diff --git a/packages/create/tsconfig.json b/packages/create/tsconfig.json new file mode 100644 index 000000000..9d7f15bc8 --- /dev/null +++ b/packages/create/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "allowJs": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/create/tsconfig.lib.json b/packages/create/tsconfig.lib.json new file mode 100644 index 000000000..f9de8b874 --- /dev/null +++ b/packages/create/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts", "src/**/*.js"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts", "src/**/*.spec.js", "src/**/*.test.js"] +} diff --git a/packages/create/tsconfig.spec.json b/packages/create/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/create/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/development-edition-engine-handlebars/.gitignore b/packages/development-edition-engine-handlebars/.gitignore index 534543a52..a5769f88e 100644 --- a/packages/development-edition-engine-handlebars/.gitignore +++ b/packages/development-edition-engine-handlebars/.gitignore @@ -7,4 +7,4 @@ Thumbs.db .idea/ public dependencyGraph.json -source/* +source diff --git a/packages/development-edition-engine-handlebars/.npmrc b/packages/development-edition-engine-handlebars/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/development-edition-engine-handlebars/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/development-edition-engine-handlebars/.nvmrc b/packages/development-edition-engine-handlebars/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/development-edition-engine-handlebars/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/development-edition-engine-handlebars/CHANGELOG.md b/packages/development-edition-engine-handlebars/CHANGELOG.md deleted file mode 100644 index c4030bb02..000000000 --- a/packages/development-edition-engine-handlebars/CHANGELOG.md +++ /dev/null @@ -1,494 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -## [6.0.1](https://github.com/pattern-lab/patternlab-node/compare/v6.0.0...v6.0.1) (2023-02-01) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [6.0.0](https://github.com/pattern-lab/patternlab-node/compare/v5.17.0...v6.0.0) (2023-01-31) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.17.0](https://github.com/pattern-lab/patternlab-node/compare/v5.16.4...v5.17.0) (2022-09-25) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.16.4](https://github.com/pattern-lab/patternlab-node/compare/v5.16.2...v5.16.4) (2022-09-23) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.16.2](https://github.com/pattern-lab/patternlab-node/compare/v5.16.1...v5.16.2) (2022-02-07) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.16.1](https://github.com/pattern-lab/patternlab-node/compare/v5.16.0...v5.16.1) (2022-01-29) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.16.0](https://github.com/pattern-lab/patternlab-node/compare/v5.15.7...v5.16.0) (2022-01-29) - - -### Bug Fixes - -* **annotations:** displaying annotation tooltips correctly ([#1406](https://github.com/pattern-lab/patternlab-node/issues/1406)) ([3f33ce5](https://github.com/pattern-lab/patternlab-node/commit/3f33ce5c51f2f7a6afd86d3500b7659afd0198e6)), closes [#2](https://github.com/pattern-lab/patternlab-node/issues/2) [#1](https://github.com/pattern-lab/patternlab-node/issues/1) - - - - - -## [5.15.7](https://github.com/pattern-lab/patternlab-node/compare/v5.15.6...v5.15.7) (2021-12-07) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.15.6](https://github.com/pattern-lab/patternlab-node/compare/v5.15.5...v5.15.6) (2021-12-07) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.15.5](https://github.com/pattern-lab/patternlab-node/compare/v5.15.3...v5.15.5) (2021-12-06) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.15.4](https://github.com/pattern-lab/patternlab-node/compare/v5.15.3...v5.15.4) (2021-12-06) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.15.3](https://github.com/pattern-lab/patternlab-node/compare/v5.15.2...v5.15.3) (2021-11-21) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.15.2](https://github.com/pattern-lab/patternlab-node/compare/v5.15.1...v5.15.2) (2021-11-03) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.15.1](https://github.com/pattern-lab/patternlab-node/compare/v5.15.0...v5.15.1) (2021-10-16) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.15.0](https://github.com/pattern-lab/patternlab-node/compare/v5.14.3...v5.15.0) (2021-07-01) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.14.3](https://github.com/pattern-lab/patternlab-node/compare/v5.14.2...v5.14.3) (2021-05-17) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.14.2](https://github.com/pattern-lab/patternlab-node/compare/v5.14.1...v5.14.2) (2021-03-28) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.14.1](https://github.com/pattern-lab/patternlab-node/compare/v5.14.0...v5.14.1) (2021-02-19) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.14.0](https://github.com/pattern-lab/patternlab-node/compare/v5.13.3...v5.14.0) (2021-01-12) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.13.3](https://github.com/pattern-lab/patternlab-node/compare/v5.13.2...v5.13.3) (2020-12-17) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.13.2](https://github.com/pattern-lab/patternlab-node/compare/v5.13.1...v5.13.2) (2020-11-12) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.13.1](https://github.com/pattern-lab/patternlab-node/compare/v5.13.0...v5.13.1) (2020-09-06) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.13.0](https://github.com/pattern-lab/patternlab-node/compare/v5.12.0...v5.13.0) (2020-08-26) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.12.0](https://github.com/pattern-lab/patternlab-node/compare/v5.11.1...v5.12.0) (2020-08-09) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.11.1](https://github.com/pattern-lab/patternlab-node/compare/v5.10.2...v5.11.1) (2020-06-28) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.11.0](https://github.com/pattern-lab/patternlab-node/compare/v5.10.2...v5.11.0) (2020-06-28) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.10.2](https://github.com/pattern-lab/patternlab-node/compare/v5.10.1...v5.10.2) (2020-05-24) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.10.1](https://github.com/pattern-lab/patternlab-node/compare/v5.10.0...v5.10.1) (2020-05-09) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.10.0](https://github.com/pattern-lab/patternlab-node/compare/v5.9.3...v5.10.0) (2020-05-09) - - -### Bug Fixes - -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/issues/1192) ([b4eb12e](https://github.com/pattern-lab/patternlab-node/commit/b4eb12e68ceb402964a7e303610e5b0c008876ba)) - - - - - -## [5.9.3](https://github.com/pattern-lab/patternlab-node/compare/v5.9.2...v5.9.3) (2020-05-01) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.9.2](https://github.com/pattern-lab/patternlab-node/compare/v5.9.1...v5.9.2) (2020-04-24) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.9.1](https://github.com/pattern-lab/patternlab-node/compare/v5.9.0...v5.9.1) (2020-04-24) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.9.0](https://github.com/pattern-lab/patternlab-node/compare/v5.8.0...v5.9.0) (2020-04-24) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.7.2](https://github.com/pattern-lab/patternlab-node/compare/v5.7.1...v5.7.2) (2020-03-24) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.7.1](https://github.com/pattern-lab/patternlab-node/compare/v5.7.0...v5.7.1) (2020-02-24) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.7.0](https://github.com/pattern-lab/patternlab-node/compare/v5.6.0...v5.7.0) (2020-02-17) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.6.0](https://github.com/pattern-lab/patternlab-node/compare/v5.5.0...v5.6.0) (2020-01-18) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - - -# [5.5.0](https://github.com/pattern-lab/patternlab-node/compare/v5.4.2...v5.5.0) (2019-12-19) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.4.2](https://github.com/pattern-lab/patternlab-node/compare/v5.4.1...v5.4.2) (2019-11-27) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.4.1](https://github.com/pattern-lab/patternlab-node/compare/v5.4.0...v5.4.1) (2019-11-26) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.4.0](https://github.com/pattern-lab/patternlab-node/compare/v5.3.3...v5.4.0) (2019-11-26) - - -### Features - -* major improvements to local UIKit workflow ([4dc9173](https://github.com/pattern-lab/patternlab-node/commit/4dc9173a5a44b422e9677824de3728048b7c4f05)) - - - - - -## [5.3.3](https://github.com/pattern-lab/patternlab-node/compare/v5.3.2...v5.3.3) (2019-11-22) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - - -## [5.3.2](https://github.com/pattern-lab/patternlab-node/compare/v5.3.1...v5.3.2) (2019-11-14) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.3.1](https://github.com/pattern-lab/patternlab-node/compare/v5.3.0...v5.3.1) (2019-11-13) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.3.0](https://github.com/pattern-lab/patternlab-node/compare/v5.2.0...v5.3.0) (2019-11-13) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.2.0](https://github.com/pattern-lab/patternlab-node/compare/v5.1.0...v5.2.0) (2019-11-12) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - - -# [5.1.0](https://github.com/pattern-lab/patternlab-node/compare/v5.0.2...v5.1.0) (2019-10-29) - - -### Features - -* **config:** add new default pattern export options ([a7487a0](https://github.com/pattern-lab/patternlab-node/commit/a7487a0681cb11e6f3c5c8eaefd62e5648ad5ea3)) - - - - - -## [5.0.2](https://github.com/pattern-lab/patternlab-node/compare/v5.0.1...v5.0.2) (2019-10-28) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## [5.0.1](https://github.com/pattern-lab/patternlab-node/compare/v5.0.0...v5.0.1) (2019-10-28) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [5.0.0](https://github.com/pattern-lab/patternlab-node/compare/v3.0.0-beta.3...v5.0.0) (2019-10-25) - - -### Bug Fixes - -* Rename Handlebars and Nunjucks extension setting to "extend" ([74e5af2](https://github.com/pattern-lab/patternlab-node/commit/74e5af28c4e714fdfc1db535b94c52f3dc14a3a4)) -* update the default pattern that displays in the Handlebars demo ([ff1d85f](https://github.com/pattern-lab/patternlab-node/commit/ff1d85f2852fc4f210841e8e0aaf14b55165ce58)) - - -### Features - -* **engine-handlebars:** Demonstration of custom Handlebars helper ([f330b5b](https://github.com/pattern-lab/patternlab-node/commit/f330b5bca72f2f34bfafe5c2c64e6b0b8823eb1c)) -* **plugin-tab, core:** initial plugin hook exploration ([2f3d39a](https://github.com/pattern-lab/patternlab-node/commit/2f3d39ac6b125ad4c6b872e27ee224ce2ea33a12)) -* introduce netlify preview ([6c5d332](https://github.com/pattern-lab/patternlab-node/commit/6c5d332479fb6836bd8bd5530a074d13440f8ae4)) - - - - - - -## [0.1.6](https://github.com/pattern-lab/patternlab-node/compare/@pattern-lab/development-edition-engine-handlebars@0.1.5...@pattern-lab/development-edition-engine-handlebars@0.1.6) (2019-10-14) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - - -## [0.1.5](https://github.com/pattern-lab/patternlab-node/compare/@pattern-lab/development-edition-engine-handlebars@0.1.4...@pattern-lab/development-edition-engine-handlebars@0.1.5) (2019-10-14) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - - -## [0.1.1](https://github.com/pattern-lab/patternlab-node/compare/@pattern-lab/development-edition-engine-handlebars@0.1.0...@pattern-lab/development-edition-engine-handlebars@0.1.1) (2019-08-23) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -# [0.1.0](https://github.com/pattern-lab/patternlab-node/compare/@pattern-lab/development-edition-engine-handlebars@0.0.3...@pattern-lab/development-edition-engine-handlebars@0.1.0) (2019-08-23) - - -### Bug Fixes - -* Rename Handlebars and Nunjucks extension setting to "extend" ([74e5af2](https://github.com/pattern-lab/patternlab-node/commit/74e5af2)) - - -### Features - -* **engine-handlebars:** Demonstration of custom Handlebars helper ([f330b5b](https://github.com/pattern-lab/patternlab-node/commit/f330b5b)) - - - - - - -## [0.0.3](https://github.com/pattern-lab/patternlab-node/compare/@pattern-lab/development-edition-engine-handlebars@0.0.3-alpha.0...@pattern-lab/development-edition-engine-handlebars@0.0.3) (2019-05-16) - -**Note:** Version bump only for package @pattern-lab/development-edition-engine-handlebars - - - - - -## 0.0.1-beta.0 (2019-02-09) - - -### Bug Fixes - -* manually bump package.json versions of packages published in September but with mismatched package.json versions ([98dfadf](https://github.com/pattern-lab/patternlab-node/commit/98dfadf)) - - -### Features - -* **package:** add handlebars development edition ([454095d](https://github.com/pattern-lab/patternlab-node/commit/454095d)) diff --git a/packages/development-edition-engine-handlebars/package.json b/packages/development-edition-engine-handlebars/package.json index a670d18ac..9cd90ddb5 100644 --- a/packages/development-edition-engine-handlebars/package.json +++ b/packages/development-edition-engine-handlebars/package.json @@ -8,9 +8,8 @@ "pl:help": "patternlab --help", "pl:install": "patternlab install --config ./patternlab-config.json", "pl:serve": "patternlab serve --config ./patternlab-config.json", - "pl:starterkit": "patternlab add --starterkits @pattern-lab/starterkit-handlebars-demo", - "pl:version": "patternlab --version", - "dev": "node ./node_modules/@pattern-lab/uikit-workshop/build-tools.js" + "pl:starterkit": "patternlab install --starterkits @pattern-lab/starterkit-handlebars-demo", + "pl:version": "patternlab --version" }, "keywords": [ "Pattern Lab", @@ -27,14 +26,5 @@ }, "engines": { "node": ">=14.21.1" - }, - "dependencies": { - "@pattern-lab/cli": "^6.0.1", - "@pattern-lab/core": "^6.0.1", - "@pattern-lab/engine-handlebars": "^6.0.0", - "@pattern-lab/engine-mustache": "^6.0.0", - "@pattern-lab/plugin-tab": "^6.0.0", - "@pattern-lab/starterkit-handlebars-demo": "^6.0.0", - "@pattern-lab/uikit-workshop": "^6.0.1" } } diff --git a/packages/development-edition-engine-handlebars/project.json b/packages/development-edition-engine-handlebars/project.json new file mode 100644 index 000000000..9151a7dc0 --- /dev/null +++ b/packages/development-edition-engine-handlebars/project.json @@ -0,0 +1,90 @@ +{ + "name": "development-edition-engine-handlebars", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/development-edition-engine-handlebars/src", + "projectType": "library", + "implicitDependencies": [ + "cli", + "core", + "engine-handlebars", + "engine-mustache", + "plugin-tab", + "starterkit-handlebars-demo", + "uikit-workshop" + ], + "targets": { + "pl:build": { + "executor": "nx:run-script", + "options": { + "script": "pl:build" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:help": { + "executor": "nx:run-script", + "options": { + "script": "pl:help" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:install": { + "executor": "nx:run-script", + "options": { + "script": "pl:install" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:serve": { + "executor": "nx:run-script", + "options": { + "script": "pl:serve" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:starterkit": { + "executor": "nx:run-script", + "options": { + "script": "pl:starterkit" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:version": { + "executor": "nx:run-script", + "options": { + "script": "pl:version" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + } + }, + "tags": [] +} diff --git a/packages/development-edition-engine-handlebars/source/_annotations/annotations.json b/packages/development-edition-engine-handlebars/source/_annotations/annotations.json deleted file mode 100644 index a0d0268f8..000000000 --- a/packages/development-edition-engine-handlebars/source/_annotations/annotations.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "comments": [] -} diff --git a/packages/development-edition-engine-handlebars/source/_data/data.json b/packages/development-edition-engine-handlebars/source/_data/data.json deleted file mode 100644 index 0967ef424..000000000 --- a/packages/development-edition-engine-handlebars/source/_data/data.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/packages/development-edition-engine-handlebars/source/_meta/_foot.mustache b/packages/development-edition-engine-handlebars/source/_meta/_foot.mustache deleted file mode 100644 index 98d360860..000000000 --- a/packages/development-edition-engine-handlebars/source/_meta/_foot.mustache +++ /dev/null @@ -1,9 +0,0 @@ - <script src="../../js/production.min.js"></script> - - <!--<Deject>--> - <!--DO NOT REMOVE--> - {{{ patternLabFoot }}} - <!--</Deject>--> - - </body> -</html> diff --git a/packages/development-edition-engine-handlebars/source/_meta/_head.hbs b/packages/development-edition-engine-handlebars/source/_meta/_head.hbs deleted file mode 100644 index 76899a54a..000000000 --- a/packages/development-edition-engine-handlebars/source/_meta/_head.hbs +++ /dev/null @@ -1,18 +0,0 @@ -<!DOCTYPE html> -<html class="{{ htmlClass }}"> - <head> - <title>{{ title }}</title> - <meta charset="UTF-8"> - <meta name="viewport" content="width=device-width" /> - - <link rel="stylesheet" href="../../css/style.css?{{ cacheBuster }}" media="all" /> - <link rel="stylesheet" href="../../css/pattern-scaffolding.css?{{ cacheBuster }}" media="all" /> - - <!--<Deject>--> - <!-- Begin Pattern Lab (Required for Pattern Lab to run properly) --> - {{{ patternLabHead }}} - <!-- End Pattern Lab --> - <!--</Deject>--> - - </head> - <body class="{{ bodyClass }}"> diff --git a/packages/development-edition-engine-handlebars/source/_meta/_head.mustache b/packages/development-edition-engine-handlebars/source/_meta/_head.mustache deleted file mode 100644 index 76899a54a..000000000 --- a/packages/development-edition-engine-handlebars/source/_meta/_head.mustache +++ /dev/null @@ -1,18 +0,0 @@ -<!DOCTYPE html> -<html class="{{ htmlClass }}"> - <head> - <title>{{ title }}</title> - <meta charset="UTF-8"> - <meta name="viewport" content="width=device-width" /> - - <link rel="stylesheet" href="../../css/style.css?{{ cacheBuster }}" media="all" /> - <link rel="stylesheet" href="../../css/pattern-scaffolding.css?{{ cacheBuster }}" media="all" /> - - <!--<Deject>--> - <!-- Begin Pattern Lab (Required for Pattern Lab to run properly) --> - {{{ patternLabHead }}} - <!-- End Pattern Lab --> - <!--</Deject>--> - - </head> - <body class="{{ bodyClass }}"> diff --git a/packages/development-edition-engine-handlebars/source/css/pattern-scaffolding.css b/packages/development-edition-engine-handlebars/source/css/pattern-scaffolding.css deleted file mode 100644 index f6c2da29d..000000000 --- a/packages/development-edition-engine-handlebars/source/css/pattern-scaffolding.css +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This stylesheet is for styles you want to include only when displaying demo - * styles for grids, animations, color swatches, etc. - * These styles will not be your production CSS. - */ - -#sg-patterns { - -webkit-box-sizing: border-box !important; - box-sizing: border-box !important; - max-width: 100%; - padding: 0 0.5em; -} - -.sg-colors { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - list-style: none !important; - padding: 0 !important; - margin: 0 !important; -} -.sg-colors li { - -webkit-box-flex: 1; - -ms-flex: auto; - flex: auto; - margin: 0 0 0.5em 0.5em; - width: 14em; -} - -.sg-swatch { - display: flex; - flex-direction: column; - height: 6em; - margin-bottom: 0.3em; - padding: 0.5rem; -} - -.sg-label { - font-size: 90%; - line-height: 1; - color: white; -} - -.sg-label__inverted { - color: black; -} - -.sg-label__top { - margin-bottom: auto; -} diff --git a/packages/development-edition-engine-react/.editorconfig b/packages/development-edition-engine-react/.editorconfig deleted file mode 100644 index 8951c3929..000000000 --- a/packages/development-edition-engine-react/.editorconfig +++ /dev/null @@ -1,11 +0,0 @@ -# editorconfig.org -root = true - -[*] -indent_style = space -indent_size = 2 -tab_width = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true diff --git a/packages/development-edition-engine-react/.gitignore b/packages/development-edition-engine-react/.gitignore deleted file mode 100644 index f5ffa0899..000000000 --- a/packages/development-edition-engine-react/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -node_modules/ -.DS_Store -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -.idea/ -public diff --git a/packages/development-edition-engine-react/.npmrc b/packages/development-edition-engine-react/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/development-edition-engine-react/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/development-edition-engine-react/.nvmrc b/packages/development-edition-engine-react/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/development-edition-engine-react/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/development-edition-engine-react/CHANGELOG.md b/packages/development-edition-engine-react/CHANGELOG.md deleted file mode 100644 index b4d1b5e4f..000000000 --- a/packages/development-edition-engine-react/CHANGELOG.md +++ /dev/null @@ -1,502 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -## [6.0.1](https://github.com/pattern-lab/edition-node-gulp/compare/v6.0.0...v6.0.1) (2023-02-01) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [6.0.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.17.0...v6.0.0) (2023-01-31) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.17.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.16.4...v5.17.0) (2022-09-25) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.16.4](https://github.com/pattern-lab/edition-node-gulp/compare/v5.16.2...v5.16.4) (2022-09-23) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.16.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.16.1...v5.16.2) (2022-02-07) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.16.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.16.0...v5.16.1) (2022-01-29) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.16.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.7...v5.16.0) (2022-01-29) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.15.7](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.6...v5.15.7) (2021-12-07) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.15.6](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.5...v5.15.6) (2021-12-07) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.15.5](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.3...v5.15.5) (2021-12-06) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.15.4](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.3...v5.15.4) (2021-12-06) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.15.3](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.2...v5.15.3) (2021-11-21) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.15.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.1...v5.15.2) (2021-11-03) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.15.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.15.0...v5.15.1) (2021-10-16) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.15.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.14.3...v5.15.0) (2021-07-01) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.14.3](https://github.com/pattern-lab/edition-node-gulp/compare/v5.14.2...v5.14.3) (2021-05-17) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.14.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.14.1...v5.14.2) (2021-03-28) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.14.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.14.0...v5.14.1) (2021-02-19) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.14.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.13.3...v5.14.0) (2021-01-12) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.13.3](https://github.com/pattern-lab/edition-node-gulp/compare/v5.13.2...v5.13.3) (2020-12-17) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.13.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.13.1...v5.13.2) (2020-11-12) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.13.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.13.0...v5.13.1) (2020-09-06) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.13.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.12.0...v5.13.0) (2020-08-26) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.12.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.11.1...v5.12.0) (2020-08-09) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.11.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.10.2...v5.11.1) (2020-06-28) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.11.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.10.2...v5.11.0) (2020-06-28) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.10.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.10.1...v5.10.2) (2020-05-24) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.10.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.10.0...v5.10.1) (2020-05-09) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.10.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.9.3...v5.10.0) (2020-05-09) - - -### Bug Fixes - -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/edition-node-gulp/issues/1192) ([420e829](https://github.com/pattern-lab/edition-node-gulp/commit/420e8293c033557ede073bc13e68955a450a3c8e)) -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/edition-node-gulp/issues/1192) ([b4eb12e](https://github.com/pattern-lab/edition-node-gulp/commit/b4eb12e68ceb402964a7e303610e5b0c008876ba)) - - - - - -## [5.9.3](https://github.com/pattern-lab/edition-node-gulp/compare/v5.9.2...v5.9.3) (2020-05-01) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.9.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.9.1...v5.9.2) (2020-04-24) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.9.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.8.0...v5.9.0) (2020-04-24) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.7.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.7.1...v5.7.2) (2020-03-24) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.7.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.7.0...v5.7.1) (2020-02-24) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.7.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.6.0...v5.7.0) (2020-02-17) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.6.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.5.0...v5.6.0) (2020-01-18) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - - -# [5.5.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.4.2...v5.5.0) (2019-12-19) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.4.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.4.1...v5.4.2) (2019-11-27) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.4.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.4.0...v5.4.1) (2019-11-26) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.4.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.3.3...v5.4.0) (2019-11-26) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.3.3](https://github.com/pattern-lab/edition-node-gulp/compare/v5.3.2...v5.3.3) (2019-11-22) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - - -## [5.3.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.3.1...v5.3.2) (2019-11-14) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.3.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.3.0...v5.3.1) (2019-11-13) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.3.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.2.0...v5.3.0) (2019-11-13) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.2.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.1.0...v5.2.0) (2019-11-12) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - - -# [5.1.0](https://github.com/pattern-lab/edition-node-gulp/compare/v5.0.2...v5.1.0) (2019-10-29) - - -### Features - -* **core:** fix pattern export all conflicts ([b210d82](https://github.com/pattern-lab/edition-node-gulp/commit/b210d820ba8ac0b64c82c7ff0f18c9f8a900fce2)) - - - - - -## [5.0.2](https://github.com/pattern-lab/edition-node-gulp/compare/v5.0.1...v5.0.2) (2019-10-28) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [5.0.1](https://github.com/pattern-lab/edition-node-gulp/compare/v5.0.0...v5.0.1) (2019-10-28) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -# [5.0.0](https://github.com/pattern-lab/edition-node-gulp/compare/v3.0.0-beta.3...v5.0.0) (2019-10-25) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - - -## [0.1.8](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.7...@pattern-lab/engine-react-testing-tree@0.1.8) (2019-10-14) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - - -## [0.1.7](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.6...@pattern-lab/engine-react-testing-tree@0.1.7) (2019-10-14) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - - -## [0.1.3](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.2...@pattern-lab/engine-react-testing-tree@0.1.3) (2019-08-23) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - - -## [0.1.2](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.2-alpha.0...@pattern-lab/engine-react-testing-tree@0.1.2) (2019-05-16) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -## [0.1.1-beta.1](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.1-alpha.4...@pattern-lab/engine-react-testing-tree@0.1.1-beta.1) (2019-02-09) - - -### Bug Fixes - -* manually bump package.json versions of packages published in September but with mismatched package.json versions ([98dfadf](https://github.com/pattern-lab/edition-node-gulp/commit/98dfadf)) - - - - - -<a name="0.1.1-beta.0"></a> -## [0.1.1-beta.0](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.1-alpha.4...@pattern-lab/engine-react-testing-tree@0.1.1-beta.0) (2018-09-07) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - - - - - -<a name="0.1.1-alpha.4"></a> - -## [0.1.1-alpha.4](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.1-alpha.3...@pattern-lab/engine-react-testing-tree@0.1.1-alpha.4) (2018-07-06) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - -<a name="0.1.1-alpha.3"></a> - -## [0.1.1-alpha.3](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.1-alpha.2...@pattern-lab/engine-react-testing-tree@0.1.1-alpha.3) (2018-07-06) - -### Bug Fixes - -* **package:** fix fat-fingered dependency ([e439f4e](https://github.com/pattern-lab/edition-node-gulp/commit/e439f4e)) - -### Features - -* **package:** add npmrc file ([55f5bc2](https://github.com/pattern-lab/edition-node-gulp/commit/55f5bc2)) -* **package:** pin all dependencies ([415698e](https://github.com/pattern-lab/edition-node-gulp/commit/415698e)) -* **package:** remove package-lock.json files ([5ab3995](https://github.com/pattern-lab/edition-node-gulp/commit/5ab3995)) - -<a name="0.1.1-alpha.2"></a> - -## [0.1.1-alpha.2](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.1-alpha.1...@pattern-lab/engine-react-testing-tree@0.1.1-alpha.2) (2018-07-05) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - -<a name="0.1.1-alpha.1"></a> - -## [0.1.1-alpha.1](https://github.com/pattern-lab/edition-node-gulp/compare/@pattern-lab/engine-react-testing-tree@0.1.1-alpha.0...@pattern-lab/engine-react-testing-tree@0.1.1-alpha.1) (2018-05-04) - -**Note:** Version bump only for package @pattern-lab/engine-react-testing-tree - -<a name="0.1.1-alpha.0"></a> - -## 0.1.1-alpha.0 (2018-05-04) - -### Features - -* **README:** clarify purpose of development edition ([d90df0e](https://github.com/pattern-lab/edition-node-gulp/commit/d90df0e)) diff --git a/packages/development-edition-engine-react/README.md b/packages/development-edition-engine-react/README.md deleted file mode 100644 index 2c21a20f4..000000000 --- a/packages/development-edition-engine-react/README.md +++ /dev/null @@ -1,14 +0,0 @@ - - -# Pattern Lab Node - Development Edition Engine React - -_here be dragons_ - -This Development Edition is a variant of [Edition Node Gulp](https://github.com/pattern-lab/patternlab-node/tree/master/packages/edition-node-gulp) for convience purposes only, loaded with the React Engine. The goals of this Development Edition are two-fold: - -* Develop the [React Engine](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react) -* Build and test against React pattern tree - -If you'd like to help with the React Engine, please reference the [contribution guidelines](https://github.com/pattern-lab/patternlab-node/blob/master/.github/CONTRIBUTING.md). - -> Development Editions of Pattern Lab provide the ability to work on and commit changes to select packages within the overall Pattern Lab [ecosystem](https://patternlab.io/docs/overview-of-pattern-lab's-ecosystem/). This Edition is NOT stable. diff --git a/packages/development-edition-engine-react/gulpfile.js b/packages/development-edition-engine-react/gulpfile.js deleted file mode 100644 index 3f3658f89..000000000 --- a/packages/development-edition-engine-react/gulpfile.js +++ /dev/null @@ -1,68 +0,0 @@ -/****************************************************** - * PATTERN LAB NODE - * EDITION-NODE-GULP - * The gulp wrapper around patternlab-node core, providing tasks to interact with the core library. - ******************************************************/ -const gulp = require('gulp'); -const argv = require('minimist')(process.argv.slice(2)); - -/****************************************************** - * PATTERN LAB NODE WRAPPER TASKS with core library - ******************************************************/ -const config = require('./patternlab-config.json'); -const patternlab = require('@pattern-lab/core')(config); - -function build() { - return patternlab - .build({ - watch: argv.watch, - cleanPublic: config.cleanPublic, - }) - .then(() => { - // do something else when this promise resolves - }); -} - -function serve() { - return patternlab - .serve({ - cleanPublic: config.cleanPublic, - }) - .then(() => { - // do something else when this promise resolves - }); -} - -gulp.task('patternlab:version', function () { - patternlab.version(); -}); - -gulp.task('patternlab:help', function () { - patternlab.help(); -}); - -gulp.task('patternlab:patternsonly', function () { - patternlab.patternsonly(config.cleanPublic); -}); - -gulp.task('patternlab:liststarterkits', function () { - patternlab.liststarterkits(); -}); - -gulp.task('patternlab:loadstarterkit', function () { - patternlab.loadstarterkit(argv.kit, argv.clean); -}); - -gulp.task('patternlab:build', function () { - build().then(() => { - // do something else when this promise resolves - }); -}); - -gulp.task('patternlab:serve', function () { - serve().then(() => { - // do something else when this promise resolves - }); -}); - -gulp.task('default', ['patternlab:help']); diff --git a/packages/development-edition-engine-react/package.json b/packages/development-edition-engine-react/package.json deleted file mode 100644 index bac5a0983..000000000 --- a/packages/development-edition-engine-react/package.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "name": "@pattern-lab/engine-react-testing-tree", - "description": "The tree of components we use to test, develop and validate the React engine", - "version": "6.0.1", - "private": true, - "main": "gulpfile.js", - "dependencies": { - "@pattern-lab/core": "^6.0.1", - "@pattern-lab/engine-mustache": "^6.0.0", - "@pattern-lab/engine-react": "^6.0.0", - "@pattern-lab/uikit-workshop": "^6.0.1", - "gulp": "4.0.2", - "minimist": "^1.2.5", - "react": "16.2.0" - }, - "keywords": [ - "Pattern Lab", - "Atomic Web Design", - "Node", - "Gulp", - "Javascript" - ], - "repository": { - "type": "git", - "url": "git://github.com/pattern-lab/edition-node-gulp.git" - }, - "bugs": "https://github.com/pattern-lab/edition-node-gulp/issues", - "author": "Brian Muenzenmeyer", - "scripts": { - "gulp": "gulp -- " - }, - "license": "MIT", - "engines": { - "node": ">=14.21.1" - } -} diff --git a/packages/development-edition-engine-react/patternlab-config.json b/packages/development-edition-engine-react/patternlab-config.json deleted file mode 100644 index 23f8673e8..000000000 --- a/packages/development-edition-engine-react/patternlab-config.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "cacheBust": true, - "cleanPublic" : true, - "defaultPattern": "all", - "defaultShowPatternInfo": false, - "ishControlsHide": { - "s": false, - "m": false, - "l": false, - "full": false, - "random": false, - "disco": false, - "hay": true, - "mqs": false, - "find": false, - "views-all": false, - "views-annotations": false, - "views-code": false, - "views-new": false, - "tools-all": false, - "tools-docs": false - }, - "ishViewportRange": { - "s": [240, 500], - "m": [500, 800], - "l": [800, 2600] - }, - "logLevel": "info", - "outputFileSuffixes": { - "rendered": ".rendered", - "rawTemplate": "", - "markupOnly": ".markup-only" - }, - "paths" : { - "source" : { - "root": "./source/", - "patterns" : "./source/_patterns/", - "data" : "./source/_data/", - "meta": "./source/_meta/", - "annotations" : "./source/_annotations/", - "styleguide": "./node_modules/@pattern-lab/uikit-workshop/dist/", - "patternlabFiles": { - "general-header": - "./node_modules/@pattern-lab/uikit-workshop/views/partials/general-header.mustache", - "general-footer": - "./node_modules/@pattern-lab/uikit-workshop/views/partials/general-footer.mustache", - "patternSection": - "./node_modules/@pattern-lab/uikit-workshop/views/partials/patternSection.mustache", - "patternSectionSubgroup": - "./node_modules/@pattern-lab/uikit-workshop/views/partials/patternSectionSubgroup.mustache", - "viewall": - "./node_modules/@pattern-lab/uikit-workshop/views/viewall.mustache" - }, - "js" : "./source/js", - "images" : "./source/images", - "fonts" : "./source/fonts", - "css" : "./source/css/" - }, - "public" : { - "root" : "./public/", - "patterns" : "./public/patterns/", - "data" : "./public/styleguide/data/", - "annotations" : "./public/annotations/", - "styleguide" : "./public/styleguide/", - "js" : "./public/js", - "images" : "./public/images", - "fonts" : "./public/fonts", - "css" : "./public/css" - } - }, - "patternExtension": "mustache", - "patternStateCascade": ["inprogress", "inreview", "complete"], - "patternExportAll": false, - "patternExportPreserveDirectoryStructure": false, - "patternExportRaw": false, - "patternExportDirectory": "./pattern_exports/", - "patternExportPatternPartials": [], - "patternMergeVariantArrays": true, - "renderFlatPatternsOnViewAllPages": false, - "serverOptions": { - "wait": 1000 - }, - "starterkitSubDir": "dist", - "styleGuideExcludes": [ - ], - "theme": { - "color": "dark", - "density": "compact", - "layout": "horizontal" - }, - "engines": { - "react": { - "package": "@pattern-lab/engine-react", - "fileExtensions": [ - "jsx" - ] - } - } -} diff --git a/packages/development-edition-engine-react/source/_meta/_foot.hbs b/packages/development-edition-engine-react/source/_meta/_foot.hbs deleted file mode 100644 index 797d9418d..000000000 --- a/packages/development-edition-engine-react/source/_meta/_foot.hbs +++ /dev/null @@ -1,6 +0,0 @@ - -<!--DO NOT REMOVE--> -{{{ patternLabFoot }}} - -</body> -</html> diff --git a/packages/development-edition-engine-react/source/_meta/_foot.html b/packages/development-edition-engine-react/source/_meta/_foot.html deleted file mode 100644 index 797d9418d..000000000 --- a/packages/development-edition-engine-react/source/_meta/_foot.html +++ /dev/null @@ -1,6 +0,0 @@ - -<!--DO NOT REMOVE--> -{{{ patternLabFoot }}} - -</body> -</html> diff --git a/packages/development-edition-engine-react/source/_meta/_head.hbs b/packages/development-edition-engine-react/source/_meta/_head.hbs deleted file mode 100644 index 893481ae5..000000000 --- a/packages/development-edition-engine-react/source/_meta/_head.hbs +++ /dev/null @@ -1,16 +0,0 @@ -<!DOCTYPE html> -<html class="{{ htmlClass }}" lang="en"> - <head> - <title>{{ title }}</title> - <meta charset="UTF-8" /> - <meta name="viewport" content="width=device-width" /> - - <link rel="stylesheet" href="../../css/style.css?{{ cacheBuster }}" media="all" /> - <link rel="stylesheet" href="../../css/pattern-scaffolding.css?{{ cacheBuster }}" media="all" /> - - <!-- Begin Pattern Lab (Required for Pattern Lab to run properly) --> - {{{ patternLabHead }}} - <!-- End Pattern Lab --> - - </head> - <body class="{{ bodyClass }}"> diff --git a/packages/development-edition-engine-react/source/_meta/_head.html b/packages/development-edition-engine-react/source/_meta/_head.html deleted file mode 100644 index 9e3094352..000000000 --- a/packages/development-edition-engine-react/source/_meta/_head.html +++ /dev/null @@ -1,23 +0,0 @@ -<!DOCTYPE html> -<html class="{{ htmlClass }}" lang="en"> - <head> - <title>{{ title }}</title> - <meta charset="UTF-8" /> - <meta name="viewport" content="width=device-width" /> - - <link - rel="stylesheet" - href="../../css/style.css?{{ cacheBuster }}" - media="all" - /> - <link - rel="stylesheet" - href="../../css/pattern-scaffolding.css?{{ cacheBuster }}" - media="all" - /> - - <!-- Begin Pattern Lab (Required for Pattern Lab to run properly) --> - {{{ patternLabHead }}} - <!-- End Pattern Lab --> - </head> - <body class="{{ bodyClass }}"> diff --git a/packages/development-edition-engine-react/source/_patterns/atoms/general/HelloWorld.jsx b/packages/development-edition-engine-react/source/_patterns/atoms/general/HelloWorld.jsx deleted file mode 100644 index 9790e5af0..000000000 --- a/packages/development-edition-engine-react/source/_patterns/atoms/general/HelloWorld.jsx +++ /dev/null @@ -1,5 +0,0 @@ -import React from 'react'; - -const HelloWorld = () => <div>Hello world!</div>; - -export default HelloWorld; diff --git a/packages/development-edition-engine-react/source/_patterns/molecules/general/HelloIncluder.jsx b/packages/development-edition-engine-react/source/_patterns/molecules/general/HelloIncluder.jsx deleted file mode 100644 index 162681281..000000000 --- a/packages/development-edition-engine-react/source/_patterns/molecules/general/HelloIncluder.jsx +++ /dev/null @@ -1,30 +0,0 @@ -import React, { Component } from 'react'; - -import HelloWorld from '../../atoms/general/HelloWorld'; - -// const HelloWorld = () => ( -// <div> -// Hello world! -// </div> -// ); - -class HelloIncluder extends Component { - constructor() { - super(); - this.state = { - bgColor: 'transparent', - }; - setTimeout(() => this.setState({ bgColor: 'red' }), 2000); - } - - render() { - return ( - <div style={{ backgroundColor: this.state.bgColor }}> - <div>Hey! Here's the Hello World component:</div> - <HelloWorld /> - </div> - ); - } -} - -export default HelloIncluder; diff --git a/packages/edition-twig/.gitignore b/packages/development-edition-engine-twig-php/.gitignore similarity index 94% rename from packages/edition-twig/.gitignore rename to packages/development-edition-engine-twig-php/.gitignore index 0679bd2b5..a5769f88e 100644 --- a/packages/edition-twig/.gitignore +++ b/packages/development-edition-engine-twig-php/.gitignore @@ -7,3 +7,4 @@ Thumbs.db .idea/ public dependencyGraph.json +source diff --git a/packages/development-edition-engine-twig-php/CHANGELOG.md b/packages/development-edition-engine-twig-php/CHANGELOG.md new file mode 100644 index 000000000..dcc88cda4 --- /dev/null +++ b/packages/development-edition-engine-twig-php/CHANGELOG.md @@ -0,0 +1,283 @@ +# Change Log + +All notable changes to this project will be documented in this file. +See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [6.0.1](https://github.com/pattern-lab/patternlab-node/compare/v6.0.0...v6.0.1) (2023-02-01) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [6.0.0](https://github.com/pattern-lab/patternlab-node/compare/v5.17.0...v6.0.0) (2023-01-31) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [5.17.0](https://github.com/pattern-lab/patternlab-node/compare/v5.16.4...v5.17.0) (2022-09-25) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.16.4](https://github.com/pattern-lab/patternlab-node/compare/v5.16.2...v5.16.4) (2022-09-23) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.16.2](https://github.com/pattern-lab/patternlab-node/compare/v5.16.1...v5.16.2) (2022-02-07) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.16.1](https://github.com/pattern-lab/patternlab-node/compare/v5.16.0...v5.16.1) (2022-01-29) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [5.16.0](https://github.com/pattern-lab/patternlab-node/compare/v5.15.7...v5.16.0) (2022-01-29) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.15.7](https://github.com/pattern-lab/patternlab-node/compare/v5.15.6...v5.15.7) (2021-12-07) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.15.6](https://github.com/pattern-lab/patternlab-node/compare/v5.15.5...v5.15.6) (2021-12-07) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.15.5](https://github.com/pattern-lab/patternlab-node/compare/v5.15.3...v5.15.5) (2021-12-06) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.15.4](https://github.com/pattern-lab/patternlab-node/compare/v5.15.3...v5.15.4) (2021-12-06) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.15.3](https://github.com/pattern-lab/patternlab-node/compare/v5.15.2...v5.15.3) (2021-11-21) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.15.2](https://github.com/pattern-lab/patternlab-node/compare/v5.15.1...v5.15.2) (2021-11-03) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +## [5.15.1](https://github.com/pattern-lab/patternlab-node/compare/v5.15.0...v5.15.1) (2021-10-16) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [5.15.0](https://github.com/pattern-lab/patternlab-node/compare/v5.14.3...v5.15.0) (2021-07-01) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +## [5.14.3](https://github.com/pattern-lab/patternlab-node/compare/v5.14.2...v5.14.3) (2021-05-17) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +## [5.14.2](https://github.com/pattern-lab/patternlab-node/compare/v5.14.1...v5.14.2) (2021-03-28) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.14.1](https://github.com/pattern-lab/patternlab-node/compare/v5.14.0...v5.14.1) (2021-02-19) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +# [5.14.0](https://github.com/pattern-lab/patternlab-node/compare/v5.13.3...v5.14.0) (2021-01-12) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +## [5.13.3](https://github.com/pattern-lab/patternlab-node/compare/v5.13.2...v5.13.3) (2020-12-17) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.13.2](https://github.com/pattern-lab/patternlab-node/compare/v5.13.1...v5.13.2) (2020-11-12) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +## [5.13.1](https://github.com/pattern-lab/patternlab-node/compare/v5.13.0...v5.13.1) (2020-09-06) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +# [5.13.0](https://github.com/pattern-lab/patternlab-node/compare/v5.12.0...v5.13.0) (2020-08-26) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + + +# [5.12.0](https://github.com/pattern-lab/patternlab-node/compare/v5.11.1...v5.12.0) (2020-08-09) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.11.1](https://github.com/pattern-lab/patternlab-node/compare/v5.10.2...v5.11.1) (2020-06-28) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [5.11.0](https://github.com/pattern-lab/patternlab-node/compare/v5.10.2...v5.11.0) (2020-06-28) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.10.2](https://github.com/pattern-lab/patternlab-node/compare/v5.10.1...v5.10.2) (2020-05-24) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.10.1](https://github.com/pattern-lab/patternlab-node/compare/v5.10.0...v5.10.1) (2020-05-09) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [5.10.0](https://github.com/pattern-lab/patternlab-node/compare/v5.9.3...v5.10.0) (2020-05-09) + + +### Bug Fixes + +* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/issues/1192) ([b4eb12e](https://github.com/pattern-lab/patternlab-node/commit/b4eb12e68ceb402964a7e303610e5b0c008876ba)) + + + + + +## [5.9.3](https://github.com/pattern-lab/patternlab-node/compare/v5.9.2...v5.9.3) (2020-05-01) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.9.2](https://github.com/pattern-lab/patternlab-node/compare/v5.9.1...v5.9.2) (2020-04-24) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +## [5.9.1](https://github.com/pattern-lab/patternlab-node/compare/v5.9.0...v5.9.1) (2020-04-24) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [5.9.0](https://github.com/pattern-lab/patternlab-node/compare/v5.8.0...v5.9.0) (2020-04-24) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig + + + + + +# [5.8.0](https://github.com/pattern-lab/patternlab-node/compare/v5.7.2...v5.8.0) (2020-04-03) + +**Note:** Version bump only for package @pattern-lab/development-edition-engine-twig diff --git a/packages/development-edition-engine-twig-php/README.md b/packages/development-edition-engine-twig-php/README.md new file mode 100644 index 000000000..b3ffdea7f --- /dev/null +++ b/packages/development-edition-engine-twig-php/README.md @@ -0,0 +1,25 @@ + + +# Pattern Lab Node - Development Edition Engine Twig + +_here be dragons_ + +This Development Edition is a variant of [Edition Node](https://github.com/pattern-lab/patternlab-node/tree/master/packages/edition-node) for convience purposes only, loaded with the Twig Engine. The goals of this Development Edition are two-fold: + +* Develop the [Twig Engine](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-twig) +* Build and test against Twig pattern tree + +> Development Editions of Pattern Lab provide the ability to work on and commit changes to select packages within the overall Pattern Lab [ecosystem](https://patternlab.io/docs/overview-of-pattern-lab's-ecosystem/). This Edition is NOT stable. + + +## Working on Pattern Lab's UI Locally + +### Step 1: Install Dependencies +Run the following in the root of the Pattern Lab repo: + +``` +yarn run setup +``` + +### Step 2 +Finally, go back into this folder, `cd packages/development-edition-engine-twig`, and start up the local dev server which watches UIKit and the local Pattern Lab instance for changes, live reloads, etc by running `yarn dev` diff --git a/packages/development-edition-engine-twig-php/package.json b/packages/development-edition-engine-twig-php/package.json new file mode 100644 index 000000000..f67e1ca52 --- /dev/null +++ b/packages/development-edition-engine-twig-php/package.json @@ -0,0 +1,30 @@ +{ + "name": "@pattern-lab/development-edition-engine-twig-php", + "private": true, + "version": "6.0.1", + "description": "The tree of components we use to test, develop and validate the twig engine (not engine-twig-php)", + "scripts": { + "pl:build": "patternlab build --config ./patternlab-config.json", + "pl:help": "patternlab --help", + "pl:install": "patternlab install --config ./patternlab-config.json", + "pl:serve": "patternlab serve --config ./patternlab-config.json", + "pl:starterkit": "patternlab install --starterkits @pattern-lab/starterkit-twig-demo", + "pl:version": "patternlab --version" + }, + "keywords": [ + "Pattern Lab", + "Atomic Web Design", + "Node", + "Twig", + "Edition" + ], + "author": "Ringo De Smet", + "license": "MIT", + "repository": { + "type": "git", + "url": "git://github.com/pattern-lab/patternlab-node.git" + }, + "engines": { + "node": ">=14.21.1" + } +} diff --git a/packages/development-edition-engine-twig-php/patternlab-config.json b/packages/development-edition-engine-twig-php/patternlab-config.json new file mode 100644 index 000000000..408d09859 --- /dev/null +++ b/packages/development-edition-engine-twig-php/patternlab-config.json @@ -0,0 +1,157 @@ +{ + "cacheBust": true, + "cleanPublic": true, + "defaultPattern": "all", + "defaultShowPatternInfo": false, + "ishControlsHide": { + "s": false, + "m": false, + "l": false, + "full": false, + "random": false, + "disco": false, + "hay": true, + "mqs": false, + "find": false, + "views-all": false, + "views-annotations": false, + "views-code": false, + "views-new": false, + "tools-all": false, + "tools-docs": false + }, + "ishViewportRange": { + "s": [ + 240, + 500 + ], + "m": [ + 500, + 800 + ], + "l": [ + 800, + 2600 + ] + }, + "logLevel": "info", + "outputFileSuffixes": { + "rendered": ".rendered", + "rawTemplate": "", + "markupOnly": ".markup-only" + }, + "paths": { + "source": { + "root": "source/", + "patterns": "source/_patterns/", + "data": "source/_data/", + "meta": "source/_meta/", + "annotations": "source/_annotations/", + "styleguide": "dist/", + "patternlabFiles": { + "general-header": "views/partials/general-header.mustache", + "general-footer": "views/partials/general-footer.mustache", + "patternSection": "views/partials/patternSection.mustache", + "patternSectionSubgroup": "views/partials/patternSectionSubgroup.mustache", + "viewall": "views/viewall.mustache" + }, + "js": "source/js", + "images": "source/images", + "fonts": "source/fonts", + "css": "source/css" + }, + "public": { + "root": "public/", + "patterns": "public/patterns/", + "data": "public/styleguide/data/", + "annotations": "public/annotations/", + "styleguide": "public/styleguide/", + "js": "public/js", + "images": "public/images", + "fonts": "public/fonts", + "css": "public/css" + } + }, + "patternExtension": "twig", + "patternStateCascade": [ + "inprogress", + "inreview", + "complete" + ], + "patternExportDirectory": "pattern_exports", + "patternExportPatternPartials": [], + "patternMergeVariantArrays": true, + "renderFlatPatternsOnViewAllPages": false, + "serverOptions": { + "wait": 1000 + }, + "starterkitSubDir": "dist", + "styleGuideExcludes": [], + "theme": { + "color": "dark", + "density": "compact", + "layout": "horizontal" + }, + "uikits": [ + { + "name": "uikit-workshop", + "package": "@pattern-lab/uikit-workshop", + "outputDir": "", + "enabled": true, + "excludedPatternStates": [], + "excludedTags": [] + } + ], + "engines": { + "twig-php": { + "package": "@pattern-lab/engine-twig-php", + "fileExtensions": [ + "twig" + ], + "namespaces": [ + { + "id": "atoms", + "recursive": true, + "paths": [ + "source/_patterns/atoms" + ] + }, + { + "id": "molecules", + "recursive": true, + "paths": [ + "source/_patterns/molecules" + ] + }, + { + "id": "organisms", + "recursive": true, + "paths": [ + "source/_patterns/organisms" + ] + }, + { + "id": "templates", + "recursive": true, + "paths": [ + "source/_patterns/templates" + ] + }, + { + "id": "pages", + "recursive": true, + "paths": [ + "source/_patterns/pages" + ] + }, + { + "id": "macros", + "recursive": true, + "paths": [ + "source/_macros" + ] + } + ] + } + } +} diff --git a/packages/development-edition-engine-twig-php/project.json b/packages/development-edition-engine-twig-php/project.json new file mode 100644 index 000000000..e80dcc729 --- /dev/null +++ b/packages/development-edition-engine-twig-php/project.json @@ -0,0 +1,89 @@ +{ + "name": "development-edition-engine-twig-php", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/development-edition-engine-twig-php/src", + "projectType": "library", + "implicitDependencies": [ + "cli", + "core", + "engine-twig-php", + "engine-mustache", + "starterkit-twig-demo", + "uikit-workshop" + ], + "targets": { + "pl:build": { + "executor": "nx:run-script", + "options": { + "script": "pl:build" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:help": { + "executor": "nx:run-script", + "options": { + "script": "pl:help" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:install": { + "executor": "nx:run-script", + "options": { + "script": "pl:install" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:serve": { + "executor": "nx:run-script", + "options": { + "script": "pl:serve" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:starterkit": { + "executor": "nx:run-script", + "options": { + "script": "pl:starterkit" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:version": { + "executor": "nx:run-script", + "options": { + "script": "pl:version" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + } + }, + "tags": [] +} diff --git a/packages/development-edition-engine-twig/source/.gitignore b/packages/development-edition-engine-twig-php/source/.gitignore similarity index 100% rename from packages/development-edition-engine-twig/source/.gitignore rename to packages/development-edition-engine-twig-php/source/.gitignore diff --git a/packages/development-edition-engine-twig/.gitignore b/packages/development-edition-engine-twig/.gitignore index 0679bd2b5..a5769f88e 100644 --- a/packages/development-edition-engine-twig/.gitignore +++ b/packages/development-edition-engine-twig/.gitignore @@ -7,3 +7,4 @@ Thumbs.db .idea/ public dependencyGraph.json +source diff --git a/packages/development-edition-engine-twig/package.json b/packages/development-edition-engine-twig/package.json index 8add6fb30..5d446c1c4 100644 --- a/packages/development-edition-engine-twig/package.json +++ b/packages/development-edition-engine-twig/package.json @@ -4,14 +4,12 @@ "version": "6.0.1", "description": "The tree of components we use to test, develop and validate the twig engine (not engine-twig-php)", "scripts": { - "postbootstrap": "patternlab install --starterkits @pattern-lab/starterkit-twig-demo", "pl:build": "patternlab build --config ./patternlab-config.json", - "pl:debug": "node --inspect-brk=24984 node_modules/.bin/patternlab build --config ./patternlab-config.json", "pl:help": "patternlab --help", "pl:install": "patternlab install --config ./patternlab-config.json", "pl:serve": "patternlab serve --config ./patternlab-config.json", - "pl:version": "patternlab --version", - "dev": "node ./node_modules/@pattern-lab/uikit-workshop/build-tools.js" + "pl:starterkit": "patternlab install --starterkits @pattern-lab/starterkit-twig-demo", + "pl:version": "patternlab --version" }, "keywords": [ "Pattern Lab", @@ -28,17 +26,5 @@ }, "engines": { "node": ">=14.21.1" - }, - "dependencies": { - "@pattern-lab/cli": "^6.0.1", - "@pattern-lab/core": "^6.0.1", - "@pattern-lab/engine-twig": "^6.0.0", - "@pattern-lab/starterkit-twig-demo": "^6.0.1", - "@pattern-lab/uikit-workshop": "^6.0.1" - }, - "workspaces": { - "nohoist": [ - "**/@pattern-lab/starterkit-twig-demo" - ] } } diff --git a/packages/development-edition-engine-twig/project.json b/packages/development-edition-engine-twig/project.json new file mode 100644 index 000000000..29fdf9a8a --- /dev/null +++ b/packages/development-edition-engine-twig/project.json @@ -0,0 +1,89 @@ +{ + "name": "development-edition-engine-twig", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/development-edition-engine-twig/src", + "projectType": "library", + "implicitDependencies": [ + "cli", + "core", + "engine-twig", + "engine-mustache", + "starterkit-twig-demo", + "uikit-workshop" + ], + "targets": { + "pl:build": { + "executor": "nx:run-script", + "options": { + "script": "pl:build" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:help": { + "executor": "nx:run-script", + "options": { + "script": "pl:help" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:install": { + "executor": "nx:run-script", + "options": { + "script": "pl:install" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:serve": { + "executor": "nx:run-script", + "options": { + "script": "pl:serve" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:starterkit": { + "executor": "nx:run-script", + "options": { + "script": "pl:starterkit" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + }, + "pl:version": { + "executor": "nx:run-script", + "options": { + "script": "pl:version" + }, + "dependsOn": [ + { + "target": "build", + "dependencies": true + } + ] + } + }, + "tags": [] +} diff --git a/packages/docs/.eslintrc.json b/packages/docs/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/docs/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/docs/.gitignore b/packages/docs/.gitignore index a54bbf4b4..ac2fd9a05 100644 --- a/packages/docs/.gitignore +++ b/packages/docs/.gitignore @@ -6,7 +6,8 @@ npm-debug.* .DS_Store .sass-cache node_modules -dist +dist +output # Specifics diff --git a/packages/docs/.prettierrc b/packages/docs/.prettierrc deleted file mode 100644 index fc46c20b4..000000000 --- a/packages/docs/.prettierrc +++ /dev/null @@ -1,7 +0,0 @@ -{ - "printWidth": 90, - "useTabs": false, - "tabWidth": 3, - "singleQuote": true, - "bracketSpacing": false -} diff --git a/packages/docs/.vscode/launch.json b/packages/docs/.vscode/launch.json deleted file mode 100644 index 2359da6e9..000000000 --- a/packages/docs/.vscode/launch.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - // Use IntelliSense to learn about possible attributes. - // Hover to view descriptions of existing attributes. - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "type": "node", - "request": "launch", - "name": "Launch Program", - "skipFiles": [ - "<node_internals>/**" - ], - "program": "${workspaceFolder}/index.js" - } - ] -} \ No newline at end of file diff --git a/packages/docs/jest.config.js b/packages/docs/jest.config.js new file mode 100644 index 000000000..987b29c31 --- /dev/null +++ b/packages/docs/jest.config.js @@ -0,0 +1,17 @@ +/* eslint-disable */ +module.exports = { + displayName: 'docs', + preset: '../../jest.preset.js', + globals: {}, + testEnvironment: 'node', + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/docs', +}; diff --git a/packages/docs/package.json b/packages/docs/package.json index 21a1d8887..00b66265e 100755 --- a/packages/docs/package.json +++ b/packages/docs/package.json @@ -2,42 +2,14 @@ "name": "@pattern-lab/website", "version": "6.0.0", "description": "The website for patternlab.io", - "main": "index.js", - "dependencies": { - "@11ty/eleventy": "^0.12.1", - "@11ty/eleventy-plugin-rss": "^1.1.2", - "@11ty/eleventy-plugin-syntaxhighlight": "^3.1.3", - "@tbranyen/jsdom": "^13.0.0", - "concurrently": "^4.1.0", - "html-minifier": "^4.0.0", - "json-to-scss": "^1.6.2", - "nunjucks": "^3.2.3", - "sass": "^1.32.8", - "semver": "^6.3.0", - "slugify": "^1.5.0", - "stalfos": "github:hankchizljaw/stalfos#c8971d22726326cfc04089b2da4d51eeb1ebb0eb" - }, - "devDependencies": { - "@11ty/eleventy-navigation": "^0.3.2", - "@erquhart/rollup-plugin-node-builtins": "^2.1.5", - "bl": "^3.0.0", - "chokidar-cli": "^2.1.0", - "cross-env": "^5.2.0", - "make-dir-cli": "^2.0.0", - "prettier": "^2.8.1", - "rollup": "^1.16.1", - "rollup-plugin-commonjs": "^10.0.0", - "rollup-plugin-json": "^4.0.0", - "rollup-plugin-node-resolve": "^5.0.3" - }, "scripts": { - "sass:tokens": "npx json-to-scss src/_data/tokens.json src/scss/_tokens.scss", + "sass:tokens": "json-to-scss src/_data/tokens.json src/scss/_tokens.scss", "sass:process": "yarn sass:tokens && sass src/scss/style.scss dist/css/style.css --style=compressed", "cms:precompile": "make-dir dist/admin && nunjucks-precompile src/_includes > dist/admin/templates.js -i \"\\.(njk|css|svg)$\"", "cms:bundle": "rollup --config", "start": "concurrently \"yarn sass:process --watch\" \"yarn cms:bundle --watch\" \"chokidar \\\"src/_includes/**\\\" -c \\\"yarn cms:precompile\\\"\" \"yarn serve\"", - "serve": "cross-env ELEVENTY_ENV=development npx eleventy --serve", - "production": "yarn sass:process && yarn cms:precompile && yarn cms:bundle && npx eleventy" + "serve": "cross-env ELEVENTY_ENV=development eleventy --serve", + "production": "yarn sass:process && yarn cms:precompile && yarn cms:bundle && eleventy" }, "repository": { "type": "git", @@ -49,12 +21,9 @@ "bugs": { "url": "https://github.com/bradfrost/pl-website-eleventy/issues" }, - "publishConfig": { - "access": "public" - }, "homepage": "https://github.com/bradfrost/pl-website-eleventy/#readme", - "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac", "engines": { "node": ">=14.21.1" - } + }, + "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/docs/project.json b/packages/docs/project.json new file mode 100644 index 000000000..c17564c79 --- /dev/null +++ b/packages/docs/project.json @@ -0,0 +1,76 @@ +{ + "name": "docs", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/docs/src", + "projectType": "library", + "targets": { + "build-docs": { + "executor": "nx:run-script", + "outputs": ["{projectRoot}/output"], + "options": { + "script": "production" + } + }, + "rename-output": { + "executor": "nx:run-commands", + "options": { + "command": "node packages/docs/tools/rename-output.js" + } + }, + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/docs", + "main": "packages/docs/src/index.ts", + "tsConfig": "packages/docs/tsconfig.lib.json", + "assets": [ + "packages/docs/*.md", + "packages/docs/LICENSE", + { + "glob": "**/*", + "input": "packages/docs/output", + "output": "dist" + } + ] + }, + "dependsOn": [ + { + "target": "build-docs" + }, + { + "target": "rename-output" + } + ] + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs docs {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/docs/**/*.js"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/docs/jest.config.js", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + } + }, + "tags": [] +} diff --git a/packages/docs/rollup.config.js b/packages/docs/rollup.config.js index 4fc2d3bc6..a28a80054 100644 --- a/packages/docs/rollup.config.js +++ b/packages/docs/rollup.config.js @@ -4,11 +4,11 @@ const nodeResolve = require('rollup-plugin-node-resolve'); const json = require('rollup-plugin-json'); export default { - input: 'src/admin/util', - output: { - file: 'dist/admin/util.js', - format: 'iife', - name: 'previewUtil', - }, - plugins: [builtins(), nodeResolve(), commonjs(), json()], + input: 'src/admin/util', + output: { + file: 'dist/admin/util.js', + format: 'iife', + name: 'previewUtil', + }, + plugins: [builtins(), nodeResolve(), commonjs(), json()], }; diff --git a/packages/development-edition-engine-handlebars/source/css/style.css b/packages/docs/src/index.ts similarity index 100% rename from packages/development-edition-engine-handlebars/source/css/style.css rename to packages/docs/src/index.ts diff --git a/packages/docs/tools/rename-output.js b/packages/docs/tools/rename-output.js new file mode 100644 index 000000000..c57ce643d --- /dev/null +++ b/packages/docs/tools/rename-output.js @@ -0,0 +1,13 @@ +const fs = require('fs'); +const { resolve } = require('path'); + +const distPath = resolve(__dirname, '..', 'dist'); +const outputPath = resolve(__dirname, '..', 'output'); + +if (fs.existsSync(outputPath)) { + fs.rmSync(outputPath, { recursive: true, force: true }); +} + +if (fs.existsSync(distPath)) { + fs.renameSync(distPath, outputPath); +} diff --git a/packages/docs/tsconfig.json b/packages/docs/tsconfig.json new file mode 100644 index 000000000..9d7f15bc8 --- /dev/null +++ b/packages/docs/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "allowJs": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/docs/tsconfig.lib.json b/packages/docs/tsconfig.lib.json new file mode 100644 index 000000000..adf3223f4 --- /dev/null +++ b/packages/docs/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/index.ts", "src/index.js"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts", "src/**/*.spec.js", "src/**/*.test.js"] +} diff --git a/packages/docs/tsconfig.spec.json b/packages/docs/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/docs/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/edition-node-gulp/.editorconfig b/packages/edition-node-gulp/.editorconfig deleted file mode 100644 index 8951c3929..000000000 --- a/packages/edition-node-gulp/.editorconfig +++ /dev/null @@ -1,11 +0,0 @@ -# editorconfig.org -root = true - -[*] -indent_style = space -indent_size = 2 -tab_width = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true diff --git a/packages/edition-node-gulp/.eslintrc.json b/packages/edition-node-gulp/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/edition-node-gulp/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/edition-node-gulp/.gitignore b/packages/edition-node-gulp/.gitignore deleted file mode 100644 index 0679bd2b5..000000000 --- a/packages/edition-node-gulp/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -node_modules/ -.DS_Store -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -.idea/ -public -dependencyGraph.json diff --git a/packages/edition-node-gulp/.npmrc b/packages/edition-node-gulp/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/edition-node-gulp/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/edition-node-gulp/.nvmrc b/packages/edition-node-gulp/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/edition-node-gulp/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/edition-node-gulp/jest.config.ts b/packages/edition-node-gulp/jest.config.ts new file mode 100644 index 000000000..ae5402cc3 --- /dev/null +++ b/packages/edition-node-gulp/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'edition-node-gulp', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/edition-node-gulp', +}; diff --git a/packages/edition-node-gulp/package.json b/packages/edition-node-gulp/package.json index b59d56e9e..dec6db96b 100644 --- a/packages/edition-node-gulp/package.json +++ b/packages/edition-node-gulp/package.json @@ -3,14 +3,7 @@ "description": "The gulp wrapper around patternlab-node core, providing tasks to interact with the core library and move supporting frontend assets.", "version": "6.0.1", "main": "gulpfile.js", - "dependencies": { - "@pattern-lab/cli": "^6.0.1", - "@pattern-lab/core": "^6.0.1", - "@pattern-lab/engine-mustache": "^6.0.0", - "@pattern-lab/uikit-workshop": "^6.0.1", - "gulp": "4.0.2", - "minimist": "1.2.5" - }, + "license": "MIT", "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -25,12 +18,8 @@ "gulp": "gulp -- ", "patternlab": "patternlab" }, - "license": "MIT", "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/edition-node-gulp/project.json b/packages/edition-node-gulp/project.json new file mode 100644 index 000000000..a251c4c6f --- /dev/null +++ b/packages/edition-node-gulp/project.json @@ -0,0 +1,64 @@ +{ + "name": "edition-node-gulp", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/edition-node-gulp/src", + "projectType": "library", + "implicitDependencies": ["cli", "core", "engine-mustache", "uikit-workshop"], + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/edition-node-gulp", + "main": "packages/edition-node-gulp/src/index.ts", + "tsConfig": "packages/edition-node-gulp/tsconfig.lib.json", + "assets": [ + "packages/edition-node-gulp/*.md", + "packages/edition-node-gulp/LICENSE", + { + "glob": "**/*", + "input": "packages/edition-node-gulp/src", + "output": "", + "ignore": ["index.ts"] + } + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs edition-node-gulp {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/edition-node-gulp/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/edition-node-gulp/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/edition-node-gulp/source/_meta/README.md b/packages/edition-node-gulp/source/_meta/README.md deleted file mode 100644 index b5d2c4537..000000000 --- a/packages/edition-node-gulp/source/_meta/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place meta files, otherwise known a pattern's header and footer. - -Pattern Lab builds each pattern while prepending and appending the header and footer. Read more about [pattern headers and footers](https://patternlab.io/docs/modifying-the-pattern-header-and-footer/). - -If you wish to rename this directory, make sure you update the `paths.source.meta` property within `patternlab-config.json`. diff --git a/packages/edition-node-gulp/source/_meta/_foot.mustache b/packages/edition-node-gulp/source/_meta/_foot.mustache deleted file mode 100644 index 7c15d6a74..000000000 --- a/packages/edition-node-gulp/source/_meta/_foot.mustache +++ /dev/null @@ -1,6 +0,0 @@ - - <!--DO NOT REMOVE--> - {{{ patternLabFoot }}} - - </body> -</html> diff --git a/packages/edition-node-gulp/source/css/style.css b/packages/edition-node-gulp/source/css/style.css deleted file mode 100644 index 04f745349..000000000 --- a/packages/edition-node-gulp/source/css/style.css +++ /dev/null @@ -1,3 +0,0 @@ -/* - * YOUR STYLES HERE - */ diff --git a/packages/edition-node-gulp/gulpfile.js b/packages/edition-node-gulp/src/gulpfile.js similarity index 96% rename from packages/edition-node-gulp/gulpfile.js rename to packages/edition-node-gulp/src/gulpfile.js index fd039bad7..789937e99 100644 --- a/packages/edition-node-gulp/gulpfile.js +++ b/packages/edition-node-gulp/src/gulpfile.js @@ -9,7 +9,7 @@ const argv = require('minimist')(process.argv.slice(2)); /****************************************************** * PATTERN LAB NODE WRAPPER TASKS with core library ******************************************************/ -const config = require('./patternlab-config.json'); +const config = require('../patternlab-config.json'); const patternlab = require('@pattern-lab/core')(config); function build() { diff --git a/packages/development-edition-engine-handlebars/source/fonts/.gitkeep b/packages/edition-node-gulp/src/index.ts similarity index 100% rename from packages/development-edition-engine-handlebars/source/fonts/.gitkeep rename to packages/edition-node-gulp/src/index.ts diff --git a/packages/edition-node-gulp/patternlab-config.json b/packages/edition-node-gulp/src/patternlab-config.json similarity index 100% rename from packages/edition-node-gulp/patternlab-config.json rename to packages/edition-node-gulp/src/patternlab-config.json diff --git a/packages/development-edition-engine-react/source/_annotations/README.md b/packages/edition-node-gulp/src/source/_annotations/README.md similarity index 100% rename from packages/development-edition-engine-react/source/_annotations/README.md rename to packages/edition-node-gulp/src/source/_annotations/README.md diff --git a/packages/development-edition-engine-react/source/_data/README.md b/packages/edition-node-gulp/src/source/_data/README.md similarity index 100% rename from packages/development-edition-engine-react/source/_data/README.md rename to packages/edition-node-gulp/src/source/_data/README.md diff --git a/packages/edition-node-gulp/source/_data/data.json b/packages/edition-node-gulp/src/source/_data/data.json similarity index 100% rename from packages/edition-node-gulp/source/_data/data.json rename to packages/edition-node-gulp/src/source/_data/data.json diff --git a/packages/development-edition-engine-handlebars/source/_meta/README.md b/packages/edition-node-gulp/src/source/_meta/README.md similarity index 100% rename from packages/development-edition-engine-handlebars/source/_meta/README.md rename to packages/edition-node-gulp/src/source/_meta/README.md diff --git a/packages/development-edition-engine-react/source/_meta/_foot.mustache b/packages/edition-node-gulp/src/source/_meta/_foot.mustache similarity index 100% rename from packages/development-edition-engine-react/source/_meta/_foot.mustache rename to packages/edition-node-gulp/src/source/_meta/_foot.mustache diff --git a/packages/development-edition-engine-react/source/_meta/_head.mustache b/packages/edition-node-gulp/src/source/_meta/_head.mustache similarity index 100% rename from packages/development-edition-engine-react/source/_meta/_head.mustache rename to packages/edition-node-gulp/src/source/_meta/_head.mustache diff --git a/packages/development-edition-engine-react/source/_patterns/README.md b/packages/edition-node-gulp/src/source/_patterns/README.md similarity index 100% rename from packages/development-edition-engine-react/source/_patterns/README.md rename to packages/edition-node-gulp/src/source/_patterns/README.md diff --git a/packages/development-edition-engine-react/source/css/README.md b/packages/edition-node-gulp/src/source/css/README.md similarity index 100% rename from packages/development-edition-engine-react/source/css/README.md rename to packages/edition-node-gulp/src/source/css/README.md diff --git a/packages/development-edition-engine-react/source/css/pattern-scaffolding.css b/packages/edition-node-gulp/src/source/css/pattern-scaffolding.css similarity index 100% rename from packages/development-edition-engine-react/source/css/pattern-scaffolding.css rename to packages/edition-node-gulp/src/source/css/pattern-scaffolding.css diff --git a/packages/development-edition-engine-react/source/css/style.css b/packages/edition-node-gulp/src/source/css/style.css similarity index 100% rename from packages/development-edition-engine-react/source/css/style.css rename to packages/edition-node-gulp/src/source/css/style.css diff --git a/packages/development-edition-engine-handlebars/source/favicon.ico b/packages/edition-node-gulp/src/source/favicon.ico similarity index 100% rename from packages/development-edition-engine-handlebars/source/favicon.ico rename to packages/edition-node-gulp/src/source/favicon.ico diff --git a/packages/development-edition-engine-react/source/fonts/README.md b/packages/edition-node-gulp/src/source/fonts/README.md similarity index 100% rename from packages/development-edition-engine-react/source/fonts/README.md rename to packages/edition-node-gulp/src/source/fonts/README.md diff --git a/packages/development-edition-engine-react/source/images/README.md b/packages/edition-node-gulp/src/source/images/README.md similarity index 100% rename from packages/development-edition-engine-react/source/images/README.md rename to packages/edition-node-gulp/src/source/images/README.md diff --git a/packages/development-edition-engine-react/source/js/README.md b/packages/edition-node-gulp/src/source/js/README.md similarity index 100% rename from packages/development-edition-engine-react/source/js/README.md rename to packages/edition-node-gulp/src/source/js/README.md diff --git a/packages/edition-node-gulp/tsconfig.json b/packages/edition-node-gulp/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/edition-node-gulp/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/edition-node-gulp/tsconfig.lib.json b/packages/edition-node-gulp/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/edition-node-gulp/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/edition-node-gulp/tsconfig.spec.json b/packages/edition-node-gulp/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/edition-node-gulp/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/edition-node/.editorconfig b/packages/edition-node/.editorconfig deleted file mode 100644 index 8951c3929..000000000 --- a/packages/edition-node/.editorconfig +++ /dev/null @@ -1,11 +0,0 @@ -# editorconfig.org -root = true - -[*] -indent_style = space -indent_size = 2 -tab_width = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true diff --git a/packages/edition-node/.eslintrc.json b/packages/edition-node/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/edition-node/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/edition-node/.gitignore b/packages/edition-node/.gitignore deleted file mode 100644 index 0679bd2b5..000000000 --- a/packages/edition-node/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -node_modules/ -.DS_Store -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -.idea/ -public -dependencyGraph.json diff --git a/packages/edition-node/.npmrc b/packages/edition-node/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/edition-node/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/edition-node/.nvmrc b/packages/edition-node/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/edition-node/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/edition-node/jest.config.ts b/packages/edition-node/jest.config.ts new file mode 100644 index 000000000..2aef36e77 --- /dev/null +++ b/packages/edition-node/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'edition-node', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/edition-node', +}; diff --git a/packages/edition-node/package.json b/packages/edition-node/package.json index cf9be2ac0..52875336c 100644 --- a/packages/edition-node/package.json +++ b/packages/edition-node/package.json @@ -2,13 +2,7 @@ "name": "@pattern-lab/edition-node", "description": "A pure wrapper around patternlab-node core, the default pattern engine, and supporting frontend assets.", "version": "6.0.1", - "main": "patternlab-config.json", - "dependencies": { - "@pattern-lab/cli": "^6.0.1", - "@pattern-lab/core": "^6.0.1", - "@pattern-lab/engine-handlebars": "^6.0.0", - "@pattern-lab/uikit-workshop": "^6.0.1" - }, + "license": "MIT", "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -18,6 +12,7 @@ "repository": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/edition-node", "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "author": "Brian Muenzenmeyer", + "main": "patternlab-config.json", "scripts": { "pl:build": "patternlab build --config ./patternlab-config.json", "pl:help": "patternlab --help", @@ -26,12 +21,8 @@ "pl:version": "patternlab --version", "start": "npm run pl:serve" }, - "license": "MIT", "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/edition-node/project.json b/packages/edition-node/project.json new file mode 100644 index 000000000..a6b46de5b --- /dev/null +++ b/packages/edition-node/project.json @@ -0,0 +1,64 @@ +{ + "name": "edition-node", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/edition-node/src", + "projectType": "library", + "implicitDependencies": ["cli", "core", "engine-handlebars", "uikit-workshop"], + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/edition-node", + "main": "packages/edition-node/src/index.ts", + "tsConfig": "packages/edition-node/tsconfig.lib.json", + "assets": [ + "packages/edition-node/*.md", + "packages/edition-node/LICENSE", + { + "glob": "**/*", + "input": "packages/edition-node/src", + "output": "", + "ignore": ["index.ts"] + } + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs edition-node {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/edition-node/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/edition-node/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/edition-node/source/_annotations/README.md b/packages/edition-node/source/_annotations/README.md deleted file mode 100644 index b67b5511f..000000000 --- a/packages/edition-node/source/_annotations/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place annotations. - -Pattern Lab uses annotations defined here to markup the UI. Read more about [annotations](https://patternlab.io/docs/adding-annotations/). - -If you wish to rename this directory, make sure you update the `paths.source.annotations` property within `patternlab-config.json`. diff --git a/packages/edition-node/source/_data/README.md b/packages/edition-node/source/_data/README.md deleted file mode 100644 index 50589abc7..000000000 --- a/packages/edition-node/source/_data/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place global data files. - -Pattern Lab uses data defined here as the global fallback if a template does not provide its own data. Read more about [data](https://patternlab.io/docs/overview-of-data/). - -If you wish to rename this directory, make sure you update the `paths.source.data` property within `patternlab-config.json`. diff --git a/packages/edition-node/source/_meta/README.md b/packages/edition-node/source/_meta/README.md deleted file mode 100644 index b5d2c4537..000000000 --- a/packages/edition-node/source/_meta/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place meta files, otherwise known a pattern's header and footer. - -Pattern Lab builds each pattern while prepending and appending the header and footer. Read more about [pattern headers and footers](https://patternlab.io/docs/modifying-the-pattern-header-and-footer/). - -If you wish to rename this directory, make sure you update the `paths.source.meta` property within `patternlab-config.json`. diff --git a/packages/edition-node/source/_patterns/README.md b/packages/edition-node/source/_patterns/README.md deleted file mode 100644 index 8751c8669..000000000 --- a/packages/edition-node/source/_patterns/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place pattern files. - -Pattern Lab builds patterns and the ui from the structure defined within. Read more about [pattern organization](https://patternlab.io/docs/overview-of-patterns/). - -If you wish to rename this directory, make sure you update the `paths.source.patterns` property within `patternlab-config.json`. diff --git a/packages/edition-node/source/css/README.md b/packages/edition-node/source/css/README.md deleted file mode 100644 index a6ce7bf27..000000000 --- a/packages/edition-node/source/css/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place global css files. - -The entire contents of this directory will be recursively copied to your configured `public/` directory. - -If you wish to rename this directory, make sure you update the `paths.source.css` property within `patternlab-config.json`. diff --git a/packages/edition-node/source/fonts/README.md b/packages/edition-node/source/fonts/README.md deleted file mode 100644 index ff4d4dee0..000000000 --- a/packages/edition-node/source/fonts/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place global font files. - -The entire contents of this directory will be recursively copied to your configured `public/` directory. - -If you wish to rename this directory, make sure you update the `paths.source.fonts` property within `patternlab-config.json`. diff --git a/packages/edition-node/source/images/README.md b/packages/edition-node/source/images/README.md deleted file mode 100644 index 86c91d567..000000000 --- a/packages/edition-node/source/images/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place global image files. - -The entire contents of this directory will be recursively copied to your configured `public/` directory. - -If you wish to rename this directory, make sure you update the `paths.source.images` property within `patternlab-config.json`. diff --git a/packages/edition-node/source/js/README.md b/packages/edition-node/source/js/README.md deleted file mode 100644 index 857893854..000000000 --- a/packages/edition-node/source/js/README.md +++ /dev/null @@ -1,5 +0,0 @@ -This is the default location to place global javascript files. - -The entire contents of this directory will be recursively copied to your configured `public/` directory. - -If you wish to rename this directory, make sure you update the `paths.source.js` property within `patternlab-config.json`. diff --git a/packages/edition-node/helpers/test.js b/packages/edition-node/src/helpers/test-helpers.js similarity index 100% rename from packages/edition-node/helpers/test.js rename to packages/edition-node/src/helpers/test-helpers.js diff --git a/packages/starterkit-handlebars-demo/dist/fonts/.gitkeep b/packages/edition-node/src/index.ts similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/.gitkeep rename to packages/edition-node/src/index.ts diff --git a/packages/edition-node/patternlab-config.json b/packages/edition-node/src/patternlab-config.json similarity index 100% rename from packages/edition-node/patternlab-config.json rename to packages/edition-node/src/patternlab-config.json diff --git a/packages/edition-node-gulp/source/_annotations/README.md b/packages/edition-node/src/source/_annotations/README.md similarity index 100% rename from packages/edition-node-gulp/source/_annotations/README.md rename to packages/edition-node/src/source/_annotations/README.md diff --git a/packages/edition-node-gulp/source/_data/README.md b/packages/edition-node/src/source/_data/README.md similarity index 100% rename from packages/edition-node-gulp/source/_data/README.md rename to packages/edition-node/src/source/_data/README.md diff --git a/packages/development-edition-engine-react/source/_meta/README.md b/packages/edition-node/src/source/_meta/README.md similarity index 100% rename from packages/development-edition-engine-react/source/_meta/README.md rename to packages/edition-node/src/source/_meta/README.md diff --git a/packages/edition-node/source/_meta/_foot.mustache b/packages/edition-node/src/source/_meta/_foot.mustache similarity index 100% rename from packages/edition-node/source/_meta/_foot.mustache rename to packages/edition-node/src/source/_meta/_foot.mustache diff --git a/packages/edition-node-gulp/source/_meta/_head.mustache b/packages/edition-node/src/source/_meta/_head.mustache similarity index 100% rename from packages/edition-node-gulp/source/_meta/_head.mustache rename to packages/edition-node/src/source/_meta/_head.mustache diff --git a/packages/edition-node-gulp/source/_patterns/README.md b/packages/edition-node/src/source/_patterns/README.md similarity index 100% rename from packages/edition-node-gulp/source/_patterns/README.md rename to packages/edition-node/src/source/_patterns/README.md diff --git a/packages/edition-node-gulp/source/css/README.md b/packages/edition-node/src/source/css/README.md similarity index 100% rename from packages/edition-node-gulp/source/css/README.md rename to packages/edition-node/src/source/css/README.md diff --git a/packages/development-edition-engine-react/source/favicon.ico b/packages/edition-node/src/source/favicon.ico similarity index 100% rename from packages/development-edition-engine-react/source/favicon.ico rename to packages/edition-node/src/source/favicon.ico diff --git a/packages/edition-node-gulp/source/fonts/README.md b/packages/edition-node/src/source/fonts/README.md similarity index 100% rename from packages/edition-node-gulp/source/fonts/README.md rename to packages/edition-node/src/source/fonts/README.md diff --git a/packages/edition-node-gulp/source/images/README.md b/packages/edition-node/src/source/images/README.md similarity index 100% rename from packages/edition-node-gulp/source/images/README.md rename to packages/edition-node/src/source/images/README.md diff --git a/packages/edition-node-gulp/source/js/README.md b/packages/edition-node/src/source/js/README.md similarity index 100% rename from packages/edition-node-gulp/source/js/README.md rename to packages/edition-node/src/source/js/README.md diff --git a/packages/edition-node/tsconfig.json b/packages/edition-node/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/edition-node/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/edition-node/tsconfig.lib.json b/packages/edition-node/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/edition-node/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/edition-node/tsconfig.spec.json b/packages/edition-node/tsconfig.spec.json new file mode 100644 index 000000000..f27192829 --- /dev/null +++ b/packages/edition-node/tsconfig.spec.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "exclude": ["src/helpers/**/*.js"], + "include": ["src/helpers/test-helpers.jsrc/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/edition-twig/.editorconfig b/packages/edition-twig/.editorconfig deleted file mode 100644 index 8951c3929..000000000 --- a/packages/edition-twig/.editorconfig +++ /dev/null @@ -1,11 +0,0 @@ -# editorconfig.org -root = true - -[*] -indent_style = space -indent_size = 2 -tab_width = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true diff --git a/packages/edition-twig/.eslintrc.json b/packages/edition-twig/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/edition-twig/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/edition-twig/.patternlabrc.js b/packages/edition-twig/.patternlabrc.js deleted file mode 100644 index 698dedca8..000000000 --- a/packages/edition-twig/.patternlabrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - // target the UIKit installed / symlinked under node_modules - buildDir: __dirname + '/node_modules/@pattern-lab/uikit-workshop/dist', -}; diff --git a/packages/engine-react/LICENSE b/packages/edition-twig/LICENSE similarity index 100% rename from packages/engine-react/LICENSE rename to packages/edition-twig/LICENSE diff --git a/packages/edition-twig/README.md b/packages/edition-twig/README.md index 2d8d9f3d0..eb9ed4d4d 100644 --- a/packages/edition-twig/README.md +++ b/packages/edition-twig/README.md @@ -1,6 +1,7 @@ ## Working on Pattern Lab's UI Locally ### Step 1: Install Dependencies + Run the following in the root of the Pattern Lab repo: ``` @@ -8,4 +9,5 @@ yarn run setup ``` ### Step 2 + Finally, go back into this folder, `cd packages/edition-twig`, and start up the local dev server which watches UIKit and the local Pattern Lab instance for changes, live reloads, etc by running `yarn dev` diff --git a/packages/edition-twig/jest.config.ts b/packages/edition-twig/jest.config.ts new file mode 100644 index 000000000..7d4d734f7 --- /dev/null +++ b/packages/edition-twig/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'edition-twig', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/edition-twig', +}; diff --git a/packages/edition-twig/package.json b/packages/edition-twig/package.json index f239543a8..3fadc16bd 100644 --- a/packages/edition-twig/package.json +++ b/packages/edition-twig/package.json @@ -2,6 +2,7 @@ "name": "@pattern-lab/edition-twig", "version": "6.0.1", "description": "Pattern Lab node with Twig PHP Engine", + "license": "MIT", "author": { "name": "Evan Lovely", "url": "https://www.evanlovely.com" @@ -11,29 +12,6 @@ "name": "Salem Ghoweri" } ], - "main": "patternlab-config.json", - "scripts": { - "build:uikit": "cross-env-shell PL_CONFIG_PATH='${INIT_CWD}/.patternlabrc.js' npm run build --prefix node_modules/@pattern-lab/uikit-workshop -- --patternlabrc '$PL_CONFIG_PATH'", - "build": "patternlab build --config ./patternlab-config.json", - "help": "patternlab --help", - "install": "patternlab install --config ./patternlab-config.json", - "serve": "patternlab serve --config ./patternlab-config.json", - "start": "npm run serve", - "version": "patternlab --version", - "dev": "node ./node_modules/@pattern-lab/uikit-workshop/build-tools.js" - }, - "dependencies": { - "@pattern-lab/cli": "^6.0.1", - "@pattern-lab/core": "^6.0.1", - "@pattern-lab/engine-twig-php": "^6.0.1", - "@pattern-lab/uikit-workshop": "^6.0.1" - }, - "engines": { - "node": ">=14.21.1" - }, - "publishConfig": { - "access": "public" - }, "keywords": [ "Pattern", "Lab", @@ -42,6 +20,17 @@ "Design", "Twig" ], - "license": "MIT", + "main": "patternlab-config.json", + "scripts": { + "pl:build": "patternlab build --config ./patternlab-config.json", + "pl:help": "patternlab --help", + "pl:install": "patternlab install --config ./patternlab-config.json", + "pl:serve": "patternlab serve --config ./patternlab-config.json", + "pl:version": "patternlab --version", + "start": "npm run pl:serve" + }, + "engines": { + "node": ">=14.21.1" + }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/edition-twig/project.json b/packages/edition-twig/project.json new file mode 100644 index 000000000..29900964a --- /dev/null +++ b/packages/edition-twig/project.json @@ -0,0 +1,64 @@ +{ + "name": "edition-twig", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/edition-twig/src", + "projectType": "library", + "implicitDependencies": ["cli", "core", "engine-twig-php", "uikit-workshop"], + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/edition-twig", + "main": "packages/edition-twig/src/index.ts", + "tsConfig": "packages/edition-twig/tsconfig.lib.json", + "assets": [ + "packages/edition-twig/*.md", + "packages/edition-twig/LICENSE", + { + "glob": "**/*", + "input": "packages/edition-twig/src", + "output": "", + "ignore": ["index.ts"] + } + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs edition-twig {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/edition-twig/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/edition-twig/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/edition-twig/source/_data/listitems.json b/packages/edition-twig/source/_data/listitems.json deleted file mode 100644 index 0967ef424..000000000 --- a/packages/edition-twig/source/_data/listitems.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/packages/edition-twig/source/_meta/_head.mustache b/packages/edition-twig/source/_meta/_head.mustache deleted file mode 100644 index 5921e94cf..000000000 --- a/packages/edition-twig/source/_meta/_head.mustache +++ /dev/null @@ -1,17 +0,0 @@ -<!DOCTYPE html> -<html class="{{ htmlClass }}" lang="en"> - <head> - <title>{{ title }}</title> - <meta charset="UTF-8" /> - <meta name="viewport" content="width=device-width" /> - - <link rel="stylesheet" href="../../css/style.css?{{ cacheBuster }}" media="all" /> - <link rel="stylesheet" href="../../css/pattern-scaffolding.css?{{ cacheBuster }}" media="all" /> - - <!-- Begin Pattern Lab (Required for Pattern Lab to run properly) --> - {{{ patternLabHead }}} - <!-- End Pattern Lab --> - - </head> - <body class="{{ bodyClass }}"> - diff --git a/packages/edition-twig/alter-twig.php b/packages/edition-twig/src/alter-twig.php similarity index 100% rename from packages/edition-twig/alter-twig.php rename to packages/edition-twig/src/alter-twig.php diff --git a/packages/edition-twig/src/index.ts b/packages/edition-twig/src/index.ts new file mode 100644 index 000000000..e69de29bb diff --git a/packages/edition-twig/patternlab-config.json b/packages/edition-twig/src/patternlab-config.json similarity index 100% rename from packages/edition-twig/patternlab-config.json rename to packages/edition-twig/src/patternlab-config.json diff --git a/packages/starterkit-twig-demo/dist/_annotations/annotations.json b/packages/edition-twig/src/source/_annotations/annotations.json old mode 100755 new mode 100644 similarity index 87% rename from packages/starterkit-twig-demo/dist/_annotations/annotations.json rename to packages/edition-twig/src/source/_annotations/annotations.json index 6ae3d7dc3..dbe3b1dbc --- a/packages/starterkit-twig-demo/dist/_annotations/annotations.json +++ b/packages/edition-twig/src/source/_annotations/annotations.json @@ -1,8 +1,8 @@ { - "comments" : [ + "comments": [ { "el": "header[role=banner]", - "title" : "Masthead", + "title": "Masthead", "comment": "The main header of the site doesn't take up too much screen real estate in order to keep the focus on the core content. It's using a linear CSS gradient instead of a background image to give greater design flexibility and reduce HTTP requests." } ] diff --git a/packages/edition-twig/source/_data/data.json b/packages/edition-twig/src/source/_data/data.json old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_data/data.json rename to packages/edition-twig/src/source/_data/data.json diff --git a/packages/development-edition-engine-handlebars/source/_data/listitems.json b/packages/edition-twig/src/source/_data/listitems.json similarity index 100% rename from packages/development-edition-engine-handlebars/source/_data/listitems.json rename to packages/edition-twig/src/source/_data/listitems.json diff --git a/packages/edition-twig/source/_layouts/.gitkeep b/packages/edition-twig/src/source/_layouts/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_layouts/.gitkeep rename to packages/edition-twig/src/source/_layouts/.gitkeep diff --git a/packages/edition-twig/source/_macros/.gitkeep b/packages/edition-twig/src/source/_macros/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_macros/.gitkeep rename to packages/edition-twig/src/source/_macros/.gitkeep diff --git a/packages/edition-twig/source/_meta/_foot.mustache b/packages/edition-twig/src/source/_meta/_foot.mustache similarity index 100% rename from packages/edition-twig/source/_meta/_foot.mustache rename to packages/edition-twig/src/source/_meta/_foot.mustache diff --git a/packages/edition-twig/source/_meta/_foot.twig b/packages/edition-twig/src/source/_meta/_foot.twig similarity index 100% rename from packages/edition-twig/source/_meta/_foot.twig rename to packages/edition-twig/src/source/_meta/_foot.twig diff --git a/packages/edition-node/source/_meta/_head.mustache b/packages/edition-twig/src/source/_meta/_head.mustache similarity index 100% rename from packages/edition-node/source/_meta/_head.mustache rename to packages/edition-twig/src/source/_meta/_head.mustache diff --git a/packages/edition-twig/source/_meta/_head.twig b/packages/edition-twig/src/source/_meta/_head.twig similarity index 100% rename from packages/edition-twig/source/_meta/_head.twig rename to packages/edition-twig/src/source/_meta/_head.twig diff --git a/packages/edition-twig/source/_patterns/atoms/buttons/_button.twig b/packages/edition-twig/src/source/_patterns/atoms/buttons/_button.twig similarity index 100% rename from packages/edition-twig/source/_patterns/atoms/buttons/_button.twig rename to packages/edition-twig/src/source/_patterns/atoms/buttons/_button.twig diff --git a/packages/edition-twig/source/_patterns/atoms/buttons/button-dark-demo.twig b/packages/edition-twig/src/source/_patterns/atoms/buttons/button-dark-demo.twig similarity index 100% rename from packages/edition-twig/source/_patterns/atoms/buttons/button-dark-demo.twig rename to packages/edition-twig/src/source/_patterns/atoms/buttons/button-dark-demo.twig diff --git a/packages/edition-twig/source/_patterns/atoms/buttons/button-simple-demo.twig b/packages/edition-twig/src/source/_patterns/atoms/buttons/button-simple-demo.twig similarity index 100% rename from packages/edition-twig/source/_patterns/atoms/buttons/button-simple-demo.twig rename to packages/edition-twig/src/source/_patterns/atoms/buttons/button-simple-demo.twig diff --git a/packages/edition-twig/source/_patterns/atoms/text/headings.twig b/packages/edition-twig/src/source/_patterns/atoms/text/headings.twig similarity index 100% rename from packages/edition-twig/source/_patterns/atoms/text/headings.twig rename to packages/edition-twig/src/source/_patterns/atoms/text/headings.twig diff --git a/packages/edition-twig/source/_patterns/molecules/.gitkeep b/packages/edition-twig/src/source/_patterns/molecules/.gitkeep similarity index 100% rename from packages/edition-twig/source/_patterns/molecules/.gitkeep rename to packages/edition-twig/src/source/_patterns/molecules/.gitkeep diff --git a/packages/edition-twig/source/_patterns/molecules/card/card.twig b/packages/edition-twig/src/source/_patterns/molecules/card/card.twig similarity index 100% rename from packages/edition-twig/source/_patterns/molecules/card/card.twig rename to packages/edition-twig/src/source/_patterns/molecules/card/card.twig diff --git a/packages/edition-twig/source/_patterns/organisms/.gitkeep b/packages/edition-twig/src/source/_patterns/organisms/.gitkeep similarity index 100% rename from packages/edition-twig/source/_patterns/organisms/.gitkeep rename to packages/edition-twig/src/source/_patterns/organisms/.gitkeep diff --git a/packages/edition-twig/source/_patterns/pages/.gitkeep b/packages/edition-twig/src/source/_patterns/pages/.gitkeep similarity index 100% rename from packages/edition-twig/source/_patterns/pages/.gitkeep rename to packages/edition-twig/src/source/_patterns/pages/.gitkeep diff --git a/packages/edition-twig/source/_patterns/templates/.gitkeep b/packages/edition-twig/src/source/_patterns/templates/.gitkeep similarity index 100% rename from packages/edition-twig/source/_patterns/templates/.gitkeep rename to packages/edition-twig/src/source/_patterns/templates/.gitkeep diff --git a/packages/edition-twig/source/_twig-components/filters/.gitkeep b/packages/edition-twig/src/source/_twig-components/filters/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_twig-components/filters/.gitkeep rename to packages/edition-twig/src/source/_twig-components/filters/.gitkeep diff --git a/packages/edition-twig/source/_twig-components/functions/.gitkeep b/packages/edition-twig/src/source/_twig-components/functions/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_twig-components/functions/.gitkeep rename to packages/edition-twig/src/source/_twig-components/functions/.gitkeep diff --git a/packages/edition-twig/source/_twig-components/tags/.gitkeep b/packages/edition-twig/src/source/_twig-components/tags/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_twig-components/tags/.gitkeep rename to packages/edition-twig/src/source/_twig-components/tags/.gitkeep diff --git a/packages/edition-twig/source/_twig-components/tests/.gitkeep b/packages/edition-twig/src/source/_twig-components/tests/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_twig-components/tests/.gitkeep rename to packages/edition-twig/src/source/_twig-components/tests/.gitkeep diff --git a/packages/edition-twig/source/css/.gitkeep b/packages/edition-twig/src/source/css/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/css/.gitkeep rename to packages/edition-twig/src/source/css/.gitkeep diff --git a/packages/edition-node-gulp/source/favicon.ico b/packages/edition-twig/src/source/favicon.ico similarity index 100% rename from packages/edition-node-gulp/source/favicon.ico rename to packages/edition-twig/src/source/favicon.ico diff --git a/packages/edition-twig/source/fonts/.gitkeep b/packages/edition-twig/src/source/fonts/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/fonts/.gitkeep rename to packages/edition-twig/src/source/fonts/.gitkeep diff --git a/packages/edition-twig/source/images/.gitkeep b/packages/edition-twig/src/source/images/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/images/.gitkeep rename to packages/edition-twig/src/source/images/.gitkeep diff --git a/packages/edition-twig/source/js/.gitkeep b/packages/edition-twig/src/source/js/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/js/.gitkeep rename to packages/edition-twig/src/source/js/.gitkeep diff --git a/packages/edition-twig/tsconfig.json b/packages/edition-twig/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/edition-twig/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/edition-twig/tsconfig.lib.json b/packages/edition-twig/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/edition-twig/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/edition-twig/tsconfig.spec.json b/packages/edition-twig/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/edition-twig/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/engine-handlebars/.eslintrc.json b/packages/engine-handlebars/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/engine-handlebars/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/engine-handlebars/.gitignore b/packages/engine-handlebars/.gitignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-handlebars/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-handlebars/.npmrc b/packages/engine-handlebars/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/engine-handlebars/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-handlebars/.nvmrc b/packages/engine-handlebars/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/engine-handlebars/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/engine-handlebars/jest.config.ts b/packages/engine-handlebars/jest.config.ts new file mode 100644 index 000000000..66d2dac0d --- /dev/null +++ b/packages/engine-handlebars/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'engine-handlebars', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/engine-handlebars', +}; diff --git a/packages/engine-handlebars/lib/engine_handlebars.js b/packages/engine-handlebars/lib/engine_handlebars.js deleted file mode 100644 index d182971c1..000000000 --- a/packages/engine-handlebars/lib/engine_handlebars.js +++ /dev/null @@ -1,162 +0,0 @@ -'use strict'; - -/* - * handlebars pattern engine for patternlab-node - * - * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. - * Licensed under the MIT license. - * - * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. - * - */ - -/* - * ENGINE SUPPORT LEVEL: - * - * Full. Partial calls and lineage hunting are supported. Handlebars does not - * support the mustache-specific syntax extensions, style modifiers and pattern - * parameters, because their use cases are addressed by the core Handlebars - * feature set. It also does not support verbose partial syntax, because it - * seems like it can't tolerate slashes in partial names. But honestly, did you - * really want to use the verbose syntax anyway? I don't. - * - */ - -const fs = require('fs-extra'); -const path = require('path'); -const Handlebars = require('handlebars'); -const glob = require('glob'); - -// regexes, stored here so they're only compiled once -const findPartialsRE = /{{#?>\s*([\w-\/.]+)(?:.|\s+)*?}}/g; -const findListItemsRE = - /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g; -const findAtPartialBlockRE = /{{#?>\s*@partial-block\s*}}/g; - -function escapeAtPartialBlock(partialString) { - const partial = partialString.replace( - findAtPartialBlockRE, - '{{> @partial-block }}' - ); - return partial; -} - -function loadHelpers(helpers) { - helpers.forEach((globPattern) => { - glob.sync(globPattern).forEach((filePath) => { - require(path.join(process.cwd(), filePath))(Handlebars); - }); - }); -} - -const engine_handlebars = { - engine: Handlebars, - engineName: 'handlebars', - engineFileExtension: ['.hbs', '.handlebars'], - - // partial expansion is only necessary for Mustache templates that have - // style modifiers or pattern parameters (I think) - expandPartials: false, - - // render it - renderPattern: function renderPattern(pattern, data, partials) { - if (partials) { - Handlebars.registerPartial(partials); - } - - const compiled = Handlebars.compile(escapeAtPartialBlock(pattern.template)); - - return Promise.resolve(compiled(data)); - }, - - registerPartial: function (pattern) { - // register exact partial name - Handlebars.registerPartial(pattern.patternPartial, pattern.template); - - Handlebars.registerPartial(pattern.verbosePartial, pattern.template); - }, - - // find and return any {{> template-name }} within pattern - findPartials: function findPartials(pattern) { - const matches = pattern.template.match(findPartialsRE); - return matches; - }, - - // returns any patterns that match {{> value(foo:"bar") }} or {{> - // value:mod(foo:"bar") }} within the pattern - findPartialsWithPatternParameters: function () { - // TODO: make the call to this from oPattern objects conditional on their - // being implemented here. - return []; - }, - findListItems: function (pattern) { - const matches = pattern.template.match(findListItemsRE); - return matches; - }, - - // given a pattern, and a partial string, tease out the "pattern key" and - // return it. - findPartial: function (partialString) { - const partial = partialString.replace(findPartialsRE, '$1'); - return partial; - }, - - spawnFile: function (config, fileName) { - const paths = config.paths; - const metaFilePath = path.resolve(paths.source.meta, fileName); - try { - fs.statSync(metaFilePath); - } catch (err) { - //not a file, so spawn it from the included file - const metaFileContent = fs.readFileSync( - path.resolve(__dirname, '..', '_meta/', fileName), - 'utf8' - ); - fs.outputFileSync(metaFilePath, metaFileContent); - } - }, - - /** - * Checks to see if the _meta directory has engine-specific head and foot files, - * spawning them if not found. - * - * @param {object} config - the global config object from core, since we won't - * assume it's already present - */ - spawnMeta: function (config) { - this.spawnFile(config, '_head.hbs'); - this.spawnFile(config, '_foot.hbs'); - }, - - /** - * Accept a Pattern Lab config object from the core and use the settings to - * load helpers. - * - * @param {object} config - the global config object from core - */ - usePatternLabConfig: function (config) { - let helpers; - - try { - // Look for helpers in the config - helpers = config.engines.handlebars.extend; - - if (typeof helpers === 'string') { - helpers = [helpers]; - } - } catch (error) { - // Look for helpers in default location - const configPath = 'patternlab-handlebars-config.js'; - if (fs.existsSync(path.join(process.cwd(), configPath))) { - helpers = [configPath]; - } - } - - // Load helpers if they were found - if (helpers) { - loadHelpers(helpers); - } - }, -}; - -module.exports = engine_handlebars; diff --git a/packages/engine-handlebars/package.json b/packages/engine-handlebars/package.json index 4cac94e5f..befe77d45 100644 --- a/packages/engine-handlebars/package.json +++ b/packages/engine-handlebars/package.json @@ -2,12 +2,6 @@ "name": "@pattern-lab/engine-handlebars", "description": "The Handlebars engine for Pattern Lab / Node", "version": "6.0.0", - "main": "lib/engine_handlebars.js", - "dependencies": { - "fs-extra": "^10.0.0", - "glob": "^7.1.6", - "handlebars": "^4.7.7" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -21,12 +15,8 @@ "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "author": "Brian Muenzenmeyer & Geoffrey Pursell", "license": "MIT", - "scripts": {}, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/engine-handlebars/project.json b/packages/engine-handlebars/project.json new file mode 100644 index 000000000..372ef0e0b --- /dev/null +++ b/packages/engine-handlebars/project.json @@ -0,0 +1,58 @@ +{ + "name": "engine-handlebars", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/engine-handlebars/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/engine-handlebars", + "main": "packages/engine-handlebars/src/index.ts", + "tsConfig": "packages/engine-handlebars/tsconfig.lib.json", + "assets": [ + "packages/engine-handlebars/*.md", + "packages/engine-handlebars/LICENSE", + "packages/engine-handlebars/_meta/*" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs engine-handlebars {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/engine-handlebars/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/engine-handlebars/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/engine-handlebars/src/index.ts b/packages/engine-handlebars/src/index.ts new file mode 100644 index 000000000..f7cf014dc --- /dev/null +++ b/packages/engine-handlebars/src/index.ts @@ -0,0 +1,2 @@ +import { EngineHandlebars } from './lib/engine-handlebars'; +export default EngineHandlebars; diff --git a/packages/engine-handlebars/src/lib/engine-handlebars.spec.ts b/packages/engine-handlebars/src/lib/engine-handlebars.spec.ts new file mode 100644 index 000000000..f72952d07 --- /dev/null +++ b/packages/engine-handlebars/src/lib/engine-handlebars.spec.ts @@ -0,0 +1,95 @@ +import { Pattern, PatternLabConfig } from '@pattern-lab/types'; +import { EngineHandlebars } from './engine-handlebars'; +import fs from 'fs-extra'; +import path from 'path'; + +describe('EngineHandlebars', () => { + let engine: EngineHandlebars; + + beforeEach(() => { + engine = new EngineHandlebars(); + }); + + describe('renderPattern()', () => { + it('should render the pattern with the given data', () => { + const pattern = { + template: '<h1>{{title}}</h1>', + patternPartial: 'test', + } as Pattern; + const data = { title: 'Hello, world!' }; + + const result = engine.renderPattern(pattern, data); + expect(result).resolves.toBe('<h1>Hello, world!</h1>'); + }); + }); + + describe('registerPartial()', () => { + it('should register the pattern as a partial', () => { + const pattern = { + template: '<h1>{{title}}</h1>', + patternPartial: 'test', + verbosePartial: 'test-verbose', + } as Pattern; + + engine.registerPartial(pattern); + + const patternWithPartial = { + template: '<div>{{> test}}</div>', + } as Pattern; + const data = { title: 'Hello, world!' }; + + const result = engine.renderPattern(patternWithPartial, data); + expect(result).resolves.toBe('<div><h1>Hello, world!</h1></div>'); + }); + }); + + describe('findPartials()', () => { + it('should find all partials in the pattern template', () => { + const pattern = { + template: '<h1>{{> header}}</h1><p>{{> body}}</p>', + patternPartial: 'test', + } as Pattern; + const result = engine.findPartials(pattern); + expect(result).toEqual(['{{> header}}', '{{> body}}']); + }); + }); + + describe('findListItems()', () => { + it('should find all list items in the pattern template', () => { + const pattern = { + template: '{{#listItems.one}}{{label}}{{/listItems.one}}{{#listItems.two}}{{label}}{{/listItems.two}}', + patternPartial: 'test', + } as Pattern; + const result = engine.findListItems(pattern); + expect(result).toEqual(['{{#listItems.one}}', '{{#listItems.two}}']); + }); + }); + + describe('findPartial()', () => { + it('should extract the partial name from a partial string', () => { + const result = engine.findPartial('{{> header}}'); + expect(result).toBe('header'); + }); + }); + + describe('spawnMeta()', () => { + const normalizedExpect = (pathStr: string): string => expect.stringContaining(path.normalize(pathStr)); + + it('should spawn the meta pattern data', () => { + const readSpy = jest.spyOn(fs, 'readFileSync').mockReturnValue('File Content'); + const outputSpy = jest.spyOn(fs, 'outputFileSync').mockImplementation(jest.fn); + + const config = { + paths: { source: { meta: 'source/_meta' } }, + } as PatternLabConfig; + + engine.spawnMeta(config); + + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-handlebars/_meta/_head.hbs'), 'utf8'); + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-handlebars/_meta/_foot.hbs'), 'utf8'); + + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_head.hbs'), 'File Content'); + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_foot.hbs'), 'File Content'); + }); + }); +}); diff --git a/packages/engine-handlebars/src/lib/engine-handlebars.ts b/packages/engine-handlebars/src/lib/engine-handlebars.ts new file mode 100644 index 000000000..ded230e47 --- /dev/null +++ b/packages/engine-handlebars/src/lib/engine-handlebars.ts @@ -0,0 +1,140 @@ +/* + * handlebars pattern engine for patternlab-node + * + * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. + * Licensed under the MIT license. + * + * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. + * + */ + +/* + * ENGINE SUPPORT LEVEL: + * + * Full. Partial calls and lineage hunting are supported. Handlebars does not + * support the mustache-specific syntax extensions, style modifiers and pattern + * parameters, because their use cases are addressed by the core Handlebars + * feature set. It also does not support verbose partial syntax, because it + * seems like it can't tolerate slashes in partial names. But honestly, did you + * really want to use the verbose syntax anyway? I don't. + * + */ + +import { Pattern, PatternData, PatternLabConfig, PatternLabEngine } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import glob from 'glob'; +import Handlebars from 'handlebars'; +import path from 'path'; + +// eslint-disable-next-line @typescript-eslint/no-explicit-any +declare function require(moduleName: string): any; + +const findPartialsRE = /{{#?>\s*([\w-/.]+)(?:.|\s+)*?}}/g; +const findListItemsRE = + /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g; +const findAtPartialBlockRE = /{{#?>\s*@partial-block\s*}}/g; + +export class EngineHandlebars implements PatternLabEngine { + private engine = Handlebars; + engineName = 'handlebars'; + engineFileExtension = ['.hbs', '.handlebars']; + expandPartials = false; + + // TODO: partials via the render pattern is a bit hacky + renderPattern(pattern: Pattern, data: PatternData, partials?: any): Promise<string> { + if (partials) { + this.engine.registerPartial(partials); + } + + const compiled = this.engine.compile(this.escapeAtPartialBlock(pattern.template)); + + return Promise.resolve(compiled(data)); + } + + registerPartial(pattern: Pattern): void { + this.engine.registerPartial(pattern.patternPartial, pattern.template); + this.engine.registerPartial(pattern.verbosePartial, pattern.template); + } + + findPartials(pattern: Pattern): RegExpMatchArray | null { + const matches = pattern.template.match(findPartialsRE); + return matches; + } + + findPartialsWithPatternParameters(): RegExpMatchArray | null { + return null; + } + + findListItems(pattern: Pattern): RegExpMatchArray | null { + const matches = pattern.template.match(findListItemsRE); + return matches; + } + + findPartial(partialString: string): string { + const partial = partialString.replace(findPartialsRE, '$1'); + return partial; + } + + private spawnFile(config: PatternLabConfig, fileName: string): void { + const paths = config.paths; + const metaFilePath = path.resolve(paths.source.meta, fileName); + try { + fs.statSync(metaFilePath); + } catch (err) { + const metaFileContent = fs.readFileSync(path.resolve(__dirname, '..', '..', '_meta/', fileName), 'utf8'); + fs.outputFileSync(metaFilePath, metaFileContent); + } + } + + /** + * Checks to see if the _meta directory has engine-specific head and foot files, + * spawning them if not found. + * + * @param {object} config - the global config object from core, since we won't + * assume it's already present + */ + spawnMeta(config: PatternLabConfig): void { + this.spawnFile(config, '_head.hbs'); + this.spawnFile(config, '_foot.hbs'); + } + + /** + * Accept a Pattern Lab config object from the core and use the settings to + * load helpers. + * + * @param {object} config - the global config object from core + */ + usePatternLabConfig(config: PatternLabConfig): void { + let helpers: string[] = []; + + try { + // Look for helpers in the config + const extend = config.engines?.['handlebars'].extend; + helpers = (typeof extend === 'string' ? [extend] : extend) ?? []; + } catch (error) { + // Look for helpers in default location + const configPath = 'patternlab-handlebars-config.js'; + if (fs.existsSync(path.join(process.cwd(), configPath))) { + helpers = [configPath]; + } + } + + // Load helpers if they were found + if (helpers) { + this.loadHelpers(helpers); + } + } + + private loadHelpers(helpers: string[]): void { + helpers.forEach((globPattern) => { + glob.sync(globPattern).forEach((filePath) => { + require(path.join(process.cwd(), filePath))(this.engine); + }); + }); + } + + private escapeAtPartialBlock(partialString: string): string { + const partial = partialString.replace(findAtPartialBlockRE, '{{> @partial-block }}'); + return partial; + } +} diff --git a/packages/engine-handlebars/tsconfig.json b/packages/engine-handlebars/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/engine-handlebars/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/engine-handlebars/tsconfig.lib.json b/packages/engine-handlebars/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/engine-handlebars/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/engine-handlebars/tsconfig.spec.json b/packages/engine-handlebars/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/engine-handlebars/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/engine-liquid/.eslintrc.json b/packages/engine-liquid/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/engine-liquid/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/engine-liquid/.gitignore b/packages/engine-liquid/.gitignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-liquid/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-liquid/.npmrc b/packages/engine-liquid/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/engine-liquid/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-liquid/.nvmrc b/packages/engine-liquid/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/engine-liquid/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/engine-liquid/jest.config.ts b/packages/engine-liquid/jest.config.ts new file mode 100644 index 000000000..51dca3024 --- /dev/null +++ b/packages/engine-liquid/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'engine-liquid', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/engine-liquid', +}; diff --git a/packages/engine-liquid/lib/engine_liquid.js b/packages/engine-liquid/lib/engine_liquid.js deleted file mode 100644 index b5e5dd56b..000000000 --- a/packages/engine-liquid/lib/engine_liquid.js +++ /dev/null @@ -1,194 +0,0 @@ -/* - * Liquid pattern engine for patternlab-node - v2.X.X - 2017 - * - * Cameron Roe - * Licensed under the MIT license. - * - * - */ - -'use strict'; - -const fs = require('fs-extra'); -const path = require('path'); -const isDirectory = (source) => fs.lstatSync(source).isDirectory(); -const getDirectories = (source) => - fs - .readdirSync(source) - .map((name) => path.join(source, name)) - .filter(isDirectory); - -const { lstatSync, readdirSync } = require('fs'); -const { join } = require('path'); - -var utils = require('./util_liquid'); -var Liquid = require('liquidjs'); - -let engine = Liquid({ - dynamicPartials: false, -}); - -// This holds the config from from core. The core has to call -// usePatternLabConfig() at load time for this to be populated. -let patternLabConfig = {}; - -module.exports = { - engine: engine, - engineName: 'liquid', - engineFileExtension: ['.liquid', '.html'], - isAsync: true, - - // // partial expansion is only necessary for Mustache templates that have - // // style modifiers or pattern parameters (I think) - // expandPartials: true, - - // regexes, stored here so they're only compiled once - findPartialsRE: utils.partialsRE, - findPartialsWithStyleModifiersRE: utils.partialsWithStyleModifiersRE, - findPartialsWithPatternParametersRE: utils.partialsWithPatternParametersRE, - findListItemsRE: utils.listItemsRE, - findPartialRE: utils.partialRE, - - // render it - renderPattern: function renderPattern(pattern, data, partials) { - return engine - .parseAndRender(pattern.template, data) - .then(function (html) { - return html; - }) - .catch(function (ex) { - console.log(40, ex); - }); - }, - - /** - * Find regex matches within both pattern strings and pattern objects. - * - * @param {string|object} pattern Either a string or a pattern object. - * @param {object} regex A JavaScript RegExp object. - * @returns {array|null} An array if a match is found, null if not. - */ - patternMatcher: function patternMatcher(pattern, regex) { - var matches; - if (typeof pattern === 'string') { - matches = pattern.match(regex); - } else if ( - typeof pattern === 'object' && - typeof pattern.template === 'string' - ) { - matches = pattern.template.match(regex); - } - return matches; - }, - - // find and return any {{> template-name }} within pattern - findPartials: function findPartials(pattern) { - var matches = this.patternMatcher(pattern, this.findPartialsRE); - return matches; - }, - findPartialsWithStyleModifiers: function (pattern) { - var matches = this.patternMatcher( - pattern, - this.findPartialsWithStyleModifiersRE - ); - return matches; - }, - - // returns any patterns that match {{> value(foo:"bar") }} or {{> - // value:mod(foo:"bar") }} within the pattern - findPartialsWithPatternParameters: function (pattern) { - var matches = this.patternMatcher( - pattern, - this.findPartialsWithPatternParametersRE - ); - return matches; - }, - findListItems: function (pattern) { - var matches = this.patternMatcher(pattern, this.findListItemsRE); - return matches; - }, - - // given a pattern, and a partial string, tease out the "pattern key" and - // return it. - findPartial_new: function (partialString) { - var partial = partialString.replace(this.findPartialRE, '$1'); - return partial; - }, - - // GTP: the old implementation works better. We might not need - // this.findPartialRE anymore if it works in all cases! - findPartial: function (partialString) { - //strip out the template cruft - var foundPatternPartial = partialString - .replace('{{> ', '') - .replace(' }}', '') - .replace('{{>', '') - .replace('}}', ''); - - // remove any potential pattern parameters. this and the above are rather brutish but I didn't want to do a regex at the time - if (foundPatternPartial.indexOf('(') > 0) { - foundPatternPartial = foundPatternPartial.substring( - 0, - foundPatternPartial.indexOf('(') - ); - } - - //remove any potential stylemodifiers. - foundPatternPartial = foundPatternPartial.split(':')[0]; - - return foundPatternPartial; - }, - - /** - * Accept a Pattern Lab config object from the core and put it in - * this module's closure scope so we can configure engine behavior. - * - * @param {object} config - the global config object from core - */ - usePatternLabConfig: function (config) { - patternLabConfig = config; - let patternsPath = patternLabConfig.paths.source.patterns; - - if (patternsPath.slice(-1) === '/') { - patternsPath = patternsPath.slice(0, -1); - } - - const allPaths = getDirectories(patternsPath).reduce((allDirs, dir) => { - return allDirs.concat(getDirectories(dir)); - }, []); - - engine = Liquid({ - dynamicPartials: false, - root: allPaths, - }); - }, - - spawnFile: function (config, fileName) { - const paths = config.paths; - const metaFilePath = path.resolve(paths.source.meta, fileName); - - try { - fs.statSync(metaFilePath); - } catch (err) { - //not a file, so spawn it from the included file - const localMetaFilePath = path.resolve(__dirname, '_meta/', fileName); - const metaFileContent = fs.readFileSync( - path.resolve(__dirname, '..', '_meta/', fileName), - 'utf8' - ); - fs.outputFileSync(metaFilePath, metaFileContent); - } - }, - - /** - * Checks to see if the _meta directory has engine-specific head and foot files, - * spawning them if not found. - * - * @param {object} config - the global config object from core, since we won't - * assume it's already present - */ - spawnMeta: function (config) { - this.spawnFile(config, '_head.liquid'); - this.spawnFile(config, '_foot.liquid'); - }, -}; diff --git a/packages/engine-liquid/package.json b/packages/engine-liquid/package.json index 4f8f3f5cb..b8bd58513 100644 --- a/packages/engine-liquid/package.json +++ b/packages/engine-liquid/package.json @@ -2,11 +2,6 @@ "name": "@pattern-lab/engine-liquid", "description": "The Liquid engine for Pattern Lab / Node", "version": "6.0.0", - "main": "lib/engine_liquid.js", - "dependencies": { - "fs-extra": "10.0.0", - "liquidjs": "2.2.0" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -20,12 +15,8 @@ "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "author": "Cameron Roe", "license": "MIT", - "scripts": {}, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/engine-liquid/project.json b/packages/engine-liquid/project.json new file mode 100644 index 000000000..e1bbf0671 --- /dev/null +++ b/packages/engine-liquid/project.json @@ -0,0 +1,58 @@ +{ + "name": "engine-liquid", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/engine-liquid/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/engine-liquid", + "main": "packages/engine-liquid/src/index.ts", + "tsConfig": "packages/engine-liquid/tsconfig.lib.json", + "assets": [ + "packages/engine-liquid/*.md", + "packages/engine-liquid/LICENSE", + "packages/engine-liquid/_meta/*" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs engine-liquid {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/engine-liquid/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/engine-liquid/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/engine-liquid/src/index.ts b/packages/engine-liquid/src/index.ts new file mode 100644 index 000000000..a8e237099 --- /dev/null +++ b/packages/engine-liquid/src/index.ts @@ -0,0 +1,2 @@ +import { EngineLiquid } from './lib/engine-liquid'; +export default EngineLiquid; diff --git a/packages/engine-liquid/src/lib/engine-liquid.spec.ts b/packages/engine-liquid/src/lib/engine-liquid.spec.ts new file mode 100644 index 000000000..f10fed272 --- /dev/null +++ b/packages/engine-liquid/src/lib/engine-liquid.spec.ts @@ -0,0 +1,83 @@ +import { Pattern, PatternLabConfig } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import { EngineLiquid } from './engine-liquid'; + +describe('EngineLiquid', () => { + let engine: EngineLiquid; + + beforeEach(() => { + engine = new EngineLiquid(); + }); + + describe('renderPattern()', () => { + it('should render the pattern with the given data', () => { + const pattern = { + template: '<h1>{{title}}</h1>', + patternPartial: 'test', + } as Pattern; + const data = { title: 'Hello, world!' }; + + const result = engine.renderPattern(pattern, data); + expect(result).resolves.toBe('<h1>Hello, world!</h1>'); + }); + }); + + describe('findPartials()', () => { + it('should find all partials in the pattern template', () => { + const pattern = { + template: `<section>{% layout 'default-layout.liquid' %}</section> + <h1>{% include 'header' %}</h1> + <p>{% include 'body', random_var: 'test' %}</p> + {% render 'footer.liquid' %}`, + patternPartial: 'test', + } as Pattern; + const result = engine.findPartials(pattern); + expect(result).toEqual([ + "{% layout 'default-layout.liquid' %}", + "{% include 'header' %}", + "{% include 'body', random_var: 'test' %}", + "{% render 'footer.liquid' %}", + ]); + }); + }); + + describe('findListItems()', () => { + it('should find all list items in the pattern template', () => { + const pattern = { + template: '{{#listItems.one}}{{label}}{{/listItems.one}}{{#listItems.two}}{{label}}{{/listItems.two}}', + patternPartial: 'test', + } as Pattern; + const result = engine.findListItems(pattern); + expect(result).toEqual(['{{#listItems.one}}', '{{#listItems.two}}']); + }); + }); + + describe('findPartial()', () => { + it('should extract the partial name from a partial string', () => { + const result = engine.findPartial('{{> header}}'); + expect(result).toBe('header'); + }); + }); + + describe('spawnMeta()', () => { + const normalizedExpect = (pathStr: string): string => expect.stringContaining(path.normalize(pathStr)); + + it('should spawn the meta pattern data', () => { + const readSpy = jest.spyOn(fs, 'readFileSync').mockReturnValue('File Content'); + const outputSpy = jest.spyOn(fs, 'outputFileSync').mockImplementation(jest.fn); + + const config = { + paths: { source: { meta: 'source/_meta' } }, + } as PatternLabConfig; + + engine.spawnMeta(config); + + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-liquid/_meta/_head.liquid'), 'utf8'); + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-liquid/_meta/_foot.liquid'), 'utf8'); + + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_head.liquid'), 'File Content'); + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_foot.liquid'), 'File Content'); + }); + }); +}); diff --git a/packages/engine-liquid/src/lib/engine-liquid.ts b/packages/engine-liquid/src/lib/engine-liquid.ts new file mode 100644 index 000000000..4ab7af676 --- /dev/null +++ b/packages/engine-liquid/src/lib/engine-liquid.ts @@ -0,0 +1,132 @@ +/* + * Liquid pattern engine for patternlab-node - v2.X.X - 2017 + * + * Cameron Roe + * Licensed under the MIT license. + * + */ + +import { Pattern, PatternData, PatternLabConfig, PatternLabEngine } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import { Liquid } from 'liquidjs'; +import path from 'path'; +import { + listItemsRE, + partialsRE, + partialsWithPatternParametersRE, + partialsWithStyleModifiersRE, +} from './utilities/liquid.util'; + +export class EngineLiquid implements PatternLabEngine { + private engine = new Liquid({ dynamicPartials: false }); + engineName = 'liquid'; + engineFileExtension = ['.liquid', '.html']; + expandPartials = false; + + renderPattern(pattern: Pattern, data: PatternData): Promise<string> { + return this.engine + .parseAndRender(pattern.template, data) + .then((html) => html) + .catch((ex) => console.log(40, ex)); + } + + registerPartial(_pattern: Pattern): void { + // no-op + } + + findPartials(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, partialsRE); + } + + findPartialsWithStyleModifiers(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, partialsWithStyleModifiersRE); + } + + findPartialsWithPatternParameters(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, partialsWithPatternParametersRE); + } + + findListItems(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, listItemsRE); + } + + findPartial(partialString: string): string { + // TODO: this is mustache specific code in the liquid engine - fix this + //strip out the template cruft + let foundPatternPartial = partialString + .replace('{{> ', '') + .replace(' }}', '') + .replace('{{>', '') + .replace('}}', ''); + + // remove any potential pattern parameters. this and the above are rather brutish but I didn't want to do a regex at the time + if (foundPatternPartial.indexOf('(') > 0) { + foundPatternPartial = foundPatternPartial.substring(0, foundPatternPartial.indexOf('(')); + } + + //remove any potential stylemodifiers. + return foundPatternPartial.split(':')[0]; + } + + private spawnFile(config: PatternLabConfig, fileName: string): void { + const paths = config.paths; + const metaFilePath = path.resolve(paths.source.meta, fileName); + + try { + fs.statSync(metaFilePath); + } catch (err) { + //not a file, so spawn it from the included file + const metaFileContent = fs.readFileSync(path.resolve(__dirname, '..', '..', '_meta/', fileName), 'utf8'); + fs.outputFileSync(metaFilePath, metaFileContent); + } + } + + spawnMeta(config: PatternLabConfig): void { + this.spawnFile(config, '_head.liquid'); + this.spawnFile(config, '_foot.liquid'); + } + + usePatternLabConfig(config: PatternLabConfig): void { + // create new reference + let patternsPath = String(config.paths.source.patterns); + + if (patternsPath.slice(-1) === '/') { + patternsPath = patternsPath.slice(0, -1); + } + + const allPaths = this.getDirectories(patternsPath).reduce( + (allDirs, dir) => allDirs.concat(this.getDirectories(dir)), + [] as string[], + ); + + this.engine = new Liquid({ + dynamicPartials: false, + root: allPaths, + }); + } + + /** + * Find regex matches within both pattern strings and pattern objects. + * + * @param {string|object} pattern Either a string or a pattern object. + * @param {object} regex A JavaScript RegExp object. + * @returns {array|null} An array if a match is found, null if not. + */ + private patternMatcher(pattern: string | Pattern, regex: RegExp): RegExpMatchArray | null { + let matches; + if (typeof pattern === 'string') { + matches = pattern.match(regex); + } else if (typeof pattern === 'object' && typeof pattern.template === 'string') { + matches = pattern.template.match(regex); + } + return matches ?? null; + } + + private isDirectory = (source: string): boolean => fs.lstatSync(source).isDirectory(); + + private getDirectories = (source: string): string[] => + fs + .readdirSync(source) + .map((name) => path.join(source, name)) + .filter(this.isDirectory); +} diff --git a/packages/engine-liquid/lib/util_liquid.js b/packages/engine-liquid/src/lib/utilities/liquid.util.ts similarity index 78% rename from packages/engine-liquid/lib/util_liquid.js rename to packages/engine-liquid/src/lib/utilities/liquid.util.ts index 3bc200d78..e23d77e18 100644 --- a/packages/engine-liquid/lib/util_liquid.js +++ b/packages/engine-liquid/src/lib/utilities/liquid.util.ts @@ -6,17 +6,15 @@ * */ -'use strict'; - // the term "alphanumeric" includes underscores. // todo: document this exact regex long form. -var partialsRE = new RegExp( - /{%\\include\\\s*?([\w\-\.\/~]+)(?:\:[A-Za-z0-9-_|]+)?(?:(?:| )\(.*)?(?:\s*)?%}/g +export const partialsRE = new RegExp( + /{[%{]\s*.*?(?:render|include|layout)\(?\s*['"](.+?)['"][\s\S]*?\)?\s*[%}]}/g, ); // look for an opening mustache include tag, followed by >=0 whitespaces -var partialsWithStyleModifiersStr = '{{>\\s*'; +let partialsWithStyleModifiersStr = '{{>\\s*'; // one or more characters comprising any combination of alphanumerics, // hyphens, periods, slashses, and tildes @@ -36,13 +34,10 @@ partialsWithStyleModifiersStr += '(\\s*\\([^\\)]*\\))?'; // look for >=0 whitespaces, followed by closing mustache tag partialsWithStyleModifiersStr += '\\s*}}'; -var partialsWithStyleModifiersRE = new RegExp( - partialsWithStyleModifiersStr, - 'g' -); +export const partialsWithStyleModifiersRE = new RegExp(partialsWithStyleModifiersStr, 'g'); // look for an opening mustache include tag, followed by >=0 whitespaces -var partialsWithPatternParametersStr = '{{>\\s*'; +let partialsWithPatternParametersStr = '{{>\\s*'; // one or more characters comprising any combination of alphanumerics, // hyphens, periods, slashses, and tildes @@ -60,13 +55,10 @@ partialsWithPatternParametersStr += '(\\s*\\([^\\)]*\\))'; // look for >=0 whitespaces, followed by closing mustache tag partialsWithPatternParametersStr += '\\s*}}'; -var partialsWithPatternParametersRE = new RegExp( - partialsWithPatternParametersStr, - 'g' -); +export const partialsWithPatternParametersRE = new RegExp(partialsWithPatternParametersStr, 'g'); // look for an opening mustache loop tag, followed by >=0 whitespaces -var listItemsStr = '{{#\\s*'; +let listItemsStr = '{{#\\s*'; // look for the string 'listItems.' or 'listitems.' listItemsStr += '(list(I|i)tems\\.)'; @@ -77,10 +69,11 @@ listItemsStr += // look for >=0 whitespaces, followed by closing mustache tag listItemsStr += '\\s*}}'; -var listItemsRE = new RegExp(listItemsStr, 'g'); + +export const listItemsRE = new RegExp(listItemsStr, 'g'); // look for an opening mustache loop tag, followed by >=0 whitespaces -var partialKeyStr = '{{>\\s*'; +let partialKeyStr = '{{>\\s*'; // one or more characters comprising any combination of alphanumerics, // hyphens, periods, slashses, and tildes @@ -97,14 +90,5 @@ partialKeyStr += '(\\s*\\([^\\)]*\\))?'; // look for >=0 whitespaces, followed by closing mustache tag partialKeyStr += '\\s*}}'; -var partialKeyRE = new RegExp(partialKeyStr, 'g'); - -var utilLiquid = { - partialsRE: partialsRE, - partialsWithStyleModifiersRE: partialsWithStyleModifiersRE, - partialsWithPatternParametersRE: partialsWithPatternParametersRE, - listItemsRE: listItemsRE, - partialKeyRE: partialKeyRE, -}; -module.exports = utilLiquid; +export const partialKeyRE = new RegExp(partialKeyStr, 'g'); diff --git a/packages/engine-liquid/tsconfig.json b/packages/engine-liquid/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/engine-liquid/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/engine-liquid/tsconfig.lib.json b/packages/engine-liquid/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/engine-liquid/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/engine-liquid/tsconfig.spec.json b/packages/engine-liquid/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/engine-liquid/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/engine-mustache/.eslintrc.json b/packages/engine-mustache/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/engine-mustache/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/engine-mustache/.gitignore b/packages/engine-mustache/.gitignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-mustache/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-mustache/.npmrc b/packages/engine-mustache/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/engine-mustache/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-mustache/.nvmrc b/packages/engine-mustache/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/engine-mustache/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/engine-mustache/jest.config.ts b/packages/engine-mustache/jest.config.ts new file mode 100644 index 000000000..e31674f22 --- /dev/null +++ b/packages/engine-mustache/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'engine-mustache', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/engine-mustache', +}; diff --git a/packages/engine-mustache/lib/engine_mustache.js b/packages/engine-mustache/lib/engine_mustache.js deleted file mode 100644 index e39359490..000000000 --- a/packages/engine-mustache/lib/engine_mustache.js +++ /dev/null @@ -1,172 +0,0 @@ -'use strict'; - -/* - * mustache pattern engine for patternlab-node - * - * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. - * Licensed under the MIT license. - * - * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. - * - */ - -/* - * ENGINE SUPPORT LEVEL: - * - * Full + extensions. Partial calls and lineage hunting are supported. Style - * modifiers and pattern parameters are used to extend the core feature set of - * Mustache templates. - * - */ - -const fs = require('fs-extra'); -const path = require('path'); -const Mustache = require('mustache'); -const utilMustache = require('./util_mustache'); - -// This holds the config from from core. The core has to call -// usePatternLabConfig() at load time for this to be populated, which -// it does, so we're cool, right? -let patternLabConfig = {}; - -const engine_mustache = { - engine: Mustache, - engineName: 'mustache', - engineFileExtension: '.mustache', - - // partial expansion is only necessary for Mustache templates that have - // style modifiers or pattern parameters (I think) - expandPartials: true, - - // regexes, stored here so they're only compiled once - findPartialsRE: utilMustache.partialsRE, - findPartialsWithStyleModifiersRE: utilMustache.partialsWithStyleModifiersRE, - findPartialsWithPatternParametersRE: - utilMustache.partialsWithPatternParametersRE, - findListItemsRE: utilMustache.listItemsRE, - findPartialRE: utilMustache.partialRE, - - // render it - renderPattern: function renderPattern(pattern, data, partials) { - try { - if (partials) { - return Promise.resolve( - Mustache.render(pattern.extendedTemplate, data, partials) - ); - } - return Promise.resolve(Mustache.render(pattern.extendedTemplate, data)); - } catch (e) { - console.log('e = ', e); - return Promise.reject(e); - } - }, - - /** - * Find regex matches within both pattern strings and pattern objects. - * - * @param {string|object} pattern Either a string or a pattern object. - * @param {object} regex A JavaScript RegExp object. - * @returns {array|null} An array if a match is found, null if not. - */ - patternMatcher: function patternMatcher(pattern, regex) { - let matches; - if (typeof pattern === 'string') { - matches = pattern.match(regex); - } else if ( - typeof pattern === 'object' && - typeof pattern.template === 'string' - ) { - matches = pattern.template.match(regex); - } - return matches; - }, - - spawnFile: function (config, fileName) { - const paths = config.paths; - const metaFilePath = path.resolve(paths.source.meta, fileName); - try { - fs.statSync(metaFilePath); - } catch (err) { - //not a file, so spawn it from the included file - const metaFileContent = fs.readFileSync( - path.resolve(__dirname, '..', '_meta/', fileName), - 'utf8' - ); - fs.outputFileSync(metaFilePath, metaFileContent); - } - }, - - /** - * Checks to see if the _meta directory has engine-specific head and foot files, - * spawning them if not found. - * - * @param {object} config - the global config object from core, since we won't - * assume it's already present - */ - spawnMeta: function (config) { - this.spawnFile(config, '_head.mustache'); - this.spawnFile(config, '_foot.mustache'); - }, - - // find and return any {{> template-name }} within pattern - findPartials: function findPartials(pattern) { - return this.patternMatcher(pattern, this.findPartialsRE); - }, - findPartialsWithStyleModifiers: function (pattern) { - return this.patternMatcher(pattern, this.findPartialsWithStyleModifiersRE); - }, - - // returns any patterns that match {{> value(foo:"bar") }} or {{> - // value:mod(foo:"bar") }} within the pattern - findPartialsWithPatternParameters: function (pattern) { - return this.patternMatcher( - pattern, - this.findPartialsWithPatternParametersRE - ); - }, - findListItems: function (pattern) { - return this.patternMatcher(pattern, this.findListItemsRE); - }, - - // given a pattern, and a partial string, tease out the "pattern key" and - // return it. - findPartial_new: function (partialString) { - return partialString.replace(this.findPartialRE, '$1'); - }, - - // GTP: the old implementation works better. We might not need - // this.findPartialRE anymore if it works in all cases! - findPartial: function (partialString) { - //strip out the template cruft - let foundPatternPartial = partialString - .replace('{{> ', '') - .replace(' }}', '') - .replace('{{>', '') - .replace('}}', ''); - - // remove any potential pattern parameters. this and the above are rather brutish but I didn't want to do a regex at the time - if (foundPatternPartial.indexOf('(') > 0) { - foundPatternPartial = foundPatternPartial.substring( - 0, - foundPatternPartial.indexOf('(') - ); - } - - //remove any potential stylemodifiers. - foundPatternPartial = foundPatternPartial.split(':')[0]; - - return foundPatternPartial; - }, - - /** - * Accept a Pattern Lab config object from the core and put it in - * this module's closure scope so we can configure engine behavior. - * - * @param {object} config - the global config object from core - */ - usePatternLabConfig: function (config) { - patternLabConfig = config; - }, -}; - -module.exports = engine_mustache; diff --git a/packages/engine-mustache/package.json b/packages/engine-mustache/package.json index 1553c7b8a..c200fc3ed 100644 --- a/packages/engine-mustache/package.json +++ b/packages/engine-mustache/package.json @@ -2,11 +2,6 @@ "name": "@pattern-lab/engine-mustache", "description": "The Mustache engine for Pattern Lab / Node", "version": "6.0.0", - "main": "lib/engine_mustache.js", - "dependencies": { - "fs-extra": "10.0.0", - "mustache": "3.1.0" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -20,12 +15,8 @@ "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "author": "Brian Muenzenmeyer & Geoffrey Pursell", "license": "MIT", - "scripts": {}, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/engine-mustache/project.json b/packages/engine-mustache/project.json new file mode 100644 index 000000000..8448d18a7 --- /dev/null +++ b/packages/engine-mustache/project.json @@ -0,0 +1,58 @@ +{ + "name": "engine-mustache", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/engine-mustache/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/engine-mustache", + "main": "packages/engine-mustache/src/index.ts", + "tsConfig": "packages/engine-mustache/tsconfig.lib.json", + "assets": [ + "packages/engine-mustache/*.md", + "packages/engine-mustache/LICENSE", + "packages/engine-mustache/_meta/*" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs engine-mustache {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/engine-mustache/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/engine-mustache/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/engine-mustache/src/index.ts b/packages/engine-mustache/src/index.ts new file mode 100644 index 000000000..152eac111 --- /dev/null +++ b/packages/engine-mustache/src/index.ts @@ -0,0 +1,2 @@ +import { EngineMustache } from './lib/engine-mustache'; +export default EngineMustache; diff --git a/packages/engine-mustache/src/lib/engine-mustache.spec.ts b/packages/engine-mustache/src/lib/engine-mustache.spec.ts new file mode 100644 index 000000000..17e6a42cf --- /dev/null +++ b/packages/engine-mustache/src/lib/engine-mustache.spec.ts @@ -0,0 +1,75 @@ +import { Pattern, PatternLabConfig } from '@pattern-lab/types'; +import { EngineMustache } from './engine-mustache'; +import fs from 'fs-extra'; +import path from 'path'; + +describe('EngineMustache', () => { + let engine: EngineMustache; + + beforeEach(() => { + engine = new EngineMustache(); + }); + + describe('renderPattern()', () => { + it('should render the pattern with the given data', () => { + const pattern = { + extendedTemplate: '<h1>{{title}}</h1>', + patternPartial: 'test', + } as Pattern; + const data = { title: 'Hello, world!' }; + + const result = engine.renderPattern(pattern, data); + expect(result).resolves.toBe('<h1>Hello, world!</h1>'); + }); + }); + + describe('findPartials()', () => { + it('should find all partials in the pattern template', () => { + const pattern = { + template: '<h1>{{> header}}</h1><p>{{> body}}</p>', + patternPartial: 'test', + } as Pattern; + const result = engine.findPartials(pattern); + expect(result).toEqual(['{{> header}}', '{{> body}}']); + }); + }); + + describe('findListItems()', () => { + it('should find all list items in the pattern template', () => { + const pattern = { + template: '{{#listItems.one}}{{label}}{{/listItems.one}}{{#listItems.two}}{{label}}{{/listItems.two}}', + patternPartial: 'test', + } as Pattern; + const result = engine.findListItems(pattern); + expect(result).toEqual(['{{#listItems.one}}', '{{#listItems.two}}']); + }); + }); + + describe('findPartial()', () => { + it('should extract the partial name from a partial string', () => { + const result = engine.findPartial('{{> header}}'); + expect(result).toBe('header'); + }); + }); + + describe('spawnMeta()', () => { + const normalizedExpect = (pathStr: string): string => expect.stringContaining(path.normalize(pathStr)); + + it('should spawn the meta pattern data', () => { + const readSpy = jest.spyOn(fs, 'readFileSync').mockReturnValue('File Content'); + const outputSpy = jest.spyOn(fs, 'outputFileSync').mockImplementation(jest.fn); + + const config = { + paths: { source: { meta: 'source/_meta' } }, + } as PatternLabConfig; + + engine.spawnMeta(config); + + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-mustache/_meta/_head.mustache'), 'utf8'); + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-mustache/_meta/_foot.mustache'), 'utf8'); + + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_head.mustache'), 'File Content'); + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_foot.mustache'), 'File Content'); + }); + }); +}); diff --git a/packages/engine-mustache/src/lib/engine-mustache.ts b/packages/engine-mustache/src/lib/engine-mustache.ts new file mode 100644 index 000000000..38998fb1e --- /dev/null +++ b/packages/engine-mustache/src/lib/engine-mustache.ts @@ -0,0 +1,121 @@ +/* + * mustache pattern engine for patternlab-node + * + * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. + * Licensed under the MIT license. + * + * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. + * + */ + +/* + * ENGINE SUPPORT LEVEL: + * + * Full + extensions. Partial calls and lineage hunting are supported. Style + * modifiers and pattern parameters are used to extend the core feature set of + * Mustache templates. + * + */ + +import { PatternLabEngine, Pattern, PatternData, PatternLabConfig } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import { + listItemsRE, + partialsRE, + partialsWithPatternParametersRE, + partialsWithStyleModifiersRE, +} from './utilities/mustache.util'; +import Mustache from 'mustache'; + +export class EngineMustache implements PatternLabEngine { + private engine = Mustache; + engineName = 'mustache'; + engineFileExtension = ['.mustache']; + expandPartials = true; + + // TODO: partials via the render pattern is a bit hacky + renderPattern(pattern: Pattern, data: PatternData, partials?: any): Promise<string> { + try { + return Promise.resolve(this.engine.render(pattern.extendedTemplate, data, partials)); + } catch (e) { + console.log('e = ', e); + return Promise.reject(e); + } + } + + registerPartial(_pattern: Pattern): void { + // no-op + } + + findPartials(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, partialsRE); + } + + findPartialsWithPatternParameters(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, partialsWithPatternParametersRE); + } + + findPartialsWithStyleModifiers(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, partialsWithStyleModifiersRE); + } + + findListItems(pattern: Pattern): RegExpMatchArray | null { + return this.patternMatcher(pattern, listItemsRE); + } + + findPartial(partialString: string): string { + //strip out the template cruft + let foundPatternPartial = partialString + .replace('{{> ', '') + .replace(' }}', '') + .replace('{{>', '') + .replace('}}', ''); + + // remove any potential pattern parameters. this and the above are rather brutish but I didn't want to do a regex at the time + if (foundPatternPartial.indexOf('(') > 0) { + foundPatternPartial = foundPatternPartial.substring(0, foundPatternPartial.indexOf('(')); + } + + //remove any potential stylemodifiers. + return foundPatternPartial.split(':')[0]; + } + + private spawnFile(config: PatternLabConfig, fileName: string): void { + const paths = config.paths; + const metaFilePath = path.resolve(paths.source.meta, fileName); + try { + fs.statSync(metaFilePath); + } catch (err) { + //not a file, so spawn it from the included file + const metaFileContent = fs.readFileSync(path.resolve(__dirname, '..', '..', '_meta/', fileName), 'utf8'); + fs.outputFileSync(metaFilePath, metaFileContent); + } + } + + spawnMeta(config: PatternLabConfig): void { + this.spawnFile(config, '_head.mustache'); + this.spawnFile(config, '_foot.mustache'); + } + + usePatternLabConfig(_config: PatternLabConfig): void { + // no-op + } + + /** + * Find regex matches within both pattern strings and pattern objects. + * + * @param {string|object} pattern Either a string or a pattern object. + * @param {object} regex A JavaScript RegExp object. + * @returns {array|null} An array if a match is found, null if not. + */ + private patternMatcher(pattern: string | Pattern, regex: RegExp): RegExpMatchArray | null { + let matches; + if (typeof pattern === 'string') { + matches = pattern.match(regex); + } else if (typeof pattern === 'object' && typeof pattern.template === 'string') { + matches = pattern.template.match(regex); + } + return matches ?? null; + } +} diff --git a/packages/engine-mustache/lib/util_mustache.js b/packages/engine-mustache/src/lib/utilities/mustache.util.ts similarity index 79% rename from packages/engine-mustache/lib/util_mustache.js rename to packages/engine-mustache/src/lib/utilities/mustache.util.ts index bfc7c1804..94c6ae244 100644 --- a/packages/engine-mustache/lib/util_mustache.js +++ b/packages/engine-mustache/src/lib/utilities/mustache.util.ts @@ -8,17 +8,13 @@ * */ -'use strict'; - // the term "alphanumeric" includes underscores. // todo: document this exact regex long form. -var partialsRE = new RegExp( - /{{>\s*?([\w\-\.\/~]+)(?:\:[A-Za-z0-9-_|]+)?(?:(?:| )\(.*)?(?:\s*)?}}/g -); +export const partialsRE = new RegExp(/{{>\s*?([\w\-./~]+)(?::[A-Za-z0-9-_|]+)?(?:(?:| )\(.*)?(?:\s*)?}}/g); // look for an opening mustache include tag, followed by >=0 whitespaces -var partialsWithStyleModifiersStr = '{{>\\s*'; +let partialsWithStyleModifiersStr = '{{>\\s*'; // one or more characters comprising any combination of alphanumerics, // hyphens, periods, slashses, and tildes @@ -38,13 +34,10 @@ partialsWithStyleModifiersStr += '(\\s*\\([^\\)]*\\))?'; // look for >=0 whitespaces, followed by closing mustache tag partialsWithStyleModifiersStr += '\\s*}}'; -var partialsWithStyleModifiersRE = new RegExp( - partialsWithStyleModifiersStr, - 'g' -); +export const partialsWithStyleModifiersRE = new RegExp(partialsWithStyleModifiersStr, 'g'); // look for an opening mustache include tag, followed by >=0 whitespaces -var partialsWithPatternParametersStr = '{{>\\s*'; +let partialsWithPatternParametersStr = '{{>\\s*'; // one or more characters comprising any combination of alphanumerics, // hyphens, periods, slashses, and tildes @@ -62,13 +55,10 @@ partialsWithPatternParametersStr += '(\\s*\\([^\\)]*\\))'; // look for >=0 whitespaces, followed by closing mustache tag partialsWithPatternParametersStr += '\\s*}}'; -var partialsWithPatternParametersRE = new RegExp( - partialsWithPatternParametersStr, - 'g' -); +export const partialsWithPatternParametersRE = new RegExp(partialsWithPatternParametersStr, 'g'); // look for an opening mustache loop tag, followed by >=0 whitespaces -var listItemsStr = '{{#\\s*'; +let listItemsStr = '{{#\\s*'; // look for the string 'listItems.' or 'listitems.' listItemsStr += '(list(I|i)tems\\.)'; @@ -79,10 +69,10 @@ listItemsStr += // look for >=0 whitespaces, followed by closing mustache tag listItemsStr += '\\s*}}'; -var listItemsRE = new RegExp(listItemsStr, 'g'); +export const listItemsRE = new RegExp(listItemsStr, 'g'); // look for an opening mustache loop tag, followed by >=0 whitespaces -var partialKeyStr = '{{>\\s*'; +let partialKeyStr = '{{>\\s*'; // one or more characters comprising any combination of alphanumerics, // hyphens, periods, slashses, and tildes @@ -99,14 +89,4 @@ partialKeyStr += '(\\s*\\([^\\)]*\\))?'; // look for >=0 whitespaces, followed by closing mustache tag partialKeyStr += '\\s*}}'; -var partialKeyRE = new RegExp(partialKeyStr, 'g'); - -var utilMustache = { - partialsRE: partialsRE, - partialsWithStyleModifiersRE: partialsWithStyleModifiersRE, - partialsWithPatternParametersRE: partialsWithPatternParametersRE, - listItemsRE: listItemsRE, - partialKeyRE: partialKeyRE, -}; - -module.exports = utilMustache; +export const partialKeyRE = new RegExp(partialKeyStr, 'g'); diff --git a/packages/engine-mustache/tsconfig.json b/packages/engine-mustache/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/engine-mustache/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/engine-mustache/tsconfig.lib.json b/packages/engine-mustache/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/engine-mustache/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/engine-mustache/tsconfig.spec.json b/packages/engine-mustache/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/engine-mustache/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/engine-nunjucks/.eslintrc.json b/packages/engine-nunjucks/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/engine-nunjucks/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/engine-nunjucks/.gitignore b/packages/engine-nunjucks/.gitignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-nunjucks/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-nunjucks/.npmignore b/packages/engine-nunjucks/.npmignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-nunjucks/.npmignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-nunjucks/.npmrc b/packages/engine-nunjucks/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/engine-nunjucks/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-nunjucks/.nvmrc b/packages/engine-nunjucks/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/engine-nunjucks/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/engine-nunjucks/README.md b/packages/engine-nunjucks/README.md index 283a3695c..52a925d6b 100644 --- a/packages/engine-nunjucks/README.md +++ b/packages/engine-nunjucks/README.md @@ -5,6 +5,7 @@ To install the Nunjucks PatternEngine in your edition, run `npm install @pattern-lab/engine-nunjucks`. ## Supported features + - [x] [Includes](https://patternlab.io/docs/including-patterns/) - [x] Lineage - [x] [Hidden Patterns](https://patternlab.io/docs/hiding-patterns-in-the-navigation/) diff --git a/packages/engine-nunjucks/jest.config.ts b/packages/engine-nunjucks/jest.config.ts new file mode 100644 index 000000000..1b60de677 --- /dev/null +++ b/packages/engine-nunjucks/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'engine-nunjucks', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/engine-nunjucks', +}; diff --git a/packages/engine-nunjucks/lib/engine_nunjucks.js b/packages/engine-nunjucks/lib/engine_nunjucks.js deleted file mode 100644 index 939e21adc..000000000 --- a/packages/engine-nunjucks/lib/engine_nunjucks.js +++ /dev/null @@ -1,192 +0,0 @@ -/* - * Nunjucks pattern engine for patternlab-node - * - * Dan White. - * Licensed under the MIT license. - * - */ - -/* - * ENGINE SUPPORT LEVEL: - * - * Mostly full. Partial calls and lineage hunting are supported. - * Nunjucks does not support the mustache-specific syntax - * extensions, style modifiers and pattern parameters, because - * their use cases are addressed by the core Nunjucks feature set. - * Pattern Lab's listitems feature is still written in the - * mustache syntax. - * - */ - -'use strict'; - -const fs = require('fs-extra'); -const path = require('path'); -const nunjucks = require('nunjucks'); -const partialRegistry = []; - -let env; - -// Nunjucks Engine -const engine_nunjucks = { - engine: nunjucks, - engineName: 'nunjucks', - engineFileExtension: '.njk', - - //Important! Must be false for Nunjucks' block inheritance to work. Otherwise Nunjucks sees them as being defined more than once. - expandPartials: false, - - // regexes, stored here so they're only compiled once - findPartialsRE: - /{%\s*(?:extends|include|import|from)\s+(?:'[^']+'|"[^"]+").*%}/g, - findPartialKeyRE: /{%\s*(?:extends|include|import|from)\s+('[^']+'|"[^"]+")/, - findListItemsRE: - /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g, // still requires mustache style syntax because of how PL implements lists - - // render it - renderPattern: function renderPattern(pattern, data) { - try { - const result = env.renderString(pattern.extendedTemplate, data); - return Promise.resolve(result); - } catch (err) { - console.error('Failed to render pattern: ' + pattern.name); - console.error(err); - } - }, - - // find and return any Nunjucks style includes/imports/extends within pattern - findPartials: function findPartials(pattern) { - const matches = pattern.template.match(this.findPartialsRE); - return matches; - }, - - // given a pattern, and a partial string, tease out the "pattern key" and return it. - findPartial: function (partialString) { - try { - let partial = partialString.match(this.findPartialKeyRE)[1]; - partial = partial.replace(/["']/g, ''); - return partial; - } catch (err) { - console.error( - 'Error occured when trying to find partial name in: ' + partialString - ); - } - }, - - // keep track of partials and their paths so we can replace the name with the path - registerPartial: function (pattern) { - // only register each partial once. Otherwise we'll eat up a ton of memory. - if (partialRegistry.indexOf(pattern.patternPartial) === -1) { - partialRegistry[pattern.patternPartial] = pattern.relPath.replace( - /\\/g, - '/' - ); - } - }, - - // still requires the mustache syntax because of the way PL handles lists - findListItems: function (pattern) { - const matches = pattern.template.match(this.findListItemsRE); - return matches; - }, - - // handled by nunjucks. This is here to keep PL from erroring - findPartialsWithPatternParameters: function () { - return null; - }, - - spawnFile: function (config, fileName) { - const paths = config.paths; - const metaFilePath = path.resolve(paths.source.meta, fileName); - try { - fs.statSync(metaFilePath); - } catch (err) { - //not a file, so spawn it from the included file - const metaFileContent = fs.readFileSync( - path.resolve(__dirname, '..', '_meta/', fileName), - 'utf8' - ); - fs.outputFileSync(metaFilePath, metaFileContent); - } - }, - - /** - * Checks to see if the _meta directory has engine-specific head and foot files, - * spawning them if not found. - * - * @param {object} config - the global config object from core, since we won't - * assume it's already present - */ - spawnMeta: function (config) { - this.spawnFile(config, '_head.njk'); - this.spawnFile(config, '_foot.njk'); - }, - - /** - * Accept a Pattern Lab config object from the core and use the settings to - * load helpers. - * - * @param {object} config - the global config object from core - */ - usePatternLabConfig: function (config) { - // Create Pattern Loader - // Since Pattern Lab includes are not path based we need a custom loader for Nunjucks. - function PatternLoader() {} - - PatternLoader.prototype.getSource = function (name) { - const fullPath = path.resolve( - config.paths.source.patterns, - partialRegistry[name] - ); - return { - src: fs.readFileSync(fullPath, 'utf-8'), - path: fullPath, - noCache: true, - }; - }; - - env = new nunjucks.Environment(new PatternLoader()); - - let extensions; - - try { - // Look for helpers in the config - extensions = config.engines.nunjucks.extend; - - if (typeof extensions === 'string') { - extensions = [extensions]; - } - } catch (error) { - // No defined path(s) found, look in default location - - const configPath = 'patternlab-nunjucks-config.js'; - if (fs.existsSync(path.join(process.cwd(), configPath))) { - extensions = [configPath]; - } - } - - if (extensions) { - extensions.forEach((extensionPath) => { - // Load any user Defined configurations - const nunjucksConfigPath = path.join(process.cwd(), extensionPath); - - try { - const nunjucksConfig = require(nunjucksConfigPath); - if (typeof nunjucksConfig === 'function') { - nunjucksConfig(env); - } else { - console.error( - `Failed to load Nunjucks extension: Expected ${extensionPath} to export a function.` - ); - } - } catch (err) { - console.error( - `Failed to load Nunjucks extension ${nunjucksConfigPath}.` - ); - } - }); - } - }, -}; - -module.exports = engine_nunjucks; diff --git a/packages/engine-nunjucks/package.json b/packages/engine-nunjucks/package.json index 29719f6e7..39945e971 100644 --- a/packages/engine-nunjucks/package.json +++ b/packages/engine-nunjucks/package.json @@ -1,18 +1,9 @@ { - "author": { - "name": "Dan White" - }, + "name": "@pattern-lab/engine-nunjucks", + "version": "6.0.0", + "description": "The nunjucks PatternEngine for Pattern Lab / Node", "repository": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-nunjucks", "bugs": "https://github.com/pattern-lab/patternlab-node/issues", - "deprecated": false, - "description": "The nunjucks PatternEngine for Pattern Lab / Node", - "dependencies": { - "fs-extra": "10.0.0", - "nunjucks": "^3.2.3" - }, - "engines": { - "node": ">=14.21.1" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -23,12 +14,12 @@ "Nunjucks" ], "license": "MIT", - "main": "lib/engine_nunjucks.js", - "name": "@pattern-lab/engine-nunjucks", - "scripts": {}, - "version": "6.0.0", - "publishConfig": { - "access": "public" + "author": { + "name": "Dan White" + }, + "deprecated": false, + "engines": { + "node": ">=14.21.1" }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/engine-nunjucks/project.json b/packages/engine-nunjucks/project.json new file mode 100644 index 000000000..66528ede2 --- /dev/null +++ b/packages/engine-nunjucks/project.json @@ -0,0 +1,58 @@ +{ + "name": "engine-nunjucks", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/engine-nunjucks/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/engine-nunjucks", + "main": "packages/engine-nunjucks/src/index.ts", + "tsConfig": "packages/engine-nunjucks/tsconfig.lib.json", + "assets": [ + "packages/engine-nunjucks/*.md", + "packages/engine-nunjucks/LICENSE", + "packages/engine-nunjucks/_meta/*" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs engine-nunjucks {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/engine-nunjucks/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/engine-nunjucks/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/engine-nunjucks/src/index.ts b/packages/engine-nunjucks/src/index.ts new file mode 100644 index 000000000..8b3d3a95a --- /dev/null +++ b/packages/engine-nunjucks/src/index.ts @@ -0,0 +1,2 @@ +import { EngineNunjucks } from './lib/engine-nunjucks'; +export default EngineNunjucks; diff --git a/packages/engine-nunjucks/src/lib/engine-nunjucks.spec.ts b/packages/engine-nunjucks/src/lib/engine-nunjucks.spec.ts new file mode 100644 index 000000000..e7593a38e --- /dev/null +++ b/packages/engine-nunjucks/src/lib/engine-nunjucks.spec.ts @@ -0,0 +1,103 @@ +import { Pattern, PatternLabConfig } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import { EngineNunjucks } from './engine-nunjucks'; + +describe('EngineNunjucks', () => { + let engine: EngineNunjucks; + + beforeEach(() => { + engine = new EngineNunjucks(); + }); + + describe('renderPattern()', () => { + it('should render the pattern with the given data', () => { + jest.spyOn(fs, 'readFileSync').mockReturnValue('<h1>{{title}}</h1>'); + engine.usePatternLabConfig({ paths: { source: { patterns: 'source/_patterns' } } } as PatternLabConfig); + + const pattern = { + template: '<h1>{{title}}</h1>', + patternPartial: 'test', + relPath: 'test.njk', + } as Pattern; + const data = { title: 'Hello, world!' }; + + const result = engine.renderPattern(pattern, data); + expect(result).resolves.toBe('<h1>Hello, world!</h1>'); + }); + }); + + describe('registerPartial()', () => { + it('should register the pattern as a partial', () => { + jest.spyOn(fs, 'readFileSync').mockReturnValue('<h1>{{title}}</h1>'); + engine.usePatternLabConfig({ paths: { source: { patterns: 'source/_patterns' } } } as PatternLabConfig); + + const pattern = { + template: '<h1>{{title}}</h1>', + patternPartial: 'test', + relPath: 'test.njk', + } as Pattern; + + engine.registerPartial(pattern); + + const patternWithPartial = { + template: '<div>{% include "test" %}</div>', + } as Pattern; + const data = { title: 'Hello, world!' }; + + const result = engine.renderPattern(patternWithPartial, data); + expect(result).resolves.toBe('<div><h1>Hello, world!</h1></div>'); + }); + }); + + describe('findPartials()', () => { + it('should find all partials in the pattern template', () => { + const pattern = { + template: `<h1>{% include 'header' %}</h1> + <p>{% from 'body' %}</p>`, + patternPartial: 'test', + } as Pattern; + const result = engine.findPartials(pattern); + expect(result).toEqual(["{% include 'header' %}", "{% from 'body' %}"]); + }); + }); + + describe('findListItems()', () => { + it('should find all list items in the pattern template', () => { + const pattern = { + template: '{{#listItems.one}}{{label}}{{/listItems.one}}{{#listItems.two}}{{label}}{{/listItems.two}}', + patternPartial: 'test', + } as Pattern; + const result = engine.findListItems(pattern); + expect(result).toEqual(['{{#listItems.one}}', '{{#listItems.two}}']); + }); + }); + + describe('findPartial()', () => { + it('should extract the partial name from a partial string', () => { + const result = engine.findPartial('{% include "header" %}'); + expect(result).toBe('header'); + }); + }); + + describe('spawnMeta()', () => { + const normalizedExpect = (pathStr: string): string => expect.stringContaining(path.normalize(pathStr)); + + it('should spawn the meta pattern data', () => { + const readSpy = jest.spyOn(fs, 'readFileSync').mockReturnValue('File Content'); + const outputSpy = jest.spyOn(fs, 'outputFileSync').mockImplementation(jest.fn); + + const config = { + paths: { source: { meta: 'source/_meta' } }, + } as PatternLabConfig; + + engine.spawnMeta(config); + + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-nunjucks/_meta/_head.njk'), 'utf8'); + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-nunjucks/_meta/_foot.njk'), 'utf8'); + + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_head.njk'), 'File Content'); + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_foot.njk'), 'File Content'); + }); + }); +}); diff --git a/packages/engine-nunjucks/src/lib/engine-nunjucks.ts b/packages/engine-nunjucks/src/lib/engine-nunjucks.ts new file mode 100644 index 000000000..c36a57301 --- /dev/null +++ b/packages/engine-nunjucks/src/lib/engine-nunjucks.ts @@ -0,0 +1,151 @@ +/* + * Nunjucks pattern engine for patternlab-node + * + * Dan White. + * Licensed under the MIT license. + * + * ENGINE SUPPORT LEVEL: + * + * Mostly full. Partial calls and lineage hunting are supported. + * Nunjucks does not support the mustache-specific syntax + * extensions, style modifiers and pattern parameters, because + * their use cases are addressed by the core Nunjucks feature set. + * Pattern Lab's listitems feature is still written in the + * mustache syntax. + * + */ + +import { Pattern, PatternData, PatternLabConfig, PatternLabEngine } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import nunjucks from 'nunjucks'; +import path from 'path'; + +// eslint-disable-next-line @typescript-eslint/no-explicit-any +declare function require(moduleName: string): any; + +const partialRegistry: Record<string, string> = {}; + +class PatternLoader implements nunjucks.ILoader { + constructor(private config: PatternLabConfig) {} + + getSource(name: string): nunjucks.LoaderSource { + const fullPath = path.resolve(this.config.paths.source.patterns, partialRegistry[name]); + return { + src: fs.readFileSync(fullPath, 'utf-8'), + path: fullPath, + noCache: true, + }; + } +} + +export class EngineNunjucks implements PatternLabEngine { + private engine!: nunjucks.Environment; + engineName = 'nunjucks'; + engineFileExtension = ['.njk']; + expandPartials = false; + + // regexes, stored here so they're only compiled once + private findPartialsRE = /{%\s*(?:extends|include|import|from)\s+(?:'[^']+'|"[^"]+").*%}/g; + private findPartialKeyRE = /{%\s*(?:extends|include|import|from)\s+('[^']+'|"[^"]+")/; + // still requires mustache style syntax because of how PL implements lists + private findListItemsRE = + /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g; + + renderPattern(pattern: Pattern, data: PatternData): Promise<string> { + try { + const result = this.engine.renderString(pattern.extendedTemplate || pattern.template, data); + return Promise.resolve(result || ''); + } catch (err) { + console.error('Failed to render pattern: ' + pattern.name); + console.error(err); + } + + return Promise.resolve(''); + } + + registerPartial(pattern: Pattern): void { + // only register each partial once. Otherwise we'll eat up a ton of memory. + if (!partialRegistry[pattern.patternPartial]) { + partialRegistry[pattern.patternPartial] = pattern.relPath.replace(/\\/g, '/'); + } + } + + findPartials(pattern: Pattern): RegExpMatchArray | null { + return pattern.template.match(this.findPartialsRE); + } + + findPartialsWithPatternParameters(_pattern: Pattern): RegExpMatchArray | null { + return null; + } + + findListItems(pattern: Pattern): RegExpMatchArray | null { + const matches = pattern.template.match(this.findListItemsRE); + return matches; + } + + findPartial(partialString: string): string { + try { + const partial = partialString.match(this.findPartialKeyRE)?.[1]; + return partial?.replace(/["']/g, '') || ''; + } catch (err) { + console.error('Error occured when trying to find partial name in:', partialString); + } + + return ''; + } + + private spawnFile(config: PatternLabConfig, fileName: string): void { + const paths = config.paths; + const metaFilePath = path.resolve(paths.source.meta, fileName); + try { + fs.statSync(metaFilePath); + } catch (err) { + //not a file, so spawn it from the included file + const metaFileContent = fs.readFileSync(path.resolve(__dirname, '..', '..', '_meta/', fileName), 'utf8'); + fs.outputFileSync(metaFilePath, metaFileContent); + } + } + + spawnMeta(config: PatternLabConfig): void { + this.spawnFile(config, '_head.njk'); + this.spawnFile(config, '_foot.njk'); + } + + usePatternLabConfig(config: PatternLabConfig): void { + // Create Pattern Loader + // Since Pattern Lab includes are not path based we need a custom loader for Nunjucks. + this.engine = new nunjucks.Environment(new PatternLoader(config)); + + let helpers: string[] = []; + + try { + // Look for helpers in the config + const extend = config.engines?.['nunjucks'].extend; + helpers = (typeof extend === 'string' ? [extend] : extend) ?? []; + } catch (error) { + // No defined path(s) found, look in default location + const configPath = 'patternlab-nunjucks-config.js'; + if (fs.existsSync(path.join(process.cwd(), configPath))) { + helpers = [configPath]; + } + } + + if (helpers) { + helpers.forEach((extensionPath) => { + // Load any user Defined configurations + const nunjucksConfigPath = path.join(process.cwd(), extensionPath); + + try { + const nunjucksConfig = require(nunjucksConfigPath); + if (typeof nunjucksConfig === 'function') { + nunjucksConfig(this.engine); + } else { + console.error(`Failed to load Nunjucks extension: Expected ${extensionPath} to export a function.`); + } + } catch (err) { + console.error(`Failed to load Nunjucks extension ${nunjucksConfigPath}.`); + } + }); + } + } +} diff --git a/packages/engine-nunjucks/tsconfig.json b/packages/engine-nunjucks/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/engine-nunjucks/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/engine-nunjucks/tsconfig.lib.json b/packages/engine-nunjucks/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/engine-nunjucks/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/engine-nunjucks/tsconfig.spec.json b/packages/engine-nunjucks/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/engine-nunjucks/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/engine-react/.gitignore b/packages/engine-react/.gitignore deleted file mode 100644 index 7d7d9a692..000000000 --- a/packages/engine-react/.gitignore +++ /dev/null @@ -1,37 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* - -# Runtime data -pids -*.pid -*.seed - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules -jspm_packages - -# Optional npm cache directory -.npm - -# Optional REPL history -.node_repl_history diff --git a/packages/engine-react/.npmrc b/packages/engine-react/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/engine-react/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-react/.nvmrc b/packages/engine-react/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/engine-react/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/engine-react/CHANGELOG.md b/packages/engine-react/CHANGELOG.md deleted file mode 100644 index f0c634d5f..000000000 --- a/packages/engine-react/CHANGELOG.md +++ /dev/null @@ -1,145 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -# [6.0.0](https://github.com/pattern-lab/patternlab-node/compare/v5.17.0...v6.0.0) (2023-01-31) - -**Note:** Version bump only for package @pattern-lab/engine-react - - - - - -## [5.16.1](https://github.com/pattern-lab/patternlab-node/compare/v5.16.0...v5.16.1) (2022-01-29) - -**Note:** Version bump only for package @pattern-lab/engine-react - - - - - -# [5.16.0](https://github.com/pattern-lab/patternlab-node/compare/v5.15.7...v5.16.0) (2022-01-29) - -**Note:** Version bump only for package @pattern-lab/engine-react - - - - - -## [5.15.1](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/v5.15.0...v5.15.1) (2021-10-16) - -**Note:** Version bump only for package @pattern-lab/engine-react - - - - - - -## [5.14.3](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/v5.14.2...v5.14.3) (2021-05-17) - -**Note:** Version bump only for package @pattern-lab/engine-react - - - - - - -# [5.10.0](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/v5.9.3...v5.10.0) (2020-05-09) - - -### Bug Fixes - -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/issues/1192) ([374c103](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/374c103a59504ba239b16680f86a89b4d95e304f)) -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/issues/1192) ([48de8c2](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/48de8c2e134a61c0b4440375254bc9590a3e2563)) -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/issues/1192) ([363f22c](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/363f22c643239ef4ca48d6f5942111604fda5ead)) -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/issues/1192) ([487cc78](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/487cc783388043ec16ab1e54a3bfd8490038d058)) -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/issues/1192) ([571017f](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/571017ffafa2cf6e8fa01b7ea7effc88922b05d1)) -* **docs:** resolving broken links in new docs site [#1192](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/issues/1192) ([b4eb12e](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/b4eb12e68ceb402964a7e303610e5b0c008876ba)) - - - - - -# [5.0.0](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/v3.0.0-beta.3...v5.0.0) (2019-10-25) - - -### Features - -* **engine-react:** set package to private ([3aea881](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/3aea8815f19df5b527cdda0b75cf99a9a8c3bc1e)) - - - - - - -## [0.2.1-beta.1](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/@pattern-lab/engine-react@0.2.1-beta.0...@pattern-lab/engine-react@0.2.1-beta.1) (2019-02-09) - -**Note:** Version bump only for package @pattern-lab/engine-react - - - - - -<a name="0.2.1-beta.0"></a> -## [0.2.1-beta.0](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/@pattern-lab/engine-react@0.2.1-alpha.5...@pattern-lab/engine-react@0.2.1-beta.0) (2018-09-07) - -**Note:** Version bump only for package @pattern-lab/engine-react - - - - - -<a name="0.2.1-alpha.5"></a> - -## [0.2.1-alpha.5](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/@pattern-lab/engine-react@0.2.1-alpha.4...@pattern-lab/engine-react@0.2.1-alpha.5) (2018-07-06) - -### Features - -* **package:** add npmrc file ([55f5bc2](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/55f5bc2)) -* **package:** pin all dependencies ([415698e](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/415698e)) -* **package:** remove package-lock.json files ([5ab3995](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/5ab3995)) - -<a name="0.2.1-alpha.4"></a> - -## [0.2.1-alpha.4](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/@pattern-lab/engine-react@0.2.1-alpha.3...@pattern-lab/engine-react@0.2.1-alpha.4) (2018-07-05) - -### Features - -* **tests:** use lerna run test at the monorepo level ([38a01b1](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/38a01b1)) - -<a name="0.2.1-alpha.3"></a> - -## [0.2.1-alpha.3](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/@pattern-lab/engine-react@0.2.1-alpha.2...@pattern-lab/engine-react@0.2.1-alpha.3) (2018-05-04) - -**Note:** Version bump only for package @pattern-lab/engine-react - -<a name="0.2.1-alpha.2"></a> - -## [0.2.1-alpha.2](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/@pattern-lab/engine-react@0.2.1-alpha.1...@pattern-lab/engine-react@0.2.1-alpha.2) (2018-03-21) - -### Bug Fixes - -* **package:** remove files obsoleted by monorepo ([9abb8ac](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/9abb8ac)) -* **package:** update LICENSE ([337aa32](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/337aa32)) -* **README:** update content for consistency ([4edf0d4](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/4edf0d4)), closes [#815](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/issues/815) - -<a name="0.2.1-alpha.1"></a> - -## [0.2.1-alpha.1](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/compare/@pattern-lab/engine-react@0.2.1-alpha.0...@pattern-lab/engine-react@0.2.1-alpha.1) (2018-03-05) - -### Bug Fixes - -* **config:** Add npm registry to lerna config ([1473cd5](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/1473cd5)) - -<a name="0.2.1-alpha.0"></a> - -## 0.2.1-alpha.0 (2018-03-02) - -### Bug Fixes - -* **packages:** Allow scoped publishing ([58beeb6](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/58beeb6)) - -### Features - -* **packages:** Update all package.json repo and bug links ([5eb2c11](https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react/commit/5eb2c11)) diff --git a/packages/engine-react/README.md b/packages/engine-react/README.md deleted file mode 100644 index f1fb383a1..000000000 --- a/packages/engine-react/README.md +++ /dev/null @@ -1,40 +0,0 @@ -# The React PatternEngine for Pattern Lab / Node - -This is the **very preliminary** React PatternEngine for Patternlab / Node. - -## Status - -You can author standalone React components that include only the main React module, which I know isn't much yet. We're working on it. - -The current release works with the 2.X series of Patternlab / Node. Support for the 3.X series is underway on the `dev` branch. - -## Installing - -To install the React PatternEngine in your edition, `npm install @pattern-lab/engine-react` should do the trick. - -## Supported features - -* [x] [Includes](https://patternlab.io/docs/including-patterns/) -* [x] Data inheritance: This can be achieved by combining react `props` & `defaultProps` -* [x] [Hidden Patterns](https://patternlab.io/docs/hiding-patterns-in-the-navigation/) -* [x] [Pseudo-Patterns](https://patternlab.io/docs/using-pseudo-patterns/) -* [x] [Pattern States](https://patternlab.io/docs/using-pattern-states/) -* [x] [Pattern Parameters](https://patternlab.io/docs/using-pattern-parameters/): With react props -* [x] [Style Modifiers](https://github.com/pattern-lab/patternlab-node/issues/1177): With react props -* [x] Lineage -* [x] Incremental builds - -## Usage - -* `*.js` and `*.jsx` files are detected as patterns. -* To include patterns, import components using the standard Pattern Lab naming convention, as in: ```javascript - import HelloWorld from 'atoms-hello-world'; - -``` -* Standard pattern JSON is passed into React components as props. - -## Notes -* Components are rendered statically to markup at build time using ReactDOMServer.renderToStaticMarkup(), but also transpiled and inlined as scripts in the pattern code to execute at runtime. -* We currently assume the React include (and others, once we figure that out) are written using es2015 module syntax. -* The Babel transforms are currently hard-coded into the engine, but we hope to make this configurable in the future. -``` diff --git a/packages/engine-react/lib/engine_react.js b/packages/engine-react/lib/engine_react.js deleted file mode 100644 index a27f0c432..000000000 --- a/packages/engine-react/lib/engine_react.js +++ /dev/null @@ -1,236 +0,0 @@ -/* - * react pattern engine for patternlab-node - v0.1.0 - 2016 - * - * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. - * Licensed under the MIT license. - * - * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. - * - */ -'use strict'; - -const fs = require('fs'); -const path = require('path'); -const React = require('react'); -const ReactDOMServer = require('react-dom/server'); -const Babel = require('babel-core'); -const Handlebars = require('handlebars'); -const beautify = require('js-beautify'); -const cheerio = require('cheerio'); -const _require = require; - -var errorStyling = ` -<style> - .plError { - background: linear-gradient(to bottom, #f1f1f1 0%,#ffffff 60%); - color: #444; - padding: 30px; - } - .plError h1 { - font-size: 16pt; - color: #733; - background: #fcfcfc; - border-bottom: 1px solid rgba(0, 0, 0, 0.05); - padding: 17px 30px; - margin: -30px -30px 0 -30px; - } - .plError dt { font-weight: bold; } -</style> -`; - -// This holds the config from from core. The core has to call -// usePatternLabConfig() at load time for this to be populated. -let patternLabConfig = {}; - -let enableRuntimeCode = true; - -const outputTemplate = Handlebars.compile( - fs.readFileSync(path.join(__dirname, './outputTemplate.hbs'), 'utf8') -); - -let registeredComponents = { - byPatternPartial: {}, -}; - -function moduleCodeString(pattern) { - return pattern.template || pattern.extendedTemplate; -} - -function babelTransform(pattern) { - let transpiledModule = Babel.transform(moduleCodeString(pattern), { - presets: [require('babel-preset-react')], - plugins: [require('babel-plugin-transform-es2015-modules-commonjs')], - }); - - // eval() module code in this little scope that injects our - // custom wrap of require(); - ((require) => { - /* eslint-disable no-eval */ - transpiledModule = eval(transpiledModule.code); - })(customRequire); - - return transpiledModule; -} - -function customRequire(id) { - const registeredPattern = registeredComponents.byPatternPartial[id]; - - if (registeredPattern) { - return babelTransform(registeredPattern); - } else { - return _require(id); - } -} - -var engine_react = { - engine: React, - engineName: 'react', - engineFileExtension: ['.jsx', '.js'], - - // hell no - expandPartials: false, - - // regexes, stored here so they're only compiled once - findPartialsRE: /import .* from '[^']+'/g, - findPartialsWithStyleModifiersRE: null, - findPartialsWithPatternParametersRE: null, - findListItemsRE: null, - findPartialRE: /from '([^']+)'/, - - // render it - renderPattern(pattern, data, partials) { - let renderedHTML = ''; - const transpiledModule = babelTransform(pattern); - - const staticMarkup = ReactDOMServer.renderToStaticMarkup( - React.createFactory(transpiledModule)(data) - ); - - renderedHTML = outputTemplate({ - htmlOutput: staticMarkup, - }); - - return Promise.resolve(renderedHTML).catch((e) => { - var errorMessage = `Error rendering React pattern "${ - pattern.patternName - }" (${pattern.relPath}): [${e.toString()}]`; - console.log(errorMessage); - renderedHTML = `${errorStyling} <div class="plError"> - <h1>Error rendering React pattern "${pattern.patternName}"</h1> - <dl> - <dt>Message</dt><dd>${e.toString()}</dd> - <dt>Partial name</dt><dd>${pattern.patternName}</dd> - <dt>Template path</dt><dd>${pattern.relPath}</dd> - </dl> - </div> - `; - }); - }, - - registerPartial(pattern) { - // add to registry - registeredComponents.byPatternPartial[pattern.patternPartial] = pattern; - }, - - /** - * Find regex matches within both pattern strings and pattern objects. - * - * @param {string|object} pattern Either a string or a pattern object. - * @param {object} regex A JavaScript RegExp object. - * @returns {array|null} An array if a match is found, null if not. - */ - patternMatcher(pattern, regex) { - var matches; - if (typeof pattern === 'string') { - matches = pattern.match(regex); - } else if ( - typeof pattern === 'object' && - typeof pattern.template === 'string' - ) { - matches = pattern.template.match(regex); - } - return matches; - }, - - // find and return any `import X from 'template-name'` within pattern - findPartials(pattern) { - const self = this; - const matches = pattern.template.match(this.findPartialsRE); - if (!matches) { - return []; - } - - // Remove unregistered imports from the matches - matches.map((m) => { - const key = self.findPartial(m); - if (!registeredComponents.byPatternPartial[key]) { - const i = matches.indexOf(m); - if (i > -1) { - matches.splice(i, 1); - } - } - }); - - return matches; - }, - - // returns any patterns that match {{> value(foo:'bar') }} or {{> - // value:mod(foo:'bar') }} within the pattern - findPartialsWithPatternParameters(pattern) { - return []; - }, - findListItems(pattern) { - return []; - }, - - // given a pattern, and a partial string, tease out the "pattern key" and - // return it. - findPartial(partialString) { - let partial = partialString.match(this.findPartialRE)[1]; - return partial; - }, - - rawTemplateCodeFormatter(unformattedString) { - return beautify(unformattedString, { e4x: true, indent_size: 2 }); - }, - - renderedCodeFormatter(unformattedString) { - return unformattedString; - }, - - markupOnlyCodeFormatter(unformattedString, pattern) { - // const $ = cheerio.load(unformattedString); - // return beautify.html($('.reactPatternContainer').html(), {indent_size: 2}); - return unformattedString; - }, - - /** - * Add custom output files to the pattern output - * @param {object} patternlab - the global state object - * @returns {(object|object[])} - an object or array of objects, - * each with two properties: path, and content - */ - addOutputFiles(paths, patternlab) { - return []; - }, - - /** - * Accept a Pattern Lab config object from the core and put it in - * this module's closure scope so we can configure engine behavior. - * - * @param {object} config - the global config object from core - */ - usePatternLabConfig: function (config) { - patternLabConfig = config; - - try { - enableRuntimeCode = patternLabConfig.engines.react.enableRuntimeCode; - } catch (error) { - console.log( - 'You’re missing the engines.react.enableRuntimeCode setting in your config file.' - ); - } - }, -}; - -module.exports = engine_react; diff --git a/packages/engine-react/lib/outputTemplate.hbs b/packages/engine-react/lib/outputTemplate.hbs deleted file mode 100644 index f7708f62c..000000000 --- a/packages/engine-react/lib/outputTemplate.hbs +++ /dev/null @@ -1 +0,0 @@ -{{{htmlOutput}}} \ No newline at end of file diff --git a/packages/engine-react/package.json b/packages/engine-react/package.json deleted file mode 100644 index 795531909..000000000 --- a/packages/engine-react/package.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "name": "@pattern-lab/engine-react", - "description": "The React engine for Pattern Lab / Node", - "version": "6.0.0", - "private": true, - "main": "lib/engine_react.js", - "dependencies": { - "babel-core": "6.17.0", - "babel-plugin-transform-es2015-modules-commonjs": "6.16.0", - "babel-preset-react": "6.16.0", - "cheerio": "0.22.0", - "handlebars": "4.7.7", - "js-beautify": "1.13.5", - "react": "15.3.2", - "react-dom": "15.3.2" - }, - "peerDependencies": { - "@pattern-lab/core": ">2" - }, - "keywords": [ - "Pattern Lab", - "Atomic Web Design", - "Node", - "Gulp", - "Javascript", - "React" - ], - "repository": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/engine-react", - "bugs": "https://github.com/pattern-lab/patternlab-node/issues", - "author": "Brian Muenzenmeyer & Geoffrey Pursell", - "license": "MIT", - "scripts": {}, - "engines": { - "node": ">=14.21.1" - }, - "publishConfig": { - "access": "public" - } -} diff --git a/packages/engine-twig-php/.eslintrc.json b/packages/engine-twig-php/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/engine-twig-php/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/engine-twig-php/.gitignore b/packages/engine-twig-php/.gitignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-twig-php/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-twig-php/.npmrc b/packages/engine-twig-php/.npmrc deleted file mode 100644 index 0ca8d2a0b..000000000 --- a/packages/engine-twig-php/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-twig-php/jest.config.ts b/packages/engine-twig-php/jest.config.ts new file mode 100644 index 000000000..7b6775a11 --- /dev/null +++ b/packages/engine-twig-php/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'engine-twig-php', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/engine-twig-php', +}; diff --git a/packages/engine-twig-php/lib/engine_twig_php.js b/packages/engine-twig-php/lib/engine_twig_php.js deleted file mode 100644 index 0f728dc6b..000000000 --- a/packages/engine-twig-php/lib/engine_twig_php.js +++ /dev/null @@ -1,264 +0,0 @@ -'use strict'; - -/* - * Twig PHP pattern engine for patternlab-node - * - * Evan Lovely - * Licensed under the MIT license. - * - * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. - * - */ - -/* - * ENGINE SUPPORT LEVEL: Experimental - */ - -const TwigRenderer = require('@basalt/twig-renderer'); -const fs = require('fs-extra'); -const path = require('path'); -const chalk = require('chalk'); - -let twigRenderer; -let patternLabConfig = {}; - -const engine_twig_php = { - engine: TwigRenderer, - engineName: 'twig-php', - engineFileExtension: '.twig', - expandPartials: false, - findPartialsRE: - /{[%{]\s*.*?(?:extends|include|embed|from|import|use)\(?\s*['"](.+?)['"][\s\S]*?\)?\s*[%}]}/g, - namespaces: [], - - /** - * Accept a Pattern Lab config object from the core and put it in - * this module's closure scope so we can configure engine behavior. - * - * @param {object} config - the global config object from core - */ - usePatternLabConfig: function (config) { - patternLabConfig = config; - - if (!config.engines['twig-php']) { - console.error('Missing "twig" in Pattern Lab config file; exiting...'); - process.exit(1); - } - - const { namespaces, alterTwigEnv, relativeFrom, ...rest } = - config.engines['twig-php']; - - // since package is a reserved word in node, we need to delete it from the config object like this - delete rest.package; - delete rest.fileExtensions; - - // Schema on config object being passed in: - // https://github.com/basaltinc/twig-renderer/blob/master/config.schema.json - twigRenderer = new TwigRenderer({ - src: { - roots: [config.paths.source.root, config.paths.source.patterns], - namespaces, - }, - relativeFrom, - alterTwigEnv, - ...rest, - }); - - // Preserve the namespaces (after recursively adding nested folders) from the config so we can use them later to evaluate partials. - this.namespaces = twigRenderer.config.src.namespaces; - }, - - renderPattern(pattern, data) { - return new Promise((resolve, reject) => { - // If this is a pseudo pattern the relPath will be incorrect. - // i.e. /path/to/pattern.json - // Twig can't render that file so we need to use the base patterns - // relPath instead. - const relPath = pattern.isPseudoPattern - ? pattern.basePattern.relPath - : pattern.relPath; - - const patternPath = path.isAbsolute(relPath) - ? path.relative(patternLabConfig.paths.source.root, relPath) - : relPath; - let details = ''; - if (patternLabConfig.logLevel === 'debug') { - details = `<details><pre><code>${JSON.stringify( - { pattern, data }, - null, - ' ' - )}</code></pre></details>`; - } - - twigRenderer - .render(patternPath, data) - .then((results) => { - if (results.ok) { - resolve(results.html + details); - } else { - // make Twig rendering errors more noticeable + exit when not in dev mode (or running the `patternlab serve` command) - if ( - process.argv.slice(1).includes('serve') || - process.env.NODE_ENV === 'development' - ) { - reject(chalk.red(results.message)); - } else { - console.log(chalk.red(results.message)); - process.exit(1); - } - } - }) - .catch((error) => { - reject(error); - }); - }); - }, - - /** - * Checks to see if the _meta directory has engine-specific head and foot files, - * spawning them if not found. - * - * @param {object} config - the global config object from core, since we won't - * assume it's already present - */ - spawnMeta(config) { - const { paths } = config; - ['_head.twig', '_foot.twig'].forEach((fileName) => { - const metaFilePath = path.resolve(paths.source.meta, fileName); - try { - fs.statSync(metaFilePath); - } catch (err) { - //not a file, so spawn it from the included file - const metaFileContent = fs.readFileSync( - path.resolve(__dirname, '..', '_meta/', fileName), - 'utf8' - ); - fs.outputFileSync(metaFilePath, metaFileContent); - } - }); - }, - - // Below exists several functions that core uses to build lineage through RegEx - // @todo Add all functions that get called even if disabled to ease implementing engine further - // Currently all of them return `null` as I'm not totally sure there absence will be ok. Additionally, future improvements may be implemented in this functions. - - // Find and return any {% extends|include|embed 'template-name' %} within pattern. - // The regex should match the following examples: - // {% - // include '@molecules/teaser-card/teaser-card.twig' with { - // teaser_card: card - // } only - // %} - // OR - // {% include '@molecules/teaser-card/teaser-card.twig' %} - // OR - // {% - // include '@molecules/teaser-card/teaser-card.twig' - // %} - findPartials: function (pattern) { - const matches = pattern.template.match(this.findPartialsRE); - const filteredMatches = - matches && - matches.filter((match) => { - // Filter out programmatically created includes. - // i.e. {% include '@namespace/icons/assets/' ~ name ~ '.svg' %} - return match.indexOf('~') === -1; - }); - return filteredMatches; - }, - - findPartialsWithPatternParameters(pattern) { - return null; - }, - - findListItems(pattern) { - return null; - }, - - findPartial_new(partialString) { - return null; - }, - - // Given a pattern, and a partial string, tease out the "pattern key" and - // return it. - findPartial: function (partialString) { - try { - const partial = partialString.replace(this.findPartialsRE, '$1'); - - // Check if namespaces is not empty. - const selectedNamespace = this.namespaces.filter((namespace) => { - // Check to see if this partial contains within the namespace id. - return partial.indexOf(`@${namespace.id}`) !== -1; - }); - - let namespaceResolvedPartial = ''; - - if (selectedNamespace.length > 0) { - // Loop through all namespaces and try to resolve the namespace to a file path. - for ( - let index = 0; - index < selectedNamespace[0].paths.length; - index++ - ) { - const patternPath = path.isAbsolute(selectedNamespace[0].paths[index]) - ? path.relative( - patternLabConfig.paths.source.root, - selectedNamespace[0].paths[index] - ) - : selectedNamespace[0].paths[index]; - - // Replace the name space with the actual path. - // i.e. @atoms -> source/_patterns/atoms - const tempPartial = path.join( - process.cwd(), - partial.replace(`@${selectedNamespace[0].id}`, patternPath) - ); - - try { - // Check to see if the file actually exists. - if (fs.existsSync(tempPartial)) { - // get the path to the top-level folder of this pattern - // ex. /Users/bradfrost/sites/pattern-lab/packages/edition-twig/source/_patterns/atoms - const fullFolderPath = `${ - tempPartial.split(selectedNamespace[0].paths[index])[0] - }${selectedNamespace[0].paths[index]}`; - - // then tease out the folder name itself (including the # prefix) - // ex. atoms - const folderName = path.parse(fullFolderPath).base; - - // finally, return the Twig path we created from the full file path - // ex. atoms/buttons/button.twig - const fullIncludePath = tempPartial.replace( - tempPartial.split( - `${folderName}${tempPartial.split(folderName)[1]}` - )[0], - '' - ); - - namespaceResolvedPartial = fullIncludePath; - - // After it matches one time, set the resolved partial and exit the loop. - break; - } - } catch (err) { - console.error(err); - } - } - } - // Return the path with the namespace resolved OR the regex'd partial. - return namespaceResolvedPartial || partial; - } catch (err) { - console.error( - 'Error occured when trying to find partial name in: ' + partialString - ); - return null; - } - }, - - patternMatcher(pattern, regex) { - return null; - }, -}; - -module.exports = engine_twig_php; diff --git a/packages/engine-twig-php/package.json b/packages/engine-twig-php/package.json index 1ba7690e6..efd957c4f 100644 --- a/packages/engine-twig-php/package.json +++ b/packages/engine-twig-php/package.json @@ -2,13 +2,6 @@ "name": "@pattern-lab/engine-twig-php", "description": "The Twig PHP engine for Pattern Lab Node", "version": "6.0.1", - "main": "lib/engine_twig_php.js", - "dependencies": { - "@basalt/twig-renderer": "^2.0.0", - "@pattern-lab/core": "^6.0.1", - "chalk": "^4.1.0", - "fs-extra": "10.0.0" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -26,12 +19,8 @@ } ], "license": "MIT", - "scripts": {}, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/engine-twig-php/project.json b/packages/engine-twig-php/project.json new file mode 100644 index 000000000..2cd88aef8 --- /dev/null +++ b/packages/engine-twig-php/project.json @@ -0,0 +1,58 @@ +{ + "name": "engine-twig-php", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/engine-twig-php/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/engine-twig-php", + "main": "packages/engine-twig-php/src/index.ts", + "tsConfig": "packages/engine-twig-php/tsconfig.lib.json", + "assets": [ + "packages/engine-twig-php/*.md", + "packages/engine-twig-php/LICENSE", + "packages/engine-twig-php/_meta/*" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs engine-twig-php {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/engine-twig-php/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/engine-twig-php/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/engine-twig-php/src/index.ts b/packages/engine-twig-php/src/index.ts new file mode 100644 index 000000000..608008392 --- /dev/null +++ b/packages/engine-twig-php/src/index.ts @@ -0,0 +1,2 @@ +import { EngineTwigPhp } from './lib/engine-twig-php'; +export default EngineTwigPhp; diff --git a/packages/engine-twig-php/src/lib/engine-twig-php.spec.ts b/packages/engine-twig-php/src/lib/engine-twig-php.spec.ts new file mode 100644 index 000000000..67ce114fc --- /dev/null +++ b/packages/engine-twig-php/src/lib/engine-twig-php.spec.ts @@ -0,0 +1,88 @@ +import { PatternLabConfig } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import { EngineTwigPhp } from './engine-twig-php'; + +describe('EngineTwigPhp', () => { + let engine: EngineTwigPhp; + + beforeEach(() => { + engine = new EngineTwigPhp(); + }); + + // TODO: implement this test + // describe('renderPattern()', () => { + // it('should render the pattern with the given data', () => { + // const pattern = { + // template: '<h1>{{title}}</h1>', + // patternPartial: 'test', + // } as Pattern; + // const data = { title: 'Hello, world!' }; + + // const result = engine.renderPattern(pattern, data); + // expect(result).resolves.toBe('<h1>Hello, world!</h1>'); + // }); + // }); + + // TODO: implement this test + // describe('registerPartial()', () => { + // it('should register the pattern as a partial', () => { + // const pattern = { + // template: '<h1>{{title}}</h1>', + // patternPartial: 'test', + // verbosePartial: 'test-verbose', + // } as Pattern; + + // engine.registerPartial(pattern); + + // const patternWithPartial = { + // template: '<div>{{> test}}</div>', + // } as Pattern; + // const data = { title: 'Hello, world!' }; + + // const result = engine.renderPattern(patternWithPartial, data); + // expect(result).resolves.toBe('<div><h1>Hello, world!</h1></div>'); + // }); + // }); + + // TODO: implement this test + // describe('findPartials()', () => { + // it('should find all partials in the pattern template', () => { + // const pattern = { + // template: '<h1>{{> header}}</h1><p>{{> body}}</p>', + // patternPartial: 'test', + // } as Pattern; + // const result = engine.findPartials(pattern); + // expect(result).toEqual(['{{> header}}', '{{> body}}']); + // }); + // }); + + // TODO: implement this test + // describe('findPartial()', () => { + // it('should extract the partial name from a partial string', () => { + // const result = engine.findPartial("{% include '@global/header' %}"); + // expect(result).toBe('header'); + // }); + // }); + + describe('spawnMeta()', () => { + const normalizedExpect = (pathStr: string): string => expect.stringContaining(path.normalize(pathStr)); + + it('should spawn the meta pattern data', () => { + const readSpy = jest.spyOn(fs, 'readFileSync').mockReturnValue('File Content'); + const outputSpy = jest.spyOn(fs, 'outputFileSync').mockImplementation(jest.fn); + + const config = { + paths: { source: { meta: 'source/_meta' } }, + } as PatternLabConfig; + + engine.spawnMeta(config); + + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-twig-php/_meta/_head.twig'), 'utf8'); + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-twig-php/_meta/_foot.twig'), 'utf8'); + + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_head.twig'), 'File Content'); + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_foot.twig'), 'File Content'); + }); + }); +}); diff --git a/packages/engine-twig-php/src/lib/engine-twig-php.ts b/packages/engine-twig-php/src/lib/engine-twig-php.ts new file mode 100644 index 000000000..8f5ba51d5 --- /dev/null +++ b/packages/engine-twig-php/src/lib/engine-twig-php.ts @@ -0,0 +1,211 @@ +/* + * Twig PHP pattern engine for patternlab-node + * + * Evan Lovely + * Licensed under the MIT license. + * + * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. + * + * ENGINE SUPPORT LEVEL: Experimental + */ + +import TwigRenderer from '@basalt/twig-renderer'; +import { + Pattern, + PatternData, + PatternEngineConfigTwigPhp, + PatternEngineNamespaceOptions, + PatternLabConfig, + PatternLabEngine, +} from '@pattern-lab/types'; +import chalk from 'chalk'; +import fs from 'fs-extra'; +import path from 'path'; + +export class EngineTwigPhp implements PatternLabEngine { + private engine!: TwigRenderer; + engineName = 'twig-php'; + engineFileExtension = ['.twig']; + expandPartials = false; + + findPartialsRE = + /{[%{]\s*.*?(?:extends|include|embed|from|import|use)\(?\s*['"](.+?)['"][\s\S]*?\)?\s*[%}]}/g; + + namespaces: PatternEngineNamespaceOptions[] = []; + patternLabConfig?: PatternLabConfig; + + renderPattern(pattern: Pattern, data: PatternData): Promise<string> { + return new Promise((resolve, reject) => { + // If this is a pseudo pattern the relPath will be incorrect. + // i.e. /path/to/pattern.json + // Twig can't render that file so we need to use the base patterns + // relPath instead. + const relPath = pattern.isPseudoPattern ? pattern.basePattern.relPath : pattern.relPath; + + const patternPath = + this.patternLabConfig && path.isAbsolute(relPath) + ? path.relative(this.patternLabConfig.paths.source.root, relPath) + : relPath; + let details = ''; + if (this.patternLabConfig?.logLevel === 'debug') { + details = `<details><pre><code>${JSON.stringify({ pattern, data }, null, ' ')}</code></pre></details>`; + } + + this.engine + .render(patternPath, data) + .then((results) => { + if (results.ok) { + resolve(results.html + details); + } else { + // make Twig rendering errors more noticeable + exit when not in dev mode (or running the `patternlab serve` command) + if (process.argv.slice(1).includes('serve') || process.env['NODE_ENV'] === 'development') { + reject(chalk.red(results.message)); + } else { + console.log(chalk.red(results.message)); + process.exit(1); + } + } + }) + .catch((error) => { + reject(error); + }); + }); + } + + registerPartial(_pattern: Pattern): void { + // no-op + } + + findPartials(pattern: Pattern): RegExpMatchArray | null { + const matches = pattern.template.match(this.findPartialsRE); + const filteredMatches = matches?.filter((match) => { + // Filter out programmatically created includes. + // i.e. {% include '@namespace/icons/assets/' ~ name ~ '.svg' %} + return match.indexOf('~') === -1; + }) as RegExpMatchArray | undefined; + return filteredMatches || null; + } + + findPartialsWithPatternParameters(_pattern: Pattern): RegExpMatchArray | null { + return null; + } + + findListItems(_pattern: Pattern): RegExpMatchArray | null { + return null; + } + + findPartial(partialString: string): string { + try { + const partial = partialString.replace(this.findPartialsRE, '$1'); + + // Check if namespaces is not empty. + const selectedNamespace = this.namespaces.filter((namespace) => { + // Check to see if this partial contains within the namespace id. + return partial.indexOf(`@${namespace.id}`) !== -1; + }); + + let namespaceResolvedPartial = ''; + + if (selectedNamespace.length > 0) { + // Loop through all namespaces and try to resolve the namespace to a file path. + for (let index = 0; index < selectedNamespace[0].paths.length; index++) { + const patternPath = + this.patternLabConfig && path.isAbsolute(selectedNamespace[0].paths[index]) + ? path.relative(this.patternLabConfig.paths.source.root, selectedNamespace[0].paths[index]) + : selectedNamespace[0].paths[index]; + + // Replace the name space with the actual path. + // i.e. @atoms -> source/_patterns/atoms + const tempPartial = path.join( + process.cwd(), + partial.replace(`@${selectedNamespace[0].id}`, patternPath), + ); + + try { + // Check to see if the file actually exists. + if (fs.existsSync(tempPartial)) { + // get the path to the top-level folder of this pattern + // ex. /Users/bradfrost/sites/pattern-lab/packages/edition-twig/source/_patterns/atoms + const fullFolderPath = `${tempPartial.split(selectedNamespace[0].paths[index])[0]}${ + selectedNamespace[0].paths[index] + }`; + + // then tease out the folder name itself (including the # prefix) + // ex. atoms + const folderName = path.parse(fullFolderPath).base; + + // finally, return the Twig path we created from the full file path + // ex. atoms/buttons/button.twig + const fullIncludePath = tempPartial.replace( + tempPartial.split(`${folderName}${tempPartial.split(folderName)[1]}`)[0], + '', + ); + + namespaceResolvedPartial = fullIncludePath; + + // After it matches one time, set the resolved partial and exit the loop. + break; + } + } catch (err) { + console.error(err); + } + } + } + // Return the path with the namespace resolved OR the regex'd partial. + return namespaceResolvedPartial || partial; + } catch (err) { + console.error('Error occured when trying to find partial name in: ' + partialString); + return ''; + } + } + + private spawnFile(config: PatternLabConfig, fileName: string): void { + const metaFilePath = path.resolve(config.paths.source.meta, fileName); + try { + fs.statSync(metaFilePath); + } catch (err) { + //not a file, so spawn it from the included file + const metaFileContent = fs.readFileSync(path.resolve(__dirname, '..', '..', '_meta/', fileName), 'utf8'); + fs.outputFileSync(metaFilePath, metaFileContent); + } + } + + spawnMeta(config: PatternLabConfig): void { + this.spawnFile(config, '_head.twig'); + this.spawnFile(config, '_foot.twig'); + } + + usePatternLabConfig(config: PatternLabConfig): void { + this.patternLabConfig = config; + + if (!config.engines?.['twig-php']) { + console.error('Missing "twig-php" in Pattern Lab config file; exiting...'); + process.exit(1); + } + + const engineConfig: Partial<PatternEngineConfigTwigPhp> | undefined = config.engines?.[ + 'twig-php' + ] as PatternEngineConfigTwigPhp; + + const { namespaces, alterTwigEnv, relativeFrom, ...rest } = engineConfig; + + // since package is a reserved word in node, we need to delete it from the config object like this + delete rest.package; + delete rest.fileExtensions; + + // Schema on config object being passed in: + // https://github.com/basaltinc/twig-renderer/blob/master/config.schema.json + this.engine = new TwigRenderer({ + src: { + roots: [config.paths.source.root, config.paths.source.patterns], + namespaces, + }, + relativeFrom, + alterTwigEnv, + ...rest, + }); + + // Preserve the namespaces (after recursively adding nested folders) from the config so we can use them later to evaluate partials. + this.namespaces = this.engine.config.src.namespaces || []; + } +} diff --git a/packages/engine-twig-php/tsconfig.json b/packages/engine-twig-php/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/engine-twig-php/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/engine-twig-php/tsconfig.lib.json b/packages/engine-twig-php/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/engine-twig-php/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/engine-twig-php/tsconfig.spec.json b/packages/engine-twig-php/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/engine-twig-php/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/engine-twig/.eslintrc.json b/packages/engine-twig/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/engine-twig/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/engine-twig/.gitignore b/packages/engine-twig/.gitignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-twig/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-twig/.npmrc b/packages/engine-twig/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/engine-twig/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-twig/.nvmrc b/packages/engine-twig/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/engine-twig/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/engine-twig/jest.config.ts b/packages/engine-twig/jest.config.ts new file mode 100644 index 000000000..42ba003ed --- /dev/null +++ b/packages/engine-twig/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'engine-twig', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/engine-twig', +}; diff --git a/packages/engine-twig/lib/engine_twig.js b/packages/engine-twig/lib/engine_twig.js deleted file mode 100644 index efaa5416a..000000000 --- a/packages/engine-twig/lib/engine_twig.js +++ /dev/null @@ -1,330 +0,0 @@ -'use strict'; - -/* - * twig pattern engine for patternlab-node - v0.15.1 - 2015 - * - * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. - * Licensed under the MIT license. - * - * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. - * - */ - -/* - * ENGINE SUPPORT LEVEL: - * - * Full. Partial calls and lineage hunting are supported. Twig does not support - * the mustache-specific syntax extensions, style modifiers and pattern - * parameters, because their use cases are addressed by the core Twig feature - * set. - * - */ - -const fs = require('fs-extra'); -const path = require('path'); -const { - TwingEnvironment, - TwingLoaderFilesystem, - TwingLoaderChain, - TwingSource, -} = require('twing'); - -class TwingLoaderPatternLab { - patterns = new Map(); - - constuctor() {} - - registerPartial(pattern) { - if (pattern.patternPartial) { - this.patterns.set(pattern.patternPartial, pattern); - } - } - - /** - * Returns the source context for a given template logical name. - * - * @param {string} name The template logical name - * @param {TwingSource} from The source that initiated the template loading - * - * @returns {Promise<TwingSource>} - * - * @throws TwingErrorLoader When name is not found - */ - getSourceContext(name, from) { - const pattern = this.patterns.get(name); - return Promise.resolve( - new TwingSource(pattern.extendedTemplate, name, pattern.relPath) - ); - } - - /** - * Gets the cache key to use for the cache for a given template name. - * - * @param {string} name The name of the template to load - * @param {TwingSource} from The source that initiated the template loading - * - * @returns {Promise<string>} The cache key - * - * @throws TwingErrorLoader When name is not found - */ - getCacheKey(name, from) { - return Promise.resolve(name); - } - - /** - * Returns true if the template is still fresh. - *l - * @param {string} name The template name - * @param {number} time Timestamp of the last modification time of the cached template - * @param {TwingSource} from The source that initiated the template loading - * - * @returns {Promise<boolean>} true if the template is fresh, false otherwise - * - * @throws TwingErrorLoader When name is not found - */ - isFresh(name, time, from) { - return Promise.resolve(this.patterns.has(name) ? true : false); - } - - /** - * Check if we have the source code of a template, given its name. - * - * @param {string} name The name of the template to check if we can load - * @param {TwingSource} from The source that initiated the template loading - * - * @returns {Promise<boolean>} If the template source code is handled by this loader or not - */ - exists(name, from) { - return Promise.resolve(this.patterns.has(name) ? true : false); - } - - /** - * Resolve the path of a template, given its name, whatever it means in the context of the loader. - * - * @param {string} name The name of the template to resolve - * @param {TwingSource} from The source that initiated the template loading - * - * @returns {Promise<string>} The resolved path of the template - */ - resolve(name, from) { - pattern = this.patterns.get(name); - return null; - } -} - -const fileSystemLoader = new TwingLoaderFilesystem(); -const patternLabLoader = new TwingLoaderPatternLab(); -const chainLoader = new TwingLoaderChain([fileSystemLoader, patternLabLoader]); -const twing = new TwingEnvironment(chainLoader); -let metaPath; -let patternLabConfig = {}; - -const engine_twig = { - engine: twing, - engineName: 'twig', - engineFileExtension: '.twig', - - // regexes, stored here so they're only compiled once - findPartialsRE: - /{[%{]\s*.*?(?:extends|include|embed|from|import|use)\(?\s*['"](.+?)['"][\s\S]*?\)?\s*[%}]}/g, - findListItemsRE: - /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g, // TODO - - // render it - renderPattern: function renderPattern(pattern, data, partials) { - let patternPath = pattern.basePattern - ? pattern.basePattern.relPath - : pattern.relPath; - if (patternPath.lastIndexOf(metaPath) === 0) { - patternPath = patternPath.substring(metaPath.length + 1); - } - return Promise.resolve(twing.render(patternPath, data)); - }, - - registerPartial: function registerPartial(pattern) { - console.log( - `registerPartial(${pattern.name} - ${pattern.patternPartial} - ${pattern.patternPath} - ${pattern.relPath})` - ); - patternLabLoader.registerPartial(pattern); - }, - - // find and return any {% include 'template-name' %} within pattern - findPartials: function findPartials(pattern) { - const matches = pattern.template.match(this.findPartialsRE); - const filteredMatches = - matches && - matches.filter((match) => { - // Filter out programmatically created includes. - // i.e. {% include '@namespace/icons/assets/' ~ name ~ '.svg' %} - return match.indexOf('~') === -1; - }); - return filteredMatches; - }, - - // returns any patterns that match {{> value(foo:"bar") }} or {{> - // value:mod(foo:"bar") }} within the pattern - findPartialsWithPatternParameters: function () { - // TODO: make the call to this from oPattern objects conditional on their - // being implemented here. - return []; - }, - - findListItems: function (pattern) { - const matches = pattern.template.match(this.findListItemsRE); - return matches; - }, - - // given a pattern, and a partial string, tease out the "pattern key" and - // return it. - findPartial: function (partialString) { - try { - const partial = partialString.replace(this.findPartialsRE, '$1'); - - // Check if namespaces is not empty. - const [selectedNamespace] = fileSystemLoader - .getNamespaces() - .filter((namespace) => { - // Check to see if this partial contains within the namespace id. - return partial.indexOf(`@${namespace}`) !== -1; - }); - - let namespaceResolvedPartial = ''; - - if (selectedNamespace.length > 0) { - // Loop through all namespaces and try to resolve the namespace to a file path. - const namespacePaths = fileSystemLoader.getPaths(selectedNamespace); - - for (let index = 0; index < namespacePaths.length; index++) { - const patternPath = path.isAbsolute(namespacePaths[index]) - ? path.relative( - patternLabConfig.paths.source.root, - namespacePaths[index] - ) - : namespacePaths[index]; - - // Replace the name space with the actual path. - // i.e. @atoms -> source/_patterns/atoms - const tempPartial = path.join( - process.cwd(), - partial.replace(`@${selectedNamespace}`, patternPath) - ); - - try { - // Check to see if the file actually exists. - if (fs.existsSync(tempPartial)) { - // get the path to the top-level folder of this pattern - // ex. /Users/bradfrost/sites/pattern-lab/packages/edition-twig/source/_patterns/atoms - const fullFolderPath = `${ - tempPartial.split(namespacePaths[index])[0] - }${namespacePaths[index]}`; - - // then tease out the folder name itself (including the # prefix) - // ex. atoms - const folderName = fullFolderPath.substring( - fullFolderPath.lastIndexOf('/') + 1, - fullFolderPath.length - ); - - // finally, return the Twig path we created from the full file path - // ex. atoms/buttons/button.twig - const fullIncludePath = tempPartial.replace( - tempPartial.split( - `${folderName}${tempPartial.split(folderName)[1]}` - )[0], - '' - ); - - namespaceResolvedPartial = fullIncludePath; - - // After it matches one time, set the resolved partial and exit the loop. - break; - } - } catch (err) { - console.error(err); - } - } - } - // Return the path with the namespace resolved OR the regex'd partial. - return namespaceResolvedPartial || partial; - } catch (err) { - console.error( - 'Error occurred when trying to find partial name in: ' + partialString - ); - return null; - } - }, - - spawnFile: function (config, fileName) { - const paths = config.paths; - const metaFilePath = path.resolve(paths.source.meta, fileName); - try { - fs.statSync(metaFilePath); - } catch (err) { - //not a file, so spawn it from the included file - const metaFileContent = fs.readFileSync( - path.resolve(__dirname, '..', '_meta/', fileName), - 'utf8' - ); - fs.outputFileSync(metaFilePath, metaFileContent); - } - }, - - /** - * Checks to see if the _meta directory has engine-specific head and foot files, - * spawning them if not found. - * - * @param {object} config - the global config object from core, since we won't - * assume it's already present - */ - spawnMeta: function (config) { - this.spawnFile(config, '_head.twig'); - this.spawnFile(config, '_foot.twig'); - }, - - /** - * Accept a Pattern Lab config object from the core and use the settings to - * load helpers. - * - * @param {object} config - the global config object from core - */ - usePatternLabConfig: function (config) { - patternLabConfig = config; - metaPath = path.resolve(config.paths.source.meta); - // Global paths - fileSystemLoader.addPath(config.paths.source.meta); - fileSystemLoader.addPath(config.paths.source.patterns); - // Namespaced paths - if ( - config.engines && - config.engines.twig && - config.engines.twig.namespaces - ) { - const namespaces = config.engines.twig.namespaces; - Object.keys(namespaces).forEach(function (key, index) { - fileSystemLoader.addPath(namespaces[key], key); - }); - } - - // add twing extensions - if ( - config.engines && - config.engines.twig && - config.engines.twig.loadExtensionsFile - ) { - const extensionsFile = path.resolve( - './', - config.engines.twig.loadExtensionsFile - ); - if (fs.pathExistsSync(extensionsFile)) { - try { - const extensionsMap = require(extensionsFile); - twing.addExtensions(extensionsMap); - } catch (e) { - console.error(e); - } - } - } - }, -}; - -module.exports = engine_twig; diff --git a/packages/engine-twig/package.json b/packages/engine-twig/package.json index 3525823e0..a6e31c76b 100644 --- a/packages/engine-twig/package.json +++ b/packages/engine-twig/package.json @@ -2,11 +2,6 @@ "name": "@pattern-lab/engine-twig", "description": "The Twig engine for Pattern Lab / Node", "version": "6.0.0", - "main": "lib/engine_twig.js", - "dependencies": { - "fs-extra": "10.0.0", - "twing": "^5.0.2" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -20,12 +15,8 @@ "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "author": "Brian Muenzenmeyer & Geoffrey Pursell", "license": "MIT", - "scripts": {}, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/engine-twig/project.json b/packages/engine-twig/project.json new file mode 100644 index 000000000..d83f39a6d --- /dev/null +++ b/packages/engine-twig/project.json @@ -0,0 +1,54 @@ +{ + "name": "engine-twig", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/engine-twig/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/engine-twig", + "main": "packages/engine-twig/src/index.ts", + "tsConfig": "packages/engine-twig/tsconfig.lib.json", + "assets": ["packages/engine-twig/*.md", "packages/engine-twig/LICENSE", "packages/engine-twig/_meta/*"], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs engine-twig {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/engine-twig/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/engine-twig/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/engine-twig/src/index.ts b/packages/engine-twig/src/index.ts new file mode 100644 index 000000000..ff7b6599a --- /dev/null +++ b/packages/engine-twig/src/index.ts @@ -0,0 +1,2 @@ +import { EngineTwig } from './lib/engine-twig'; +export default EngineTwig; diff --git a/packages/engine-twig/src/lib/engine-twig.spec.ts b/packages/engine-twig/src/lib/engine-twig.spec.ts new file mode 100644 index 000000000..7c98b7133 --- /dev/null +++ b/packages/engine-twig/src/lib/engine-twig.spec.ts @@ -0,0 +1,99 @@ +import { Pattern, PatternLabConfig } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import { EngineTwig } from './engine-twig'; + +describe('EngineTwig', () => { + let engine: EngineTwig; + + beforeEach(() => { + engine = new EngineTwig(); + }); + + // TODO: implement this test + // describe('renderPattern()', () => { + // it('should render the pattern with the given data', () => { + // const pattern = { + // template: '<h1>{{title}}</h1>', + // patternPartial: 'test', + // } as Pattern; + // const data = { title: 'Hello, world!' }; + + // const result = engine.renderPattern(pattern, data); + // expect(result).resolves.toBe('<h1>Hello, world!</h1>'); + // }); + // }); + + // TODO: implement this test + // describe('registerPartial()', () => { + // it('should register the pattern as a partial', () => { + // const pattern = { + // template: '<h1>{{title}}</h1>', + // patternPartial: 'test', + // verbosePartial: 'test-verbose', + // } as Pattern; + + // engine.registerPartial(pattern); + + // const patternWithPartial = { + // template: '<div>{{> test}}</div>', + // } as Pattern; + // const data = { title: 'Hello, world!' }; + + // const result = engine.renderPattern(patternWithPartial, data); + // expect(result).resolves.toBe('<div><h1>Hello, world!</h1></div>'); + // }); + // }); + + // TODO: implement this test + // describe('findPartials()', () => { + // it('should find all partials in the pattern template', () => { + // const pattern = { + // template: '<h1>{{> header}}</h1><p>{{> body}}</p>', + // patternPartial: 'test', + // } as Pattern; + // const result = engine.findPartials(pattern); + // expect(result).toEqual(['{{> header}}', '{{> body}}']); + // }); + // }); + + describe('findListItems()', () => { + it('should find all list items in the pattern template', () => { + const pattern = { + template: '{{#listItems.one}}{{label}}{{/listItems.one}}{{#listItems.two}}{{label}}{{/listItems.two}}', + patternPartial: 'test', + } as Pattern; + const result = engine.findListItems(pattern); + expect(result).toEqual(['{{#listItems.one}}', '{{#listItems.two}}']); + }); + }); + + // TODO: implement this test + // describe('findPartial()', () => { + // it('should extract the partial name from a partial string', () => { + // const result = engine.findPartial("{% include '@global/header' %}"); + // expect(result).toBe('header'); + // }); + // }); + + describe('spawnMeta()', () => { + const normalizedExpect = (pathStr: string): string => expect.stringContaining(path.normalize(pathStr)); + + it('should spawn the meta pattern data', () => { + const readSpy = jest.spyOn(fs, 'readFileSync').mockReturnValue('File Content'); + const outputSpy = jest.spyOn(fs, 'outputFileSync').mockImplementation(jest.fn); + + const config = { + paths: { source: { meta: 'source/_meta' } }, + } as PatternLabConfig; + + engine.spawnMeta(config); + + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-twig/_meta/_head.twig'), 'utf8'); + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-twig/_meta/_foot.twig'), 'utf8'); + + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_head.twig'), 'File Content'); + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_foot.twig'), 'File Content'); + }); + }); +}); diff --git a/packages/engine-twig/src/lib/engine-twig.ts b/packages/engine-twig/src/lib/engine-twig.ts new file mode 100644 index 000000000..baeba0653 --- /dev/null +++ b/packages/engine-twig/src/lib/engine-twig.ts @@ -0,0 +1,196 @@ +/* + * twig pattern engine for patternlab-node - v0.15.1 - 2015 + * + * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. + * Licensed under the MIT license. + * + * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. + * + * ENGINE SUPPORT LEVEL: + * + * Full. Partial calls and lineage hunting are supported. Twig does not support + * the mustache-specific syntax extensions, style modifiers and pattern + * parameters, because their use cases are addressed by the core Twig feature + * set. + * + */ + +import { + Pattern, + PatternData, + PatternEngineConfigTwig, + PatternLabConfig, + PatternLabEngine, +} from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import { TwingEnvironment, TwingLoaderChain, TwingLoaderFilesystem } from 'twing'; +import { TwingLoaderPatternLab } from './twing-loader'; + +// eslint-disable-next-line @typescript-eslint/no-explicit-any +declare function require(moduleName: string): any; + +const fileSystemLoader = new TwingLoaderFilesystem(); +const patternLabLoader = new TwingLoaderPatternLab(); +const chainLoader = new TwingLoaderChain([fileSystemLoader, patternLabLoader]); + +export class EngineTwig implements PatternLabEngine { + private engine = new TwingEnvironment(chainLoader); + engineName = 'twig'; + engineFileExtension = ['.twig']; + expandPartials = false; + + metaPath?: string; + patternLabConfig?: PatternLabConfig; + + // regexes, stored here so they're only compiled once + findPartialsRE = + /{[%{]\s*.*?(?:extends|include|embed|from|import|use)\(?\s*['"](.+?)['"][\s\S]*?\)?\s*[%}]}/g; + findListItemsRE = + /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g; + + renderPattern(pattern: Pattern, data: PatternData): Promise<string> { + let patternPath = pattern.basePattern?.relPath || pattern.relPath; + if (this.metaPath && patternPath.lastIndexOf(this.metaPath) === 0) { + patternPath = patternPath.substring(this.metaPath.length + 1); + } + return Promise.resolve(this.engine.render(patternPath, data)); + } + + registerPartial(pattern: Pattern): void { + console.log(`registerPartial(${pattern.name} - ${pattern.patternPartial} - ${pattern.relPath})`); + patternLabLoader.registerPartial(pattern); + } + + findPartials(pattern: Pattern): RegExpMatchArray | null { + const matches = pattern.template.match(this.findPartialsRE); + const filteredMatches = matches?.filter((match) => { + // Filter out programmatically created includes. + // i.e. {% include '@namespace/icons/assets/' ~ name ~ '.svg' %} + return match.indexOf('~') === -1; + }) as RegExpMatchArray | undefined; + return filteredMatches || null; + } + + findPartialsWithPatternParameters(_pattern: Pattern): RegExpMatchArray | null { + return null; + } + + findListItems(pattern: Pattern): RegExpMatchArray | null { + return pattern.template.match(this.findListItemsRE); + } + + findPartial(partialString: string): string { + try { + const partial = partialString.replace(this.findPartialsRE, '$1'); + + // Check if namespaces is not empty. + const [selectedNamespace] = fileSystemLoader.getNamespaces().filter((namespace) => { + // Check to see if this partial contains within the namespace id. + return partial.indexOf(`@${namespace}`) !== -1; + }); + + let namespaceResolvedPartial = ''; + + if (selectedNamespace.length > 0) { + // Loop through all namespaces and try to resolve the namespace to a file path. + const namespacePaths = fileSystemLoader.getPaths(selectedNamespace); + + for (let index = 0; index < namespacePaths.length; index++) { + const patternPath = + this.patternLabConfig && path.isAbsolute(namespacePaths[index]) + ? path.relative(this.patternLabConfig?.paths.source.root, namespacePaths[index]) + : namespacePaths[index]; + + // Replace the name space with the actual path. + // i.e. @atoms -> source/_patterns/atoms + const tempPartial = path.join(process.cwd(), partial.replace(`@${selectedNamespace}`, patternPath)); + + try { + // Check to see if the file actually exists. + if (fs.existsSync(tempPartial)) { + // get the path to the top-level folder of this pattern + // ex. /Users/bradfrost/sites/pattern-lab/packages/edition-twig/source/_patterns/atoms + const fullFolderPath = `${tempPartial.split(namespacePaths[index])[0]}${namespacePaths[index]}`; + + // then tease out the folder name itself (including the # prefix) + // ex. atoms + const folderName = fullFolderPath.substring( + fullFolderPath.lastIndexOf('/') + 1, + fullFolderPath.length, + ); + + // finally, return the Twig path we created from the full file path + // ex. atoms/buttons/button.twig + const fullIncludePath = tempPartial.replace( + tempPartial.split(`${folderName}${tempPartial.split(folderName)[1]}`)[0], + '', + ); + + namespaceResolvedPartial = fullIncludePath; + + // After it matches one time, set the resolved partial and exit the loop. + break; + } + } catch (err) { + console.error(err); + } + } + } + // Return the path with the namespace resolved OR the regex'd partial. + return namespaceResolvedPartial || partial; + } catch (err) { + console.error('Error occurred when trying to find partial name in: ' + partialString); + return ''; + } + } + + private spawnFile(config: PatternLabConfig, fileName: string): void { + const metaFilePath = path.resolve(config.paths.source.meta, fileName); + try { + fs.statSync(metaFilePath); + } catch (err) { + //not a file, so spawn it from the included file + const metaFileContent = fs.readFileSync(path.resolve(__dirname, '..', '..', '_meta/', fileName), 'utf8'); + fs.outputFileSync(metaFilePath, metaFileContent); + } + } + + spawnMeta(config: PatternLabConfig): void { + this.spawnFile(config, '_head.twig'); + this.spawnFile(config, '_foot.twig'); + } + + usePatternLabConfig(config: PatternLabConfig): void { + this.patternLabConfig = config; + this.metaPath = path.resolve(config.paths.source.meta); + // Global paths + fileSystemLoader.addPath(config.paths.source.meta); + fileSystemLoader.addPath(config.paths.source.patterns); + + const engineConfig: PatternEngineConfigTwig | undefined = config.engines?.[ + 'twig' + ] as PatternEngineConfigTwig; + + // Namespaced paths + if (engineConfig?.namespaces) { + const namespaces = engineConfig.namespaces; + Object.keys(namespaces).forEach((key) => { + fileSystemLoader.addPath(namespaces[key], key); + }); + } + + // add twing extensions + if (engineConfig?.loadExtensionsFile) { + const extensionsFile = path.resolve('./', engineConfig.loadExtensionsFile); + if (fs.pathExistsSync(extensionsFile)) { + try { + const extensionsMap = require(extensionsFile); + this.engine.addExtensions(extensionsMap); + } catch (e) { + console.error(e); + } + } + } + } +} diff --git a/packages/engine-twig/src/lib/twing-loader.ts b/packages/engine-twig/src/lib/twing-loader.ts new file mode 100644 index 000000000..f9ba1c4d7 --- /dev/null +++ b/packages/engine-twig/src/lib/twing-loader.ts @@ -0,0 +1,34 @@ +import { Pattern } from '@pattern-lab/types'; +import { TwingLoaderInterface, TwingSource } from 'twing'; + +export class TwingLoaderPatternLab implements TwingLoaderInterface { + patterns = new Map<string, Pattern>(); + + registerPartial(pattern: Pattern): void { + if (pattern.patternPartial) { + this.patterns.set(pattern.patternPartial, pattern); + } + } + + getSourceContext(name: string, _from: TwingSource): Promise<TwingSource> { + const { extendedTemplate, relPath } = this.patterns.get(name) || { extendedTemplate: '' }; + return Promise.resolve(new TwingSource(extendedTemplate, name, relPath)); + } + + getCacheKey(name: string, _from: TwingSource): Promise<string> { + return Promise.resolve(name); + } + + isFresh(name: string, _time: number, _from: TwingSource): Promise<boolean> { + return Promise.resolve(this.patterns.has(name) ? true : false); + } + + exists(name: string, _from: TwingSource): Promise<boolean> { + return Promise.resolve(this.patterns.has(name) ? true : false); + } + + resolve(name: string, _from: TwingSource, _shouldThrow?: boolean): Promise<string> { + const { relPath } = this.patterns.get(name) || { relPath: '' }; + return Promise.resolve(relPath); + } +} diff --git a/packages/engine-twig/tsconfig.json b/packages/engine-twig/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/engine-twig/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/engine-twig/tsconfig.lib.json b/packages/engine-twig/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/engine-twig/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/engine-twig/tsconfig.spec.json b/packages/engine-twig/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/engine-twig/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/engine-underscore/.eslintrc.json b/packages/engine-underscore/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/engine-underscore/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/engine-underscore/.gitignore b/packages/engine-underscore/.gitignore deleted file mode 100644 index 74ab03195..000000000 --- a/packages/engine-underscore/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -node_modules/ -.DS_Store -latest-change.txt -patternlab.json -.sass-cache/* -/sass-cache -Thumbs.db -source/css/style.css.map -.idea/ -public diff --git a/packages/engine-underscore/.npmrc b/packages/engine-underscore/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/engine-underscore/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/engine-underscore/.nvmrc b/packages/engine-underscore/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/engine-underscore/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/engine-underscore/jest.config.ts b/packages/engine-underscore/jest.config.ts new file mode 100644 index 000000000..16eb4b865 --- /dev/null +++ b/packages/engine-underscore/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'engine-underscore', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/engine-underscore', +}; diff --git a/packages/engine-underscore/lib/engine_underscore.js b/packages/engine-underscore/lib/engine_underscore.js deleted file mode 100644 index 86b34c307..000000000 --- a/packages/engine-underscore/lib/engine_underscore.js +++ /dev/null @@ -1,224 +0,0 @@ -'use strict'; - -/* - * underscore pattern engine for patternlab-node - v0.15.1 - 2015 - * - * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. - * Licensed under the MIT license. - * - * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. - * - */ - -/* - * ENGINE SUPPORT LEVEL: - * - * Basic. We can't call partials from inside underscore templates yet, but we - * can render templates with backing JSON. - * - */ - -const fs = require('fs-extra'); -const path = require('path'); - -const _ = require('underscore'); - -const partialRegistry = {}; -const errorStyling = ` -<style> - .plError { - background: linear-gradient(to bottom, #f1f1f1 0%,#ffffff 60%); - color: #444; - padding: 30px; - } - .plError h1 { - font-size: 16pt; - color: #733; - background: #fcfcfc; - border-bottom: 1px solid rgba(0, 0, 0, 0.05); - padding: 17px 30px; - margin: -30px -30px 0 -30px; - } - .plError dt { font-weight: bold; } -</style> -`; - -// extend underscore with partial-ing methods and other necessary tooling -// HANDLESCORE! UNDERBARS! - -function addParentContext(data, currentContext) { - return Object.assign({}, currentContext, data); -} - -_.mixin({ - renderNamedPartial: function (partialKey, data, currentContext) { - const compiledPartial = partialRegistry[partialKey]; - if (typeof compiledPartial !== 'function') { - throw `Pattern ${partialKey} not found.`; - } - - return _.renderPartial(compiledPartial, data, currentContext); - }, - renderPartial: function (compiledPartial, dataIn, currentContext) { - let data = dataIn || {}; - - if ( - dataIn && - currentContext && - dataIn instanceof Object && - currentContext instanceof Object - ) { - data = addParentContext(data, currentContext); - } - - return compiledPartial(data); - }, - /* eslint-disable no-eval, no-unused-vars */ - getPath: function (pathString, currentContext, debug) { - try { - const result = eval('currentContext.' + pathString); - if (debug) { - console.log('getPath result = ', result); - } - return result; - } catch (e) { - return null; - } - }, -}); - -const engine_underscore = { - engine: _, - engineName: 'underscore', - engineFileExtension: ['.html', '.underscore'], - - // partial expansion is only necessary for Mustache templates that have - // style modifiers or pattern parameters (I think) - expandPartials: false, - - // regexes, stored here so they're only compiled once - findPartialsRE: - /<%=\s*_\.renderNamedPartial[ \t]*\(\s*("(?:[^"].*?)"|'(?:[^'].*?)').*?%>/g, // TODO - findListItemsRE: - /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g, - - // render it - renderPattern: function renderPattern(pattern, data, partials) { - let renderedHTML; - let compiled; - - try { - compiled = partialRegistry[pattern.patternPartial]; - } catch (e) { - console.log( - `Error looking up underscore template ${pattern.patternName}:`, - pattern.extendedTemplate, - e - ); - } - - // This try-catch is necessary because references to undefined variables - // in underscore templates are eval()ed directly as javascript, and as - // such will throw very real exceptions that will shatter the whole build - // process if we don't handle them. - try { - renderedHTML = compiled( - _.extend(data || {}, { - _allData: data, - _partials: partials, - }) - ); - } catch (e) { - const errorMessage = `Error rendering underscore pattern "${ - pattern.patternName - }" (${pattern.relPath}): [${e.toString()}]`; - console.log(errorMessage); - renderedHTML = `${errorStyling} <div class="plError"> -<h1>Error rendering underscore pattern "${pattern.patternName}"</h1> -<dl> - <dt>Message</dt><dd>${e.toString()}</dd> - <dt>Partial name</dt><dd>${pattern.patternName}</dd> - <dt>Template path</dt><dd>${pattern.relPath}</dd> -</dl> -</div> -`; - } - - return renderedHTML; - }, - - registerPartial: function (pattern) { - let compiled; - - try { - const templateString = pattern.extendedTemplate || pattern.template; - compiled = _.template(templateString); - } catch (e) { - console.log( - `Error compiling underscore template ${pattern.patternName}:`, - pattern.extendedTemplate, - e - ); - } - partialRegistry[pattern.patternPartial] = compiled; - }, - - // find and return any {{> template-name }} within pattern - findPartials: function findPartials(pattern) { - const matches = pattern.template.match(this.findPartialsRE); - return matches; - }, - - // returns any patterns that match {{> value(foo:"bar") }} or {{> - // value:mod(foo:"bar") }} within the pattern - findPartialsWithPatternParameters: function () { - return []; - }, - findListItems: function (pattern) { - const matches = pattern.template.match(this.findListItemsRE); - return matches; - }, - - // given a pattern, and a partial string, tease out the "pattern key" and - // return it. - findPartial: function (partialString) { - const edgeQuotesMatcher = /^["']|["']$/g; - const partialIDWithQuotes = partialString.replace( - this.findPartialsRE, - '$1' - ); - const partialID = partialIDWithQuotes.replace(edgeQuotesMatcher, ''); - - return partialID; - }, - - spawnFile: function (config, fileName) { - const paths = config.paths; - const metaFilePath = path.resolve(paths.source.meta, fileName); - try { - fs.statSync(metaFilePath); - } catch (err) { - //not a file, so spawn it from the included file - const localMetaFilePath = path.resolve(__dirname, '_meta/', fileName); - const metaFileContent = fs.readFileSync( - path.resolve(__dirname, '..', '_meta/', fileName), - 'utf8' - ); - fs.outputFileSync(metaFilePath, metaFileContent); - } - }, - - /** - * Checks to see if the _meta directory has engine-specific head and foot files, - * spawning them if not found. - * - * @param {object} config - the global config object from core, since we won't - * assume it's already present - */ - spawnMeta: function (config) { - this.spawnFile(config, '_head.html'); - this.spawnFile(config, '_foot.html'); - }, -}; - -module.exports = engine_underscore; diff --git a/packages/engine-underscore/package.json b/packages/engine-underscore/package.json index d51200b31..bda8036bf 100644 --- a/packages/engine-underscore/package.json +++ b/packages/engine-underscore/package.json @@ -2,10 +2,6 @@ "name": "@pattern-lab/engine-underscore", "description": "The Underscore engine for Pattern Lab / Node", "version": "6.0.0", - "main": "lib/engine_underscore.js", - "dependencies": { - "underscore": "1.13.0" - }, "keywords": [ "Pattern Lab", "Atomic Web Design", @@ -19,14 +15,8 @@ "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "author": "Brian Muenzenmeyer & Geoffrey Pursell", "license": "MIT", - "scripts": { - "lint": "eslint **/*.js" - }, "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/engine-underscore/project.json b/packages/engine-underscore/project.json new file mode 100644 index 000000000..cc89120dc --- /dev/null +++ b/packages/engine-underscore/project.json @@ -0,0 +1,58 @@ +{ + "name": "engine-underscore", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/engine-underscore/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/engine-underscore", + "main": "packages/engine-underscore/src/index.ts", + "tsConfig": "packages/engine-underscore/tsconfig.lib.json", + "assets": [ + "packages/engine-underscore/*.md", + "packages/engine-underscore/LICENSE", + "packages/engine-underscore/_meta/*" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs engine-underscore {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/engine-underscore/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/engine-underscore/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/engine-underscore/src/index.ts b/packages/engine-underscore/src/index.ts new file mode 100644 index 000000000..2a063b95c --- /dev/null +++ b/packages/engine-underscore/src/index.ts @@ -0,0 +1,2 @@ +import { EngineUnderscore } from './lib/engine-underscore'; +export default EngineUnderscore; diff --git a/packages/engine-underscore/src/lib/engine-underscore.spec.ts b/packages/engine-underscore/src/lib/engine-underscore.spec.ts new file mode 100644 index 000000000..7804a0c40 --- /dev/null +++ b/packages/engine-underscore/src/lib/engine-underscore.spec.ts @@ -0,0 +1,79 @@ +import { Pattern, PatternLabConfig } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import { EngineUnderscore } from './engine-underscore'; + +describe('EngineUnderscore', () => { + let engine: EngineUnderscore; + + beforeEach(() => { + engine = new EngineUnderscore(); + }); + + describe('renderPattern()', () => { + it('should register the pattern as a partial', () => { + const pattern = { + template: '<h1><%= title %></h1>', + patternPartial: 'test', + verbosePartial: 'test-verbose', + } as Pattern; + + engine.registerPartial(pattern); + + const data = { title: 'Hello, world!' }; + + const result = engine.renderPattern(pattern, data); + expect(result).resolves.toBe('<h1>Hello, world!</h1>'); + }); + }); + + describe('findPartials()', () => { + it('should find all partials in the pattern template', () => { + const pattern = { + template: "<h1><%= _.renderNamedPartial('header') %></h1><p><%=_.renderNamedPartial('body')%></p>", + patternPartial: 'test', + } as Pattern; + const result = engine.findPartials(pattern); + expect(result).toEqual(["<%= _.renderNamedPartial('header') %>", "<%=_.renderNamedPartial('body')%>"]); + }); + }); + + describe('findListItems()', () => { + it('should find all list items in the pattern template', () => { + const pattern = { + template: '{{#listItems.one}}{{label}}{{/listItems.one}}{{#listItems.two}}{{label}}{{/listItems.two}}', + patternPartial: 'test', + } as Pattern; + const result = engine.findListItems(pattern); + expect(result).toEqual(['{{#listItems.one}}', '{{#listItems.two}}']); + }); + }); + + describe('findPartial()', () => { + it('should extract the partial name from a partial string', () => { + const result = engine.findPartial("_.renderNamedPartial('header')"); + expect(result).toBe("_.renderNamedPartial('header')"); + }); + }); + + describe('spawnMeta()', () => { + const normalizedExpect = (pathStr: string): string => expect.stringContaining(path.normalize(pathStr)); + + it('should spawn the meta pattern data', () => { + const readSpy = jest.spyOn(fs, 'readFileSync').mockReturnValue('File Content'); + const outputSpy = jest.spyOn(fs, 'outputFileSync').mockImplementation(jest.fn); + + const config = { + paths: { source: { meta: 'source/_meta' } }, + } as PatternLabConfig; + + engine.spawnMeta(config); + + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-underscore/_meta/_head.html'), 'utf8'); + expect(readSpy).toHaveBeenCalledWith(normalizedExpect('engine-underscore/_meta/_foot.html'), 'utf8'); + + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_head.html'), 'File Content'); + expect(outputSpy).toHaveBeenCalledWith(normalizedExpect('source/_meta/_foot.html'), 'File Content'); + }); + }); +}); diff --git a/packages/engine-underscore/src/lib/engine-underscore.ts b/packages/engine-underscore/src/lib/engine-underscore.ts new file mode 100644 index 000000000..a11869451 --- /dev/null +++ b/packages/engine-underscore/src/lib/engine-underscore.ts @@ -0,0 +1,184 @@ +/* + * underscore pattern engine for patternlab-node - v0.15.1 - 2015 + * + * Geoffrey Pursell, Brian Muenzenmeyer, and the web community. + * Licensed under the MIT license. + * + * Many thanks to Brad Frost and Dave Olsen for inspiration, encouragement, and advice. + * + * ENGINE SUPPORT LEVEL: + * + * Basic. We can't call partials from inside underscore templates yet, but we + * can render templates with backing JSON. + * + */ + +import { Pattern, PatternData, PatternLabConfig, PatternLabEngine } from '@pattern-lab/types'; +import fs from 'fs-extra'; +import path from 'path'; +import _, { CompiledTemplate } from 'underscore'; + +const partialRegistry: Record<string, CompiledTemplate> = {}; + +const errorStyling = ` +<style> + .plError { + background: linear-gradient(to bottom, #f1f1f1 0%,#ffffff 60%); + color: #444; + padding: 30px; + } + .plError h1 { + font-size: 16pt; + color: #733; + background: #fcfcfc; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + padding: 17px 30px; + margin: -30px -30px 0 -30px; + } + .plError dt { font-weight: bold; } +</style> +`; + +// extend underscore with partial-ing methods and other necessary tooling +// HANDLESCORE! UNDERBARS! + +const addParentContext = (data: unknown, currentContext: unknown): unknown => { + return Object.assign({}, currentContext, data); +}; + +_.mixin({ + renderPartial: (compiledPartial: CompiledTemplate, dataIn: unknown, currentContext: unknown) => { + let data: unknown = dataIn || {}; + + if (dataIn && currentContext && dataIn instanceof Object && currentContext instanceof Object) { + data = addParentContext(data, currentContext); + } + + return compiledPartial(data); + }, + + renderNamedPartial: (partialKey: string, data: unknown, currentContext: string) => { + const compiledPartial = partialRegistry[partialKey]; + if (typeof compiledPartial !== 'function') { + throw `Pattern ${partialKey} not found.`; + } + + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore - registered via mixin + return _.renderPartial(compiledPartial, data, currentContext); + }, + + getPath: (pathString: string, _currentContext: string, debug: boolean) => { + try { + const result = eval('currentContext.' + pathString); + if (debug) { + console.log('getPath result = ', result); + } + return result; + } catch (e) { + return null; + } + }, +}); + +export class EngineUnderscore implements PatternLabEngine { + engine = _; + engineName = 'underscore'; + engineFileExtension = ['.html', '.underscore']; + + expandPartials = false; + + // regexes, stored here so they're only compiled once + findPartialsRE = /<%=\s*_\.renderNamedPartial[ \t]*\(\s*("(?:[^"].*?)"|'(?:[^'].*?)').*?%>/g; // TODO + findListItemsRE = + /({{#( )?)(list(I|i)tems.)(one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|sixteen|seventeen|eighteen|nineteen|twenty)( )?}}/g; + + renderPattern(pattern: Pattern, data: PatternData): Promise<string> { + let renderedHTML: string; + let compiled: CompiledTemplate | null = null; + + try { + compiled = partialRegistry[pattern.patternPartial]; + } catch (e) { + console.log(`Error looking up underscore template ${pattern.patternName}:`, pattern.extendedTemplate, e); + } + + // This try-catch is necessary because references to undefined variables + // in underscore templates are eval()ed directly as javascript, and as + // such will throw very real exceptions that will shatter the whole build + // process if we don't handle them. + try { + if (compiled) { + renderedHTML = compiled(_.extend(data || {}, { _allData: data })); + } else { + renderedHTML = this.renderError(pattern, new Error()); + } + } catch (e: unknown) { + renderedHTML = this.renderError(pattern, e as Error); + } + + return Promise.resolve(renderedHTML); + } + + private renderError(pattern: Pattern, error: Error): string { + const errorMessage = `Error rendering underscore pattern "${pattern.patternName}" (${ + pattern.relPath + }): [${error.toString()}]`; + console.log(errorMessage); + return `${errorStyling} <div class="plError"> + <h1>Error rendering underscore pattern "${pattern.patternName}"</h1> + <dl> + <dt>Message</dt><dd>${error.toString()}</dd> + <dt>Partial name</dt><dd>${pattern.patternName}</dd> + <dt>Template path</dt><dd>${pattern.relPath}</dd> + </dl> + </div>`; + } + + registerPartial(pattern: Pattern): void { + try { + partialRegistry[pattern.patternPartial] = _.template(pattern.extendedTemplate || pattern.template); + } catch (e) { + console.log(`Error compiling underscore template ${pattern.patternName}:`, pattern.extendedTemplate, e); + } + } + + findPartials(pattern: Pattern): RegExpMatchArray | null { + return pattern.template.match(this.findPartialsRE); + } + + findPartialsWithPatternParameters(_pattern: Pattern): RegExpMatchArray | null { + return null; + } + + findListItems(pattern: Pattern): RegExpMatchArray | null { + return pattern.template.match(this.findListItemsRE); + } + + findPartial(partialString: string): string { + const edgeQuotesMatcher = /^["']|["']$/g; + const partialIDWithQuotes = partialString.replace(this.findPartialsRE, '$1'); + return partialIDWithQuotes.replace(edgeQuotesMatcher, ''); + } + + private spawnFile(config: PatternLabConfig, fileName: string): void { + const paths = config.paths; + const metaFilePath = path.resolve(paths.source.meta, fileName); + try { + fs.statSync(metaFilePath); + } catch (err) { + //not a file, so spawn it from the included file + const metaFileContent = fs.readFileSync(path.resolve(__dirname, '..', '..', '_meta/', fileName), 'utf8'); + fs.outputFileSync(metaFilePath, metaFileContent); + } + } + + spawnMeta(config: PatternLabConfig): void { + this.spawnFile(config, '_head.html'); + this.spawnFile(config, '_foot.html'); + } + + usePatternLabConfig(_config: PatternLabConfig): void { + // no-op + } +} diff --git a/packages/engine-underscore/tsconfig.json b/packages/engine-underscore/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/engine-underscore/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/engine-underscore/tsconfig.lib.json b/packages/engine-underscore/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/engine-underscore/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/engine-underscore/tsconfig.spec.json b/packages/engine-underscore/tsconfig.spec.json new file mode 100644 index 000000000..9b2a121d1 --- /dev/null +++ b/packages/engine-underscore/tsconfig.spec.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/packages/live-server/.eslintrc.json b/packages/live-server/.eslintrc.json new file mode 100644 index 000000000..3456be9b9 --- /dev/null +++ b/packages/live-server/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/live-server/.gitignore b/packages/live-server/.gitignore deleted file mode 100644 index 3c3629e64..000000000 --- a/packages/live-server/.gitignore +++ /dev/null @@ -1 +0,0 @@ -node_modules diff --git a/packages/live-server/.npmrc b/packages/live-server/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/live-server/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/live-server/.nvmrc b/packages/live-server/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/live-server/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/live-server/CHANGELOG.md b/packages/live-server/CHANGELOG.md index a647077a8..066f5be5d 100644 --- a/packages/live-server/CHANGELOG.md +++ b/packages/live-server/CHANGELOG.md @@ -1,7 +1,40 @@ -# Change Log +# Changelog -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver). + +## 0.1.0 (2023-02-11) + + +### Features + +* add nx workspace settings ([5bbee08](https://github.com/pattern-lab/patternlab-node/commit/5bbee082c4e0d2d8187fbd487827090baf010fbe)) +* add release feature ([7f731c4](https://github.com/pattern-lab/patternlab-node/commit/7f731c4b56e663b57d71c7776c0c5e6424c1575e)) +* **package:** add npmrc file ([55f5bc2](https://github.com/pattern-lab/patternlab-node/commit/55f5bc26d635805648caa2d35d1bf306fe4740d5)) +* **package:** pin all dependencies ([415698e](https://github.com/pattern-lab/patternlab-node/commit/415698eb9a70d477ffb7b2906e679ac8f2051c60)) +* **package:** remove package-lock.json files ([5ab3995](https://github.com/pattern-lab/patternlab-node/commit/5ab399599a1dbea8239fbd09a34d5f39ad762e21)) +* **package:** standardize and hoist common devDependencies ([7f4ce6f](https://github.com/pattern-lab/patternlab-node/commit/7f4ce6ff1238986bed906c27d2f4bf7329752d92)) +* **packages:** Update all package.json repo and bug links ([5eb2c11](https://github.com/pattern-lab/patternlab-node/commit/5eb2c1148d428170236907cbbc42ba05d046e408)) +* **tests:** use lerna run test at the monorepo level ([38a01b1](https://github.com/pattern-lab/patternlab-node/commit/38a01b148a5356e2f8b30182e0453f6746347d96)) +* update package structure ([43a4986](https://github.com/pattern-lab/patternlab-node/commit/43a4986af529d55bcbd7b9d458436937196e96fd)) +* update workspace settings ([39092c1](https://github.com/pattern-lab/patternlab-node/commit/39092c13ed91cfd2a6a51929d4bd612abc937038)) + + +### Bug Fixes + +* **config:** Add npm registry to lerna config ([1473cd5](https://github.com/pattern-lab/patternlab-node/commit/1473cd554c24b4c1baa4ee5ac59958f3499b9902)) +* **dependencies:** pin all packages marked as latest ([87347d5](https://github.com/pattern-lab/patternlab-node/commit/87347d5a9bf28be680f79e84e44863908e8f83e0)) +* **lint:** run code through prettier ([ca52fde](https://github.com/pattern-lab/patternlab-node/commit/ca52fded2a3cebe294aa0bfa2ea09d8694abd85e)), closes [#825](https://github.com/pattern-lab/patternlab-node/issues/825) +* **live-server:** testing ([#1331](https://github.com/pattern-lab/patternlab-node/issues/1331)) ([2b2e1b1](https://github.com/pattern-lab/patternlab-node/commit/2b2e1b1c2426ab578dc014ea99df520d17a7db92)) +* **package:** remove files obsoleted by monorepo ([9abb8ac](https://github.com/pattern-lab/patternlab-node/commit/9abb8ac472ca4921c81e2d8444435b4ffcc37d76)) +* **packages:** Allow scoped publishing ([58beeb6](https://github.com/pattern-lab/patternlab-node/commit/58beeb6ee8a111d0caa4e2da6af138d634dc5355)) +* **package:** update LICENSE ([337aa32](https://github.com/pattern-lab/patternlab-node/commit/337aa32a22eab42641c087b0909d6c3bf5525399)) +* **prettier:** Attempt to ignore package files ([e6c08bf](https://github.com/pattern-lab/patternlab-node/commit/e6c08bf0f3aa0afcef0a722789c82768f3fc038a)) +* **README:** update content for consistency ([4edf0d4](https://github.com/pattern-lab/patternlab-node/commit/4edf0d49b914276f66fddaaa7d1cfe815d47015e)), closes [#815](https://github.com/pattern-lab/patternlab-node/issues/815) + + +### Reverts + +* Revert "[skip travis] chore(release): publish v5.10.0" ([7496318](https://github.com/pattern-lab/patternlab-node/commit/7496318e083f667b6da914e21595c52442d62703)) # [6.0.0](https://github.com/pattern-lab/patternlab-node/compare/v5.17.0...v6.0.0) (2023-01-31) diff --git a/packages/live-server/jest.config.js b/packages/live-server/jest.config.js new file mode 100644 index 000000000..1706cf528 --- /dev/null +++ b/packages/live-server/jest.config.js @@ -0,0 +1,17 @@ +/* eslint-disable */ +module.exports = { + displayName: 'live-server', + preset: '../../jest.preset.js', + globals: {}, + testEnvironment: 'node', + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/live-server', +}; diff --git a/packages/live-server/live-server.js b/packages/live-server/live-server.js deleted file mode 100755 index af62a0883..000000000 --- a/packages/live-server/live-server.js +++ /dev/null @@ -1,154 +0,0 @@ -#!/usr/bin/env node -const path = require('path'); -const fs = require('fs'); -const assign = require('object-assign'); -const liveServer = require('./index'); - -const opts = { - host: process.env.IP, - port: process.env.PORT, - open: true, - mount: [], - proxy: [], - middleware: [], - logLevel: 2, -}; - -const homeDir = - process.env[process.platform === 'win32' ? 'USERPROFILE' : 'HOME']; -const configPath = path.join(homeDir, '.live-server.json'); -if (fs.existsSync(configPath)) { - const userConfig = fs.readFileSync(configPath, 'utf8'); - assign(opts, JSON.parse(userConfig)); - if (opts.ignorePattern) opts.ignorePattern = new RegExp(opts.ignorePattern); -} - -for (let i = process.argv.length - 1; i >= 2; --i) { - const arg = process.argv[i]; - if (arg.indexOf('--port=') > -1) { - const portString = arg.substring(7); - const portNumber = parseInt(portString, 10); - if (portNumber === +portString) { - opts.port = portNumber; - process.argv.splice(i, 1); - } - } else if (arg.indexOf('--host=') > -1) { - opts.host = arg.substring(7); - process.argv.splice(i, 1); - } else if (arg.indexOf('--open=') > -1) { - let open = arg.substring(7); - if (open.indexOf('/') !== 0) { - open = '/' + open; - } - switch (typeof opts.open) { - case 'boolean': - opts.open = open; - break; - case 'string': - opts.open = [opts.open, open]; - break; - case 'object': - opts.open.push(open); - break; - } - process.argv.splice(i, 1); - } else if (arg.indexOf('--watch=') > -1) { - // Will be modified later when cwd is known - opts.watch = arg.substring(8).split(','); - process.argv.splice(i, 1); - } else if (arg.indexOf('--ignore=') > -1) { - // Will be modified later when cwd is known - opts.ignore = arg.substring(9).split(','); - process.argv.splice(i, 1); - } else if (arg.indexOf('--ignorePattern=') > -1) { - opts.ignorePattern = new RegExp(arg.substring(16)); - process.argv.splice(i, 1); - } else if (arg === '--no-css-inject') { - opts.noCssInject = true; - process.argv.splice(i, 1); - } else if (arg === '--no-browser') { - opts.open = false; - process.argv.splice(i, 1); - } else if (arg.indexOf('--browser=') > -1) { - opts.browser = arg.substring(10).split(','); - process.argv.splice(i, 1); - } else if (arg.indexOf('--entry-file=') > -1) { - const file = arg.substring(13); - if (file.length) { - opts.file = file; - process.argv.splice(i, 1); - } - } else if (arg === '--spa') { - opts.middleware.push('spa'); - process.argv.splice(i, 1); - } else if (arg === '--quiet' || arg === '-q') { - opts.logLevel = 0; - process.argv.splice(i, 1); - } else if (arg === '--verbose' || arg === '-V') { - opts.logLevel = 3; - process.argv.splice(i, 1); - } else if (arg.indexOf('--mount=') > -1) { - // e.g. "--mount=/components:./node_modules" will be ['/components', '<process.cwd()>/node_modules'] - // split only on the first ":", as the path may contain ":" as well (e.g. C:\file.txt) - const match = arg.substring(8).match(/([^:]+):(.+)$/); - match[2] = path.resolve(process.cwd(), match[2]); - opts.mount.push([match[1], match[2]]); - process.argv.splice(i, 1); - } else if (arg.indexOf('--wait=') > -1) { - const waitString = arg.substring(7); - const waitNumber = parseInt(waitString, 10); - if (waitNumber === +waitString) { - opts.wait = waitNumber; - process.argv.splice(i, 1); - } - } else if (arg === '--version' || arg === '-v') { - const packageJson = require('./package.json'); - console.log(packageJson.name, packageJson.version); - process.exit(); - } else if (arg.indexOf('--htpasswd=') > -1) { - opts.htpasswd = arg.substring(11); - process.argv.splice(i, 1); - } else if (arg === '--cors') { - opts.cors = true; - process.argv.splice(i, 1); - } else if (arg.indexOf('--https=') > -1) { - opts.https = arg.substring(8); - process.argv.splice(i, 1); - } else if (arg.indexOf('--https-module=') > -1) { - opts.httpsModule = arg.substring(15); - process.argv.splice(i, 1); - } else if (arg.indexOf('--proxy=') > -1) { - // split only on the first ":", as the URL will contain ":" as well - const match = arg.substring(8).match(/([^:]+):(.+)$/); - opts.proxy.push([match[1], match[2]]); - process.argv.splice(i, 1); - } else if (arg.indexOf('--middleware=') > -1) { - opts.middleware.push(arg.substring(13)); - process.argv.splice(i, 1); - } else if (arg === '--help' || arg === '-h') { - console.log( - 'Usage: live-server [-v|--version] [-h|--help] [-q|--quiet] [--port=PORT] [--host=HOST] [--open=PATH] [--no-browser] [--browser=BROWSER] [--ignore=PATH] [--ignorePattern=RGXP] [--no-css-inject] [--entry-file=PATH] [--spa] [--mount=ROUTE:PATH] [--wait=MILLISECONDS] [--htpasswd=PATH] [--cors] [--https=PATH] [--https-module=MODULE_NAME] [--proxy=PATH] [PATH]' - ); - process.exit(); - } else if (arg === '--test') { - // Hidden param for tests to exit automatically - setTimeout(liveServer.shutdown, 500); - process.argv.splice(i, 1); - } -} - -// Patch paths -const dir = (opts.root = process.argv[2] || ''); - -if (opts.watch) { - opts.watch = opts.watch.map(function (relativePath) { - return path.join(dir, relativePath); - }); -} -if (opts.ignore) { - opts.ignore = opts.ignore.map(function (relativePath) { - return path.join(dir, relativePath); - }); -} - -liveServer.start(opts); diff --git a/packages/live-server/package.json b/packages/live-server/package.json index 7df693208..4a8a60183 100644 --- a/packages/live-server/package.json +++ b/packages/live-server/package.json @@ -11,59 +11,12 @@ "cli" ], "author": "Tapio Vierros", - "dependencies": { - "chokidar": "3.5.1", - "colors": "1.4.0", - "connect": "3.7.0", - "cors": "2.8.5", - "event-stream": "3.3.4", - "faye-websocket": "0.11.x", - "http-auth": "4.1.x", - "http-auth-connect": "^1.0.5", - "morgan": "1.10.0", - "object-assign": "4.1.1", - "open": "8.0.9", - "proxy-middleware": "0.15.0", - "send": "0.18.0", - "serve-index": "1.9.1" - }, - "devDependencies": { - "eslint": "4.18.2", - "jshint": "2.12.0", - "mocha": "4.0.1", - "supertest": "3.0.0" - }, - "scripts": { - "lint": "eslint live-server.js index.js", - "hint": "jshint live-server.js index.js", - "test:separate": "mocha test --exit && npm run lint" - }, - "bin": { - "live-server": "./live-server.js" - }, "repository": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/live-server", "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "engines": { "node": ">=14.21.1" }, - "publishConfig": { - "access": "public" - }, "preferGlobal": true, "license": "MIT", - "eslintConfig": { - "env": { - "node": true - }, - "rules": { - "quotes": 0, - "curly": 0, - "strict": 0, - "no-process-exit": 0, - "eqeqeq": 1, - "no-unused-vars": 1, - "no-shadow": 1 - } - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/live-server/project.json b/packages/live-server/project.json new file mode 100644 index 000000000..0de127e41 --- /dev/null +++ b/packages/live-server/project.json @@ -0,0 +1,59 @@ +{ + "name": "live-server", + "$schema": "../../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/live-server/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/live-server", + "main": "packages/live-server/src/index.js", + "tsConfig": "packages/live-server/tsconfig.lib.json", + "assets": [ + "packages/live-server/*.md", + "packages/live-server/LICENSE", + "packages/live-server/middleware/**", + "packages/live-server/src/injected.html" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs live-server {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/live-server/**/*.js"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/live-server/jest.config.js", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/live-server/index.js b/packages/live-server/src/index.js similarity index 88% rename from packages/live-server/index.js rename to packages/live-server/src/index.js index 72c413530..3b4bcabc2 100644 --- a/packages/live-server/index.js +++ b/packages/live-server/src/index.js @@ -15,10 +15,7 @@ const chokidar = require('chokidar'); require('colors'); -const INJECTED_CODE = fs.readFileSync( - path.join(__dirname, 'injected.html'), - 'utf8' -); +const INJECTED_CODE = fs.readFileSync(path.join(__dirname, 'injected.html'), 'utf8'); const LiveServer = { server: null, @@ -48,10 +45,7 @@ function staticServer(root) { const reqpath = isFile ? '' : url.parse(req.url).pathname; const hasNoOrigin = !req.headers.origin; - const injectCandidates = [ - new RegExp('</body>', 'i'), - new RegExp('</head>', 'i'), - ]; + const injectCandidates = [new RegExp('</body>', 'i'), new RegExp('</head>', 'i')]; let injectTag = null; let injectCount = 0; @@ -65,14 +59,7 @@ function staticServer(root) { function file(filepath /*, stat*/) { const x = path.extname(filepath).toLocaleLowerCase(); - const possibleExtensions = [ - '', - '.html', - '.htm', - '.xhtml', - '.php', - '.svg', - ]; + const possibleExtensions = ['', '.html', '.htm', '.xhtml', '.php', '.svg']; let matches; if (hasNoOrigin && possibleExtensions.indexOf(x) > -1) { @@ -93,7 +80,7 @@ function staticServer(root) { "Couldn't find any of the tags ", injectCandidates, 'from', - filepath + filepath, ); } } @@ -107,17 +94,13 @@ function staticServer(root) { function inject(stream) { if (injectTag) { // We need to modify the length given to browser - const len = - INJECTED_CODE.length * injectCount + res.getHeader('Content-Length'); + const len = INJECTED_CODE.length * injectCount + res.getHeader('Content-Length'); res.setHeader('Content-Length', len); const originalPipe = stream.pipe; stream.pipe = function (resp) { originalPipe - .call( - stream, - es.replace(new RegExp(injectTag, 'i'), INJECTED_CODE + injectTag) - ) + .call(stream, es.replace(new RegExp(injectTag, 'i'), INJECTED_CODE + injectTag)) .pipe(resp); }; } @@ -172,8 +155,7 @@ LiveServer.start = function (options) { const port = options.port !== undefined ? options.port : 8080; // 0 means random const root = options.root || process.cwd(); const mount = options.mount || []; - const watchPaths = - options.watch || (options.assets ? [root, ...options.assets] : [root]); + const watchPaths = options.watch || (options.assets ? [root, ...options.assets] : [root]); LiveServer.logLevel = options.logLevel === undefined ? 2 : options.logLevel; let openPath = @@ -200,9 +182,7 @@ LiveServer.start = function (options) { try { require.resolve(httpsModule); } catch (e) { - console.error( - `HTTPS module "${httpsModule}" you've provided was not found.`.red - ); + console.error(`HTTPS module "${httpsModule}" you've provided was not found.`.red); console.error('Did you do', `"npm install ${httpsModule}"?`); return; } @@ -220,7 +200,7 @@ LiveServer.start = function (options) { skip: function (req, res) { return res.statusCode < 400; }, - }) + }), ); // Level 2 or above logs all requests } else if (LiveServer.logLevel > 2) { @@ -260,7 +240,7 @@ LiveServer.start = function (options) { require('cors')({ origin: true, // reflecting request origin credentials: true, // allowing requests with credentials - }) + }), ); } @@ -310,10 +290,7 @@ LiveServer.start = function (options) { // Handle server startup errors server.addListener('error', function (e) { if (e.code === 'EADDRINUSE') { - console.log( - '%s is already in use. Trying another port.'.yellow, - `${protocol}://${host}:${port}` - ); + console.log('%s is already in use. Trying another port.'.yellow, `${protocol}://${host}:${port}`); setTimeout(function () { server.listen(0, host); }, 1000); @@ -328,8 +305,7 @@ LiveServer.start = function (options) { LiveServer.server = server; const address = server.address(); - const serveHost = - address.address === '0.0.0.0' ? '127.0.0.1' : address.address; + const serveHost = address.address === '0.0.0.0' ? '127.0.0.1' : address.address; const openHost = host === '0.0.0.0' ? '127.0.0.1' : host; const serveURL = `${protocol}://${serveHost}:${address.port}`; @@ -342,9 +318,7 @@ LiveServer.start = function (options) { .map((iface) => ifaces[iface]) // flatten address data, use only IPv4 .reduce((data, addresses) => { - addresses - .filter((addr) => addr.family === 'IPv4') - .forEach((addr) => data.push(addr)); + addresses.filter((addr) => addr.family === 'IPv4').forEach((addr) => data.push(addr)); return data; }, []) .map((addr) => `${protocol}://${addr.address}:${address.port}`); @@ -356,14 +330,9 @@ LiveServer.start = function (options) { if (serveURLs.length === 1) { console.log('Serving "%s" at %s'.green, root, serveURLs[0]); } else { - console.log( - 'Serving "%s" at\n\t%s'.green, - root, - serveURLs.join('\n\t') - ); + console.log('Serving "%s" at\n\t%s'.green, root, serveURLs.join('\n\t')); } - else - console.log('Serving "%s" at %s (%s)'.green, root, openURL, serveURL); + else console.log('Serving "%s" at %s (%s)'.green, root, openURL, serveURL); } // Launch browser @@ -371,14 +340,12 @@ LiveServer.start = function (options) { if (typeof openPath === 'object') { openPath.forEach((p) => open(openURL + p, { app: { name: browser } }).catch(() => - console.log( - 'Warning: Could not open pattern lab in default browser.' - ) - ) + console.log('Warning: Could not open pattern lab in default browser.'), + ), ); } else { open(openURL + openPath, { app: { name: browser } }).catch(() => - console.log('Warning: Could not open pattern lab in default browser.') + console.log('Warning: Could not open pattern lab in default browser.'), ); } }); @@ -418,9 +385,7 @@ LiveServer.start = function (options) { let ignored = [ function (testPath) { // Always ignore dotfiles (important e.g. because editor hidden temp files) - return ( - testPath !== '.' && /(^[.#]|(?:__|~)$)/.test(path.basename(testPath)) - ); + return testPath !== '.' && /(^[.#]|(?:__|~)$)/.test(path.basename(testPath)); }, ]; @@ -441,7 +406,7 @@ LiveServer.start = function (options) { ignored: ignored, ignoreInitial: true, awaitWriteFinish: true, - } + }, ); function handleChange(changePath) { diff --git a/packages/live-server/injected.html b/packages/live-server/src/injected.html similarity index 100% rename from packages/live-server/injected.html rename to packages/live-server/src/injected.html diff --git a/packages/live-server/src/lib/live-server.js b/packages/live-server/src/lib/live-server.js new file mode 100644 index 000000000..2f2e2a291 --- /dev/null +++ b/packages/live-server/src/lib/live-server.js @@ -0,0 +1,3 @@ +export function liveServerLiveServer() { + return 'live-server'; +} diff --git a/packages/live-server/src/lib/live-server.spec.js b/packages/live-server/src/lib/live-server.spec.js new file mode 100644 index 000000000..15db50dcb --- /dev/null +++ b/packages/live-server/src/lib/live-server.spec.js @@ -0,0 +1,6 @@ +import { liveServerLiveServer } from './live-server'; +describe('liveServerLiveServer', () => { + it('should work', () => { + expect(liveServerLiveServer()).toEqual('live-server'); + }); +}); diff --git a/packages/live-server/test/acceptance.js b/packages/live-server/test/acceptance.js deleted file mode 100644 index 299a9e3f0..000000000 --- a/packages/live-server/test/acceptance.js +++ /dev/null @@ -1,58 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -var liveServer = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, -}); - -describe('basic functional tests', function () { - it('should respond with index.html', function (done) { - request(liveServer) - .get('/') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(/hello world/i) - .expect(200, done); - }); - it('should have injected script', function (done) { - request(liveServer) - .get('/') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(/<script [^]+?live reload enabled[^]+?<\/script>/i) - .expect(200, done); - }); - it('should inject script when tags are in CAPS', function (done) { - request(liveServer) - .get('/index-caps.htm') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(/<script [^]+?live reload enabled[^]+?<\/script>/i) - .expect(200, done); - }); - it('should inject to <head> when no <body>', function (done) { - request(liveServer) - .get('/index-head.html') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(/<script [^]+?live reload enabled[^]+?<\/script>/i) - .expect(200, done); - }); - it('should not inject script into svg files', function (done) { - request(liveServer) - .get('/test.svg') - .expect('Content-Type', 'image/svg+xml') - .expect(function (res) { - if (res.body.toString().indexOf('Live reload enabled') !== -1) - throw new Error('injected script code found'); - }) - .expect(200, done); - }); - it('should not inject html fragments', function (done) { - request(liveServer) - .get('/fragment.html') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(function (res) { - if (res.text.toString().indexOf('Live reload enabled') > -1) - throw new Error('injected code should not be found'); - }) - .expect(200, done); - }); -}); diff --git a/packages/live-server/test/cli.js b/packages/live-server/test/cli.js deleted file mode 100644 index adc0a4c7d..000000000 --- a/packages/live-server/test/cli.js +++ /dev/null @@ -1,94 +0,0 @@ -var assert = require('assert'); -var path = require('path'); -var exec = require('child_process').execFile; -var cmd = path.join(__dirname, '..', 'live-server.js'); -var opts = { - timeout: 2000, - maxBuffer: 1024, -}; -function exec_test(args, callback) { - if (process.platform === 'win32') - exec(process.execPath, [cmd].concat(args), opts, callback); - else exec(cmd, args, opts, callback); -} - -describe('command line usage', function () { - it('--version', function (done) { - exec_test(['--version'], function (error, stdout, stdin) { - assert(!error, error); - assert( - stdout.indexOf('@pattern-lab/live-server') == 0, - 'version not found' - ); - done(); - }); - }); - it('--help', function (done) { - exec_test(['--help'], function (error, stdout, stdin) { - assert(!error, error); - assert(stdout.indexOf('Usage: live-server') == 0, 'usage not found'); - done(); - }); - }); - it('--quiet', function (done) { - exec_test( - ['--quiet', '--no-browser', '--test'], - function (error, stdout, stdin) { - assert(!error, error); - assert(stdout === '', 'stdout not empty'); - done(); - } - ); - }); - it('--port', function (done) { - exec_test( - ['--port=16123', '--no-browser', '--test'], - function (error, stdout, stdin) { - assert(!error, error); - assert( - !Boolean(stdout.indexOf('Serving') == 0), - 'serving string not found' - ); - assert( - stdout.indexOf('at http://127.0.0.1:16123') != -1, - 'port string not found' - ); - done(); - } - ); - }); - it('--host', function (done) { - exec_test( - ['--host=localhost', '--no-browser', '--test'], - function (error, stdout, stdin) { - assert(!error, error); - assert( - !Boolean(stdout.indexOf('Serving') == 0), - 'serving string not found' - ); - assert( - stdout.indexOf('at http://localhost:') != -1, - 'host string not found' - ); - done(); - } - ); - }); - it('--htpasswd', function (done) { - exec_test( - [ - '--htpasswd=' + path.join(__dirname, 'data/htpasswd-test'), - '--no-browser', - '--test', - ], - function (error, stdout, stdin) { - assert(!error, error); - assert( - !Boolean(stdout.indexOf('Serving') == 0), - 'serving string not found' - ); - done(); - } - ); - }); -}); diff --git a/packages/live-server/test/conf/https.conf.js b/packages/live-server/test/conf/https.conf.js deleted file mode 100644 index 16ff03c60..000000000 --- a/packages/live-server/test/conf/https.conf.js +++ /dev/null @@ -1,7 +0,0 @@ -var fs = require('fs'); - -module.exports = { - cert: fs.readFileSync(__dirname + '/server.cert'), - key: fs.readFileSync(__dirname + '/server.key'), - passphrase: '12345', -}; diff --git a/packages/live-server/test/conf/server.cert b/packages/live-server/test/conf/server.cert deleted file mode 100644 index 4b5d9932f..000000000 --- a/packages/live-server/test/conf/server.cert +++ /dev/null @@ -1,21 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDbzCCAlegAwIBAgIJAITs++EKEa1pMA0GCSqGSIb3DQEBCwUAME4xCzAJBgNV -BAYTAlVTMQ0wCwYDVQQIDAR0ZXN0MQ0wCwYDVQQHDAR0ZXN0MSEwHwYDVQQKDBhJ -bnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwHhcNMTYwNDIzMDgwMDM0WhcNMTYwNTIz -MDgwMDM0WjBOMQswCQYDVQQGEwJVUzENMAsGA1UECAwEdGVzdDENMAsGA1UEBwwE -dGVzdDEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkq -hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnq4nI7HM0JITcpDrBPGBXl6ieVmsboKv -rTDJpLkDj+0kdDYMcdUhBuu4rpuUHnIZMHwPAYPx/uc5jr0OksAUqOmWXdZAgWUb -f7jBzaEQZb1CY8bbv/E/LlRSojPCJZYlQqcS3McGoSV01hPGMVNV3L3rVZGOKIdm -kpjbu/JppCLWpfA7OT/kUAjMnGSgOLMVpc76mUNeDG9ObhArrXImTjvUXntmUFbZ -W9mxgnRCJRK/ttWQp/KSlVJUxtXGCf1u+U9m5tl+/4LqRIfdTvy4NBxg/su3cdgq -Q/McAarhkgc1F141n7T9q7N8/nc2XsYWdMqLAn7NxIEJSUOmS8At/wIDAQABo1Aw -TjAdBgNVHQ4EFgQU+YZux6UXl7e9+rabdFH19GpcaNwwHwYDVR0jBBgwFoAU+YZu -x6UXl7e9+rabdFH19GpcaNwwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOC -AQEAQFL7tjp6NQjyoAmuaDyp7PXXVsGNKsN6zmGvdVrF9MVWhKnit0ByO/ytPxVX -ll+7RuKZqrhqm9HA1pStWbBI4P/mcYBqOyafb610DmGukM/++rdIBRQ9acGnIU0M -eg5finMBS4Rc2kmSz5tyHX+taX7J68Y3DUvBCC6VEb6ox+qJsQVVDEadeHjAr8wN -0SJK8/nKQBm7Tk0fEdBfUyyLdOz77i0+tmsJ8PIvPxYF1EVsgBDSz+6DS+Fjmps8 -4/wfMM+ai+zBwf9H3bIu5XsHwbTEbLnYpFklwVeHM0sxEk/ZlSEMA9mtXBXaQOWd -yIo6uIKHbMrjbUmj3p65MFhaGQ== ------END CERTIFICATE----- diff --git a/packages/live-server/test/conf/server.key b/packages/live-server/test/conf/server.key deleted file mode 100644 index 8dbdc54aa..000000000 --- a/packages/live-server/test/conf/server.key +++ /dev/null @@ -1,30 +0,0 @@ ------BEGIN ENCRYPTED PRIVATE KEY----- -MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIHqsvOM36+5UCAggA -MBQGCCqGSIb3DQMHBAgWDDD0SuRyYQSCBMifpjUCkt5NQYPATyi337ouCzeGt/Lw -jhgIUq8UelCGoQFz9omzOfm8XQmkhcwDRl1PX50HTdPeeRuEGs00/6ZjigakHQ+/ -CIFhEo9WzjsrZZbUU+wMF1o5eelEmo3bIjUb55VNi60c0Mb8KUE8jnNlZmbcQEjL -wGpqph5moE/EFUmBTIza78XH51BpiSRo2/1mICAbR8k613mQc6eRaTJroleYulnE -+7wEVRTdW9dzt5oWcdK23g+1ayg00Rg9CRDQS85BvyrcSCBvp5HirV3VQWgdgPY/ -9AFEogE1uyODp6yHW0RWoj0ycpafJVsQvGkI4tOu+gy38LI2gr4gA2fUEpcyZXiw -eTfQzlSKbsL9Dr1xHFe1o4S/NyFYKW/FJFUkJaskpHTkYBTWeqfqQnOVBv70juyQ -fGKnKaEX+AZj0Huj0bda1Uui8qnkkL3JkZ+AxhlXFkolVuUccIinTvwr3BuxpcBH -6T1hSpnjBf/QAMg5vO165k5dE6JOJb3zQ9byK2md6VDUpwHbubtEa4FdLxOa/6q1 -SB/UABnPpyN2c0a1/UxF/PDDe6+Fb2rIIBYx5tB7dATFr6ZhFDh7c77jzZ80g06Z -lOYhV2nB8IT1/mTkq8Apxkw2/aB6W0FIPxTNIGfUsA2be6AFb0a0TiM9XqzTpTNL -6CufCeNUnplf8rbwMsaDU3V3hnPwlStkdLl+7+ipY9FOA7kbTQdBJX8/GWgByZKw -U9AKAGXcNfHKaCpOT83q1XaYQ8Vj1tlC/wSXA8/3ZvX7kRZr5K+iLxUV5UfSA1h0 -9C4UUx4rwliWITMFdCTGn1jZbokQo/HX2cF5C5Q2VFtuFz099MykmRgOgcZbFSAo -ioRWfuMyQvhuzEchr08n0WU1FQOrHc/jjHjCKQECQjHAcvHDUwr+Bcbym6n7jSIQ -8NySJcfPS/F5PxSlisuzJzwWJxx3Nqv/KWfMR0wJuKYLyn5P7a6wAg7BZmxmb4TH -0OmaIzeNuy0qMF774fESXTLrk3i9AffXAbIuHTKiYp+QKfIOjLZ4vTr3iZdaOLNw -SSdsLwBgPH8st1MWR+qnk4ry44DE72hW5/uELmfENq9IPc1vA4V88qCTXFNFlYvY -HBTmA7jiLTzyqAVgmXTv5fw7iQ3+1NLNBPNN45rFmWEQcQvqfvla7COxtREAWDh3 -1apQJ1A5DIZir5Y2QNFUGgcX8T7tWsE2cWEUqwTGwUQq4ovwkf53+nqnuRJ7In7S -YFTXy2fCDCjuB7GsgGPa4cNH4L1ru85+CQtVOW7FjdmVvrm2cyvtzoYKb/BOLnNO -PVjWb7gTBxEqKv2LnxdTb+RwtSn7T3cjBTgXHqR97ZNru9CMKtRVlR6b+H/1pbyJ -2fd6AdWRDNAPmDkEY+jADANoiMqlfkQU1UsCkDZu/4EpB80u5OZmeOQitmQIDK0d -kl2Wwmat2jHQrL1sPnbLGMan8g8c3cU6bBqoiJcDlRKu0FMyHTqY4f297XJLi8v9 -vk5j6F1buFnnJ3nXtPZBA5W03/G5CyXx6M65dUXV/3ZtukQYE6n68FvU9ADRCm/y -QxohXz60JhV8V9Gailc17ZiiZUXQ6SOfZ1NCHXjbLfDiHDwL3VADnpC2rB2xg7tX -GKQ= ------END ENCRYPTED PRIVATE KEY----- diff --git a/packages/live-server/test/cors.js b/packages/live-server/test/cors.js deleted file mode 100644 index c97e7d9f3..000000000 --- a/packages/live-server/test/cors.js +++ /dev/null @@ -1,40 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -var liveServer = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - cors: true, -}); - -describe('cors tests', function () { - it('should respond with appropriate header', function (done) { - request(liveServer) - .get('/index.html') - .set('Origin', 'http://example.com') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect('Access-Control-Allow-Origin', 'http://example.com') - .expect(/Hello world/i) - .expect(200, done); - }); - it('should support preflighted requests', function (done) { - request(liveServer) - .options('/index.html') - .set('Origin', 'http://example.com') - .set('Access-Control-Request-Method', 'POST') - .set('Access-Control-Request-Headers', 'X-PINGOTHER') - .expect('Access-Control-Allow-Origin', 'http://example.com') - .expect('Access-Control-Allow-Methods', /POST/) - .expect('Access-Control-Allow-Headers', 'X-PINGOTHER') - .expect(204, done); - }); - it('should support requests with credentials', function (done) { - request(liveServer) - .options('/index.html') - .set('Origin', 'http://example.com') - .set('Cookie', 'foo=bar') - .expect('Access-Control-Allow-Origin', 'http://example.com') - .expect('Access-Control-Allow-Credentials', 'true') - .expect(204, done); - }); -}); diff --git a/packages/live-server/test/data/fragment.html b/packages/live-server/test/data/fragment.html deleted file mode 100644 index f88964ac6..000000000 --- a/packages/live-server/test/data/fragment.html +++ /dev/null @@ -1 +0,0 @@ -<h1>{{this imitates some kind of template fragment}}</h1> diff --git a/packages/live-server/test/data/htpasswd-test b/packages/live-server/test/data/htpasswd-test deleted file mode 100644 index 270a21582..000000000 --- a/packages/live-server/test/data/htpasswd-test +++ /dev/null @@ -1 +0,0 @@ -test:$apr1$edJu7/51$LVD5BTHDtDMzzeeYnWXCL1 diff --git a/packages/live-server/test/data/index-caps.htm b/packages/live-server/test/data/index-caps.htm deleted file mode 100644 index e63c81b22..000000000 --- a/packages/live-server/test/data/index-caps.htm +++ /dev/null @@ -1,12 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> -<html lang="en"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <title>Live-server Test Page</title> - <link rel="stylesheet" href="style.css" /> - </head> - <body> - <h1>Hello world.</h1> - <p>These tags are in capitals.</p> - </body> -</html> diff --git a/packages/live-server/test/data/index-head.html b/packages/live-server/test/data/index-head.html deleted file mode 100644 index d45e92f86..000000000 --- a/packages/live-server/test/data/index-head.html +++ /dev/null @@ -1,8 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="UTF-8" /> - <title>Live-server Test Page</title> - <link rel="stylesheet" href="style.css" /> - </head> -</html> diff --git a/packages/live-server/test/data/index.html b/packages/live-server/test/data/index.html deleted file mode 100644 index 339a2c852..000000000 --- a/packages/live-server/test/data/index.html +++ /dev/null @@ -1,12 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="UTF-8" /> - <title>Live-server Test Page</title> - <link rel="stylesheet" href="style.css" /> - </head> - <body> - <h1>Hello world.</h1> - <p>Edit my css for a live-reload without refreshing.</p> - </body> -</html> diff --git a/packages/live-server/test/data/middleware.js b/packages/live-server/test/data/middleware.js deleted file mode 100644 index b2406093a..000000000 --- a/packages/live-server/test/data/middleware.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = function (req, res, next) { - res.statusCode = 203; - next(); -}; diff --git a/packages/live-server/test/data/style.css b/packages/live-server/test/data/style.css deleted file mode 100644 index adc68fa6a..000000000 --- a/packages/live-server/test/data/style.css +++ /dev/null @@ -1,3 +0,0 @@ -h1 { - color: red; -} diff --git a/packages/live-server/test/data/sub/sub.html b/packages/live-server/test/data/sub/sub.html deleted file mode 100644 index 3fd1334e5..000000000 --- a/packages/live-server/test/data/sub/sub.html +++ /dev/null @@ -1,10 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="UTF-8" /> - <title>Live-server Test Page</title> - </head> - <body> - <h1>Subdirectory</h1> - </body> -</html> diff --git a/packages/live-server/test/data/test.svg b/packages/live-server/test/data/test.svg deleted file mode 100644 index 078212544..000000000 --- a/packages/live-server/test/data/test.svg +++ /dev/null @@ -1,14 +0,0 @@ -<svg width="100%" height="100%" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> - <script type="text/javascript"> - // <![CDATA[ - function change(evt) { - var target = evt.target; - var radius = target.getAttribute("r"); - radius = (radius == 15) ? 45 : 15 - target.setAttribute("r", radius); - } - // ]]> - </script> - - <circle cx="50" cy="50" r="45" fill="green" onclick="change(evt)" /> -</svg> diff --git a/packages/live-server/test/htpasswd.js b/packages/live-server/test/htpasswd.js deleted file mode 100644 index 7f8aec0a1..000000000 --- a/packages/live-server/test/htpasswd.js +++ /dev/null @@ -1,23 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -var liveServer = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - htpasswd: path.join(__dirname, 'data', 'htpasswd-test'), -}); - -describe('htpasswd tests', function () { - it('should respond with 401 since no password is given', function (done) { - request(liveServer).get('/').expect(401, done); - }); - it('should respond with 401 since wrong password is given', function (done) { - request(liveServer) - .get('/') - .auth('test', 'not-real-password') - .expect(401, done); - }); - it('should respond with 200 since correct password is given', function (done) { - request(liveServer).get('/').auth('test', 'test').expect(200, done); - }); -}); diff --git a/packages/live-server/test/https.js b/packages/live-server/test/https.js deleted file mode 100644 index c3a5d3a29..000000000 --- a/packages/live-server/test/https.js +++ /dev/null @@ -1,48 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -// accept self-signed certificates -process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; - -function tests(liveServer) { - it('should reply with a correct index file', function (done) { - request(liveServer) - .get('/index.html') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(/Hello world/i) - .expect(200, done); - }); - it('should support head request', function (done) { - request(liveServer) - .head('/index.html') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(200, done); - }); -} - -describe('https tests with external module', function () { - var opts = { - root: path.join(__dirname, 'data'), - port: 0, - open: false, - https: path.join(__dirname, 'conf/https.conf.js'), - }; - var liveServer = require('..').start(opts); - tests(liveServer); - after(function () { - liveServer.close(); - }); -}); - -describe('https tests with object', function () { - var opts = { - root: path.join(__dirname, 'data'), - port: 0, - open: false, - https: require(path.join(__dirname, 'conf/https.conf.js')), - }; - var liveServer = require('..').start(opts); - tests(liveServer); - after(function () { - liveServer.close(); - }); -}); diff --git a/packages/live-server/test/middleware.js b/packages/live-server/test/middleware.js deleted file mode 100644 index b66c5137a..000000000 --- a/packages/live-server/test/middleware.js +++ /dev/null @@ -1,37 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -var liveServer1 = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - middleware: [ - function setStatus(req, res, next) { - res.statusCode = 201; - next(); - }, - ], -}); -var liveServer2 = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - middleware: ['example'], -}); -var liveServer3 = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - middleware: [path.join(__dirname, 'data', 'middleware.js')], -}); - -describe('middleware tests', function () { - it("should respond with middleware function's status code", function (done) { - request(liveServer1).get('/').expect(201, done); - }); - it("should respond with built-in middleware's status code", function (done) { - request(liveServer2).get('/').expect(202, done); - }); - it("should respond with external middleware's status code", function (done) { - request(liveServer3).get('/').expect(203, done); - }); -}); diff --git a/packages/live-server/test/mount.js b/packages/live-server/test/mount.js deleted file mode 100644 index bf615ce25..000000000 --- a/packages/live-server/test/mount.js +++ /dev/null @@ -1,28 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -var liveServer = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - mount: [ - ['/mounted', path.join(__dirname, 'data', 'sub')], - ['/style', path.join(__dirname, 'data', 'style.css')], - ], -}); - -describe('mount tests', function () { - it('should respond with sub.html', function (done) { - request(liveServer) - .get('/mounted/sub.html') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(/Subdirectory/i) - .expect(200, done); - }); - it('should respond with style.css', function (done) { - request(liveServer) - .get('/style') - .expect('Content-Type', 'text/css; charset=UTF-8') - .expect(/color/i) - .expect(200, done); - }); -}); diff --git a/packages/live-server/test/proxy.js b/packages/live-server/test/proxy.js deleted file mode 100644 index 68bfd159d..000000000 --- a/packages/live-server/test/proxy.js +++ /dev/null @@ -1,24 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -var port = 40200; -var server1 = require('..').start({ - root: path.join(__dirname, 'data'), - port: port, - open: false, -}); -var server2 = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - proxy: [['/server1', 'http://localhost:' + port]], -}); - -describe('proxy tests', function () { - it('should respond with proxied content', function (done) { - request(server2) - .get('/server1/index.html') - .expect('Content-Type', 'text/html; charset=UTF-8') - .expect(/Hello world/i) - .expect(200, done); - }); -}); diff --git a/packages/live-server/test/spa.js b/packages/live-server/test/spa.js deleted file mode 100644 index 9384f0064..000000000 --- a/packages/live-server/test/spa.js +++ /dev/null @@ -1,38 +0,0 @@ -var request = require('supertest'); -var path = require('path'); -var liveServerSpa = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - middleware: ['spa'], -}); -var liveServerSpaIgnoreAssets = require('..').start({ - root: path.join(__dirname, 'data'), - port: 0, - open: false, - middleware: ['spa-ignore-assets'], -}); - -describe('spa tests', function () { - it('spa should redirect', function (done) { - request(liveServerSpa) - .get('/api') - .expect('Location', /\/#\//) - .expect(302, done); - }); - it('spa should redirect everything', function (done) { - request(liveServerSpa) - .get('/style.css') - .expect('Location', /\/#\//) - .expect(302, done); - }); - it('spa-ignore-assets should redirect something', function (done) { - request(liveServerSpaIgnoreAssets) - .get('/api') - .expect('Location', /\/#\//) - .expect(302, done); - }); - it('spa-ignore-assets should not redirect .css', function (done) { - request(liveServerSpaIgnoreAssets).get('/style.css').expect(200, done); - }); -}); diff --git a/packages/live-server/tsconfig.json b/packages/live-server/tsconfig.json new file mode 100644 index 000000000..9d7f15bc8 --- /dev/null +++ b/packages/live-server/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "allowJs": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/live-server/tsconfig.lib.json b/packages/live-server/tsconfig.lib.json new file mode 100644 index 000000000..778f5d5c8 --- /dev/null +++ b/packages/live-server/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts", "src/**/*.js"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts", "src/**/*.spec.js", "src/**/*.test.js"] +} diff --git a/packages/live-server/tsconfig.spec.json b/packages/live-server/tsconfig.spec.json new file mode 100644 index 000000000..b2ee74a6b --- /dev/null +++ b/packages/live-server/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/plugin-tab/.eslintrc.json b/packages/plugin-tab/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/plugin-tab/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/plugin-tab/.gitignore b/packages/plugin-tab/.gitignore deleted file mode 100644 index 43f80004d..000000000 --- a/packages/plugin-tab/.gitignore +++ /dev/null @@ -1,38 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* - -# Runtime data -pids -*.pid -*.seed - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules -jspm_packages - -# Optional npm cache directory -.npm - -# Optional REPL history -.node_repl_history -.idea/ diff --git a/packages/plugin-tab/.npmrc b/packages/plugin-tab/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/plugin-tab/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/plugin-tab/.nvmrc b/packages/plugin-tab/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/plugin-tab/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/plugin-tab/dist/js/@pattern-lab-plugin-tab.js b/packages/plugin-tab/config/js/@pattern-lab-plugin-tab.js similarity index 100% rename from packages/plugin-tab/dist/js/@pattern-lab-plugin-tab.js rename to packages/plugin-tab/config/js/@pattern-lab-plugin-tab.js diff --git a/packages/plugin-tab/jest.config.js b/packages/plugin-tab/jest.config.js new file mode 100644 index 000000000..917b13e88 --- /dev/null +++ b/packages/plugin-tab/jest.config.js @@ -0,0 +1,17 @@ +/* eslint-disable */ +module.exports = { + displayName: 'plugin-tab', + preset: '../../jest.preset.js', + globals: {}, + testEnvironment: 'node', + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/plugin-tab', +}; diff --git a/packages/plugin-tab/package.json b/packages/plugin-tab/package.json index 061f7a85e..7553904db 100644 --- a/packages/plugin-tab/package.json +++ b/packages/plugin-tab/package.json @@ -2,29 +2,16 @@ "name": "@pattern-lab/plugin-tab", "version": "6.0.0", "description": "", - "main": "index.js", - "dependencies": { - "fs-extra": "10.0.0", - "glob": "7.1.6", - "lodash": "4.17.21" - }, "engines": { "node": ">=14.21.1" }, "repository": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/plugin-tab", "bugs": "https://github.com/pattern-lab/patternlab-node/issues", "scripts": { - "lint": "eslint src/** index.js postinstall.js", "postinstall": "node ./postinstall.js" }, "author": "Brian Muenzenmeyer", "license": "MIT", "homepage": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/plugin-tab", - "devDependencies": { - "eslint": "4.18.2" - }, - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac" } diff --git a/packages/plugin-tab/project.json b/packages/plugin-tab/project.json new file mode 100644 index 000000000..6e0b5fcf7 --- /dev/null +++ b/packages/plugin-tab/project.json @@ -0,0 +1,53 @@ +{ + "name": "plugin-tab", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/plugin-tab/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/plugin-tab", + "main": "packages/plugin-tab/src/index.js", + "tsConfig": "packages/plugin-tab/tsconfig.lib.json", + "assets": [ + "packages/plugin-tab/*.md", + "packages/plugin-tab/LICENSE", + "packages/plugin-tab/postinstall.js", + "packages/plugin-tab/config/**", + "packages/plugin-tab/config.json" + ], + "buildableProjectDepsInPackageJsonType": "dependencies" + } + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/plugin-tab/**/*.js"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/plugin-tab/jest.config.js", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/plugin-tab/index.js b/packages/plugin-tab/src/index.js similarity index 71% rename from packages/plugin-tab/index.js rename to packages/plugin-tab/src/index.js index bca04267f..74f6c0a2d 100644 --- a/packages/plugin-tab/index.js +++ b/packages/plugin-tab/src/index.js @@ -1,5 +1,3 @@ -'use strict'; - const path = require('path'); const EOL = require('os').EOL; @@ -7,7 +5,7 @@ const _ = require('lodash'); const fs = require('fs-extra'); const glob = require('glob'); -const tab_loader = require('./src/tab-loader'); +const tab_loader = require('./lib/tab-loader'); const pluginName = '@pattern-lab/plugin-tab'; //remove the forward-slash, which can accidentally result in directories being written in the output @@ -23,15 +21,13 @@ function writeConfigToOutput(patternlab, pluginConfig) { patternlab.config.paths.public.root, 'patternlab-components', 'packages', - `/${safePluginName}.json` + `/${safePluginName}.json`, ), - JSON.stringify(pluginConfig, null, 2) + JSON.stringify(pluginConfig, null, 2), ); }); } catch (ex) { - console.trace( - pluginName + ': Error occurred while writing pluginFile configuration' - ); + console.trace(pluginName + ': Error occurred while writing pluginFile configuration'); console.log(ex); } } @@ -61,9 +57,7 @@ function getPluginFrontendConfig() { name: pluginName, templates: [], stylesheets: [], - javascripts: [ - `patternlab-components/pattern-lab/${safePluginName}/js/${safePluginName}.js`, - ], + javascripts: [`patternlab-components/pattern-lab/${safePluginName}/js/${safePluginName}.js`], onready: 'PluginTab.init()', callback: '', }; @@ -81,8 +75,7 @@ function pluginInit(patternlab) { //write the plugin json to public/patternlab-components const pluginConfig = getPluginFrontendConfig(); - pluginConfig.tabsToAdd = - patternlab.config.plugins[pluginName].options.tabsToAdd; + pluginConfig.tabsToAdd = patternlab.config.plugins[pluginName].options.tabsToAdd; writeConfigToOutput(patternlab, pluginConfig); //add the plugin config to the patternlab-object @@ -91,36 +84,32 @@ function pluginInit(patternlab) { } patternlab.plugins.push(pluginConfig); - //write the plugin dist folder to public/pattern-lab - const pluginFiles = glob.sync(__dirname + '/dist/**/*'); + //write the plugin config folder to public/pattern-lab + const relativePrefix = path.join('..', 'config'); + const pluginFiles = glob.sync(path.resolve(__dirname, relativePrefix) + '/**/*'); if (pluginFiles && pluginFiles.length > 0) { - const tab_frontend_snippet = fs.readFileSync( - path.resolve(__dirname + '/src/snippet.js'), - 'utf8' - ); + const tab_frontend_snippet = fs.readFileSync(path.resolve(__dirname + '/lib/snippet.js'), 'utf8'); for (let i = 0; i < pluginFiles.length; i++) { try { const fileStat = fs.statSync(pluginFiles[i]); if (fileStat.isFile()) { - const relativePath = path - .relative(__dirname, pluginFiles[i]) - .replace('dist', ''); //dist is dropped + const relativePath = path.relative(__dirname, pluginFiles[i]).replace(relativePrefix, ''); //config is dropped const writePath = path.join( patternlab.config.paths.public.root, 'patternlab-components', 'pattern-lab', safePluginName, - relativePath + relativePath, ); //a message to future plugin authors: - //depending on your plugin's job - you might need to alter the dist file instead of copying. - //if you are simply copying dist files, you can probably do the below: + //depending on your plugin's job - you might need to alter the config file instead of copying. + //if you are simply copying config files, you can probably do the below: //fs.copySync(pluginFiles[i], writePath); - //in this case, we need to alter the dist file to loop through our tabs to load as defined in the package.json + //in this case, we need to alter the config file to loop through our tabs to load as defined in the package.json //we are also being a bit lazy here, since we only expect one file let tabJSFileContents = fs.readFileSync(pluginFiles[i], 'utf8'); let snippetString = ''; @@ -128,29 +117,17 @@ function pluginInit(patternlab) { for (let j = 0; j < pluginConfig.tabsToAdd.length; j++) { const tabSnippetLocal = tab_frontend_snippet .replace(/<<type>>/g, pluginConfig.tabsToAdd[j]) - .replace( - /<<typeUC>>/g, - pluginConfig.tabsToAdd[j].toUpperCase() - ); + .replace(/<<typeUC>>/g, pluginConfig.tabsToAdd[j].toUpperCase()); snippetString += tabSnippetLocal + EOL; } - tabJSFileContents = tabJSFileContents.replace( - '/*SNIPPETS*/', - snippetString - ); + tabJSFileContents = tabJSFileContents.replace('/*SNIPPETS*/', snippetString); _.each(patternlab.uikits, (uikit) => { - fs.outputFileSync( - path.join(process.cwd(), uikit.outputDir, writePath), - tabJSFileContents - ); + fs.outputFileSync(path.join(process.cwd(), uikit.outputDir, writePath), tabJSFileContents); }); } } } catch (ex) { - console.trace( - 'plugin-tab: Error occurred while copying pluginFile', - pluginFiles[i] - ); + console.trace('plugin-tab: Error occurred while copying pluginFile', pluginFiles[i]); console.log(ex); } } diff --git a/packages/plugin-tab/src/snippet.js b/packages/plugin-tab/src/lib/snippet.js similarity index 100% rename from packages/plugin-tab/src/snippet.js rename to packages/plugin-tab/src/lib/snippet.js diff --git a/packages/plugin-tab/src/tab-loader.js b/packages/plugin-tab/src/lib/tab-loader.js similarity index 100% rename from packages/plugin-tab/src/tab-loader.js rename to packages/plugin-tab/src/lib/tab-loader.js diff --git a/packages/plugin-tab/tsconfig.json b/packages/plugin-tab/tsconfig.json new file mode 100644 index 000000000..9d7f15bc8 --- /dev/null +++ b/packages/plugin-tab/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "allowJs": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/plugin-tab/tsconfig.lib.json b/packages/plugin-tab/tsconfig.lib.json new file mode 100644 index 000000000..f9de8b874 --- /dev/null +++ b/packages/plugin-tab/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts", "src/**/*.js"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts", "src/**/*.spec.js", "src/**/*.test.js"] +} diff --git a/packages/plugin-tab/tsconfig.spec.json b/packages/plugin-tab/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/plugin-tab/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/starterkit-handlebars-demo/.eslintrc.json b/packages/starterkit-handlebars-demo/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/starterkit-handlebars-demo/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/starterkit-handlebars-demo/dist/_annotations/annotations.json b/packages/starterkit-handlebars-demo/dist/_annotations/annotations.json deleted file mode 100644 index 97bee1cc6..000000000 --- a/packages/starterkit-handlebars-demo/dist/_annotations/annotations.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "comments" : [ - { - "el": ".c-header", - "title" : "Masthead", - "comment": "The main header of the site doesn't take up too much screen real estate in order to keep the focus on the core content." - }, - { - "el": ".c-logo", - "title": "Logo", - "comment": "The logo isn't an image but regular text, which ensures that the logo displays crisply even on high resolution displays." - } - ] -} diff --git a/packages/starterkit-handlebars-demo/dist/_meta/_foot.hbs b/packages/starterkit-handlebars-demo/dist/_meta/_foot.hbs deleted file mode 100644 index 2c8fd83b5..000000000 --- a/packages/starterkit-handlebars-demo/dist/_meta/_foot.hbs +++ /dev/null @@ -1,8 +0,0 @@ - <!--<Deject>--> - <!--DO NOT REMOVE--> - {{{ patternLabFoot }}} - <!--</Deject>--> - - </body> - -</html> \ No newline at end of file diff --git a/packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.css.map b/packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.css.map deleted file mode 100644 index 0cd43e359..000000000 --- a/packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["pattern-scaffolding.scss","../../../uikit-workshop/src/sass/scss/01-abstracts/_variables.scss","../../../uikit-workshop/src/sass/scss/04-components/_annotations.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;EACA;EACA;EACA;;;AAGD;EACC;EACA;EACA;EACA;EACA;EACA;;;AAGD;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGD;EACC;IACC;IACA;IACA;;;AAOF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGD;EACC;EACA;EACA;EACA;;;AAGD;EACC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;;AAGD;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;EACA;EACA;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;EACC;EACA;EACA;;;AAGD;EACC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EAIC;AAAa;;;AAGd;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;IAIC;AAAc;IACd;AAAe;IACf;;;AAIF;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;EACA;;;AAGD;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;EACC;IAGC;AAAoB;IACpB;AAAiB;IACjB;AAAa;;;AAIf;AAAA;AAAA;AAAA;AAIA;EAIC;AAAa;;;AAGd;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;IAIC;AAAc;IACd;AAAiB;;;AAInB;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EAIC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;IACC;;;AAIF;EACC;;;AAGD;EACC;;;AAGD;EACC;;;ACjRD;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;ACFA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;EACE;EACA;EACA;EACA;;AAEA;AAAA;EAEE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAKA;EAIE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAdA;EACE","file":"pattern-scaffolding.css"} \ No newline at end of file diff --git a/packages/starterkit-handlebars-demo/dist/css/style.css.map b/packages/starterkit-handlebars-demo/dist/css/style.css.map deleted file mode 100644 index 69d9773d5..000000000 --- a/packages/starterkit-handlebars-demo/dist/css/style.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["style.scss","scss/abstracts/_variables.scss","scss/abstracts/_mixins.scss","scss/abstracts/_colors.scss","scss/abstracts/_typography.scss","scss/base/_reset.scss","scss/base/_fonts.scss","../../../../node_modules/@fontsource/abel/scss/mixins.scss","../../../../node_modules/@fontsource/raleway/scss/mixins.scss","scss/base/_body.scss","scss/base/_links.scss","scss/base/_lists.scss","scss/base/_headings.scss","scss/base/_forms.scss","scss/base/_buttons.scss","scss/base/_main.scss","scss/base/_media.scss","scss/base/_text.scss","scss/base/_table.scss","scss/layout/_layout.scss","scss/components/_buttons.scss","scss/components/_definition-list.scss","scss/components/_definition-list-list.scss","scss/components/_hero.scss","scss/components/_tout.scss","scss/components/_section.scss","scss/components/_stacked-block.scss","scss/components/_stripe.scss","scss/components/_footer.scss","scss/components/_footer-nav.scss","scss/components/_header.scss","scss/components/_logo.scss","scss/components/_icon.scss","scss/components/_input.scss","scss/components/_page-header.scss","scss/components/_pagination.scss","scss/components/_primary-nav.scss","scss/components/_promo-block.scss","scss/components/_progress-tracker.scss","scss/components/_text-passage.scss","scss/components/_field.scss","scss/components/_search-form.scss","scss/components/_stacked-block-list.scss","scss/components/_total.scss","scss/utilities/_visibility.scss","scss/utilities/_spacing.scss"],"names":[],"mappings":";AAAC;AAAA;AAAA;AAGD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA;AAAA;AAAA;ACXA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA+BC;AAAA;AAAA;AAID;AAAA;AAAA;AAAA;AAQA;AAAA;AAAA;AAAA;AAeA;AAAA;AAAA;AAAA;AAAA;AAkBA;AAAA;AAAA;AAIA;AAAA;AAAA;AAOA;AAAA;AAAA;AAWA;AAAA;AAAA;AAcA;AAAA;AAAA;AAIA;AAAA;AAAA;AAWA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAaA;AAAA;AAAA;AAIA;AAAA;AAAA;AAKA;AAAA;AAAA;AASA;AAAA;AAAA;AAIA;AAAA;AAAA;AAMA;AAAA;AAAA;AASA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AC7LA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAUA;AAAA;AAAA;AAQA;AAAA;AAAA;AAaA;AAAA;AAAA;AASA;AAAA;AAAA;AASA;AAAA;AAAA;AASA;AAAA;AAAA;AC9DA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AASA;AAAA;AAAA;AAIA;AAAA;AAAA;AAMA;AAAA;AAAA;AAUA;AAAA;AAAA;AAaA;AAAA;AAAA;AAqBA;AAAA;AAAA;ACnEA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AJmBA;AAAA;AAAA;AKvBA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;;;ACvBD;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;ACcI;EACE;EACA,YDTE;ECUF,cAlBI;EAmBJ,aDVG;ECWH;EAEA,eAnBO;;ACYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;ACNb;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;AAAmB;;;AAGpB;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;AAAmB;EACnB,aRmEqB;EC9ElB,WDuFY;ECtFZ;EACA;AAAgC;EOWnC,kBR6BqB;EQ5BrB,ORoCuB;;;AS3DxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC,OTkDuB;ESjDvB;EACA;EACA;;AAEA;EACC,OT+BmB;;AS5BpB;EACC,OTyCsB;;;AU3DxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAIC;AAAA;AAAA;AAGD;EACC;;;ACZD;AAAA;AAAA;AAIA;EACC,aXmFuB;EWlFvB;;;AAGD;AAAA;AAAA;AAGA;EVcI,WDyEW;ECxEX;EACA;;AAEA;EUlBJ;IVmBQ,WDqEQ;;;;AWpFhB;AAAA;AAAA;AAGA;EVsCI,WDwCc;ECvCd;EACH;;;AUpCD;AAAA;AAAA;AAGA;EV+BI,WDwCc;ECvCd;EACH;;;AU7BD;AAAA;AAAA;AAGA;EViCI,WD8BY;EC7BZ;EACH;;;AWpED;AAAA;AAAA;AAIA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACG,OZ4CqB;;;AYzCxB;EACG,OZwCqB;;;AYrCxB;EACG,OZoCqB;;;AYjCxB;AAAA;AAAA;AAGA;EACC;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACI;;;AAGJ;AAAA;AAAA;AAGA;EACC;EACG;EACA,OZcoB;;;AYXxB;AAAA;AAAA;AAGA;EACI;EACA,WZ2CY;EY1CZ;;;AAGJ;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACI;EACA;EACA;EACA,YZpBkB;;AYsBlB;EACF,cZfsB;;AYkBpB;EACI,cZzBgB;EY0BhB,YZ1BgB;EY2BhB,OZxBgB;;;AY4BxB;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;AAAA;EAEI;EACA;EACA,cZxCoB;;;AY2CxB;AAAA;AAAA;AAGA;EACI;EACA;;;AAGJ;AAAA;AAAA;AAAA;AAIA;EACI;EACH,WZnBe;EYoBf;EACG;EACA;EACA;EACA;EACA,YZtEkB;EYuElB,OZ/DoB;;AYiEvB;EACC,cZlEsB;;;Aa3DxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACC;;;ACTD;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;;;ACTD;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACC;EACA;;;ACVD;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC,ehBoIS;;;AgBjIV;AAAA;AAAA;AAGA;EACI;EACA;EACA,OhBuCoB;EgBtCvB;EACA,ehByHS;;;AgBtHV;AAAA;AAAA;AAGA;EACC;EACG;EACA,YhB0BoB;EgBzBpB;;;AAGJ;AAAA;AAAA;AAGA;EACC,OhBuBuB;EgBtBvB,YhBiBuB;AgBjBe;;;AAGvC;EACC,OhBkBuB;EgBjBvB,YhBYuB;AgBZe;;;AAGvC;AAAA;AAAA;AAGA;EACC;EACA,YhBEuB;EgBDvB;EACA;EACG;EACA;;;AAGJ;AAAA;AAAA;AAGA;EACC,YhBTuB;EgBUvB;EACA,WhBiCe;EgBhCf;EACG;AAEH;AAAA;AAAA;;AAGA;EACC;;;AAIF;AAAA;AAAA;AAAA;AAIA;AAAA;EAEI;;;ACjFJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACI;EACA;EACA;;;AAGJ;AAAA;AAAA;AAGA;EACI;;;AAGJ;AAAA;AAAA;AAGA;EACI;;;AlBmBJ;AAAA;AAAA;AmB3CA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC,WlBiHa;EkBhHb;EACA;;AAEA;EALD;IAME;;;;AAIF;EACC,WlBwGoB;;;AkBrGrB;AAAA;AAAA;AAAA;AAAA;AAKA;EACI,WlBgGiB;;;AkB7FrB;EACC,YlBmBuB;EkBlBvB;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;AAEA;EAJD;IAKE;;;;AAMA;EADD;IAEE;IACA,elBuFO;;;;AkBlFV;AAAA;AAAA;AAME;EADD;IAEE;IACA;;;AAIF;EACC;;AAEA;EAHD;IAIE;IACA;;;;AAOH;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;;AAEA;EAJD;IAKE;IACA,UlB+Cc;IkB9Cd;IACA;;;;AAIF;AAAA;AAAA;AAGA;EACC;;;AnBrDD;AAAA;AAAA;AoBpDA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACC;EACA;EACA,YnBgCkB;EmB/BlB,OnBuCqB;EmBtCrB;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC,OnB8BoB;EmB7BpB,YnBsBsB;;;AmBlBxB;EACC;EACA,OnBekB;EmBdlB;;AAEA;EACC;EACA,OnBUiB;EmBTjB,cnBSiB;;;AmBLnB;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;EACC;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;EACA,MnBLqB;EmBMrB;;;ACzDD;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;AAEA;EAHD;IAIE;;;;AAIF;AAAA;AAAA;AAGA;EACG;EACA;EACA;;AAEA;EALH;IAMI;;;;AAIJ;AAAA;AAAA;ACnCA;AAAA;AAAA;AAIA;AAAA;AAAA;AAIA;AAAA;AAAA;AAIC;EACC;EACA;;;ACdF;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;EACA;EACA;AAAsB;;;AAGvB;AAAA;AAAA;AAAA;AAIA;EACC;EACA;EACA;EACA;EACA;;;AAGD;EACC,YtBiBoB;EsBhBpB,StB+GS;;AsB7GT;EAJD;IAKE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;;;AASF;AAAA;AAAA;AAAA;AAIA;EACC;EACA,WtBwCc;EsBvCd,kBtBfoB;EsBgBpB,OtBVqB;EsBWrB;;AAEA;EAPD;IAQE;IACA,WtBkCc;;;;AuBnGhB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACI;EACH;EACG;EACA;;;AAGJ;AAAA;AAAA;AAIC;EACC;;;AAGF;AAAA;AAAA;AAGA;EACI;EACA;EACA;EACA;EACH;EACA;EACG,OvBkBkB;EuBjBlB;EACA;EACA;;AAEA;EACI;EACA,YvBGW;;;AwB3CnB;AAAA;AAAA;AAGA;AAAA;AAAA;AAGC;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA,YxB2BY;;;AwBvBpB;EACI,WxB2Ea;;;AyBlGlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;EACA;EACG;EACH;AAAkB;EAClB;;AAEC;EACA;;;AAIF;EACI;;;AAGJ;EACC;EACA;EACA,OzBekB;EyBdlB;;AAEA;EACC,OzBamB;;;AyBTrB;EACC;EACA,OzBoBuB;;;AyBjBxB;EACC,OzBCkB;EyBAf,WzBsDc;EyBrDjB,azB4CuB;EyB3CvB;EACA;;AAEA;EACC,OzBJmB;;;AyBQrB;EACI;EACA;EACA;EACA;EACA;EACA,azB6BoB;EyB5BpB;EACA,OzBVkB;EyBWlB,YzBjBiB;;;AyBoBrB;EACI;EACA,OzBXoB;EyBYpB,azBoBoB;EyBnBpB,WzB0Ba;EyBzBb;;;ACtEJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;AAEA;EAHD;IAIE;;;AAGD;EACC;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACI;;AAEH;EAHD;IAIE;;;AAGD;EACC;;;AAIF;EACC;;AAEA;EAHD;IAIE;;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACC;;AAEA;EAHD;IAIK;IACH;;;;AAIF;EACC;;AAEA;EAHD;IAIE;IACA;IACA;;;;AAMD;EAFD;IAGE;IACA;IACA;IACA;IACA;;;;AAIF;EACC;EACA;;;AAGD;EACC,a1BKuB;E0BJvB,O1BzCkB;E0B0ClB,W1BYiB;;;A0BRlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGC;EACI;;;ACjGL;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;EACA,Y3BkCuB;;;A2B9BvB;EADD;IAEE;;;;AAKD;EADD;IAEE;;;;AAIF;EACC,O3ByBqB;E2BxBrB;EACA,a3B4DuB;E2B3DvB,W3BkEgB;;A2BhEhB;EACC,O3BamB;;A2BXnB;EACC,O3BqBqB;;;A4BxDxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;AAEA;EAHD;IAIE;IACA;;;;AAMD;EAFD;IAGE;;EAEA;IACC;;;;AAKH;EACC,O5BuBqB;E4BtBrB,a5B2DuB;E4B1DvB;EACA,W5BkEiB;;;A6BjGlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;AAEA;EAJD;IAKE;IACA;;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACC;;AAEA;EAHD;IAIE;;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACC;AAOA;AAAA;AAAA;;AALA;EAHD;IAIE;IACA;;;AAOA;EADD;IAEE;;;;AAKH;AAAA;AAAA;AAGA;EACC;EACA;EACA,Y7BbuB;E6BcvB;EACA;EACA;EACA;EACA;AAUA;AAAA;AAAA;;AARA;EAVD;IAWE;IACA;IACA;IACA;IACA;;;AAOA;EADD;IAEE;IACA;;;;ACvFH;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC,W9B0FiB;;A8BxFjB;EACC;;AAEA;EAHD;IAIE;;;;AAKH;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;EACC,O9BSkB;;A8BPlB;EACC,O9BcoB;;;A8BXtB;EACC,O9BIoB;;;A+B7CrB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;;;ACTD;AAAA;AAAA;AAIA;AAAA;AAAA;AAIC;EACC;;;ACTF;AAAA;AAAA;AAGA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA,ejCkIe;;;AiC/HhB;AAAA;AAAA;AAGA;EACC;;;ACnBD;AAAA;AAAA;AAGA;AAAA;AAAA;AAGA;EACC;EACA;EACA;EACA;EACA;EACA,alC4EuB;EkC3EvB;;;AAGD;EACC;;AAEA;EACC;;;AAIF;EACC;EACA;;AAEA;EACC;;AAGD;EACC;EACA;EACA;;AAGD;EACC,OlCesB;EkCdtB;EACA;;;ACzCF;AAAA;AAAA;AAIA;AAAA;AAAA;AAME;EAFD;IAGE;;;;AAIH;AAAA;AAAA;AAGA;EACC;EACG;;;AAGJ;AAAA;AAAA;AAGA;EACC;;AAEG;EACI;;;AAIR;AAAA;AAAA;AAGA;EACC;EACA;EACA,anCgDuB;EmC/CvB,WnCwDiB;EmCvDd;EACH;EACG;;AAEA;EACI,OnCFa;;;AmCMrB;EACI,MnCRoB;EmCSpB;EACA;;;ACtDJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;EACC,OpCwCqB;EoCvCrB;EACA;AAAmB;;;AAGpB;EACC;EACA;;AAEA;EACC;EACA;EAMA;EACA;EACA;EACA;EACA;;AAEA;EACC;;;AAYH;EACC;EACA;EACA;EACA;EACA;EACA;;AAGA;EACC;EACA;;AAGD;EACC;EACA;;;AAIF;EACC;EACA;;;AAGD;EACC,OpCtBqB;;AoCwBrB;EAEC,OpChCmB;;;AoCoCrB;EACC;EACA;EACA;EACA,WpCaiB;;AoCXjB;EAND;IAOE,WpCWa;;;;AoCPf;EACC;;AAEA;EAHD;IAIE,WpCCgB;;;;AqCjGlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAMA;EACC;AAAe;EACZ;EACH;AAAiB;;;AAGlB;AACA;EACI;EACA;EACA,WrC2Ea;EqC1Eb;AAEA;;AACA;EACI;;;AAKR;EACI;EACA;EACA,OrCUe;EqCTf;EACA,kBrCgBkB;EqCflB;;AAEA;EARJ;IASQ;;;AAGJ;EACI,kBrCWgB;EqCVhB,crCUgB;;AqCPpB;EACI,OrCGc;EqCFd,kBrCNW;EqCOX;;AAGJ;EACI,OrCVgB;EqCWhB,crCZW;;AqCef;EACI;EACA;EACA;EACA;EACA,kBrCTgB;EqCUhB;EACA;EACA;EACA;;;AAIR;EACI;AAEA;;AACA;EAJJ;IAKQ;;;AAGJ;EACI;;;AChFR;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;AAMC;AAAA;AAAA;AAOA;AAAA;AAAA;AAUC;AAAA;AAAA;AAOD;AAAA;AAAA;AASA;AAAA;AAAA;AAOA;AAAA;AAAA;AAOA;AAAA;AAAA;AAOA;AAAA;AAAA;AAQA;AAAA;AAAA;AAaA;AAAA;AAAA;;AA/EA;EACC;;AAMD;EACC;;AAMD;EACC;EACA;EACA,OtC8BsB;EsC7BtB;;AAMA;EACC;;AAMF;EACC;EACA,OtCgBsB;EsCftB;;AAMD;EACC;;AAMD;EACC;;AAMD;EACC;;AAMD;EACC;;AAOD;EACC;EACA;EACA;;AAEA;EACC;;AAOF;EACC;EACA;EACA;;AAEA;EACC;;AAIF;EACC;EACA;;;ACvGF;AAAA;AAAA;AAIA;AAAA;AAAA;AAGC;EACA,evCsIe;;;AuCnIhB;AAAA;AAAA;AAGA;EACC;EACG,WvCgFY;EuC/EZ;;;AAGJ;AAAA;AAAA;AAGA;EACI;;;AAGJ;AAAA;AAAA;AAGA;EACI;EACA,WvC8DW;EuC7DX,OvCuBoB;;;AwCxDxB;AAAA;AAAA;AAGA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;;ACXD;EACC,WzC0Ha;EyCzHb,ezC4Ie;;;A0C7IhB;AAAA;AAAA;AAIA;AAAA;AAAA;AAIA;EACI;;AAEA;EAHJ;IAIQ;;;;AAIR;EACI;EACA;;AAEA;EAJJ;IAKQ;;;;AAIR;EACI;;AAEA;EAHJ;IAIQ;;;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAEA;EAHJ;IAIQ;;;;AAKZ;EACI,a1CuCoB;E0CtCpB,W1C+Cc;E0C9Cd,O1CRe;;A0CUf;EACI;;AAEA;EAHJ;IAIQ;;;;A3C2BZ;AAAA;AAAA;A4CpFA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACI;EACA;;;AAGJ;AAAA;AAAA;AAAA;AAIA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;ACxBJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIC;EACA;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;EACC;;AAEA;EAHD;IAIE;;;;AAGF;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC","file":"style.css"} \ No newline at end of file diff --git a/packages/starterkit-handlebars-demo/dist/favicon.ico b/packages/starterkit-handlebars-demo/dist/favicon.ico deleted file mode 100644 index eee4aa78f..000000000 Binary files a/packages/starterkit-handlebars-demo/dist/favicon.ico and /dev/null differ diff --git a/packages/starterkit-handlebars-demo/jest.config.ts b/packages/starterkit-handlebars-demo/jest.config.ts new file mode 100644 index 000000000..b6269bbe0 --- /dev/null +++ b/packages/starterkit-handlebars-demo/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'starterkit-handlebars-demo', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/starterkit-handlebars-demo', +}; diff --git a/packages/starterkit-handlebars-demo/package.json b/packages/starterkit-handlebars-demo/package.json index cca5b5a0b..7378fc91d 100644 --- a/packages/starterkit-handlebars-demo/package.json +++ b/packages/starterkit-handlebars-demo/package.json @@ -19,18 +19,10 @@ "url": "https://github.com/pattern-lab/patternlab-node/issues" }, "homepage": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/starterkit-handlebars-demo", - "publishConfig": { - "access": "public" - }, "scripts": { - "build": "copyfiles ../../node_modules/@fontsource/abel/files/*.woff* ../../node_modules/@fontsource/raleway/files/*400-*.woff* ../../node_modules/@fontsource/raleway/files/*700-normal.woff* dist/fonts -f && cd dist/css && sass style.scss:style.css pattern-scaffolding.scss:pattern-scaffolding.css --load-path=../../../../node_modules/" + "build-ui": "copyfiles ../../node_modules/@fontsource/abel/files/*.woff* ../../node_modules/@fontsource/raleway/files/*400-*.woff* ../../node_modules/@fontsource/raleway/files/*700-normal.woff* src/fonts -f && cd src/css && sass style.scss:style.css pattern-scaffolding.scss:pattern-scaffolding.css --load-path=../../../../node_modules/" }, "engines": { "node": ">=14.21.1" - }, - "devDependencies": { - "@fontsource/abel": "^4.5.7", - "@fontsource/raleway": "^4.5.11", - "copyfiles": "^2.4.1" } } diff --git a/packages/starterkit-handlebars-demo/project.json b/packages/starterkit-handlebars-demo/project.json new file mode 100644 index 000000000..864ff6cbb --- /dev/null +++ b/packages/starterkit-handlebars-demo/project.json @@ -0,0 +1,73 @@ +{ + "name": "starterkit-handlebars-demo", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/starterkit-handlebars-demo/src", + "projectType": "library", + "targets": { + "build-ui": { + "executor": "nx:run-script", + "options": { + "script": "build-ui" + } + }, + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/starterkit-handlebars-demo", + "main": "packages/starterkit-handlebars-demo/src/index.ts", + "tsConfig": "packages/starterkit-handlebars-demo/tsconfig.lib.json", + "assets": [ + "packages/starterkit-handlebars-demo/*.md", + "packages/starterkit-handlebars-demo/LICENSE", + { + "glob": "**/*", + "input": "packages/starterkit-handlebars-demo/src", + "output": "dist", + "ignore": ["index.ts"] + } + ] + }, + "dependsOn": [ + { + "target": "build-ui" + } + ] + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs starterkit-handlebars-demo {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/starterkit-handlebars-demo/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/starterkit-handlebars-demo/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/starterkit-handlebars-demo/dist/_data/blocks.json b/packages/starterkit-handlebars-demo/src/_data/blocks.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/blocks.json rename to packages/starterkit-handlebars-demo/src/_data/blocks.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/buttons.json b/packages/starterkit-handlebars-demo/src/_data/buttons.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/buttons.json rename to packages/starterkit-handlebars-demo/src/_data/buttons.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/colors.json b/packages/starterkit-handlebars-demo/src/_data/colors.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/colors.json rename to packages/starterkit-handlebars-demo/src/_data/colors.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/data.json b/packages/starterkit-handlebars-demo/src/_data/data.json old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/data.json rename to packages/starterkit-handlebars-demo/src/_data/data.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/forms.json b/packages/starterkit-handlebars-demo/src/_data/forms.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/forms.json rename to packages/starterkit-handlebars-demo/src/_data/forms.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/global.json b/packages/starterkit-handlebars-demo/src/_data/global.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/global.json rename to packages/starterkit-handlebars-demo/src/_data/global.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/icons.json b/packages/starterkit-handlebars-demo/src/_data/icons.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/icons.json rename to packages/starterkit-handlebars-demo/src/_data/icons.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/images.json b/packages/starterkit-handlebars-demo/src/_data/images.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/images.json rename to packages/starterkit-handlebars-demo/src/_data/images.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/listitems.json b/packages/starterkit-handlebars-demo/src/_data/listitems.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/listitems.json rename to packages/starterkit-handlebars-demo/src/_data/listitems.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/lists.json b/packages/starterkit-handlebars-demo/src/_data/lists.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/lists.json rename to packages/starterkit-handlebars-demo/src/_data/lists.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/navigation.json b/packages/starterkit-handlebars-demo/src/_data/navigation.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/navigation.json rename to packages/starterkit-handlebars-demo/src/_data/navigation.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/sections.json b/packages/starterkit-handlebars-demo/src/_data/sections.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/sections.json rename to packages/starterkit-handlebars-demo/src/_data/sections.json diff --git a/packages/starterkit-handlebars-demo/dist/_data/tables.json b/packages/starterkit-handlebars-demo/src/_data/tables.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_data/tables.json rename to packages/starterkit-handlebars-demo/src/_data/tables.json diff --git a/packages/development-edition-engine-handlebars/source/_meta/_foot.hbs b/packages/starterkit-handlebars-demo/src/_meta/_foot.hbs similarity index 100% rename from packages/development-edition-engine-handlebars/source/_meta/_foot.hbs rename to packages/starterkit-handlebars-demo/src/_meta/_foot.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_meta/_head.hbs b/packages/starterkit-handlebars-demo/src/_meta/_head.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_meta/_head.hbs rename to packages/starterkit-handlebars-demo/src/_meta/_head.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/_atoms.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/_atoms.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/_atoms.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/_atoms.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/checkbox.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/checkbox.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/checkbox.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/checkbox.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/checkbox.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/checkbox.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/checkbox.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/checkbox.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/radio-button.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/radio-button.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/radio-button.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/radio-button.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/radio-button.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/radio-button.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/radio-button.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/radio-button.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/select.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/select.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/select.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/select.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/select.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/select.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/select.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/select.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/text-input.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/text-input.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/text-input.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/text-input.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/textarea.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/textarea.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/forms/textarea.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/forms/textarea.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/_global.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/_global.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/_global.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/_global.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/brand-colors.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/brand-colors.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/brand-colors.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/brand-colors.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/brand-colors.json b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/brand-colors.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/brand-colors.json rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/brand-colors.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/colors.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/colors.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/colors.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/colors.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/colors.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/colors.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/colors.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/colors.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-families.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-families.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-families.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-families.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-families.json b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-families.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-families.json rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-families.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-families.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-families.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-families.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-families.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-sizes.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-sizes.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-sizes.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-sizes.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-sizes.json b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-sizes.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-sizes.json rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-sizes.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-sizes.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-sizes.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/font-sizes.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/font-sizes.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/neutral-colors.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/neutral-colors.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/neutral-colors.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/neutral-colors.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/neutral-colors.json b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/neutral-colors.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/neutral-colors.json rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/neutral-colors.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/utility-colors.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/utility-colors.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/utility-colors.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/utility-colors.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/utility-colors.json b/packages/starterkit-handlebars-demo/src/_patterns/atoms/global/utility-colors.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/global/utility-colors.json rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/global/utility-colors.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/icon.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/images/icon.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/icon.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/images/icon.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/icons.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/images/icons.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/icons.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/images/icons.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/landscape-4x3.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/images/landscape-4x3.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/landscape-4x3.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/images/landscape-4x3.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/stacked-block-image.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/images/stacked-block-image.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/stacked-block-image.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/images/stacked-block-image.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/stacked-block-image.json b/packages/starterkit-handlebars-demo/src/_patterns/atoms/images/stacked-block-image.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/images/stacked-block-image.json rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/images/stacked-block-image.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/_text.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/_text.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/_text.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/_text.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/blockquote.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/blockquote.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/blockquote.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/blockquote.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/blockquote.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/blockquote.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/blockquote.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/blockquote.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/headings.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/headings.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/headings.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/headings.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/hr.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/hr.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/hr.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/hr.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/hr.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/hr.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/hr.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/hr.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/inline-elements.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/inline-elements.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/inline-elements.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/inline-elements.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/inline-elements.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/inline-elements.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/inline-elements.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/inline-elements.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/paragraph.hbs b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/paragraph.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/paragraph.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/paragraph.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/paragraph.md b/packages/starterkit-handlebars-demo/src/_patterns/atoms/text/paragraph.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/atoms/text/paragraph.md rename to packages/starterkit-handlebars-demo/src/_patterns/atoms/text/paragraph.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/_molecules.md b/packages/starterkit-handlebars-demo/src/_patterns/molecules/_molecules.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/_molecules.md rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/_molecules.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/hero.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/hero.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/hero.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/hero.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/promo-block.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/promo-block.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/promo-block.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/promo-block.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stacked-block.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stacked-block.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stacked-block.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stacked-block.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stacked-block.json b/packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stacked-block.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stacked-block.json rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stacked-block.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stacked-block~sale.json b/packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stacked-block~sale.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stacked-block~sale.json rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stacked-block~sale.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stripe.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stripe.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stripe.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stripe.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stripe.json b/packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stripe.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/blocks/stripe.json rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/blocks/stripe.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/_buttons.md b/packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/_buttons.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/_buttons.md rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/_buttons.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/button.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/button.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/button.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/button.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/button.json b/packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/button.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/button.json rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/button.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/button~bare.json b/packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/button~bare.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/buttons/button~bare.json rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/buttons/button~bare.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/checkbox-field.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/checkbox-field.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/checkbox-field.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/checkbox-field.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/inline-checkbox.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/inline-checkbox.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/inline-checkbox.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/inline-checkbox.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/radio-field.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/radio-field.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/radio-field.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/radio-field.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/select-field.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/select-field.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/select-field.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/select-field.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/text-field.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/text-field.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/text-field.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/text-field.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/textarea-field.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/textarea-field.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/forms/textarea-field.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/forms/textarea-field.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/global/_global.md b/packages/starterkit-handlebars-demo/src/_patterns/molecules/global/_global.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/global/_global.md rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/global/_global.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/global/logo.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/global/logo.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/global/logo.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/global/logo.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/lists/definition-list.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/lists/definition-list.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/lists/definition-list.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/lists/definition-list.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/footer-nav.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/footer-nav.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/footer-nav.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/footer-nav.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/pagination.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/pagination.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/pagination.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/pagination.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/primary-nav.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/primary-nav.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/primary-nav.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/primary-nav.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/progress-tracker.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/progress-tracker.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/navigation/progress-tracker.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/navigation/progress-tracker.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/molecules/text/page-header.hbs b/packages/starterkit-handlebars-demo/src/_patterns/molecules/text/page-header.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/molecules/text/page-header.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/molecules/text/page-header.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/_organisms.md b/packages/starterkit-handlebars-demo/src/_patterns/organisms/_organisms.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/_organisms.md rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/_organisms.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/buttons/button-group.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/buttons/button-group.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/buttons/button-group.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/buttons/button-group.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/forms/form.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/forms/form.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/forms/form.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/forms/form.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/_global.md b/packages/starterkit-handlebars-demo/src/_patterns/organisms/global/_global.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/_global.md rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/global/_global.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/footer.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/global/footer.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/footer.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/global/footer.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/footer.md b/packages/starterkit-handlebars-demo/src/_patterns/organisms/global/footer.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/footer.md rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/global/footer.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/header.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/global/header.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/global/header.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/global/header.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/definition-list-list.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/definition-list-list.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/definition-list-list.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/definition-list-list.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/definition-list-list.json b/packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/definition-list-list.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/definition-list-list.json rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/definition-list-list.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/definition-list-list~lined.json b/packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/definition-list-list~lined.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/definition-list-list~lined.json rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/definition-list-list~lined.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/stacked-block-list.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/stacked-block-list.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/stacked-block-list.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/stacked-block-list.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/stripe-list.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/stripe-list.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/lists/stripe-list.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/lists/stripe-list.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/sections/stacked-block-section.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/sections/stacked-block-section.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/sections/stacked-block-section.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/sections/stacked-block-section.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/tables/table.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/tables/table.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/tables/table.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/tables/table.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/organisms/text/text-passage.hbs b/packages/starterkit-handlebars-demo/src/_patterns/organisms/text/text-passage.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/organisms/text/text-passage.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/organisms/text/text-passage.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/_pages.md b/packages/starterkit-handlebars-demo/src/_patterns/pages/_pages.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/_pages.md rename to packages/starterkit-handlebars-demo/src/_patterns/pages/_pages.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/cart.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/cart.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/cart.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/cart.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/cart.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/cart.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/cart.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/cart.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/cart.md b/packages/starterkit-handlebars-demo/src/_patterns/pages/cart.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/cart.md rename to packages/starterkit-handlebars-demo/src/_patterns/pages/cart.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/category.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/category.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category.md b/packages/starterkit-handlebars-demo/src/_patterns/pages/category.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category.md rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category~holiday-guide.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/category~holiday-guide.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category~holiday-guide.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category~holiday-guide.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category~kids.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/category~kids.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category~kids.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category~kids.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category~men.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/category~men.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category~men.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category~men.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category~on-sale.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/category~on-sale.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category~on-sale.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category~on-sale.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/category~page-two.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/category~page-two.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/category~page-two.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/category~page-two.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/checkout.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/checkout.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/checkout.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/checkout.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout.md b/packages/starterkit-handlebars-demo/src/_patterns/pages/checkout.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout.md rename to packages/starterkit-handlebars-demo/src/_patterns/pages/checkout.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout~billing-same-shipping.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/checkout~billing-same-shipping.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout~billing-same-shipping.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/checkout~billing-same-shipping.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout~billing.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/checkout~billing.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/checkout~billing.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/checkout~billing.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/confirmation.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/confirmation.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/confirmation.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/confirmation.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/confirmation.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/confirmation.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/confirmation.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/confirmation.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/confirmation.md b/packages/starterkit-handlebars-demo/src/_patterns/pages/confirmation.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/confirmation.md rename to packages/starterkit-handlebars-demo/src/_patterns/pages/confirmation.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/detail.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/detail.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/detail.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/detail.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/detail.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/detail.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/detail.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/detail.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/detail.md b/packages/starterkit-handlebars-demo/src/_patterns/pages/detail.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/detail.md rename to packages/starterkit-handlebars-demo/src/_patterns/pages/detail.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/homepage.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/homepage.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/homepage.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/homepage.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/homepage.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/homepage.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/homepage.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/homepage.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/page.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/page.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/page.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/page.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/page.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/page.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/page.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/page.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/review.hbs b/packages/starterkit-handlebars-demo/src/_patterns/pages/review.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/review.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/pages/review.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/review.json b/packages/starterkit-handlebars-demo/src/_patterns/pages/review.json similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/review.json rename to packages/starterkit-handlebars-demo/src/_patterns/pages/review.json diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/pages/review.md b/packages/starterkit-handlebars-demo/src/_patterns/pages/review.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/pages/review.md rename to packages/starterkit-handlebars-demo/src/_patterns/pages/review.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/_templates.md b/packages/starterkit-handlebars-demo/src/_patterns/templates/_templates.md similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/_templates.md rename to packages/starterkit-handlebars-demo/src/_patterns/templates/_templates.md diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/cart.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/cart.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/cart.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/cart.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/category.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/category.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/category.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/category.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/checkout.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/checkout.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/checkout.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/checkout.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/confirmation.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/confirmation.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/confirmation.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/confirmation.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/detail.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/detail.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/detail.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/detail.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/homepage.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/homepage.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/homepage.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/homepage.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/page.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/page.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/page.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/page.hbs diff --git a/packages/starterkit-handlebars-demo/dist/_patterns/templates/review.hbs b/packages/starterkit-handlebars-demo/src/_patterns/templates/review.hbs similarity index 100% rename from packages/starterkit-handlebars-demo/dist/_patterns/templates/review.hbs rename to packages/starterkit-handlebars-demo/src/_patterns/templates/review.hbs diff --git a/packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.css b/packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.css similarity index 91% rename from packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.css rename to packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.css index 7c3f99fa0..b3cd246df 100644 --- a/packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.css +++ b/packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.css @@ -155,10 +155,7 @@ * FPO block within two column fixed layout within secondary section * 1) Width expands entire container at small screens */ -.sg-pattern-example - .l-page-layout--two-column-fixed - .l-page-layout__secondary - .fpo-block { +.sg-pattern-example .l-page-layout--two-column-fixed .l-page-layout__secondary .fpo-block { width: 100%; /* 1 */ } @@ -169,10 +166,7 @@ * 2) Set width = width of vertical header */ @media all and (min-width: 70em) { - .sg-pattern-example - .l-page-layout--two-column-fixed - .l-page-layout__secondary - .fpo-block { + .sg-pattern-example .l-page-layout--two-column-fixed .l-page-layout__secondary .fpo-block { width: 20rem; /* 1 */ height: 100vh; @@ -197,9 +191,7 @@ * 3) Float this left to get layout sections side by side within PL "View All" section */ @media all and (min-width: 70em) { - .sg-pattern-example - .l-page-layout--two-column-fixed - .l-page-layout__secondary { + .sg-pattern-example .l-page-layout--two-column-fixed .l-page-layout__secondary { position: absolute; /* 1 */ height: inherit; @@ -212,10 +204,7 @@ * Fpo block within pattern example, two column fixed, and secondary section * 1) Make fpo block width of the container on small screens */ -.sg-pattern-example - .l-page-layout--two-column-fixed - .l-page-layout__secondary - .fpo-block { +.sg-pattern-example .l-page-layout--two-column-fixed .l-page-layout__secondary .fpo-block { width: 100%; /* 1 */ } @@ -226,10 +215,7 @@ * 2) Height inherits so it doesn't span longer than the pattern window on "All" PL page */ @media all and (min-width: 70em) { - .sg-pattern-example - .l-page-layout--two-column-fixed - .l-page-layout__secondary - .fpo-block { + .sg-pattern-example .l-page-layout--two-column-fixed .l-page-layout__secondary .fpo-block { width: 20rem; /* 1 */ height: inherit; @@ -246,10 +232,7 @@ /** * Add height of fpo block to equal height of main to help with scrolling main window/fixed sidebar effect. */ -.sg-pattern-example - .l-page-layout--two-column-fixed - .l-page-layout__main - .fpo-block { +.sg-pattern-example .l-page-layout--two-column-fixed .l-page-layout__main .fpo-block { height: 30rem; margin-bottom: 0; } diff --git a/packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.css.map b/packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.css.map new file mode 100644 index 000000000..4797caf41 --- /dev/null +++ b/packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.css.map @@ -0,0 +1 @@ +{"version":3,"sourceRoot":"","sources":["pattern-scaffolding.scss","../../../uikit-workshop/src/sass/scss/01-abstracts/_variables.scss","../../../uikit-workshop/src/sass/scss/04-components/_annotations.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;IACA;IACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;EACA;;;AAGF;EACE;;;AAGF;AAAA;AAAA;AAAA;AAIA;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;;;AAGF;AAAA;AAAA;AAAA;AAIA;EAIE;AAAa;;;AAGf;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;IAIE;AAAc;IACd;AAAe;IACf;;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;EACA;;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;EACE;IAGE;AAAoB;IACpB;AAAiB;IACjB;AAAa;;;AAIjB;AAAA;AAAA;AAAA;AAIA;EAIE;AAAa;;;AAGf;AAAA;AAAA;AAAA;AAAA;AAKA;EACE;IAIE;AAAc;IACd;AAAiB;;;AAIrB;AAAA;AAAA;AAGA;EACE;;;AAGF;AAAA;AAAA;AAGA;EAIE;EACA;;;AAGF;AAAA;AAAA;AAGA;EACE;IACE;;;AAIJ;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AC9QF;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;ACFA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;EACE;EACA;EACA;EACA;;AAEA;AAAA;EAEE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAKA;EAIE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAdA;EACE","file":"pattern-scaffolding.css"} \ No newline at end of file diff --git a/packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.scss b/packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/pattern-scaffolding.scss rename to packages/starterkit-handlebars-demo/src/css/pattern-scaffolding.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_colors.scss b/packages/starterkit-handlebars-demo/src/css/scss/abstracts/_colors.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_colors.scss rename to packages/starterkit-handlebars-demo/src/css/scss/abstracts/_colors.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_mixins.scss b/packages/starterkit-handlebars-demo/src/css/scss/abstracts/_mixins.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_mixins.scss rename to packages/starterkit-handlebars-demo/src/css/scss/abstracts/_mixins.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_typography.scss b/packages/starterkit-handlebars-demo/src/css/scss/abstracts/_typography.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_typography.scss rename to packages/starterkit-handlebars-demo/src/css/scss/abstracts/_typography.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_variables.scss b/packages/starterkit-handlebars-demo/src/css/scss/abstracts/_variables.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/abstracts/_variables.scss rename to packages/starterkit-handlebars-demo/src/css/scss/abstracts/_variables.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_body.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_body.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_body.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_body.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_buttons.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_buttons.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_buttons.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_buttons.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_fonts.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_fonts.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_fonts.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_fonts.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_forms.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_forms.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_forms.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_forms.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_headings.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_headings.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_headings.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_headings.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_links.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_links.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_links.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_links.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_lists.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_lists.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_lists.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_lists.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_main.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_main.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_main.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_main.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_media.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_media.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_media.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_media.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_reset.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_reset.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_reset.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_reset.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_table.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_table.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_table.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_table.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/base/_text.scss b/packages/starterkit-handlebars-demo/src/css/scss/base/_text.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/base/_text.scss rename to packages/starterkit-handlebars-demo/src/css/scss/base/_text.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_buttons.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_buttons.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_buttons.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_buttons.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_definition-list-list.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_definition-list-list.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_definition-list-list.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_definition-list-list.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_definition-list.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_definition-list.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_definition-list.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_definition-list.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_field.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_field.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_field.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_field.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_footer-nav.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_footer-nav.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_footer-nav.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_footer-nav.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_footer.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_footer.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_footer.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_footer.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_header.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_header.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_header.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_header.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_hero.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_hero.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_hero.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_hero.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_icon.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_icon.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_icon.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_icon.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_input.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_input.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_input.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_input.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_logo.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_logo.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_logo.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_logo.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_page-header.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_page-header.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_page-header.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_page-header.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_pagination.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_pagination.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_pagination.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_pagination.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_primary-nav.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_primary-nav.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_primary-nav.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_primary-nav.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_progress-tracker.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_progress-tracker.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_progress-tracker.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_progress-tracker.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_promo-block.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_promo-block.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_promo-block.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_promo-block.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_search-form.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_search-form.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_search-form.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_search-form.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_section.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_section.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_section.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_section.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_stacked-block-list.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_stacked-block-list.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_stacked-block-list.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_stacked-block-list.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_stacked-block.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_stacked-block.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_stacked-block.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_stacked-block.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_stripe.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_stripe.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_stripe.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_stripe.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_table.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_table.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_table.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_table.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_text-passage.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_text-passage.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_text-passage.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_text-passage.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_total.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_total.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_total.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_total.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/components/_tout.scss b/packages/starterkit-handlebars-demo/src/css/scss/components/_tout.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/components/_tout.scss rename to packages/starterkit-handlebars-demo/src/css/scss/components/_tout.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/layout/_layout.scss b/packages/starterkit-handlebars-demo/src/css/scss/layout/_layout.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/layout/_layout.scss rename to packages/starterkit-handlebars-demo/src/css/scss/layout/_layout.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/utilities/_spacing.scss b/packages/starterkit-handlebars-demo/src/css/scss/utilities/_spacing.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/utilities/_spacing.scss rename to packages/starterkit-handlebars-demo/src/css/scss/utilities/_spacing.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/scss/utilities/_visibility.scss b/packages/starterkit-handlebars-demo/src/css/scss/utilities/_visibility.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/scss/utilities/_visibility.scss rename to packages/starterkit-handlebars-demo/src/css/scss/utilities/_visibility.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/style.css b/packages/starterkit-handlebars-demo/src/css/style.css similarity index 99% rename from packages/starterkit-handlebars-demo/dist/css/style.css rename to packages/starterkit-handlebars-demo/src/css/style.css index ac31ecb3c..130164996 100644 --- a/packages/starterkit-handlebars-demo/dist/css/style.css +++ b/packages/starterkit-handlebars-demo/src/css/style.css @@ -932,7 +932,7 @@ tr { #HERO BLOCK \*------------------------------------*/ /** - * 1) Sit hero flush with header. Normally we wouldn't + * 1) Sit hero flush with header. Normally we wouldn't * do this and handle margin using utility classes, * but we're taking a shortcut for a demo. */ diff --git a/packages/starterkit-handlebars-demo/src/css/style.css.map b/packages/starterkit-handlebars-demo/src/css/style.css.map new file mode 100644 index 000000000..f667db854 --- /dev/null +++ b/packages/starterkit-handlebars-demo/src/css/style.css.map @@ -0,0 +1 @@ +{"version":3,"sourceRoot":"","sources":["style.scss","scss/abstracts/_variables.scss","scss/abstracts/_mixins.scss","scss/abstracts/_colors.scss","scss/abstracts/_typography.scss","scss/base/_reset.scss","scss/base/_fonts.scss","../../../../node_modules/@fontsource/abel/scss/mixins.scss","../../../../node_modules/@fontsource/raleway/scss/mixins.scss","scss/base/_body.scss","scss/base/_links.scss","scss/base/_lists.scss","scss/base/_headings.scss","scss/base/_forms.scss","scss/base/_buttons.scss","scss/base/_main.scss","scss/base/_media.scss","scss/base/_text.scss","scss/base/_table.scss","scss/layout/_layout.scss","scss/components/_buttons.scss","scss/components/_definition-list.scss","scss/components/_definition-list-list.scss","scss/components/_hero.scss","scss/components/_tout.scss","scss/components/_section.scss","scss/components/_stacked-block.scss","scss/components/_stripe.scss","scss/components/_footer.scss","scss/components/_footer-nav.scss","scss/components/_header.scss","scss/components/_logo.scss","scss/components/_icon.scss","scss/components/_input.scss","scss/components/_page-header.scss","scss/components/_pagination.scss","scss/components/_primary-nav.scss","scss/components/_promo-block.scss","scss/components/_progress-tracker.scss","scss/components/_text-passage.scss","scss/components/_field.scss","scss/components/_search-form.scss","scss/components/_stacked-block-list.scss","scss/components/_total.scss","scss/utilities/_visibility.scss","scss/utilities/_spacing.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA;AAAA;AAAA;ACXA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA+BC;AAAA;AAAA;AAID;AAAA;AAAA;AAAA;AAQA;AAAA;AAAA;AAAA;AAeA;AAAA;AAAA;AAAA;AAAA;AAkBA;AAAA;AAAA;AAIA;AAAA;AAAA;AAOA;AAAA;AAAA;AAWA;AAAA;AAAA;AAcA;AAAA;AAAA;AAIA;AAAA;AAAA;AAWA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAaA;AAAA;AAAA;AAIA;AAAA;AAAA;AAKA;AAAA;AAAA;AASA;AAAA;AAAA;AAIA;AAAA;AAAA;AAMA;AAAA;AAAA;AASA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AC7LA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAUA;AAAA;AAAA;AAQA;AAAA;AAAA;AAaA;AAAA;AAAA;AASA;AAAA;AAAA;AASA;AAAA;AAAA;AASA;AAAA;AAAA;AC9DA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AASA;AAAA;AAAA;AAIA;AAAA;AAAA;AAMA;AAAA;AAAA;AAUA;AAAA;AAAA;AAaA;AAAA;AAAA;AAqBA;AAAA;AAAA;ACnEA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AJeA;AAAA;AAAA;AKnBA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;;;ACvBD;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;ACcI;EACE;EACA,YDTE;ECUF,cAlBI;EAmBJ,aDVG;ECWH;EAEA,eAnBO;;ACYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA,YFHE;EEIF,cAlBI;EAmBJ,aFJG;EEKH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA;EACA,cAlBI;EAmBJ,aFDG;EEEH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;AAYT;EACE;EACA,YFGE;EEFF,cAlBI;EAmBJ,aFEG;EEDH;EAEA,eAnBO;;ACNb;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;AAAmB;;;AAGpB;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;AAAmB;EACnB,aRmEqB;EC9ElB,WDuFY;ECtFZ;EACA;AAAgC;EOWnC,kBR6BqB;EQ5BrB,ORoCuB;;;AS3DxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC,OTkDuB;ESjDvB;EACA;EACA;;AAEA;EACC,OT+BmB;;AS5BpB;EACC,OTyCsB;;;AU3DxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAIC;AAAA;AAAA;AAGD;EACC;;;ACZD;AAAA;AAAA;AAIA;EACC,aXmFuB;EWlFvB;;;AAGD;AAAA;AAAA;AAGA;EVcI,WDyEW;ECxEX;EACA;;AAEA;EUlBJ;IVmBQ,WDqEQ;;;;AWpFhB;AAAA;AAAA;AAGA;EVsCI,WDwCc;ECvCd;EACH;;;AUpCD;AAAA;AAAA;AAGA;EV+BI,WDwCc;ECvCd;EACH;;;AU7BD;AAAA;AAAA;AAGA;EViCI,WD8BY;EC7BZ;EACH;;;AWpED;AAAA;AAAA;AAIA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACG,OZ4CqB;;;AYzCxB;EACG,OZwCqB;;;AYrCxB;EACG,OZoCqB;;;AYjCxB;AAAA;AAAA;AAGA;EACC;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACI;;;AAGJ;AAAA;AAAA;AAGA;EACC;EACG;EACA,OZcoB;;;AYXxB;AAAA;AAAA;AAGA;EACI;EACA,WZ2CY;EY1CZ;;;AAGJ;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACI;EACA;EACA;EACA,YZpBkB;;AYsBlB;EACF,cZfsB;;AYkBpB;EACI,cZzBgB;EY0BhB,YZ1BgB;EY2BhB,OZxBgB;;;AY4BxB;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;AAAA;EAEI;EACA;EACA,cZxCoB;;;AY2CxB;AAAA;AAAA;AAGA;EACI;EACA;;;AAGJ;AAAA;AAAA;AAAA;AAIA;EACI;EACH,WZnBe;EYoBf;EACG;EACA;EACA;EACA;EACA,YZtEkB;EYuElB,OZ/DoB;;AYiEvB;EACC,cZlEsB;;;Aa3DxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACC;;;ACTD;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;;;ACTD;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACC;EACA;;;ACVD;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC,ehBoIS;;;AgBjIV;AAAA;AAAA;AAGA;EACI;EACA;EACA,OhBuCoB;EgBtCvB;EACA,ehByHS;;;AgBtHV;AAAA;AAAA;AAGA;EACC;EACG;EACA,YhB0BoB;EgBzBpB;;;AAGJ;AAAA;AAAA;AAGA;EACC,OhBuBuB;EgBtBvB,YhBiBuB;AgBjBe;;;AAGvC;EACC,OhBkBuB;EgBjBvB,YhBYuB;AgBZe;;;AAGvC;AAAA;AAAA;AAGA;EACC;EACA,YhBEuB;EgBDvB;EACA;EACG;EACA;;;AAGJ;AAAA;AAAA;AAGA;EACC,YhBTuB;EgBUvB;EACA,WhBiCe;EgBhCf;EACG;AAEH;AAAA;AAAA;;AAGA;EACC;;;AAIF;AAAA;AAAA;AAAA;AAIA;AAAA;EAEI;;;ACjFJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACI;EACA;EACA;;;AAGJ;AAAA;AAAA;AAGA;EACI;;;AAGJ;AAAA;AAAA;AAGA;EACI;;;AlBWJ;AAAA;AAAA;AmBnCA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC,WlBiHa;EkBhHb;EACA;;AAEA;EALD;IAME;;;;AAIF;EACC,WlBwGoB;;;AkBrGrB;AAAA;AAAA;AAAA;AAAA;AAKA;EACI,WlBgGiB;;;AkB7FrB;EACC,YlBmBuB;EkBlBvB;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;AAEA;EAJD;IAKE;;;;AAMA;EADD;IAEE;IACA,elBuFO;;;;AkBlFV;AAAA;AAAA;AAME;EADD;IAEE;IACA;;;AAIF;EACC;;AAEA;EAHD;IAIE;IACA;;;;AAOH;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;;AAEA;EAJD;IAKE;IACA,UlB+Cc;IkB9Cd;IACA;;;;AAIF;AAAA;AAAA;AAGA;EACC;;;AnBjED;AAAA;AAAA;AoBxCA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACC;EACA;EACA,YnBgCkB;EmB/BlB,OnBuCqB;EmBtCrB;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC,OnB8BoB;EmB7BpB,YnBsBsB;;;AmBlBxB;EACC;EACA,OnBekB;EmBdlB;;AAEA;EACC;EACA,OnBUiB;EmBTjB,cnBSiB;;;AmBLnB;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;EACC;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;EACA,MnBLqB;EmBMrB;;;ACzDD;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;AAEA;EAHD;IAIE;;;;AAIF;AAAA;AAAA;AAGA;EACG;EACA;EACA;;AAEA;EALH;IAMI;;;;AAIJ;AAAA;AAAA;ACnCA;AAAA;AAAA;AAIA;AAAA;AAAA;AAIA;AAAA;AAAA;AAIC;EACC;EACA;;;ACdF;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;EACA;EACA;AAAsB;;;AAGvB;AAAA;AAAA;AAAA;AAIA;EACC;EACA;EACA;EACA;EACA;;;AAGD;EACC,YtBiBoB;EsBhBpB,StB+GS;;AsB7GT;EAJD;IAKE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;;;AASF;AAAA;AAAA;AAAA;AAIA;EACC;EACA,WtBwCc;EsBvCd,kBtBfoB;EsBgBpB,OtBVqB;EsBWrB;;AAEA;EAPD;IAQE;IACA,WtBkCc;;;;AuBnGhB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACI;EACH;EACG;EACA;;;AAGJ;AAAA;AAAA;AAIC;EACC;;;AAGF;AAAA;AAAA;AAGA;EACI;EACA;EACA;EACA;EACH;EACA;EACG,OvBkBkB;EuBjBlB;EACA;EACA;;AAEA;EACI;EACA,YvBGW;;;AwB3CnB;AAAA;AAAA;AAGA;AAAA;AAAA;AAGC;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA,YxB2BY;;;AwBvBpB;EACI,WxB2Ea;;;AyBlGlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAKA;EACC;EACA;EACG;EACH;AAAkB;EAClB;;AAEC;EACA;;;AAIF;EACI;;;AAGJ;EACC;EACA;EACA,OzBekB;EyBdlB;;AAEA;EACC,OzBamB;;;AyBTrB;EACC;EACA,OzBoBuB;;;AyBjBxB;EACC,OzBCkB;EyBAf,WzBsDc;EyBrDjB,azB4CuB;EyB3CvB;EACA;;AAEA;EACC,OzBJmB;;;AyBQrB;EACI;EACA;EACA;EACA;EACA;EACA,azB6BoB;EyB5BpB;EACA,OzBVkB;EyBWlB,YzBjBiB;;;AyBoBrB;EACI;EACA,OzBXoB;EyBYpB,azBoBoB;EyBnBpB,WzB0Ba;EyBzBb;;;ACtEJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;AAEA;EAHD;IAIE;;;AAGD;EACC;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACI;;AAEH;EAHD;IAIE;;;AAGD;EACC;;;AAIF;EACC;;AAEA;EAHD;IAIE;;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACC;;AAEA;EAHD;IAIK;IACH;;;;AAIF;EACC;;AAEA;EAHD;IAIE;IACA;IACA;;;;AAMD;EAFD;IAGE;IACA;IACA;IACA;IACA;;;;AAIF;EACC;EACA;;;AAGD;EACC,a1BKuB;E0BJvB,O1BzCkB;E0B0ClB,W1BYiB;;;A0BRlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGC;EACI;;;ACjGL;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;EACA,Y3BkCuB;;;A2B9BvB;EADD;IAEE;;;;AAKD;EADD;IAEE;;;;AAIF;EACC,O3ByBqB;E2BxBrB;EACA,a3B4DuB;E2B3DvB,W3BkEgB;;A2BhEhB;EACC,O3BamB;;A2BXnB;EACC,O3BqBqB;;;A4BxDxB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;AAEA;EAHD;IAIE;IACA;;;;AAMD;EAFD;IAGE;;EAEA;IACC;;;;AAKH;EACC,O5BuBqB;E4BtBrB,a5B2DuB;E4B1DvB;EACA,W5BkEiB;;;A6BjGlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;EACA;;;AAGD;AAAA;AAAA;AAGA;EACC;EACA;;AAEA;EAJD;IAKE;IACA;;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACC;;AAEA;EAHD;IAIE;;;;AAIF;AAAA;AAAA;AAAA;AAIA;EACC;AAOA;AAAA;AAAA;;AALA;EAHD;IAIE;IACA;;;AAOA;EADD;IAEE;;;;AAKH;AAAA;AAAA;AAGA;EACC;EACA;EACA,Y7BbuB;E6BcvB;EACA;EACA;EACA;EACA;AAUA;AAAA;AAAA;;AARA;EAVD;IAWE;IACA;IACA;IACA;IACA;;;AAOA;EADD;IAEE;IACA;;;;ACvFH;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC,W9B0FiB;;A8BxFjB;EACC;;AAEA;EAHD;IAIE;;;;AAKH;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;EACC,O9BSkB;;A8BPlB;EACC,O9BcoB;;;A8BXtB;EACC,O9BIoB;;;A+B7CrB;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA;;;ACTD;AAAA;AAAA;AAIA;AAAA;AAAA;AAIC;EACC;;;ACTF;AAAA;AAAA;AAGA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;EACA,ejCkIe;;;AiC/HhB;AAAA;AAAA;AAGA;EACC;;;ACnBD;AAAA;AAAA;AAGA;AAAA;AAAA;AAGA;EACC;EACA;EACA;EACA;EACA;EACA,alC4EuB;EkC3EvB;;;AAGD;EACC;;AAEA;EACC;;;AAIF;EACC;EACA;;AAEA;EACC;;AAGD;EACC;EACA;EACA;;AAGD;EACC,OlCesB;EkCdtB;EACA;;;ACzCF;AAAA;AAAA;AAIA;AAAA;AAAA;AAME;EAFD;IAGE;;;;AAIH;AAAA;AAAA;AAGA;EACC;EACG;;;AAGJ;AAAA;AAAA;AAGA;EACC;;AAEG;EACI;;;AAIR;AAAA;AAAA;AAGA;EACC;EACA;EACA,anCgDuB;EmC/CvB,WnCwDiB;EmCvDd;EACH;EACG;;AAEA;EACI,OnCFa;;;AmCMrB;EACI,MnCRoB;EmCSpB;EACA;;;ACtDJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;EACC,OpCwCqB;EoCvCrB;EACA;AAAmB;;;AAGpB;EACC;EACA;;AAEA;EACC;EACA;EAMA;EACA;EACA;EACA;EACA;;AAEA;EACC;;;AAYH;EACC;EACA;EACA;EACA;EACA;EACA;;AAGA;EACC;EACA;;AAGD;EACC;EACA;;;AAIF;EACC;EACA;;;AAGD;EACC,OpCtBqB;;AoCwBrB;EAEC,OpChCmB;;;AoCoCrB;EACC;EACA;EACA;EACA,WpCaiB;;AoCXjB;EAND;IAOE,WpCWa;;;;AoCPf;EACC;;AAEA;EAHD;IAIE,WpCCgB;;;;AqCjGlB;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAMA;EACC;AAAe;EACZ;EACH;AAAiB;;;AAGlB;AACA;EACI;EACA;EACA,WrC2Ea;EqC1Eb;AAEA;;AACA;EACI;;;AAKR;EACI;EACA;EACA,OrCUe;EqCTf;EACA,kBrCgBkB;EqCflB;;AAEA;EARJ;IASQ;;;AAGJ;EACI,kBrCWgB;EqCVhB,crCUgB;;AqCPpB;EACI,OrCGc;EqCFd,kBrCNW;EqCOX;;AAGJ;EACI,OrCVgB;EqCWhB,crCZW;;AqCef;EACI;EACA;EACA;EACA;EACA,kBrCTgB;EqCUhB;EACA;EACA;EACA;;;AAIR;EACI;AAEA;;AACA;EAJJ;IAKQ;;;AAGJ;EACI;;;AChFR;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;AAMC;AAAA;AAAA;AAOA;AAAA;AAAA;AAUC;AAAA;AAAA;AAOD;AAAA;AAAA;AASA;AAAA;AAAA;AAOA;AAAA;AAAA;AAOA;AAAA;AAAA;AAOA;AAAA;AAAA;AAQA;AAAA;AAAA;AAaA;AAAA;AAAA;;AA/EA;EACC;;AAMD;EACC;;AAMD;EACC;EACA;EACA,OtC8BsB;EsC7BtB;;AAMA;EACC;;AAMF;EACC;EACA,OtCgBsB;EsCftB;;AAMD;EACC;;AAMD;EACC;;AAMD;EACC;;AAMD;EACC;;AAOD;EACC;EACA;EACA;;AAEA;EACC;;AAOF;EACC;EACA;EACA;;AAEA;EACC;;AAIF;EACC;EACA;;;ACvGF;AAAA;AAAA;AAIA;AAAA;AAAA;AAGC;EACA,evCsIe;;;AuCnIhB;AAAA;AAAA;AAGA;EACC;EACG,WvCgFY;EuC/EZ;;;AAGJ;AAAA;AAAA;AAGA;EACI;;;AAGJ;AAAA;AAAA;AAGA;EACI;EACA,WvC8DW;EuC7DX,OvCuBoB;;;AwCxDxB;AAAA;AAAA;AAGA;AAAA;AAAA;AAIA;AAAA;AAAA;AAGA;EACC;;;ACXD;EACC,WzC0Ha;EyCzHb,ezC4Ie;;;A0C7IhB;AAAA;AAAA;AAIA;AAAA;AAAA;AAIA;EACI;;AAEA;EAHJ;IAIQ;;;;AAIR;EACI;EACA;;AAEA;EAJJ;IAKQ;;;;AAIR;EACI;;AAEA;EAHJ;IAIQ;;;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAEA;EAHJ;IAIQ;;;;AAKZ;EACI,a1CuCoB;E0CtCpB,W1C+Cc;E0C9Cd,O1CRe;;A0CUf;EACI;;AAEA;EAHJ;IAIQ;;;;A3CWZ;AAAA;AAAA;A4CpEA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;EACI;EACA;;;AAGJ;AAAA;AAAA;AAAA;AAIA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;ACxBJ;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIC;EACA;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;EACC;;AAEA;EAHD;IAIE;;;;AAGF;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAAA;AAIA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC;;;AAGD;AAAA;AAAA;AAGA;EACC","file":"style.css"} \ No newline at end of file diff --git a/packages/starterkit-handlebars-demo/dist/css/style.scss b/packages/starterkit-handlebars-demo/src/css/style.scss similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/style.scss rename to packages/starterkit-handlebars-demo/src/css/style.scss diff --git a/packages/starterkit-handlebars-demo/dist/css/svg-sprite.css b/packages/starterkit-handlebars-demo/src/css/svg-sprite.css similarity index 100% rename from packages/starterkit-handlebars-demo/dist/css/svg-sprite.css rename to packages/starterkit-handlebars-demo/src/css/svg-sprite.css diff --git a/packages/edition-node/source/favicon.ico b/packages/starterkit-handlebars-demo/src/favicon.ico similarity index 100% rename from packages/edition-node/source/favicon.ico rename to packages/starterkit-handlebars-demo/src/favicon.ico diff --git a/packages/starterkit-handlebars-demo/src/fonts/.gitkeep b/packages/starterkit-handlebars-demo/src/fonts/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/packages/starterkit-handlebars-demo/dist/fonts/abel-all-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/abel-all-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/abel-all-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/abel-all-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/abel-latin-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/abel-latin-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/abel-latin-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/abel-latin-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/abel-latin-400-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/abel-latin-400-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/abel-latin-400-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/abel-latin-400-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-all-400-italic.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-all-400-italic.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-all-400-italic.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-all-400-italic.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-all-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-all-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-all-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-all-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-all-700-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-all-700-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-all-700-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-all-700-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-italic.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-italic.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-italic.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-italic.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-italic.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-italic.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-italic.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-italic.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-400-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-400-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-700-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-700-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-700-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-700-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-700-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-700-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-700-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-700-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-italic.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-italic.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-italic.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-italic.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-italic.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-italic.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-italic.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-italic.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-400-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-400-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-700-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-700-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-700-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-700-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-700-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-700-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-cyrillic-ext-700-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-cyrillic-ext-700-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-italic.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-italic.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-italic.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-italic.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-italic.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-italic.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-italic.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-italic.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-400-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-400-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-700-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-700-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-700-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-700-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-700-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-700-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-700-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-700-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-italic.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-italic.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-italic.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-italic.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-italic.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-italic.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-italic.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-italic.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-400-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-400-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-700-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-700-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-700-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-700-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-700-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-700-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-latin-ext-700-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-latin-ext-700-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-italic.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-italic.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-italic.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-italic.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-italic.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-italic.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-italic.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-italic.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-400-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-400-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-700-normal.woff b/packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-700-normal.woff similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-700-normal.woff rename to packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-700-normal.woff diff --git a/packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-700-normal.woff2 b/packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-700-normal.woff2 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/fonts/raleway-vietnamese-700-normal.woff2 rename to packages/starterkit-handlebars-demo/src/fonts/raleway-vietnamese-700-normal.woff2 diff --git a/packages/starterkit-handlebars-demo/dist/images/girls-high-tops.jpg b/packages/starterkit-handlebars-demo/src/images/girls-high-tops.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/girls-high-tops.jpg rename to packages/starterkit-handlebars-demo/src/images/girls-high-tops.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/girls-nike.jpg b/packages/starterkit-handlebars-demo/src/images/girls-nike.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/girls-nike.jpg rename to packages/starterkit-handlebars-demo/src/images/girls-nike.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/group-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/group-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/group-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/group-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/holiday.jpg b/packages/starterkit-handlebars-demo/src/images/holiday.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/holiday.jpg rename to packages/starterkit-handlebars-demo/src/images/holiday.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/minus.svg b/packages/starterkit-handlebars-demo/src/images/icons/minus.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/minus.svg rename to packages/starterkit-handlebars-demo/src/images/icons/minus.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/plus.svg b/packages/starterkit-handlebars-demo/src/images/icons/plus.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/plus.svg rename to packages/starterkit-handlebars-demo/src/images/icons/plus.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/search.svg b/packages/starterkit-handlebars-demo/src/images/icons/search.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/search.svg rename to packages/starterkit-handlebars-demo/src/images/icons/search.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/shopping-cart.svg b/packages/starterkit-handlebars-demo/src/images/icons/shopping-cart.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/shopping-cart.svg rename to packages/starterkit-handlebars-demo/src/images/icons/shopping-cart.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/triangle-down.svg b/packages/starterkit-handlebars-demo/src/images/icons/triangle-down.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/triangle-down.svg rename to packages/starterkit-handlebars-demo/src/images/icons/triangle-down.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/triangle-left.svg b/packages/starterkit-handlebars-demo/src/images/icons/triangle-left.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/triangle-left.svg rename to packages/starterkit-handlebars-demo/src/images/icons/triangle-left.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/triangle-right.svg b/packages/starterkit-handlebars-demo/src/images/icons/triangle-right.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/triangle-right.svg rename to packages/starterkit-handlebars-demo/src/images/icons/triangle-right.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/icons/triangle-up.svg b/packages/starterkit-handlebars-demo/src/images/icons/triangle-up.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/icons/triangle-up.svg rename to packages/starterkit-handlebars-demo/src/images/icons/triangle-up.svg diff --git a/packages/starterkit-handlebars-demo/dist/images/kids-green-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/kids-green-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/kids-green-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/kids-green-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/kids-technicolor-nikes.jpg b/packages/starterkit-handlebars-demo/src/images/kids-technicolor-nikes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/kids-technicolor-nikes.jpg rename to packages/starterkit-handlebars-demo/src/images/kids-technicolor-nikes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/kids-velcro.jpg b/packages/starterkit-handlebars-demo/src/images/kids-velcro.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/kids-velcro.jpg rename to packages/starterkit-handlebars-demo/src/images/kids-velcro.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-blue-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/men-blue-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-blue-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/men-blue-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-brown-dress-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/men-brown-dress-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-brown-dress-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/men-brown-dress-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-brown-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/men-brown-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-brown-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/men-brown-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-casual-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/men-casual-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-casual-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/men-casual-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-chucks.jpg b/packages/starterkit-handlebars-demo/src/images/men-chucks.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-chucks.jpg rename to packages/starterkit-handlebars-demo/src/images/men-chucks.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-gray-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/men-gray-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-gray-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/men-gray-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-loafers.jpg b/packages/starterkit-handlebars-demo/src/images/men-loafers.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-loafers.jpg rename to packages/starterkit-handlebars-demo/src/images/men-loafers.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-walking-shoes.jpg b/packages/starterkit-handlebars-demo/src/images/men-walking-shoes.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-walking-shoes.jpg rename to packages/starterkit-handlebars-demo/src/images/men-walking-shoes.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/men-winter-boots.jpg b/packages/starterkit-handlebars-demo/src/images/men-winter-boots.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/men-winter-boots.jpg rename to packages/starterkit-handlebars-demo/src/images/men-winter-boots.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-adidas.jpg b/packages/starterkit-handlebars-demo/src/images/women-adidas.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-adidas.jpg rename to packages/starterkit-handlebars-demo/src/images/women-adidas.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-blue-heels.jpg b/packages/starterkit-handlebars-demo/src/images/women-blue-heels.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-blue-heels.jpg rename to packages/starterkit-handlebars-demo/src/images/women-blue-heels.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-boot-wedges.jpg b/packages/starterkit-handlebars-demo/src/images/women-boot-wedges.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-boot-wedges.jpg rename to packages/starterkit-handlebars-demo/src/images/women-boot-wedges.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-boots.jpg b/packages/starterkit-handlebars-demo/src/images/women-boots.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-boots.jpg rename to packages/starterkit-handlebars-demo/src/images/women-boots.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-colorful.jpg b/packages/starterkit-handlebars-demo/src/images/women-colorful.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-colorful.jpg rename to packages/starterkit-handlebars-demo/src/images/women-colorful.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-combat-boots.jpg b/packages/starterkit-handlebars-demo/src/images/women-combat-boots.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-combat-boots.jpg rename to packages/starterkit-handlebars-demo/src/images/women-combat-boots.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-hiking-boots.jpg b/packages/starterkit-handlebars-demo/src/images/women-hiking-boots.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-hiking-boots.jpg rename to packages/starterkit-handlebars-demo/src/images/women-hiking-boots.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-leather-booties.jpg b/packages/starterkit-handlebars-demo/src/images/women-leather-booties.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-leather-booties.jpg rename to packages/starterkit-handlebars-demo/src/images/women-leather-booties.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-shiny-sneakers.jpg b/packages/starterkit-handlebars-demo/src/images/women-shiny-sneakers.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-shiny-sneakers.jpg rename to packages/starterkit-handlebars-demo/src/images/women-shiny-sneakers.jpg diff --git a/packages/starterkit-handlebars-demo/dist/images/women-white-heels.jpg b/packages/starterkit-handlebars-demo/src/images/women-white-heels.jpg similarity index 100% rename from packages/starterkit-handlebars-demo/dist/images/women-white-heels.jpg rename to packages/starterkit-handlebars-demo/src/images/women-white-heels.jpg diff --git a/packages/starterkit-handlebars-demo/src/index.ts b/packages/starterkit-handlebars-demo/src/index.ts new file mode 100644 index 000000000..e69de29bb diff --git a/packages/starterkit-handlebars-demo/dist/js/primary-nav.js b/packages/starterkit-handlebars-demo/src/js/primary-nav.js similarity index 100% rename from packages/starterkit-handlebars-demo/dist/js/primary-nav.js rename to packages/starterkit-handlebars-demo/src/js/primary-nav.js diff --git a/packages/starterkit-handlebars-demo/dist/js/promo-block.js b/packages/starterkit-handlebars-demo/src/js/promo-block.js similarity index 100% rename from packages/starterkit-handlebars-demo/dist/js/promo-block.js rename to packages/starterkit-handlebars-demo/src/js/promo-block.js diff --git a/packages/starterkit-handlebars-demo/dist/styleguide/css/styleguide-specific.css b/packages/starterkit-handlebars-demo/src/styleguide/css/styleguide-specific.css similarity index 100% rename from packages/starterkit-handlebars-demo/dist/styleguide/css/styleguide-specific.css rename to packages/starterkit-handlebars-demo/src/styleguide/css/styleguide-specific.css diff --git a/packages/starterkit-handlebars-demo/dist/styleguide/css/styleguide-specific.min.css b/packages/starterkit-handlebars-demo/src/styleguide/css/styleguide-specific.min.css similarity index 100% rename from packages/starterkit-handlebars-demo/dist/styleguide/css/styleguide-specific.min.css rename to packages/starterkit-handlebars-demo/src/styleguide/css/styleguide-specific.min.css diff --git a/packages/starterkit-handlebars-demo/tsconfig.json b/packages/starterkit-handlebars-demo/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/starterkit-handlebars-demo/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/starterkit-handlebars-demo/tsconfig.lib.json b/packages/starterkit-handlebars-demo/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/starterkit-handlebars-demo/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/starterkit-handlebars-demo/tsconfig.spec.json b/packages/starterkit-handlebars-demo/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/starterkit-handlebars-demo/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/starterkit-twig-demo/.eslintrc.json b/packages/starterkit-twig-demo/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/starterkit-twig-demo/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/starterkit-twig-demo/dist/css/pattern-scaffolding.css b/packages/starterkit-twig-demo/dist/css/pattern-scaffolding.css deleted file mode 100755 index b09172fc8..000000000 --- a/packages/starterkit-twig-demo/dist/css/pattern-scaffolding.css +++ /dev/null @@ -1,54 +0,0 @@ -/** - * This stylesheet is for styles you want to include only when displaying demo - * styles for grids, animations, color swatches, etc. - * These styles will not be your production CSS. - */ -#sg-patterns { - -webkit-box-sizing: border-box !important; - box-sizing: border-box !important; - max-width: 100%; - padding: 0 0.5em; -} - -.demo-animate { - background: #ddd; - padding: 1em; - margin-bottom: 1em; - text-align: center; - border-radius: 8px; - cursor: pointer; -} - -.sg-colors { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - list-style: none !important; - padding: 0 !important; - margin: 0 !important; -} -.sg-colors li { - -webkit-box-flex: 1; - -ms-flex: auto; - flex: auto; - padding: 0.3em; - margin: 0 0.5em 0.5em 0; - min-width: 5em; - max-width: 14em; - border: 1px solid #ddd; - border-radius: 8px; -} - -.sg-swatch { - display: block; - height: 4em; - margin-bottom: 0.3em; - border-radius: 5px; -} - -.sg-label { - font-size: 90%; - line-height: 1; -} diff --git a/packages/starterkit-twig-demo/dist/favicon.ico b/packages/starterkit-twig-demo/dist/favicon.ico deleted file mode 100755 index eee4aa78f..000000000 Binary files a/packages/starterkit-twig-demo/dist/favicon.ico and /dev/null differ diff --git a/packages/starterkit-twig-demo/jest.config.ts b/packages/starterkit-twig-demo/jest.config.ts new file mode 100644 index 000000000..0e3a57324 --- /dev/null +++ b/packages/starterkit-twig-demo/jest.config.ts @@ -0,0 +1,16 @@ +/* eslint-disable */ +export default { + displayName: 'starterkit-twig-demo', + preset: '../../jest.preset.js', + globals: {}, + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/starterkit-twig-demo', +}; diff --git a/packages/starterkit-twig-demo/package.json b/packages/starterkit-twig-demo/package.json index 2513c47b1..68dec7da9 100755 --- a/packages/starterkit-twig-demo/package.json +++ b/packages/starterkit-twig-demo/package.json @@ -19,9 +19,6 @@ "url": "https://github.com/pattern-lab/patternlab-node/issues" }, "homepage": "https://github.com/pattern-lab/patternlab-node/tree/dev/packages/starterkit-twig-demo", - "publishConfig": { - "access": "public" - }, "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac", "engines": { "node": ">=14.21.1" diff --git a/packages/starterkit-twig-demo/project.json b/packages/starterkit-twig-demo/project.json new file mode 100644 index 000000000..2159946c1 --- /dev/null +++ b/packages/starterkit-twig-demo/project.json @@ -0,0 +1,64 @@ +{ + "name": "starterkit-twig-demo", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/starterkit-twig-demo/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/starterkit-twig-demo", + "main": "packages/starterkit-twig-demo/src/index.ts", + "tsConfig": "packages/starterkit-twig-demo/tsconfig.lib.json", + "assets": [ + "packages/starterkit-twig-demo/*.md", + "packages/starterkit-twig-demo/LICENSE", + "packages/starterkit-twig-demo/composer.json", + "packages/starterkit-twig-demo/patternlab-config.json", + { + "glob": "**/*", + "input": "packages/starterkit-twig-demo/src", + "output": "dist", + "ignore": ["index.ts"] + } + ] + } + }, + "publish": { + "executor": "nx:run-commands", + "options": { + "command": "node tools/scripts/publish.mjs starterkit-twig-demo {args.ver} {args.tag}" + }, + "dependsOn": ["build"] + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/starterkit-twig-demo/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/starterkit-twig-demo/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/edition-twig/source/_annotations/annotations.json b/packages/starterkit-twig-demo/src/_annotations/annotations.json old mode 100755 new mode 100644 similarity index 100% rename from packages/edition-twig/source/_annotations/annotations.json rename to packages/starterkit-twig-demo/src/_annotations/annotations.json diff --git a/packages/starterkit-twig-demo/dist/_data/data.json b/packages/starterkit-twig-demo/src/_data/data.json old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/_data/data.json rename to packages/starterkit-twig-demo/src/_data/data.json diff --git a/packages/starterkit-twig-demo/dist/_data/listitems.json b/packages/starterkit-twig-demo/src/_data/listitems.json old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/_data/listitems.json rename to packages/starterkit-twig-demo/src/_data/listitems.json diff --git a/packages/starterkit-twig-demo/dist/_layouts/.gitkeep b/packages/starterkit-twig-demo/src/_layouts/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/_layouts/.gitkeep rename to packages/starterkit-twig-demo/src/_layouts/.gitkeep diff --git a/packages/starterkit-twig-demo/dist/_macros/.gitkeep b/packages/starterkit-twig-demo/src/_macros/.gitkeep old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/_macros/.gitkeep rename to packages/starterkit-twig-demo/src/_macros/.gitkeep diff --git a/packages/starterkit-twig-demo/dist/_macros/forms.twig b/packages/starterkit-twig-demo/src/_macros/forms.twig old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/_macros/forms.twig rename to packages/starterkit-twig-demo/src/_macros/forms.twig diff --git a/packages/starterkit-twig-demo/dist/_meta/_foot.twig b/packages/starterkit-twig-demo/src/_meta/_foot.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_meta/_foot.twig rename to packages/starterkit-twig-demo/src/_meta/_foot.twig diff --git a/packages/starterkit-twig-demo/dist/_meta/_head.twig b/packages/starterkit-twig-demo/src/_meta/_head.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_meta/_head.twig rename to packages/starterkit-twig-demo/src/_meta/_head.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/_atoms.md b/packages/starterkit-twig-demo/src/_patterns/atoms/_atoms.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/_atoms.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/_atoms.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/buttons/_buttons.md b/packages/starterkit-twig-demo/src/_patterns/atoms/buttons/_buttons.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/buttons/_buttons.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/buttons/_buttons.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/buttons/buttons.md b/packages/starterkit-twig-demo/src/_patterns/atoms/buttons/buttons.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/buttons/buttons.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/buttons/buttons.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/buttons/buttons.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/buttons/buttons.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/buttons/buttons.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/buttons/buttons.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/_forms.md b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/_forms.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/_forms.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/_forms.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/checkbox.md b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/checkbox.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/checkbox.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/checkbox.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/checkbox.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/checkbox.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/checkbox.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/checkbox.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/html5-inputs.md b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/html5-inputs.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/html5-inputs.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/html5-inputs.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/html5-inputs.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/html5-inputs.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/html5-inputs.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/html5-inputs.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/radio-buttons.md b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/radio-buttons.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/radio-buttons.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/radio-buttons.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/radio-buttons.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/radio-buttons.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/radio-buttons.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/radio-buttons.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/select-menu.md b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/select-menu.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/select-menu.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/select-menu.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/select-menu.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/select-menu.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/select-menu.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/select-menu.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/text-fields.md b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/text-fields.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/text-fields.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/text-fields.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/forms/text-fields.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/forms/text-fields.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/forms/text-fields.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/forms/text-fields.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/_global.md b/packages/starterkit-twig-demo/src/_patterns/atoms/global/_global.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/_global.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/_global.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/animations.md b/packages/starterkit-twig-demo/src/_patterns/atoms/global/animations.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/animations.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/animations.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/animations.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/global/animations.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/animations.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/animations.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/colors.md b/packages/starterkit-twig-demo/src/_patterns/atoms/global/colors.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/colors.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/colors.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/colors.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/global/colors.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/colors.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/colors.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/fonts.md b/packages/starterkit-twig-demo/src/_patterns/atoms/global/fonts.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/fonts.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/fonts.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/fonts.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/global/fonts.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/fonts.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/fonts.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/visibility.md b/packages/starterkit-twig-demo/src/_patterns/atoms/global/visibility.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/visibility.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/visibility.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/global/visibility.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/global/visibility.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/global/visibility.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/global/visibility.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/_images.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/_images.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/_images.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/_images.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/avatar.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/avatar.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/avatar.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/avatar.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/avatar.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/avatar.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/avatar.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/avatar.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/favicon.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/favicon.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/favicon.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/favicon.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/favicon.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/favicon.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/favicon.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/favicon.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/icons.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/icons.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/icons.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/icons.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/icons.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/icons.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/icons.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/icons.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-16x9.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-16x9.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-16x9.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-16x9.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-16x9.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-16x9.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-16x9.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-16x9.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-4x3.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-4x3.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-4x3.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-4x3.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-4x3.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-4x3.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/landscape-4x3.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/landscape-4x3.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/loading-icon.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/loading-icon.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/loading-icon.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/loading-icon.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/loading-icon.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/loading-icon.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/loading-icon.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/loading-icon.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/logo.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/logo.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/logo.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/logo.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/logo.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/logo.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/logo.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/logo.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/square.md b/packages/starterkit-twig-demo/src/_patterns/atoms/images/square.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/square.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/square.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/images/square.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/images/square.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/images/square.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/images/square.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/lists/_lists.md b/packages/starterkit-twig-demo/src/_patterns/atoms/lists/_lists.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/lists/_lists.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/lists/_lists.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/lists/definition.md b/packages/starterkit-twig-demo/src/_patterns/atoms/lists/definition.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/lists/definition.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/lists/definition.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/lists/definition.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/lists/definition.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/lists/definition.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/lists/definition.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/lists/ordered.md b/packages/starterkit-twig-demo/src/_patterns/atoms/lists/ordered.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/lists/ordered.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/lists/ordered.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/lists/ordered.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/lists/ordered.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/lists/ordered.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/lists/ordered.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/lists/unordered.md b/packages/starterkit-twig-demo/src/_patterns/atoms/lists/unordered.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/lists/unordered.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/lists/unordered.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/lists/unordered.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/lists/unordered.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/lists/unordered.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/lists/unordered.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/media/_media.md b/packages/starterkit-twig-demo/src/_patterns/atoms/media/_media.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/media/_media.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/media/_media.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/media/audio.md b/packages/starterkit-twig-demo/src/_patterns/atoms/media/audio.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/media/audio.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/media/audio.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/media/audio.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/media/audio.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/media/audio.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/media/audio.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/media/video.md b/packages/starterkit-twig-demo/src/_patterns/atoms/media/video.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/media/video.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/media/video.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/media/video.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/media/video.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/media/video.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/media/video.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/tables/_tables.md b/packages/starterkit-twig-demo/src/_patterns/atoms/tables/_tables.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/tables/_tables.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/tables/_tables.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/tables/table.md b/packages/starterkit-twig-demo/src/_patterns/atoms/tables/table.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/tables/table.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/tables/table.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/tables/table.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/tables/table.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/tables/table.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/tables/table.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/_text.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/_text.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/_text.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/_text.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/blockquote.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/blockquote.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/blockquote.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/blockquote.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/blockquote.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/text/blockquote.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/blockquote.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/blockquote.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/headings.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/headings.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/headings.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/headings.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/headings.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/text/headings.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/headings.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/headings.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/hr.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/hr.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/hr.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/hr.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/hr.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/text/hr.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/hr.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/hr.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/inline-elements.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/inline-elements.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/inline-elements.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/inline-elements.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/inline-elements.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/text/inline-elements.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/inline-elements.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/inline-elements.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/paragraph.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/paragraph.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/paragraph.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/paragraph.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/paragraph.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/text/paragraph.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/paragraph.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/paragraph.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/preformatted-text.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/preformatted-text.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/preformatted-text.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/preformatted-text.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/preformatted-text.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/text/preformatted-text.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/preformatted-text.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/preformatted-text.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/time.md b/packages/starterkit-twig-demo/src/_patterns/atoms/text/time.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/time.md rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/time.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/atoms/text/time.twig b/packages/starterkit-twig-demo/src/_patterns/atoms/text/time.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/atoms/text/time.twig rename to packages/starterkit-twig-demo/src/_patterns/atoms/text/time.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/_molecules.md b/packages/starterkit-twig-demo/src/_patterns/molecules/_molecules.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/_molecules.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/_molecules.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/_blocks.md b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/_blocks.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/_blocks.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/_blocks.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline-byline.md b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline-byline.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline-byline.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline-byline.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline-byline.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline-byline.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline-byline.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline-byline.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline.md b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-headline.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-headline.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-hero.md b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-hero.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-hero.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-hero.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-hero.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-hero.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-hero.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-hero.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-inset.md b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-inset.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-inset.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-inset.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-inset.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-inset.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-inset.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-inset.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-thumb-headline.md b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-thumb-headline.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-thumb-headline.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-thumb-headline.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-thumb-headline.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-thumb-headline.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/block-thumb-headline.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/block-thumb-headline.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/media-block.md b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/media-block.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/media-block.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/media-block.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/media-block.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/blocks/media-block.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/blocks/media-block.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/blocks/media-block.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/components/_components.md b/packages/starterkit-twig-demo/src/_patterns/molecules/components/_components.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/components/_components.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/components/_components.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/components/accordion.md b/packages/starterkit-twig-demo/src/_patterns/molecules/components/accordion.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/components/accordion.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/components/accordion.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/components/accordion.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/components/accordion.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/components/accordion.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/components/accordion.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/components/single-comment.md b/packages/starterkit-twig-demo/src/_patterns/molecules/components/single-comment.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/components/single-comment.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/components/single-comment.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/components/single-comment.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/components/single-comment.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/components/single-comment.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/components/single-comment.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/components/social-share.md b/packages/starterkit-twig-demo/src/_patterns/molecules/components/social-share.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/components/social-share.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/components/social-share.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/components/social-share.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/components/social-share.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/components/social-share.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/components/social-share.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/forms/_forms.md b/packages/starterkit-twig-demo/src/_patterns/molecules/forms/_forms.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/forms/_forms.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/forms/_forms.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/forms/comment-form.md b/packages/starterkit-twig-demo/src/_patterns/molecules/forms/comment-form.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/forms/comment-form.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/forms/comment-form.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/forms/comment-form.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/forms/comment-form.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/forms/comment-form.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/forms/comment-form.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/forms/newsletter.md b/packages/starterkit-twig-demo/src/_patterns/molecules/forms/newsletter.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/forms/newsletter.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/forms/newsletter.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/forms/newsletter.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/forms/newsletter.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/forms/newsletter.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/forms/newsletter.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/forms/search.md b/packages/starterkit-twig-demo/src/_patterns/molecules/forms/search.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/forms/search.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/forms/search.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/forms/search.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/forms/search.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/forms/search.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/forms/search.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/_layout.md b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/_layout.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/_layout.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/_layout.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/four-up.md b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/four-up.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/four-up.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/four-up.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/four-up.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/four-up.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/four-up.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/four-up.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/one-up.md b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/one-up.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/one-up.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/one-up.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/one-up.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/one-up.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/one-up.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/one-up.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/three-up.md b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/three-up.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/three-up.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/three-up.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/three-up.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/three-up.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/three-up.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/three-up.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/two-up.md b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/two-up.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/two-up.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/two-up.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/layout/two-up.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/layout/two-up.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/layout/two-up.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/layout/two-up.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/media/_media.md b/packages/starterkit-twig-demo/src/_patterns/molecules/media/_media.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/media/_media.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/media/_media.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/media/figure-with-caption.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/media/figure-with-caption.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/media/figure-with-caption.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/media/figure-with-caption.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/messaging/_messaging.md b/packages/starterkit-twig-demo/src/_patterns/molecules/messaging/_messaging.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/messaging/_messaging.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/messaging/_messaging.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/messaging/alert.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/messaging/alert.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/messaging/alert.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/messaging/alert.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/_navigation.md b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/_navigation.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/_navigation.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/_navigation.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/breadcrumbs.md b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/breadcrumbs.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/breadcrumbs.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/breadcrumbs.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/breadcrumbs.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/breadcrumbs.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/breadcrumbs.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/breadcrumbs.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/footer-nav.md b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/footer-nav.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/footer-nav.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/footer-nav.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/footer-nav.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/footer-nav.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/footer-nav.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/footer-nav.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/pagination.md b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/pagination.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/pagination.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/pagination.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/pagination.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/pagination.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/pagination.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/pagination.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/primary-nav.md b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/primary-nav.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/primary-nav.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/primary-nav.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/primary-nav.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/primary-nav.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/primary-nav.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/primary-nav.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/tabs.md b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/tabs.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/tabs.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/tabs.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/tabs.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/navigation/tabs.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/navigation/tabs.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/navigation/tabs.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/_text.md b/packages/starterkit-twig-demo/src/_patterns/molecules/text/_text.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/_text.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/_text.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/address.md b/packages/starterkit-twig-demo/src/_patterns/molecules/text/address.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/address.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/address.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/address.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/text/address.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/address.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/address.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/blockquote-with-citation.md b/packages/starterkit-twig-demo/src/_patterns/molecules/text/blockquote-with-citation.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/blockquote-with-citation.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/blockquote-with-citation.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/blockquote-with-citation.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/text/blockquote-with-citation.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/blockquote-with-citation.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/blockquote-with-citation.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/byline.md b/packages/starterkit-twig-demo/src/_patterns/molecules/text/byline.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/byline.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/byline.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/byline.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/text/byline.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/byline.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/byline.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/heading-group.md b/packages/starterkit-twig-demo/src/_patterns/molecules/text/heading-group.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/heading-group.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/heading-group.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/heading-group.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/text/heading-group.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/heading-group.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/heading-group.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/intro-text.md b/packages/starterkit-twig-demo/src/_patterns/molecules/text/intro-text.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/intro-text.md rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/intro-text.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/molecules/text/intro-text.twig b/packages/starterkit-twig-demo/src/_patterns/molecules/text/intro-text.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/molecules/text/intro-text.twig rename to packages/starterkit-twig-demo/src/_patterns/molecules/text/intro-text.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/_organisms.md b/packages/starterkit-twig-demo/src/_patterns/organisms/_organisms.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/_organisms.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/_organisms.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/article/_article.md b/packages/starterkit-twig-demo/src/_patterns/organisms/article/_article.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/article/_article.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/article/_article.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/article/article-body.twig b/packages/starterkit-twig-demo/src/_patterns/organisms/article/article-body.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/article/article-body.twig rename to packages/starterkit-twig-demo/src/_patterns/organisms/article/article-body.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/comments/_comments.md b/packages/starterkit-twig-demo/src/_patterns/organisms/comments/_comments.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/comments/_comments.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/comments/_comments.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/comments/comment-thread.twig b/packages/starterkit-twig-demo/src/_patterns/organisms/comments/comment-thread.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/comments/comment-thread.twig rename to packages/starterkit-twig-demo/src/_patterns/organisms/comments/comment-thread.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/global/_global.md b/packages/starterkit-twig-demo/src/_patterns/organisms/global/_global.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/global/_global.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/global/_global.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/global/footer.md b/packages/starterkit-twig-demo/src/_patterns/organisms/global/footer.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/global/footer.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/global/footer.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/global/footer.twig b/packages/starterkit-twig-demo/src/_patterns/organisms/global/footer.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/global/footer.twig rename to packages/starterkit-twig-demo/src/_patterns/organisms/global/footer.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/global/header.md b/packages/starterkit-twig-demo/src/_patterns/organisms/global/header.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/global/header.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/global/header.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/global/header.twig b/packages/starterkit-twig-demo/src/_patterns/organisms/global/header.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/global/header.twig rename to packages/starterkit-twig-demo/src/_patterns/organisms/global/header.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/sections/_sections.md b/packages/starterkit-twig-demo/src/_patterns/organisms/sections/_sections.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/sections/_sections.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/sections/_sections.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/sections/latest-posts.md b/packages/starterkit-twig-demo/src/_patterns/organisms/sections/latest-posts.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/sections/latest-posts.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/sections/latest-posts.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/sections/latest-posts.twig b/packages/starterkit-twig-demo/src/_patterns/organisms/sections/latest-posts.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/sections/latest-posts.twig rename to packages/starterkit-twig-demo/src/_patterns/organisms/sections/latest-posts.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/sections/recent-tweets.md b/packages/starterkit-twig-demo/src/_patterns/organisms/sections/recent-tweets.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/sections/recent-tweets.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/sections/recent-tweets.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/sections/recent-tweets.twig b/packages/starterkit-twig-demo/src/_patterns/organisms/sections/recent-tweets.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/sections/recent-tweets.twig rename to packages/starterkit-twig-demo/src/_patterns/organisms/sections/recent-tweets.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/sections/related-posts.md b/packages/starterkit-twig-demo/src/_patterns/organisms/sections/related-posts.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/sections/related-posts.md rename to packages/starterkit-twig-demo/src/_patterns/organisms/sections/related-posts.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/organisms/sections/related-posts.twig b/packages/starterkit-twig-demo/src/_patterns/organisms/sections/related-posts.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/organisms/sections/related-posts.twig rename to packages/starterkit-twig-demo/src/_patterns/organisms/sections/related-posts.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/_pages.md b/packages/starterkit-twig-demo/src/_patterns/pages/_pages.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/_pages.md rename to packages/starterkit-twig-demo/src/_patterns/pages/_pages.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/article.json b/packages/starterkit-twig-demo/src/_patterns/pages/article.json similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/article.json rename to packages/starterkit-twig-demo/src/_patterns/pages/article.json diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/article.md b/packages/starterkit-twig-demo/src/_patterns/pages/article.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/article.md rename to packages/starterkit-twig-demo/src/_patterns/pages/article.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/article.twig b/packages/starterkit-twig-demo/src/_patterns/pages/article.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/article.twig rename to packages/starterkit-twig-demo/src/_patterns/pages/article.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/blog.json b/packages/starterkit-twig-demo/src/_patterns/pages/blog.json similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/blog.json rename to packages/starterkit-twig-demo/src/_patterns/pages/blog.json diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/blog.md b/packages/starterkit-twig-demo/src/_patterns/pages/blog.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/blog.md rename to packages/starterkit-twig-demo/src/_patterns/pages/blog.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/blog.twig b/packages/starterkit-twig-demo/src/_patterns/pages/blog.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/blog.twig rename to packages/starterkit-twig-demo/src/_patterns/pages/blog.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/homepage.json b/packages/starterkit-twig-demo/src/_patterns/pages/homepage.json similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/homepage.json rename to packages/starterkit-twig-demo/src/_patterns/pages/homepage.json diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/homepage.md b/packages/starterkit-twig-demo/src/_patterns/pages/homepage.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/homepage.md rename to packages/starterkit-twig-demo/src/_patterns/pages/homepage.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/homepage.twig b/packages/starterkit-twig-demo/src/_patterns/pages/homepage.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/homepage.twig rename to packages/starterkit-twig-demo/src/_patterns/pages/homepage.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/pages/homepage~emergency.json b/packages/starterkit-twig-demo/src/_patterns/pages/homepage~emergency.json similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/pages/homepage~emergency.json rename to packages/starterkit-twig-demo/src/_patterns/pages/homepage~emergency.json diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/_templates.md b/packages/starterkit-twig-demo/src/_patterns/templates/_templates.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/_templates.md rename to packages/starterkit-twig-demo/src/_patterns/templates/_templates.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/article-2col.md b/packages/starterkit-twig-demo/src/_patterns/templates/article-2col.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/article-2col.md rename to packages/starterkit-twig-demo/src/_patterns/templates/article-2col.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/article-2col.twig b/packages/starterkit-twig-demo/src/_patterns/templates/article-2col.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/article-2col.twig rename to packages/starterkit-twig-demo/src/_patterns/templates/article-2col.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/article.md b/packages/starterkit-twig-demo/src/_patterns/templates/article.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/article.md rename to packages/starterkit-twig-demo/src/_patterns/templates/article.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/article.twig b/packages/starterkit-twig-demo/src/_patterns/templates/article.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/article.twig rename to packages/starterkit-twig-demo/src/_patterns/templates/article.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/blog.md b/packages/starterkit-twig-demo/src/_patterns/templates/blog.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/blog.md rename to packages/starterkit-twig-demo/src/_patterns/templates/blog.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/blog.twig b/packages/starterkit-twig-demo/src/_patterns/templates/blog.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/blog.twig rename to packages/starterkit-twig-demo/src/_patterns/templates/blog.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/homepage.md b/packages/starterkit-twig-demo/src/_patterns/templates/homepage.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/homepage.md rename to packages/starterkit-twig-demo/src/_patterns/templates/homepage.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/homepage.twig b/packages/starterkit-twig-demo/src/_patterns/templates/homepage.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/homepage.twig rename to packages/starterkit-twig-demo/src/_patterns/templates/homepage.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-1col.md b/packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-1col.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-1col.md rename to packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-1col.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-1col.twig b/packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-1col.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-1col.twig rename to packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-1col.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-2col.md b/packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-2col.md similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-2col.md rename to packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-2col.md diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-2col.twig b/packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-2col.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/layouts/page-2col.twig rename to packages/starterkit-twig-demo/src/_patterns/templates/layouts/page-2col.twig diff --git a/packages/starterkit-twig-demo/dist/_patterns/templates/layouts/site.twig b/packages/starterkit-twig-demo/src/_patterns/templates/layouts/site.twig similarity index 100% rename from packages/starterkit-twig-demo/dist/_patterns/templates/layouts/site.twig rename to packages/starterkit-twig-demo/src/_patterns/templates/layouts/site.twig diff --git a/packages/edition-node-gulp/source/css/pattern-scaffolding.css b/packages/starterkit-twig-demo/src/css/pattern-scaffolding.css similarity index 100% rename from packages/edition-node-gulp/source/css/pattern-scaffolding.css rename to packages/starterkit-twig-demo/src/css/pattern-scaffolding.css diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_animation.scss b/packages/starterkit-twig-demo/src/css/scss/base/_animation.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_animation.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_animation.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_forms.scss b/packages/starterkit-twig-demo/src/css/scss/base/_forms.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_forms.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_forms.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_global-classes.scss b/packages/starterkit-twig-demo/src/css/scss/base/_global-classes.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_global-classes.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_global-classes.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_headings.scss b/packages/starterkit-twig-demo/src/css/scss/base/_headings.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_headings.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_headings.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_links.scss b/packages/starterkit-twig-demo/src/css/scss/base/_links.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_links.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_links.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_lists.scss b/packages/starterkit-twig-demo/src/css/scss/base/_lists.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_lists.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_lists.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_main.scss b/packages/starterkit-twig-demo/src/css/scss/base/_main.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_main.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_main.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_media.scss b/packages/starterkit-twig-demo/src/css/scss/base/_media.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_media.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_media.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_tables.scss b/packages/starterkit-twig-demo/src/css/scss/base/_tables.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_tables.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_tables.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/base/_text.scss b/packages/starterkit-twig-demo/src/css/scss/base/_text.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/base/_text.scss rename to packages/starterkit-twig-demo/src/css/scss/base/_text.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/generic/_mixins.scss b/packages/starterkit-twig-demo/src/css/scss/generic/_mixins.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/generic/_mixins.scss rename to packages/starterkit-twig-demo/src/css/scss/generic/_mixins.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/generic/_reset.scss b/packages/starterkit-twig-demo/src/css/scss/generic/_reset.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/generic/_reset.scss rename to packages/starterkit-twig-demo/src/css/scss/generic/_reset.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/generic/_variables.scss b/packages/starterkit-twig-demo/src/css/scss/generic/_variables.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/generic/_variables.scss rename to packages/starterkit-twig-demo/src/css/scss/generic/_variables.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_accordion.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_accordion.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_accordion.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_accordion.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_article.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_article.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_article.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_article.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_blocks.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_blocks.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_blocks.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_blocks.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_buttons.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_buttons.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_buttons.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_buttons.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_carousels.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_carousels.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_carousels.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_carousels.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_comments.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_comments.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_comments.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_comments.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_footer.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_footer.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_footer.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_footer.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_header.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_header.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_header.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_header.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_icons.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_icons.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_icons.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_icons.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_layout.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_layout.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_layout.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_layout.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_lists.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_lists.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_lists.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_lists.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_main.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_main.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_main.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_main.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_messaging.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_messaging.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_messaging.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_messaging.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_nav.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_nav.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_nav.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_nav.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_sections.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_sections.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_sections.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_sections.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_tabs.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_tabs.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_tabs.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_tabs.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_text.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_text.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_text.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_text.scss diff --git a/packages/starterkit-twig-demo/dist/css/scss/objects/_tooltip.scss b/packages/starterkit-twig-demo/src/css/scss/objects/_tooltip.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/scss/objects/_tooltip.scss rename to packages/starterkit-twig-demo/src/css/scss/objects/_tooltip.scss diff --git a/packages/starterkit-twig-demo/dist/css/style.css b/packages/starterkit-twig-demo/src/css/style.css old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/style.css rename to packages/starterkit-twig-demo/src/css/style.css diff --git a/packages/starterkit-twig-demo/dist/css/style.scss b/packages/starterkit-twig-demo/src/css/style.scss old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/css/style.scss rename to packages/starterkit-twig-demo/src/css/style.scss diff --git a/packages/edition-twig/source/favicon.ico b/packages/starterkit-twig-demo/src/favicon.ico similarity index 100% rename from packages/edition-twig/source/favicon.ico rename to packages/starterkit-twig-demo/src/favicon.ico diff --git a/packages/starterkit-twig-demo/dist/fonts/icons.dev.svg b/packages/starterkit-twig-demo/src/fonts/icons.dev.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/fonts/icons.dev.svg rename to packages/starterkit-twig-demo/src/fonts/icons.dev.svg diff --git a/packages/starterkit-twig-demo/dist/fonts/icons.eot b/packages/starterkit-twig-demo/src/fonts/icons.eot old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/fonts/icons.eot rename to packages/starterkit-twig-demo/src/fonts/icons.eot diff --git a/packages/starterkit-twig-demo/dist/fonts/icons.svg b/packages/starterkit-twig-demo/src/fonts/icons.svg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/fonts/icons.svg rename to packages/starterkit-twig-demo/src/fonts/icons.svg diff --git a/packages/starterkit-twig-demo/dist/fonts/icons.ttf b/packages/starterkit-twig-demo/src/fonts/icons.ttf old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/fonts/icons.ttf rename to packages/starterkit-twig-demo/src/fonts/icons.ttf diff --git a/packages/starterkit-twig-demo/dist/fonts/icons.woff b/packages/starterkit-twig-demo/src/fonts/icons.woff old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/fonts/icons.woff rename to packages/starterkit-twig-demo/src/fonts/icons.woff diff --git a/packages/starterkit-twig-demo/dist/images/ajax-loader.gif b/packages/starterkit-twig-demo/src/images/ajax-loader.gif old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/ajax-loader.gif rename to packages/starterkit-twig-demo/src/images/ajax-loader.gif diff --git a/packages/starterkit-twig-demo/dist/images/favicon_16x16.jpg b/packages/starterkit-twig-demo/src/images/favicon_16x16.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/favicon_16x16.jpg rename to packages/starterkit-twig-demo/src/images/favicon_16x16.jpg diff --git a/packages/starterkit-twig-demo/dist/images/favicon_32x32.jpg b/packages/starterkit-twig-demo/src/images/favicon_32x32.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/favicon_32x32.jpg rename to packages/starterkit-twig-demo/src/images/favicon_32x32.jpg diff --git a/packages/starterkit-twig-demo/dist/images/fpo_16x9.png b/packages/starterkit-twig-demo/src/images/fpo_16x9.png old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/fpo_16x9.png rename to packages/starterkit-twig-demo/src/images/fpo_16x9.png diff --git a/packages/starterkit-twig-demo/dist/images/fpo_4x3.png b/packages/starterkit-twig-demo/src/images/fpo_4x3.png old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/fpo_4x3.png rename to packages/starterkit-twig-demo/src/images/fpo_4x3.png diff --git a/packages/starterkit-twig-demo/dist/images/fpo_avatar.png b/packages/starterkit-twig-demo/src/images/fpo_avatar.png old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/fpo_avatar.png rename to packages/starterkit-twig-demo/src/images/fpo_avatar.png diff --git a/packages/starterkit-twig-demo/dist/images/fpo_square.png b/packages/starterkit-twig-demo/src/images/fpo_square.png old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/fpo_square.png rename to packages/starterkit-twig-demo/src/images/fpo_square.png diff --git a/packages/starterkit-twig-demo/dist/images/logo.png b/packages/starterkit-twig-demo/src/images/logo.png old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/logo.png rename to packages/starterkit-twig-demo/src/images/logo.png diff --git a/packages/starterkit-twig-demo/dist/images/sample/landscape-16x9-mountains.jpg b/packages/starterkit-twig-demo/src/images/sample/landscape-16x9-mountains.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/landscape-16x9-mountains.jpg rename to packages/starterkit-twig-demo/src/images/sample/landscape-16x9-mountains.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/thumb-square-fire.jpg b/packages/starterkit-twig-demo/src/images/sample/thumb-square-fire.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/thumb-square-fire.jpg rename to packages/starterkit-twig-demo/src/images/sample/thumb-square-fire.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/thumb-square-gear.jpg b/packages/starterkit-twig-demo/src/images/sample/thumb-square-gear.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/thumb-square-gear.jpg rename to packages/starterkit-twig-demo/src/images/sample/thumb-square-gear.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/thumb-square-ivy.jpg b/packages/starterkit-twig-demo/src/images/sample/thumb-square-ivy.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/thumb-square-ivy.jpg rename to packages/starterkit-twig-demo/src/images/sample/thumb-square-ivy.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/thumb-square-river.jpg b/packages/starterkit-twig-demo/src/images/sample/thumb-square-river.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/thumb-square-river.jpg rename to packages/starterkit-twig-demo/src/images/sample/thumb-square-river.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/thumb-square-yosemite.jpg b/packages/starterkit-twig-demo/src/images/sample/thumb-square-yosemite.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/thumb-square-yosemite.jpg rename to packages/starterkit-twig-demo/src/images/sample/thumb-square-yosemite.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/tout-4x3-climber.jpg b/packages/starterkit-twig-demo/src/images/sample/tout-4x3-climber.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/tout-4x3-climber.jpg rename to packages/starterkit-twig-demo/src/images/sample/tout-4x3-climber.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/tout-4x3-climbers.jpg b/packages/starterkit-twig-demo/src/images/sample/tout-4x3-climbers.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/tout-4x3-climbers.jpg rename to packages/starterkit-twig-demo/src/images/sample/tout-4x3-climbers.jpg diff --git a/packages/starterkit-twig-demo/dist/images/sample/tout-4x3-stream.jpg b/packages/starterkit-twig-demo/src/images/sample/tout-4x3-stream.jpg old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/images/sample/tout-4x3-stream.jpg rename to packages/starterkit-twig-demo/src/images/sample/tout-4x3-stream.jpg diff --git a/packages/starterkit-twig-demo/src/index.ts b/packages/starterkit-twig-demo/src/index.ts new file mode 100644 index 000000000..e69de29bb diff --git a/packages/starterkit-twig-demo/dist/js/fitvids.js b/packages/starterkit-twig-demo/src/js/fitvids.js old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/js/fitvids.js rename to packages/starterkit-twig-demo/src/js/fitvids.js diff --git a/packages/starterkit-twig-demo/dist/js/init.js b/packages/starterkit-twig-demo/src/js/init.js old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/js/init.js rename to packages/starterkit-twig-demo/src/js/init.js diff --git a/packages/starterkit-twig-demo/dist/js/jquery-2.0.0b2.js b/packages/starterkit-twig-demo/src/js/jquery-2.0.0b2.js old mode 100755 new mode 100644 similarity index 100% rename from packages/starterkit-twig-demo/dist/js/jquery-2.0.0b2.js rename to packages/starterkit-twig-demo/src/js/jquery-2.0.0b2.js diff --git a/packages/starterkit-twig-demo/dist/js/modernizr.js b/packages/starterkit-twig-demo/src/js/modernizr.js old mode 100755 new mode 100644 similarity index 70% rename from packages/starterkit-twig-demo/dist/js/modernizr.js rename to packages/starterkit-twig-demo/src/js/modernizr.js index d5fd6bd3b..938464d8b --- a/packages/starterkit-twig-demo/dist/js/modernizr.js +++ b/packages/starterkit-twig-demo/src/js/modernizr.js @@ -1,7 +1,7 @@ /* Modernizr 2.6.2 (Custom Build) | MIT & BSD * Build: https://modernizr.com/download/#-shiv-cssclasses-load */ -(window.Modernizr = (function(a, b, c) { +(window.Modernizr = (function (a, b, c) { function u(a) { j.cssText = a; } @@ -17,8 +17,7 @@ function y(a, b, d) { for (var e in a) { var f = b[a[e]]; - if (f !== c) - return d === !1 ? a[e] : w(f, 'function') ? f.bind(d || b) : f; + if (f !== c) return d === !1 ? a[e] : w(f, 'function') ? f.bind(d || b) : f; } return !1; } @@ -40,20 +39,20 @@ s = {}.hasOwnProperty, t; !w(s, 'undefined') && !w(s.call, 'undefined') - ? (t = function(a, b) { + ? (t = function (a, b) { return s.call(a, b); }) - : (t = function(a, b) { + : (t = function (a, b) { return b in a && w(a.constructor.prototype[b], 'undefined'); }), Function.prototype.bind || - (Function.prototype.bind = function(b) { + (Function.prototype.bind = function (b) { var c = this; if (typeof c != 'function') throw new TypeError(); var d = q.call(arguments, 1), - e = function() { + e = function () { if (this instanceof e) { - var a = function() {}; + var a = function () {}; a.prototype = c.prototype; var f = new a(), g = c.apply(f, d.concat(q.call(arguments))); @@ -63,33 +62,26 @@ }; return e; }); - for (var z in m) - t(m, z) && - ((r = z.toLowerCase()), (e[r] = m[z]()), p.push((e[r] ? '' : 'no-') + r)); + for (var z in m) t(m, z) && ((r = z.toLowerCase()), (e[r] = m[z]()), p.push((e[r] ? '' : 'no-') + r)); return ( - (e.addTest = function(a, b) { + (e.addTest = function (a, b) { if (typeof a == 'object') for (var d in a) t(a, d) && e.addTest(d, a[d]); else { a = a.toLowerCase(); if (e[a] !== c) return e; (b = typeof b == 'function' ? b() : b), - typeof f != 'undefined' && - f && - (g.className += ' ' + (b ? '' : 'no-') + a), + typeof f != 'undefined' && f && (g.className += ' ' + (b ? '' : 'no-') + a), (e[a] = b); } return e; }), u(''), (i = k = null), - (function(a, b) { + (function (a, b) { function k(a, b) { var c = a.createElement('p'), d = a.getElementsByTagName('head')[0] || a.documentElement; - return ( - (c.innerHTML = 'x<style>' + b + '</style>'), - d.insertBefore(c.lastChild, d.firstChild) - ); + return (c.innerHTML = 'x<style>' + b + '</style>'), d.insertBefore(c.lastChild, d.firstChild); } function l() { var a = r.elements; @@ -108,8 +100,8 @@ f.cache[a] ? (g = f.cache[a].cloneNode()) : e.test(a) - ? (g = (f.cache[a] = f.createElem(a)).cloneNode()) - : (g = f.createElem(a)), + ? (g = (f.cache[a] = f.createElem(a)).cloneNode()) + : (g = f.createElem(a)), g.canHaveChildren && !d.test(a) ? f.frag.appendChild(g) : g ); } @@ -130,7 +122,7 @@ (b.createElem = a.createElement), (b.createFrag = a.createDocumentFragment), (b.frag = b.createFrag())), - (a.createElement = function(c) { + (a.createElement = function (c) { return r.shivMethods ? n(c, a, b) : b.createElem(c); }), (a.createDocumentFragment = Function( @@ -138,12 +130,10 @@ 'return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&(' + l() .join() - .replace(/\w+/g, function(a) { - return ( - b.createElem(a), b.frag.createElement(a), 'c("' + a + '")' - ); + .replace(/\w+/g, function (a) { + return b.createElem(a), b.frag.createElement(a), 'c("' + a + '")'; }) + - ');return n}' + ');return n}', )(r, b.frag)); } function q(a) { @@ -155,7 +145,7 @@ !c.hasCSS && (c.hasCSS = !!k( a, - 'article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}' + 'article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}', )), j || p(a, c), a @@ -163,20 +153,21 @@ } var c = a.html5 || {}, d = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i, - e = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i, + e = + /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i, f, g = '_html5shiv', h = 0, i = {}, j; - (function() { + (function () { try { var a = b.createElement('a'); (a.innerHTML = '<xyz></xyz>'), (f = 'hidden' in a), (j = a.childNodes.length == 1 || - (function() { + (function () { b.createElement('a'); var a = b.createDocumentFragment(); return ( @@ -204,13 +195,11 @@ (a.html5 = r), q(b); })(this, b), (e._version = d), - (g.className = - g.className.replace(/(^|\s)no-js(\s|$)/, '$1$2') + - (f ? ' js ' + p.join(' ') : '')), + (g.className = g.className.replace(/(^|\s)no-js(\s|$)/, '$1$2') + (f ? ' js ' + p.join(' ') : '')), e ); })(this, this.document)), - (function(a, b, c) { + (function (a, b, c) { function d(a) { return '[object Function]' == o.call(a); } @@ -226,26 +215,17 @@ (q = 1), a ? a.t - ? m(function() { - ('c' == a.t - ? B.injectCss - : B.injectJs)(a.s, 0, a.a, a.x, a.e, 1); + ? m(function () { + ('c' == a.t ? B.injectCss : B.injectJs)(a.s, 0, a.a, a.x, a.e, 1); }, 0) : (a(), h()) : (q = 0); } function i(a, c, d, e, f, i, j) { function k(b) { - if ( - !o && - g(l.readyState) && - ((u.r = o = 1), - !q && h(), - (l.onload = l.onreadystatechange = null), - b) - ) { + if (!o && g(l.readyState) && ((u.r = o = 1), !q && h(), (l.onload = l.onreadystatechange = null), b)) { 'img' != a && - m(function() { + m(function () { t.removeChild(l); }, 50); for (var d in y[c]) y[c].hasOwnProperty(d) && y[c][d].onload(); @@ -259,22 +239,20 @@ 1 === y[c] && ((r = 1), (y[c] = [])), 'object' == a ? (l.data = c) : ((l.src = c), (l.type = a)), (l.width = l.height = '0'), - (l.onerror = l.onload = l.onreadystatechange = function() { - k.call(this, r); - }), + (l.onerror = + l.onload = + l.onreadystatechange = + function () { + k.call(this, r); + }), p.splice(e, 0, u), - 'img' != a && - (r || 2 === y[c] - ? (t.insertBefore(l, s ? null : n), m(k, j)) - : y[c].push(l)); + 'img' != a && (r || 2 === y[c] ? (t.insertBefore(l, s ? null : n), m(k, j)) : y[c].push(l)); } function j(a, b, c, d, f) { return ( (q = 0), (b = b || 'j'), - e(a) - ? i('c' == b ? v : u, a, b, this.i++, c, d, f) - : (p.splice(this.i++, 0, a), 1 == p.length && h()), + e(a) ? i('c' == b ? v : u, a, b, this.i++, c, d, f) : (p.splice(this.i++, 0, a), 1 == p.length && h()), this ); } @@ -297,19 +275,19 @@ v = l ? 'script' : u, w = Array.isArray || - function(a) { + function (a) { return '[object Array]' == o.call(a); }, x = [], y = {}, z = { - timeout: function(a, b) { + timeout: function (a, b) { return b.length && (a.timeout = b[0]), a; }, }, A, B; - (B = function(a) { + (B = function (a) { function b(a) { var a = a.split('!'), b = x.length, @@ -319,56 +297,29 @@ e, f, g; - for (f = 0; f < d; f++) - (g = a[f].split('=')), (e = z[g.shift()]) && (c = e(c, g)); + for (f = 0; f < d; f++) (g = a[f].split('=')), (e = z[g.shift()]) && (c = e(c, g)); for (f = 0; f < b; f++) c = x[f](c); return c; } function g(a, e, f, g, h) { var i = b(a), j = i.autoCallback; - i.url - .split('.') - .pop() - .split('?') - .shift(), + i.url.split('.').pop().split('?').shift(), i.bypass || - (e && - (e = d(e) - ? e - : e[a] || - e[g] || - e[ - a - .split('/') - .pop() - .split('?')[0] - ]), + (e && (e = d(e) ? e : e[a] || e[g] || e[a.split('/').pop().split('?')[0]]), i.instead ? i.instead(a, e, f, g, h) : (y[i.url] ? (i.noexec = !0) : (y[i.url] = 1), f.load( i.url, - i.forceCSS || - (!i.forceJS && - 'css' == - i.url - .split('.') - .pop() - .split('?') - .shift()) - ? 'c' - : c, + i.forceCSS || (!i.forceJS && 'css' == i.url.split('.').pop().split('?').shift()) ? 'c' : c, i.noexec, i.attrs, - i.timeout + i.timeout, ), (d(e) || d(j)) && - f.load(function() { - k(), - e && e(i.origUrl, h, g), - j && j(i.origUrl, h, g), - (y[i.url] = 2); + f.load(function () { + k(), e && e(i.origUrl, h, g), j && j(i.origUrl, h, g), (y[i.url] = 2); }))); } function h(a, b) { @@ -376,13 +327,13 @@ if (a) { if (e(a)) c || - (j = function() { + (j = function () { var a = [].slice.call(arguments); k.apply(this, a), l(); }), g(a, j, b, 0, h); else if (Object(a) === a) - for (n in ((m = (function() { + for (n in ((m = (function () { var b = 0, c; for (c in a) a.hasOwnProperty(c) && b++; @@ -393,12 +344,12 @@ (!c && !--m && (d(j) - ? (j = function() { + ? (j = function () { var a = [].slice.call(arguments); k.apply(this, a), l(); }) - : (j[n] = (function(a) { - return function() { + : (j[n] = (function (a) { + return function () { var b = [].slice.call(arguments); a && a.apply(this, b), l(); }; @@ -421,14 +372,13 @@ if (e(a)) g(a, 0, l, 0); else if (w(a)) for (i = 0; i < a.length; i++) - (j = a[i]), - e(j) ? g(j, 0, l, 0) : w(j) ? B(j) : Object(j) === j && h(j, l); + (j = a[i]), e(j) ? g(j, 0, l, 0) : w(j) ? B(j) : Object(j) === j && h(j, l); else Object(a) === a && h(a, l); }), - (B.addPrefix = function(a, b) { + (B.addPrefix = function (a, b) { z[a] = b; }), - (B.addFilter = function(a) { + (B.addFilter = function (a) { x.push(a); }), (B.errorTimeout = 1e4), @@ -437,15 +387,14 @@ ((b.readyState = 'loading'), b.addEventListener( 'DOMContentLoaded', - (A = function() { - b.removeEventListener('DOMContentLoaded', A, 0), - (b.readyState = 'complete'); + (A = function () { + b.removeEventListener('DOMContentLoaded', A, 0), (b.readyState = 'complete'); }), - 0 + 0, )), (a.yepnope = k()), (a.yepnope.executeStack = h), - (a.yepnope.injectJs = function(a, c, d, e, i, j) { + (a.yepnope.injectJs = function (a, c, d, e, i, j) { var k = b.createElement('script'), l, o, @@ -453,17 +402,16 @@ k.src = a; for (o in d) k.setAttribute(o, d[o]); (c = j ? h : c || f), - (k.onreadystatechange = k.onload = function() { - !l && - g(k.readyState) && - ((l = 1), c(), (k.onload = k.onreadystatechange = null)); - }), - m(function() { + (k.onreadystatechange = k.onload = + function () { + !l && g(k.readyState) && ((l = 1), c(), (k.onload = k.onreadystatechange = null)); + }), + m(function () { l || ((l = 1), c(1)); }, e), i ? k.onload() : n.parentNode.insertBefore(k, n); }), - (a.yepnope.injectCss = function(a, c, d, e, g, i) { + (a.yepnope.injectCss = function (a, c, d, e, g, i) { var e = b.createElement('link'), j, c = i ? h : c || f; @@ -472,6 +420,6 @@ g || (n.parentNode.insertBefore(e, n), m(c, 0)); }); })(this, document), - (Modernizr.load = function() { + (Modernizr.load = function () { yepnope.apply(window, [].slice.call(arguments, 0)); }); diff --git a/packages/starterkit-twig-demo/tsconfig.json b/packages/starterkit-twig-demo/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/starterkit-twig-demo/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/starterkit-twig-demo/tsconfig.lib.json b/packages/starterkit-twig-demo/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/starterkit-twig-demo/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/starterkit-twig-demo/tsconfig.spec.json b/packages/starterkit-twig-demo/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/starterkit-twig-demo/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/types/.eslintrc.json b/packages/types/.eslintrc.json new file mode 100644 index 000000000..d3e61a2ea --- /dev/null +++ b/packages/types/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.js"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/types/CHANGELOG.md b/packages/types/CHANGELOG.md new file mode 100644 index 000000000..e69de29bb diff --git a/packages/types/README.md b/packages/types/README.md new file mode 100644 index 000000000..d7bfd5555 --- /dev/null +++ b/packages/types/README.md @@ -0,0 +1,11 @@ +# types + +This library was generated with [Nx](https://nx.dev). + +## Building + +Run `nx build types` to build the library. + +## Running unit tests + +Run `nx test types` to execute the unit tests via [Jest](https://jestjs.io). diff --git a/packages/types/jest.config.ts b/packages/types/jest.config.ts new file mode 100644 index 000000000..48924bc08 --- /dev/null +++ b/packages/types/jest.config.ts @@ -0,0 +1,17 @@ +/* eslint-disable */ +export default { + displayName: 'types', + preset: '../../jest.preset.js', + globals: {}, + testEnvironment: 'node', + transform: { + '^.+\\.[tj]s$': [ + 'ts-jest', + { + tsconfig: '<rootDir>/tsconfig.spec.json', + }, + ], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/types', +}; diff --git a/packages/types/package.json b/packages/types/package.json new file mode 100644 index 000000000..2d3f38027 --- /dev/null +++ b/packages/types/package.json @@ -0,0 +1,5 @@ +{ + "name": "@pattern-lab/types", + "version": "6.0.1", + "type": "commonjs" +} diff --git a/packages/types/project.json b/packages/types/project.json new file mode 100644 index 000000000..731808fba --- /dev/null +++ b/packages/types/project.json @@ -0,0 +1,46 @@ +{ + "name": "types", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/types/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/js:tsc", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/packages/types", + "main": "packages/types/src/index.ts", + "tsConfig": "packages/types/tsconfig.lib.json", + "assets": ["packages/types/*.md"] + } + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/types/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/types/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + }, + "tags": [] +} diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts new file mode 100644 index 000000000..8d9cc63ef --- /dev/null +++ b/packages/types/src/index.ts @@ -0,0 +1,2 @@ +export * from './lib/interfaces'; +export * from './lib/types'; diff --git a/packages/types/src/lib/interfaces/engine.interface.ts b/packages/types/src/lib/interfaces/engine.interface.ts new file mode 100644 index 000000000..24365e73f --- /dev/null +++ b/packages/types/src/lib/interfaces/engine.interface.ts @@ -0,0 +1,125 @@ +import { PatternLabConfig } from './pattern-lab-config.interface'; +import { Pattern, PatternData } from './pattern.interface'; + +export interface PatternLabEngine { + /** + * The unique name of the engine used to key out the engine in the pattern lab instance + */ + engineName: string; + + /** + * The file extensions that this engine can render and by which patterns are loaded. + * e.g. ['.hbs', '.handlebars'] + */ + engineFileExtension: string[]; + + /** + * Defines if the engine should look out for partials directly on the include sub pattern mechanism + * @deprecated is only used by mustache engine and will be removed in the future + * in favor of default behavior https://github.com/pattern-lab/patternlab-node/issues/1180 + */ + expandPartials: boolean; + + /** + * Render the pattern template with the given data and partials + * @param pattern the pattern to render + * @param data additional data to pass to the pattern template + * @returns the rendered pattern + */ + renderPattern: (pattern: Pattern, data: PatternData) => Promise<string>; + + /** + * Register a pattern to the engine so that it can be used in the render process later on + * @param pattern the pattern to register + */ + registerPartial: (pattern: Pattern) => void; + + /** + * Fin all partials in the given pattern + * @param pattern the pattern to search for partials + * @returns the partials found in the pattern + */ + findPartials: (pattern: Pattern) => RegExpMatchArray | null; + + /** + * Fin all partials with pattern parameters in the given pattern + * @param pattern the pattern to search for partials + * @returns the partials found in the pattern + * @deprecated is only used by mustache engine and will be removed in the future in favor + * of default behavior https://github.com/pattern-lab/patternlab-node/issues/1180 + */ + findPartialsWithPatternParameters: (pattern: Pattern) => RegExpMatchArray | null; + + /** + * Fin all list items in the given pattern + * @param pattern the pattern to search for list items + * @returns the list items found in the pattern + * @deprecated this feature is not supported anymore and will be removed in the future + * https://github.com/pattern-lab/patternlab-node/issues/1178 + */ + findListItems: (pattern: Pattern) => RegExpMatchArray | null; + + /** + * Fin a specific partial in the given pattern + * @param partialString the partial to search for + * @returns the pattern partial found in the pattern + */ + findPartial: (partialString: string) => string; + + /** + * + * @param config + * @returns + */ + spawnMeta: (config: PatternLabConfig) => void; + + /** + * + * @param config + * @returns + */ + usePatternLabConfig: (config: PatternLabConfig) => void; +} + +interface PatternEngineConfigBase { + /** + * The name of the npm package to load the engine from + */ + package: string; + + /** + * The file extensions that this engine can render and by which patterns are loaded. + * e.g. ['.hbs', '.handlebars'] + */ + fileExtensions: string[]; + + /** + * The location of extensions that should be loaded by the engine + */ + extend?: string | string[]; +} + +export type PatternEngineConfigTwig = PatternEngineConfigBase & { + namespaces?: Record<string, string>; + loadExtensionsFile?: string; +}; + +export interface PatternEngineNamespaceOptions { + id: string; + recursive?: boolean; + paths: string[]; +} + +export type PatternEngineConfigTwigPhp = PatternEngineConfigBase & { + namespaces?: PatternEngineNamespaceOptions[]; + alterTwigEnv?: { + file: string; + functions: string[]; + }[]; + relativeFrom?: string; +}; + +export type PatternEngineConfig = + | PatternEngineConfigBase + | PatternEngineConfigTwig + | PatternEngineConfigTwigPhp; diff --git a/packages/types/src/lib/interfaces/index.ts b/packages/types/src/lib/interfaces/index.ts new file mode 100644 index 000000000..567e0f532 --- /dev/null +++ b/packages/types/src/lib/interfaces/index.ts @@ -0,0 +1,4 @@ +export * from './engine.interface'; +export * from './pattern.interface'; +export * from './pattern-lab.interface'; +export * from './pattern-lab-config.interface'; diff --git a/packages/types/src/lib/interfaces/pattern-lab-config.interface.ts b/packages/types/src/lib/interfaces/pattern-lab-config.interface.ts new file mode 100644 index 000000000..87d48b211 --- /dev/null +++ b/packages/types/src/lib/interfaces/pattern-lab-config.interface.ts @@ -0,0 +1,40 @@ +import { PatternEngineConfig } from './engine.interface'; + +export interface PatternLabConfig { + paths: { + source: { + root: string; + patterns: string; + data: string; + meta: string; + annotations: string; + }; + public: { + root: string; + patterns: string; + data: string; + meta: string; + annotations: string; + }; + }; + patternExtension: string; + patternExportDirectory: string; + ishControlsHide: { + s: boolean; + m: boolean; + l: boolean; + full: boolean; + random: boolean; + disco: boolean; + hay: boolean; + mqs: boolean; + find: boolean; + viewsAll: boolean; + viewsCode: boolean; + viewsNew: boolean; + tools: boolean; + }; + cacheBuster: number; + logLevel: 'debug' | 'info' | 'warn' | 'error' | 'silent'; + engines?: Record<string, PatternEngineConfig>; +} diff --git a/packages/types/src/lib/interfaces/pattern-lab.interface.ts b/packages/types/src/lib/interfaces/pattern-lab.interface.ts new file mode 100644 index 000000000..b9ae3b09b --- /dev/null +++ b/packages/types/src/lib/interfaces/pattern-lab.interface.ts @@ -0,0 +1,16 @@ +import { PatternLabConfig } from './pattern-lab-config.interface'; +import { PatternData } from './pattern.interface'; + +export interface PatternLab { + /** + * The configuration for this instance of Pattern Lab + */ + config: PatternLabConfig; + + /** + * The data for this instance of Pattern Lab. + * Functions as global data for all patterns if no local + * pattern specific data is provided. + */ + data: PatternData; +} diff --git a/packages/types/src/lib/interfaces/pattern.interface.ts b/packages/types/src/lib/interfaces/pattern.interface.ts new file mode 100644 index 000000000..72183ec21 --- /dev/null +++ b/packages/types/src/lib/interfaces/pattern.interface.ts @@ -0,0 +1,282 @@ +import { PatternLab } from './pattern-lab.interface'; + +export type PatternData = Record<string, unknown>; + +export type CompileStateKey = 'NEEDS_REBUILD' | 'BUILDING' | 'CLEAN'; +export type CompileState = Record<CompileStateKey, string>; + +export interface PatternGroupData { + /** + * the order of the group relative to root or parent group + */ + order: number; + + /** + * Flag if the group should not be shown in the UI + */ + hidden: boolean; +} + +export interface Pattern { + /** + * this is the unique name, subDir + fileName (sans extension) + */ + name: string; + + /** + * The relative path from the pattern source directory to the pattern. + * e.g. 'atoms/global/colors.hbs' + */ + relPath: string; + + /** + * The sub directory of the pattern source directory where the pattern is located + * without the pattern file name and extension. e.g. 'atoms/global' + */ + subDir: string; + + /** + * The full name of the pattern file excluding the extension + */ + fileName: string; + + /** + * The file extension of the pattern. e.g. '.hbs', '.twig' + */ + fileExtension: string; + + /** + * The pattern this pattern extends + */ + basePattern: Pattern; + + /** + * The engine used to render this pattern + */ + engine: string; + + /** + * the joined pattern group and subgroup directory + */ + flatPatternPath: string; + + /** + * Definition of flat pattern: + * The flat pattern is a high level pattern which is attached directly to + * the main root folder or to a root directory. + * --- This --- + * root + * flatPattern + * --- OR That --- + * root + * molecules + * flatPattern + */ + isFlatPattern: string; + + /** + * Is either a pattern (true) or a meta data pattern (false) generated form markdown files + */ + isPattern: boolean; + + /** + * The pseudo pattern flag is used to identify patterns that are generated from data json files + */ + isPseudoPattern: boolean; + + /** + * the JSON used to render values in the pattern + */ + jsonFileData: string; + + /** + * The filename where tildes are flipped to dashes + */ + patternBaseName: string; + + /** + * Calculated path from the root of the public directory to the generated + * (rendered!) html file for this pattern, to be shown in the iframe + */ + patternLink: string; + + /** + * Fancy name - Uppercase letters of pattern name partials. + * global-colors -> 'Global Colors' + * this is the display name for the ui. strip numeric + hyphen prefixes + */ + patternName: string; + + /** + * The canonical "key" by which this pattern is known. This is the callable + * name of the pattern. + */ + patternPartial: string; + + /** + * @deprecated https://github.com/pattern-lab/patternlab-node/issues/1180 + */ + patternPartialCode: string; + + /** + * The pattern state. e.g. 'ready', 'wip', 'deprecated' (self defined by user) + */ + patternState: string; + + /** + * The top-level pattern group this pattern belongs to. e.g. 'atoms' + */ + patternGroup: string; + + /** + * Extraction of the pattern group markdown settings + */ + patternGroupData: PatternGroupData; + + /** + * The sub-group this pattern belongs to. e.g. 'form' + */ + patternSubgroup: string; + + /** + * Extraction of the pattern subgroup markdown settings + */ + patternSubgroupData: PatternGroupData; + + /** + * The template from the patterns source file + */ + template: string; + + /** + * The template used to render the pattern. It could be the same as the template if + * it has no includes or it contains the full template with all its includes. + * The extended template is used by the pattern engines. + */ + extendedTemplate: string; + + /** + * The definition where the pattern should be sorted in the context of its group and subgroup. + */ + order: string; + + /** + * If the pattern is a pseudo pattern, the variant could have its own sorting order. + */ + variantOrder: string; + + /** + * A possible way to identify the pattern location. e.g. 'atoms-form/button' + */ + verbosePartial: string; + + /** + * Determines if this pattern needs to be recompiled. + * @see {@link CompileState} + */ + compileState: CompileState; + + /** + * Timestamp in milliseconds when the pattern template or auxiliary file (e.g. json) were modified. + * If multiple files are affected, this is the timestamp of the most recent change. + * + * @see {@link pattern} + */ + lastModified: number | null; + + lineage: string; + + lineageIndex: string; + + lineageR: string; + + lineageRIndex: string; + + /** + * Render function - acts as a proxy for the PatternEngine's `renderPattern` function + * + * @see {@link PatternEngine.renderPattern} + * @returns The rendered pattern + */ + render: (data: PatternData) => Promise<string>; + + /** + * Register a partial for the pattern engine + * @see {@link PatternEngine.registerPartial} + */ + registerPartial: () => void; + + /** + * calculated path from the root of the public directory to the generated html + * file for this pattern. + * + * Should look something like 'atoms-global-colors/atoms-global-colors.html' + * + * @param patternlab Current patternlab instance + * @param suffixType File suffix + * @param customFileExtension Custom extension + */ + getPatternLink: (patternlab: PatternLab, suffixType: string, customFileExtension: string) => void; + + /** + * The finders all delegate to the PatternEngine, which also + * encapsulates all appropriate regex's + * @see {@link PatternEngine.findPartials} + * @returns The partials found in the pattern + */ + findPartials: () => RegExpMatchArray | null; + + /** + * The finders all delegate to the PatternEngine, which also + * encapsulates all appropriate regex's + * @see {@link PatternEngine.findPartialsWithPatternParameters} + * @returns The partials found in the pattern + */ + findPartialsWithPatternParameters: () => RegExpMatchArray | null; + + /** + * The finders all delegate to the PatternEngine, which also + * encapsulates all appropriate regex's + * @see {@link PatternEngine.findListItems} + * @returns The list items found in the pattern + */ + findListItems: () => RegExpMatchArray | null; + + /** + * The finders all delegate to the PatternEngine, which also + * encapsulates all appropriate regex's + * @see {@link PatternEngine.findPartial} + * @returns The pattern parameters found in the pattern + */ + findPartial: (partialString: string) => string; + + /** + * Reset the information that the pattern has it's own directory, + * so that this pattern will not be handled as flat pattern if it + * is located on a top level folder. + * + * @param patternlab Current patternlab instance + */ + promoteFromDirectoryToFlatPattern: (patternlab: PatternLab) => void; + + /** + * factory: creates an empty Pattern for miscellaneous internal use, such as + * by list_item_hunter + * + * @param customProps Properties to apply to new pattern + * @param patternlab Current patternlab instance + */ + createEmpty: (customProps: Partial<Pattern>, patternlab: PatternLab) => Pattern; + + /** + * factory: creates a Pattern object on-demand from a hash; the hash accepts + * parameters that replace the positional parameters that the Pattern + * constructor takes. + */ + create: ( + relPath: string, + data: PatternData, + customProps: Partial<Pattern>, + patternlab: PatternLab, + ) => Pattern; +} diff --git a/packages/types/src/lib/types.spec.ts b/packages/types/src/lib/types.spec.ts new file mode 100644 index 000000000..ce6440d2b --- /dev/null +++ b/packages/types/src/lib/types.spec.ts @@ -0,0 +1,7 @@ +import { types } from './types'; + +describe('types', () => { + it('should work', () => { + expect(types()).toEqual('types'); + }); +}); diff --git a/packages/types/src/lib/types.ts b/packages/types/src/lib/types.ts new file mode 100644 index 000000000..10949adf0 --- /dev/null +++ b/packages/types/src/lib/types.ts @@ -0,0 +1,3 @@ +export function types(): string { + return 'types'; +} diff --git a/packages/types/tsconfig.json b/packages/types/tsconfig.json new file mode 100644 index 000000000..f5b85657a --- /dev/null +++ b/packages/types/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "commonjs", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/packages/types/tsconfig.lib.json b/packages/types/tsconfig.lib.json new file mode 100644 index 000000000..33eca2c2c --- /dev/null +++ b/packages/types/tsconfig.lib.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "include": ["src/**/*.ts"], + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"] +} diff --git a/packages/types/tsconfig.spec.json b/packages/types/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/types/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/uikit-polyfills/CHANGELOG.md b/packages/uikit-polyfills/CHANGELOG.md deleted file mode 100644 index 78de7d9bc..000000000 --- a/packages/uikit-polyfills/CHANGELOG.md +++ /dev/null @@ -1,74 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -# [6.0.0](https://github.com/pattern-lab/patternlab-node/compare/v5.17.0...v6.0.0) (2023-01-31) - -**Note:** Version bump only for package @pattern-lab/uikit-polyfills - - - - - -## [5.16.1](https://github.com/pattern-lab/patternlab-node/compare/v5.16.0...v5.16.1) (2022-01-29) - -**Note:** Version bump only for package @pattern-lab/uikit-polyfills - - - - - -# [5.16.0](https://github.com/pattern-lab/patternlab-node/compare/v5.15.7...v5.16.0) (2022-01-29) - -**Note:** Version bump only for package @pattern-lab/uikit-polyfills - - - - - -## [5.15.5](https://github.com/pattern-lab/patternlab-node/compare/v5.15.3...v5.15.5) (2021-12-06) - -**Note:** Version bump only for package @pattern-lab/uikit-polyfills - - - - - -## [5.15.4](https://github.com/pattern-lab/patternlab-node/compare/v5.15.3...v5.15.4) (2021-12-06) - -**Note:** Version bump only for package @pattern-lab/uikit-polyfills - - - - - -## [5.14.3](https://github.com/pattern-lab/patternlab-node/compare/v5.14.2...v5.14.3) (2021-05-17) - -**Note:** Version bump only for package @pattern-lab/uikit-polyfills - - - - - - -## [5.13.1](https://github.com/pattern-lab/patternlab-node/compare/v5.13.0...v5.13.1) (2020-09-06) - -**Note:** Version bump only for package @pattern-lab/uikit-polyfills - - - - - - -# [5.2.0](https://github.com/pattern-lab/patternlab-node/compare/v5.1.0...v5.2.0) (2019-11-12) - - -### Bug Fixes - -* update package.json description in `@pattern-lab/uikit-polyfills` ([22fc44a](https://github.com/pattern-lab/patternlab-node/commit/22fc44a4b3683753a469a98abfcdad8f1234f28a)) - - -### Features - -* major refactoring + UI updates to address cross browser support; UI cleanup and conversion of the majority of the remaining components over to lit-element ([2ff8e1c](https://github.com/pattern-lab/patternlab-node/commit/2ff8e1c98cdd02e8077064c48eca5f7754a3db02)) diff --git a/packages/uikit-polyfills/index.js b/packages/uikit-polyfills/index.js deleted file mode 100755 index 23b4fae3a..000000000 --- a/packages/uikit-polyfills/index.js +++ /dev/null @@ -1,23 +0,0 @@ -import 'regenerator-runtime/runtime'; -import 'custom-event-polyfill'; -import 'get-own-property-symbols'; -import '@webcomponents/webcomponentsjs/webcomponents-bundle'; - -import 'element-closest'; -// A matches polyfill is already included in the previous closest polyfill – as long as that one is still included, we won't need the next one -// import 'element-matches'; -import 'core-js/modules/es.string.includes'; -import 'core-js/modules/es.string.trim-end'; -import 'core-js/modules/es.string.trim-start'; -import 'core-js/modules/es.string.code-point-at'; -import 'core-js/modules/es.string.starts-with'; -import 'core-js/modules/es.number.is-nan'; -import 'core-js/modules/es.array.find'; -import 'core-js/modules/es.array.includes'; -import 'core-js/modules/es.array.from'; -import 'core-js/modules/es.array.for-each'; -import 'core-js/modules/es.object.assign'; -import 'core-js/modules/es.promise'; -import 'core-js/es6/symbol'; -import 'core-js/web/dom-collections'; -import 'core-js/web/url-search-params'; diff --git a/packages/uikit-polyfills/package.json b/packages/uikit-polyfills/package.json deleted file mode 100644 index 35c06a41d..000000000 --- a/packages/uikit-polyfills/package.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "@pattern-lab/uikit-polyfills", - "version": "6.0.0", - "description": "Web Component and further necessary Polyfills used in Pattern Lab's UIKit", - "main": "index.js", - "author": "Salem Ghoweri <me@salemghoweri.com>", - "license": "MIT", - "dependencies": { - "@webcomponents/webcomponentsjs": "^2.5.0", - "core-js": "^3.6.5", - "custom-event-polyfill": "^1.0.7", - "element-closest": "^3.0.2", - "get-own-property-symbols": "^0.9.5" - }, - "publishConfig": { - "access": "public" - }, - "engines": { - "node": ">=14.21.1" - } -} diff --git a/packages/uikit-workshop/.eslintrc.json b/packages/uikit-workshop/.eslintrc.json new file mode 100644 index 000000000..9d9c0db55 --- /dev/null +++ b/packages/uikit-workshop/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/packages/uikit-workshop/.gitignore b/packages/uikit-workshop/.gitignore deleted file mode 100644 index a3717f18d..000000000 --- a/packages/uikit-workshop/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -node_modules/* -src/bower_components/* -.sass-cache/* -.DS_Store -/.eslintignore -dist -public -www -dependencyGraph.json diff --git a/packages/uikit-workshop/.jshintrc b/packages/uikit-workshop/.jshintrc deleted file mode 100644 index b6e5df199..000000000 --- a/packages/uikit-workshop/.jshintrc +++ /dev/null @@ -1,4 +0,0 @@ -{ - "loopfunc": true, - "sub": true -} diff --git a/packages/uikit-workshop/.npmrc b/packages/uikit-workshop/.npmrc deleted file mode 100644 index ce73f58bf..000000000 --- a/packages/uikit-workshop/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false -save-exact=true diff --git a/packages/uikit-workshop/.nvmrc b/packages/uikit-workshop/.nvmrc deleted file mode 100644 index 8aeef54f8..000000000 --- a/packages/uikit-workshop/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -14.21 diff --git a/packages/uikit-workshop/.patternlabrc.example.js b/packages/uikit-workshop/.patternlabrc.example.js deleted file mode 100644 index becef019c..000000000 --- a/packages/uikit-workshop/.patternlabrc.example.js +++ /dev/null @@ -1,5 +0,0 @@ -// .rc config file allowing users to customize folder locations, etc that are wired up to be configurable in the build process (via cosmic config) -- this example lives in the root of UIKit however can live in a higher-level parent as part of your project's config! - -module.exports = { - // buildDir: __dirname + '/www/pattern-lab', -}; diff --git a/packages/uikit-workshop/build-tools.js b/packages/uikit-workshop/build-tools.js deleted file mode 100644 index 2cf5d898a..000000000 --- a/packages/uikit-workshop/build-tools.js +++ /dev/null @@ -1,17 +0,0 @@ -const webpackServer = require('@pattern-lab/uikit-workshop/build/webpack-server.js'); -const path = require('path'); -const configFilePath = path.join(process.cwd(), './patternlab-config.json'); -const config = require(configFilePath); -const patternlab = require('@pattern-lab/core')(config); - -// build + start watch mode -patternlab.build({ - watch: true, - cleanPublic: true, -}); - -webpackServer.serve( - patternlab, - configFilePath, - path.resolve(process.cwd(), config.paths.public.root) -); diff --git a/packages/uikit-workshop/build/webpack-dev-server-waitpage/index.js b/packages/uikit-workshop/build/webpack-dev-server-waitpage/index.js deleted file mode 100644 index c4376d45d..000000000 --- a/packages/uikit-workshop/build/webpack-dev-server-waitpage/index.js +++ /dev/null @@ -1,90 +0,0 @@ -const fs = require('fs'); -const path = require('path'); -const ejs = require('ejs'); -const webpack = require('webpack'); - -const data = { - webpackVersion: webpack.version, - webpackDevServerVersion: '2.4.1', - progress: [[0]], -}; - -/** - * @typedef {object} WebpackDevServerWaitpageOptions - * @property title {string} - * @property theme {string} - * @property template {string} - * @property disableWhenValid {boolean} - */ - -/** @type {WebpackDevServerWaitpageOptions} */ -const defaultOptions = { - title: 'Development Server', - theme: 'pl-loading', - disableWhenValid: true, -}; - -/** - * webpack-dev-server-waitpage middleware factory - * @param server {Server} The server argument passed to webpack-dev-server's 'before' function - * @param [options] {WebpackDevServerWaitpageOptions} An optional object of options (see Readme for more information) - * @returns {Function} Koa compatible middleware - */ -const webpackDevServerWaitpage = (server, options) => { - if (!server) { - throw new Error( - `webpack-dev-server's compilers argument must be supplied as first parameter.` - ); - } - - /** @type {WebpackDevServerWaitpageOptions} */ - options = Object.assign({}, defaultOptions, options); - - const compilers = server.compilers; - // || [server.middleware.context.compiler]; - for (let i = 0; i < compilers.length; i++) { - new webpack.ProgressPlugin(function () { - data.progress[i] = arguments; - }).apply(compilers[i]); - } - - let template = options.template; - if (!template) { - if ( - fs - .readdirSync(__dirname) - .filter((x) => x.endsWith('.ejs')) - .map((x) => x.slice(0, -4)) - .indexOf(options.theme) < 0 - ) { - throw new Error(`Unknown theme provided: ${options.theme}`); - } - template = fs.readFileSync( - path.resolve(__dirname, options.theme + '.ejs'), - 'utf8' - ); - } - - // eslint-disable-next-line no-return-assign - Object.keys(options).forEach((key) => (data[key] = options[key])); // expend data with options - - let wasValid = false; - - return async (req, res, next) => { - const valid = data.progress.every((p) => p[0] === 1); - wasValid = wasValid || valid; - - if ( - valid || // already valid - (options.disableWhenValid && wasValid) || // if after valid state should be disabled - req.method !== 'GET' - ) { - return await next(); - } else { - res.setHeader('Content-Type', 'text/html'); - res.end(ejs.render(template, data)); - } - }; -}; - -module.exports = webpackDevServerWaitpage; diff --git a/packages/uikit-workshop/build/webpack-dev-server-waitpage/pl-loading.ejs b/packages/uikit-workshop/build/webpack-dev-server-waitpage/pl-loading.ejs deleted file mode 100644 index f41bfd15f..000000000 --- a/packages/uikit-workshop/build/webpack-dev-server-waitpage/pl-loading.ejs +++ /dev/null @@ -1,195 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta charset="utf-8"> - <meta http-equiv="x-ua-compatible" content="IE=Edge,chrome=1"/> - <meta name="viewport" content="width=device-width, initial-scale=1"/> - <meta http-equiv="refresh" content="1.4" /> - - <title><%= title %></title> - <style> - html, body { - padding: 0; - margin: 0; - min-height: 100vh; - } - - body { - display: flex; - justify-content: center; - flex-direction: column; - padding: 0 1rem; - align-items: center; - background-color: #222; - color: white; - font-family: Open Sans, Helvetica Neue, sans-serif; - } - - .c-pl-card { - padding: 1rem; - } - - .is-compiling { - font-weight: semibold; - color: white; - margin-bottom: 1rem; - } - - .c-pl-progress-indicators { - display: flex; - align-items: center; - justify-content: center; - width: 100%; - } - - .c-pl-progress-indicator { - display: inline-block; - } - - .c-pl-progress-indicators > *:not(:last-child){ - margin-right: 1rem; - } - -<% for (var i = 0 ; i < progress.length ; i++) { %> - .c-pl-progress__circle { - margin-top: 20px; - position: relative; - left: 37%; - } - - .c-pl-progress__circle { - fill: transparent; - stroke-width: 5px; - stroke-dasharray: 250; - stroke-dashoffset: 1000; - } - - .c-pl-progress__loader--<%= i %> .c-pl-progress__progress { - stroke: #67ccff; - stroke-dashoffset: -<%= 250 + Math.round(250 * progress[i][0]) %>; - animation: dash 2s linear forwards infinite; - transform: rotate(-90deg); - transform-origin: center; - } - - .c-pl-progress__bar { - stroke: #EEEEEE; /* Grey 200 */ - } - - .c-pl-progress__text { - text-align: center; - font-size: 20px; - font-weight: bold; - font-family: "Oswald", "Impact", sans-serif; - fill: white; - color: white; - } -<% } %> - .message { - word-break: break-all; - text-align: center; - padding: 0 0 10px; - } - - progress-indicator { - display: flex; - justify-content: center; - } - - @keyframes blink { - 0% { - opacity: .2; - } - 20% { - opacity: 1; - } - 100% { - opacity: .2; - } - } - - .c-pl-progress__animated-text { - animation-name: blink; - animation-duration: 1.4s; - animation-iteration-count: infinite; - animation-fill-mode: both; - } - - .c-pl-progress__animated-text:nth-of-type(2) { - animation-delay: .2s; - } - - .c-pl-progress__animated-text:nth-of-type(3) { - animation-delay: .4s; - } - - .c-pl-logo { - opacity: 1; - position: relative; - overflow: visible; - margin: 0 auto; - } - </style> -</head> -<body> - -<div class="c-pl-logo"> - <div class="c-pl-logo__inner"> - <svg style="max-width: 100px;" width="100%" viewBox="0 0 187 185" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> - <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> - <g id="Group-6"> - <g id="Group-5"> - <g id="Group-3"> - <g id="Group-2"> - <circle id="Oval" stroke="#FFFFFF" stroke-width="15" cx="91.7" cy="92.5" r="84.1"></circle> - <circle id="Oval" fill="#ABABAB" cx="91.7" cy="92.5" r="52.8"></circle> - <path d="M186.3,35.7 C186.3,48.1 176.3,58.1 163.9,58.1 C151.5,58.1 141.5,48.1 141.5,35.7 C141.5,23.3 151.5,13.3 163.9,13.3 C176.2,13.3 186.3,23.3 186.3,35.7 Z" id="Path" fill="#ABABAB"></path> - </g> - </g> - </g> - </g> - </g> - </svg> - </div> -</div> - - -<div class="c-pl-card"> - <div class="is-compiling">Pattern Lab is compiling for the first time.</div> - - <div class="c-pl-progress-indicators"> - <% for (var i = 0 ; i < progress.length ; i++) { %> - <div class="c-pl-progress-indicator"> - <progress-indicator> - <svg class="c-pl-progress__loader c-pl-progress__loader--<%= i %>" height="100" width="100"> - <circle class="c-pl-progress__circle c-pl-progress__bar" cx="50" cy="50" r="40"></circle> - <circle class="c-pl-progress__circle c-pl-progress__progress" cx="50" cy="50" r="40"></circle> - <text x="53" y="55" text-anchor="middle" class="c-pl-progress__text"><%= Math.round(100 * progress[i][0]) %>%</text> - </svg> - </progress-indicator> - - <% - const capitalize = (str) => { - if (typeof str !== 'string') return ''; - return str.replace(/(?:^|\s)\S/g, function(a) { return a.toUpperCase(); }); - } - - const message = progress[i][1] || ''; - const result = message.includes('building') || message.includes('compiling') - ? 'Compiling' - : message.includes('optimization') - ? 'Optimizing' - : message.includes('emitting') || message.includes('seal') - ? 'Wrapping up' - : progress[i][1]; - %> - <div class="message"><strong><%= capitalize(result) %><span class="c-pl-progress__animated-text">.</span><span class="c-pl-progress__animated-text">.</span><span class="c-pl-progress__animated-text">.</span></strong></div> - </div> - - <% } %> - </div> - - -</div> -</body> -</html> diff --git a/packages/uikit-workshop/build/webpack-server.js b/packages/uikit-workshop/build/webpack-server.js deleted file mode 100644 index 0f8913f39..000000000 --- a/packages/uikit-workshop/build/webpack-server.js +++ /dev/null @@ -1,146 +0,0 @@ -const webpack = require('webpack'); -const express = require('express'); -const browserSync = require('browser-sync').create(); -const webpackDevMiddleware = require('webpack-dev-middleware'); -const opn = require('better-opn'); -const path = require('path'); -const hasha = require('hasha'); -const webpackDevServerWaitpage = require('./webpack-dev-server-waitpage'); -const webpackConfig = require('../webpack.config'); -const app = express(); -const portfinder = require('portfinder'); - -const fileHashes = {}; - -async function serve(patternlab, configPath, buildDir = 'public') { - // @todo: move these configs + make customizable? - const root = path.resolve(__dirname, `${buildDir}`); - const preferredPort = 3000; - portfinder.basePort = preferredPort; - - const webpackConfigs = await webpackConfig({ - watch: true, - prod: false, - buildDir: root, - rootDir: process.cwd(), - }); - - const port = await portfinder - .getPortPromise() - .then((portNo) => { - return portNo; - }) - .catch((err) => { - console.log(err); - return 3000; - }); - - // customize bs reload behavior based on the type of asset that's changed - const filesToWatch = [ - { - match: [`${process.cwd()}/patternlab-config.json`], - fn: async function () { - // when the main PL config changes, clear Node's cache (so the JSON config is re-read) and trigger another PL build - // this allows config changes to show up without restarting the build! - Object.keys(require.cache).forEach(function (key) { - delete require.cache[key]; - }); - - const config = require(configPath); - const pl = require('@pattern-lab/core')(config); - - pl.build({ - watch: false, - cleanPublic: true, - }); - }, - }, - `${root}/**/*.css`, - `${root}/**/*.js`, - { - match: [`${root}/**/*.svg`, `${root}/**/*.png`, `${root}/**/*.jpg`], - fn: async function () { - browserSync.reload(); - }, - }, - // only reload the Webpack-generated HTML files when the contents have changed - { - match: [ - path.join(process.cwd(), `${root}/*.html`), - path.join(process.cwd(), `${root}/styleguide/html/*.html`), - ], - fn: async function (event, filePath) { - let updatedHash = false; - - const hash = await hasha.fromFile( - path.resolve(__dirname, `../${filePath}`), - { algorithm: 'md5' } - ); - - if (!fileHashes[filePath] || fileHashes[filePath] !== hash) { - fileHashes[filePath] = hash; - updatedHash = true; - } - - if (updatedHash && !patternlab.isBusy()) { - browserSync.reload(filePath); - } - }, - }, - ]; - - browserSync.init( - { - proxy: `127.0.0.1:${port}`, - logLevel: 'info', - ui: false, - notify: false, - open: false, - tunnel: false, - port, - logFileChanges: false, - reloadOnRestart: true, - watchOptions: { - ignoreInitial: true, - }, - files: filesToWatch, - }, - function (err, bs) { - // assigned port from browsersync based on what's available - const assignedPort = bs.options.get('port'); - opn(`http://localhost:${assignedPort}`); - const compiler = webpack(webpackConfigs); - - app.use( - webpackDevServerWaitpage(compiler, { - proxyHeader: 'browsersync-proxy', - redirectPath: `http://localhost:${assignedPort}`, - }) - ); - - app.use( - webpackDevMiddleware(compiler, { - stats: 'errors-warnings', - writeToDisk: true, - }) - ); - - app.use(express.static(root)); - - app.listen(assignedPort, '127.0.0.1', function onStart(error) { - if (error) { - console.log(error); - } - }); - } - ); - - // auto-reload the page when PL finishes compiling - patternlab.events.on('patternlab-build-end', () => { - browserSync.reload(); - }); -} - -module.exports = { - serve, -}; diff --git a/packages/uikit-workshop/jest.config.ts b/packages/uikit-workshop/jest.config.ts new file mode 100644 index 000000000..f79efb541 --- /dev/null +++ b/packages/uikit-workshop/jest.config.ts @@ -0,0 +1,10 @@ +/* eslint-disable */ +export default { + displayName: 'uikit-workshop', + preset: '../../jest.preset.js', + transform: { + '^.+\\.[tj]s$': 'babel-jest', + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/uikit-workshop', +}; diff --git a/packages/uikit-workshop/package.json b/packages/uikit-workshop/package.json index d248a8203..1bb996007 100644 --- a/packages/uikit-workshop/package.json +++ b/packages/uikit-workshop/package.json @@ -2,15 +2,6 @@ "name": "@pattern-lab/uikit-workshop", "version": "6.0.1", "description": "Front-end assets and templates for the default Pattern Lab workshop view", - "main": "gulpfile.js", - "scripts": { - "start": "node ./build-tools.js", - "prepublish": "npm run build", - "postbootstrap": "npm run build", - "build": "webpack-cli --config webpack.config.js --progress --bail --stats=minimal", - "watch": "webpack-cli --config webpack.config.js --progress --watch --stats=minimal", - "test": "npm run build" - }, "authors": [ { "name": "Brad Frost", @@ -31,79 +22,6 @@ "license": "MIT", "repository": "https://github.com/pattern-lab/patternlab-node/tree/master/packages/uikit-workshop", "bugs": "https://github.com/pattern-lab/patternlab-node/issues", - "devDependencies": { - "@babel/core": "^7.13.14", - "@babel/plugin-proposal-class-properties": "^7.13.0", - "@babel/plugin-proposal-decorators": "^7.13.5", - "@babel/plugin-proposal-optional-chaining": "^7.13.12", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-jsx": "^7.12.13", - "@babel/plugin-transform-react-jsx": "^7.13.12", - "@babel/plugin-transform-runtime": "^7.13.10", - "@babel/preset-env": "^7.13.12", - "@babel/runtime": "^7.13.10", - "@pattern-lab/core": "^6.0.1", - "@pattern-lab/engine-handlebars": "^6.0.0", - "@pattern-lab/engine-mustache": "^6.0.0", - "@pattern-lab/uikit-polyfills": "^6.0.0", - "@reach/visually-hidden": "^0.1.2", - "@webcomponents/custom-elements": "^1.4.3", - "autoprefixer": "^10.2.5", - "babel-loader": "^9.1.2", - "better-opn": "^3.0.0", - "browser-sync": "^2.26.7", - "classnames": "^2.3.1", - "clean-css-loader": "^4.2.1", - "clean-webpack-plugin": "4.0.0", - "clipboard": "^2.0.8", - "copy-webpack-plugin": "^11.0.0", - "cosmiconfig": "^7.0.0", - "css-loader": "^6.7.3", - "ejs": "^3.1.6", - "express": "^4.17.1", - "fg-loadjs": "^1.1.0", - "fuse.js": "^6.4.6", - "handlebars": "^4.7.7", - "hasha": "^5.2.2", - "html-loader": "^4.2.0", - "html-webpack-plugin": "^5.5.0", - "lit-element": "^2.2.1", - "lit-html": "^1.1.2", - "mini-css-extract-plugin": "^2.7.2", - "mousetrap": "^1.6.5", - "portfinder": "^1.0.28", - "postcss": "^8.2.8", - "postcss-loader": "^7.0.2", - "preact": "^10.0.5", - "preact-render-to-string": "^5.1.1", - "preload-webpack-plugin": "^3.0.0-beta.3", - "pretty": "^2.0.0", - "prismjs": "^1.25.0", - "pwa-helpers": "^0.9.1", - "react-autosuggest": "^9.4.2", - "react-dom": "^16.8.6", - "react-html-parser": "^2.0.2", - "redux": "4.1.2", - "redux-thunk": "^2.4.0", - "sass": "1.43.4", - "sass-loader": "^13.2.0", - "scriptjs": "^2.5.9", - "scroll-js": "3.4.x", - "skatejs": "^5.2.4", - "style-loader": "^3.3.1", - "svg-sprite-loader": "^6.0.11", - "svg-transform-loader": "^2.0.13", - "svgo-loader": "^4.0.0", - "ts-loader": "^9.4.2", - "webpack": "^5.75.0", - "webpack-cli": "^5.0.1", - "webpack-dev-middleware": "^6.0.1", - "webpack-hot-middleware": "^2.25.3", - "webpack-merge": "^5.8.0", - "webpackbar": "5.0.2", - "wolfy87-eventemitter": "^5.2.9", - "yargs": "^17.0.1" - }, "browserslist": [ "last 2 version", ">0.25%", @@ -111,11 +29,9 @@ "not op_mini all" ], "files": [ - "src", "dist", "views", - "views-twig", - "webpack.config.js" + "views-twig" ], "gitHead": "80f62be442223e09bafb30d0529cbd768e03f2ac", "engines": { diff --git a/packages/uikit-workshop/project.json b/packages/uikit-workshop/project.json new file mode 100644 index 000000000..3bd49153d --- /dev/null +++ b/packages/uikit-workshop/project.json @@ -0,0 +1,63 @@ +{ + "name": "uikit-workshop", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "projectType": "application", + "sourceRoot": "packages/uikit-workshop/src", + "tags": [], + "targets": { + "build": { + "executor": "@nx/webpack:webpack", + "outputs": ["{options.outputPath}"], + "defaultConfiguration": "production", + "options": { + "outputPath": "dist/packages/uikit-workshop", + "main": "packages/uikit-workshop/src/scripts/patternlab-pattern.js", + "tsConfig": "packages/uikit-workshop/tsconfig.app.json", + "webpackConfig": "packages/uikit-workshop/webpack.config.js", + "generatePackageJson": true, + "isolatedConfig": true + }, + "configurations": { + "production": {} + } + }, + "serve": { + "executor": "@nx/webpack:dev-server", + "options": { + "buildTarget": "uikit-workshop:build" + }, + "configurations": { + "production": { + "buildTarget": "uikit-workshop:build:production" + } + } + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["packages/uikit-workshop/**/*.ts"] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/uikit-workshop/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + }, + "version": { + "executor": "@jscutlery/semver:version", + "options": { + "preset": "conventional" + } + } + } +} diff --git a/packages/uikit-workshop/src/css/prism-okaidia.css b/packages/uikit-workshop/src/css/prism-okaidia.css old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/src/html/index.html b/packages/uikit-workshop/src/html/index.html index d4fad9934..a906d373c 100644 --- a/packages/uikit-workshop/src/html/index.html +++ b/packages/uikit-workshop/src/html/index.html @@ -3,26 +3,15 @@ <head> <title id="title">Pattern Lab</title> <meta charset="UTF-8" /> - <meta - name="viewport" - content="initial-scale=1, width=device-width, viewport-fit=cover" - /> + <meta name="viewport" content="initial-scale=1, width=device-width, viewport-fit=cover" /> <meta name="theme-color" content="#ababab" /> <!-- webpackIgnore: true --> <link rel="stylesheet" href="styleguide/css/pattern-lab.css" media="all" /> <!-- webpackIgnore: true --> - <link - rel="prefetch" - as="image" - href="styleguide/images/pattern-lab-logo--on-dark.svg" - /> + <link rel="prefetch" as="image" href="styleguide/images/pattern-lab-logo--on-dark.svg" /> <!-- webpackIgnore: true --> - <link - rel="prefetch" - as="image" - href="styleguide/images/pattern-lab-logo--on-light.svg" - /> + <link rel="prefetch" as="image" href="styleguide/images/pattern-lab-logo--on-light.svg" /> </head> <body class="pl-c-body"> @@ -39,11 +28,7 @@ <!-- webpackIgnore: true --> <script src="annotations/annotations.js" defer></script> <!-- webpackIgnore: true --> - <script - src="styleguide/js/patternlab-viewer.modern.js" - type="module" - crossorigin - ></script> + <script src="styleguide/js/patternlab-viewer.js" type="module" crossorigin></script> <script> // https://gist.github.com/samthor/64b114e4a4f539915a95b91ffd340acc (function () { @@ -60,7 +45,7 @@ } e.preventDefault(); }, - true + true, ); check.type = 'module'; check.src = '.'; @@ -69,13 +54,6 @@ } })(); </script> - <!-- webpackIgnore: true --> - <script - src="styleguide/js/patternlab-viewer.js" - defer - nomodule - crossorigin - ></script> <script> // Check that service workers are registered diff --git a/packages/uikit-workshop/src/html/partials/base-template.html b/packages/uikit-workshop/src/html/partials/base-template.html old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/src/sass/pattern-lab.scss b/packages/uikit-workshop/src/sass/pattern-lab.scss old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/src/scripts/components/pl-copy-to-clipboard/pl-copy-to-clipboard.js b/packages/uikit-workshop/src/scripts/components/pl-copy-to-clipboard/pl-copy-to-clipboard.js old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/src/scripts/lit-components/pl-drawer/pl-drawer.scss b/packages/uikit-workshop/src/scripts/lit-components/pl-drawer/pl-drawer.scss old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/src/scripts/lit-components/pl-viewport/pl-viewport.js b/packages/uikit-workshop/src/scripts/lit-components/pl-viewport/pl-viewport.js index ffbef44d7..ce1a7a51f 100644 --- a/packages/uikit-workshop/src/scripts/lit-components/pl-viewport/pl-viewport.js +++ b/packages/uikit-workshop/src/scripts/lit-components/pl-viewport/pl-viewport.js @@ -37,10 +37,7 @@ class IFrame extends BaseLitComponent { iframeLoaderStyles.use(); styles.use(); - this.defaultPattern = - window.config && window.config.defaultPattern - ? window.config.defaultPattern - : 'all'; + this.defaultPattern = window.config && window.config.defaultPattern ? window.config.defaultPattern : 'all'; this.defaultIframeUrl = urlHandler.getFileName(this.defaultPattern); @@ -87,12 +84,7 @@ class IFrame extends BaseLitComponent { this.bodySize = window.config.ishFontSize !== undefined ? parseInt(window.config.ishFontSize, 10) - : parseInt( - window - .getComputedStyle(document.body, null) - .getPropertyValue('font-size'), - 10 - ); //Body size of the document + : parseInt(window.getComputedStyle(document.body, null).getPropertyValue('font-size'), 10); //Body size of the document //set up the default for the this.baseIframePath = @@ -116,10 +108,7 @@ class IFrame extends BaseLitComponent { sanitizePatternName(plName) { if (urlHandler.getFileName(plName)) { return plName; - } else if ( - !document.querySelector(`[data-patternpartial="${plName}"]`) && - plName - ) { + } else if (!document.querySelector(`[data-patternpartial="${plName}"]`) && plName) { return plName.replace(/[-][0-9][0-9]/g, ''); } else { return plName; @@ -164,7 +153,7 @@ class IFrame extends BaseLitComponent { currentPattern: currentPattern, }, null, - addressReplacement + addressReplacement, ); this.dontWipeBrowserHistory = false; } else { @@ -173,7 +162,7 @@ class IFrame extends BaseLitComponent { currentPattern: currentPattern, }, null, - addressReplacement + addressReplacement, ); } } @@ -232,9 +221,7 @@ class IFrame extends BaseLitComponent { }, 800); const targetOrigin = - window.location.protocol === 'file:' - ? '*' - : window.location.protocol + '//' + window.location.host; + window.location.protocol === 'file:' ? '*' : window.location.protocol + '//' + window.location.host; const obj = JSON.stringify({ event: 'patternLab.resize', @@ -266,7 +253,7 @@ class IFrame extends BaseLitComponent { this.origOrientation = window.orientation; } }, - false + false, ); } } @@ -330,14 +317,10 @@ class IFrame extends BaseLitComponent { if (plPath) { this.iFramePath = - plPath !== '' - ? this.baseIframePath + plPath + '?' + Date.now() - : this.defaultIframePath; + plPath !== '' ? this.baseIframePath + plPath + '?' + Date.now() : this.defaultIframePath; this.dontWipeBrowserHistory = true; - document - .querySelector('.pl-js-iframe') - .contentWindow.location.replace(this.iFramePath); + document.querySelector('.pl-js-iframe').contentWindow.location.replace(this.iFramePath); } } @@ -360,14 +343,8 @@ class IFrame extends BaseLitComponent { const attachIframeUnload = () => { // Remove the unloadIframeHandler in case it was already attached to avoid firing twice if (this.iframe.contentWindow) { - this.iframe.contentWindow.removeEventListener( - 'unload', - unloadIframeHandler - ); - this.iframe.contentWindow.addEventListener( - 'unload', - unloadIframeHandler - ); + this.iframe.contentWindow.removeEventListener('unload', unloadIframeHandler); + this.iframe.contentWindow.addEventListener('unload', unloadIframeHandler); } }; @@ -379,9 +356,7 @@ class IFrame extends BaseLitComponent { handleIframe404() { setTimeout(() => { if ( - this.iframe?.contentWindow?.document?.body?.textContent.includes( - 'Cannot GET' - ) || + this.iframe?.contentWindow?.document?.body?.textContent.includes('Cannot GET') || this.iframe?.contentWindow?.document?.title.includes('Error') ) { /** @@ -389,8 +364,7 @@ class IFrame extends BaseLitComponent { * Workaround to avoiding an infinite loop (if using srcdoc) which breaks the ability to * hit the back button if you hit a 404 */ - this.iframe.contentWindow.document.body.innerHTML = - this.iframe404Fallback; + this.iframe.contentWindow.document.body.innerHTML = this.iframe404Fallback; } }, 100); } @@ -408,23 +382,16 @@ class IFrame extends BaseLitComponent { return html` <div class="pl-c-viewport pl-js-viewport"> <div class="pl-c-viewport__cover pl-js-viewport-cover" hidden></div> - <div - class="pl-c-viewport__iframe-wrapper pl-js-vp-iframe-container" - style="width: ${initialWidth}" - > + <div class="pl-c-viewport__iframe-wrapper pl-js-vp-iframe-container" style="width: ${initialWidth}"> <iframe - class="pl-c-viewport__iframe pl-js-iframe pl-c-body--theme-${this - .themeMode}" + class="pl-c-viewport__iframe pl-js-iframe pl-c-body--theme-${this.themeMode}" src=${ifDefined(url === '' ? undefined : url)} srcdoc=${ifDefined(url === '' ? this.iframe404Fallback : undefined)} title="Pattern details" ></iframe> <div class="pl-c-viewport__resizer pl-js-resize-container"> - <div - class="pl-c-viewport__resizer-handle pl-js-resize-handle" - @mousedown="${this.handleMouseDown}" - > + <div class="pl-c-viewport__resizer-handle pl-js-resize-handle" @mousedown="${this.handleMouseDown}"> <svg viewBox="0 0 20 20" preserveAspectRatio="xMidYMid" @@ -455,10 +422,7 @@ class IFrame extends BaseLitComponent { function handleIframeCoverResize(e) { const viewportWidth = origViewportWidth + 2 * (e.clientX - origClientX); - if ( - viewportWidth > minViewportWidth && - viewportWidth < maxViewportWidth - ) { + if (viewportWidth > minViewportWidth && viewportWidth < maxViewportWidth) { self.sizeiframe(viewportWidth, false); } else if (viewportWidth > maxViewportWidth) { self.sizeiframe(maxViewportWidth, false); @@ -473,18 +437,13 @@ class IFrame extends BaseLitComponent { document.body.addEventListener( 'mouseup', function () { - self.iframeCover.removeEventListener( - 'mousemove', - handleIframeCoverResize - ); + self.iframeCover.removeEventListener('mousemove', handleIframeCoverResize); self.iframeCover.hidden = true; - self - .querySelector('.pl-js-resize-handle') - .classList.remove('is-resizing'); + self.querySelector('.pl-js-resize-handle').classList.remove('is-resizing'); }, { once: true, - } + }, ); return false; @@ -502,9 +461,7 @@ class IFrame extends BaseLitComponent { // workaround for certain pages (especially view all pages) not always matching up internally with the expected current pattern key if (data.event !== undefined && data.event === 'patternLab.pageLoad') { try { - const currentPattern = - this.sanitizePatternName(data.patternpartial) || - this.getPatternParam(); + const currentPattern = this.sanitizePatternName(data.patternpartial) || this.getPatternParam(); document.title = 'Pattern Lab - ' + currentPattern; @@ -525,7 +482,7 @@ class IFrame extends BaseLitComponent { currentPattern: currentPattern, }, null, - addressReplacement + addressReplacement, ); const currentUrl = urlHandler.getFileName(currentPattern); diff --git a/packages/uikit-workshop/src/scripts/patternlab-pattern.js b/packages/uikit-workshop/src/scripts/patternlab-pattern.js old mode 100755 new mode 100644 index 2f0e25423..08b09ad61 --- a/packages/uikit-workshop/src/scripts/patternlab-pattern.js +++ b/packages/uikit-workshop/src/scripts/patternlab-pattern.js @@ -1,5 +1,5 @@ -import 'regenerator-runtime/runtime'; import './components/modal-styleguide'; import './components/pl-search/pl-search.iframe-helper'; import './components/pl-nav/pl-nav.iframe-helper'; +import './lit-components/pl-viewport-size-list/pl-viewport-size-list.iframe-helper'; import './utils/share-inner-iframe-data'; diff --git a/packages/uikit-workshop/src/scripts/patternlab-pattern.modern.js b/packages/uikit-workshop/src/scripts/patternlab-pattern.modern.js deleted file mode 100755 index 08b09ad61..000000000 --- a/packages/uikit-workshop/src/scripts/patternlab-pattern.modern.js +++ /dev/null @@ -1,5 +0,0 @@ -import './components/modal-styleguide'; -import './components/pl-search/pl-search.iframe-helper'; -import './components/pl-nav/pl-nav.iframe-helper'; -import './lit-components/pl-viewport-size-list/pl-viewport-size-list.iframe-helper'; -import './utils/share-inner-iframe-data'; diff --git a/packages/uikit-workshop/src/scripts/patternlab-viewer.js b/packages/uikit-workshop/src/scripts/patternlab-viewer.js old mode 100755 new mode 100644 index 67c99c11c..6d6c20843 --- a/packages/uikit-workshop/src/scripts/patternlab-viewer.js +++ b/packages/uikit-workshop/src/scripts/patternlab-viewer.js @@ -1,2 +1,2 @@ -import '@pattern-lab/uikit-polyfills'; +import 'reflect-metadata'; import './patternlab-components'; diff --git a/packages/uikit-workshop/src/scripts/patternlab-viewer.modern.js b/packages/uikit-workshop/src/scripts/patternlab-viewer.modern.js deleted file mode 100755 index da9f5d040..000000000 --- a/packages/uikit-workshop/src/scripts/patternlab-viewer.modern.js +++ /dev/null @@ -1,2 +0,0 @@ -import '@webcomponents/custom-elements/src/custom-elements.js'; // temp workaround for Edge supporting ES modules but not CEs -import './patternlab-components'; diff --git a/packages/uikit-workshop/src/scripts/utils/index.js b/packages/uikit-workshop/src/scripts/utils/index.js old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/tsconfig.app.json b/packages/uikit-workshop/tsconfig.app.json new file mode 100644 index 000000000..461061d0b --- /dev/null +++ b/packages/uikit-workshop/tsconfig.app.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "types": ["node"] + }, + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"], + "include": ["src/**/*.ts"] +} diff --git a/packages/uikit-workshop/tsconfig.json b/packages/uikit-workshop/tsconfig.json index b04ba66cb..63dbe35fb 100644 --- a/packages/uikit-workshop/tsconfig.json +++ b/packages/uikit-workshop/tsconfig.json @@ -1,28 +1,13 @@ { - "include": [ - "src" - ], - "exclude": [ - "dist" - ], - "compilerOptions": { - "noEmit": true, - "allowJs": true, - "checkJs": true, - "allowSyntheticDefaultImports": true, - "outDir": "dist", - "resolveJsonModule": true, - "skipLibCheck": true, - "target": "esnext", - "jsx": "react", - "module": "esnext", - "lib": ["es2017", "dom"], - "sourceMap": true, - "moduleResolution": "node", - "experimentalDecorators": true, - "baseUrl": "src/scripts" - }, - "typeAcquisition": { - "enable": true - } + "extends": "../../tsconfig.base.json", + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.app.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] } diff --git a/packages/uikit-workshop/tsconfig.spec.json b/packages/uikit-workshop/tsconfig.spec.json new file mode 100644 index 000000000..f6d8ffcc9 --- /dev/null +++ b/packages/uikit-workshop/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts"] +} diff --git a/packages/uikit-workshop/views-twig/README b/packages/uikit-workshop/views-twig/README old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/views-twig/partials/general-footer.twig b/packages/uikit-workshop/views-twig/partials/general-footer.twig old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/views-twig/partials/general-header.twig b/packages/uikit-workshop/views-twig/partials/general-header.twig old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/views-twig/partials/patternSection.twig b/packages/uikit-workshop/views-twig/partials/patternSection.twig old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/views-twig/viewall.twig b/packages/uikit-workshop/views-twig/viewall.twig old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/views/partials/general-footer.mustache b/packages/uikit-workshop/views/partials/general-footer.mustache index e4cfca84e..bd204199d 100644 --- a/packages/uikit-workshop/views/partials/general-footer.mustache +++ b/packages/uikit-workshop/views/partials/general-footer.mustache @@ -52,7 +52,7 @@ <script type="module"> // always load Pattern-specific JS so UI like accordions, etc can continue to work even when viewed as a standalone HTML page - import('../../styleguide/js/patternlab-pattern.modern.js'); + import('../../styleguide/js/patternlab-pattern.js'); </script> <script id="pl-js-insert-{{ cacheBuster }}" nomodule> diff --git a/packages/uikit-workshop/views/partials/patternSection.mustache b/packages/uikit-workshop/views/partials/patternSection.mustache old mode 100755 new mode 100644 diff --git a/packages/uikit-workshop/webpack.config.js b/packages/uikit-workshop/webpack.config.js index b8b2b1c97..ed90192ae 100644 --- a/packages/uikit-workshop/webpack.config.js +++ b/packages/uikit-workshop/webpack.config.js @@ -1,29 +1,32 @@ -// webpack.config.js -const { CleanWebpackPlugin } = require('clean-webpack-plugin'); -const TerserPlugin = require('terser-webpack-plugin'); +const { composePlugins } = require('@nx/webpack'); const HtmlWebpackPlugin = require('html-webpack-plugin'); +const path = require('path'); +const fs = require('node:fs'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const { CleanWebpackPlugin } = require('clean-webpack-plugin'); +const TerserPlugin = require('terser-webpack-plugin'); const CopyPlugin = require('copy-webpack-plugin'); -const path = require('path'); -const argv = require('yargs').argv; const { merge } = require('webpack-merge'); const WebpackBar = require('webpackbar'); -const fs = require('node:fs'); - -const cosmiconfigSync = require('cosmiconfig').cosmiconfigSync; -const explorerSync = cosmiconfigSync('patternlab'); // @todo: wire these two ocnfigs up to use cosmicconfig! const defaultConfig = { rootDir: process.cwd(), - buildDir: './dist', - prod: argv.watch ? false : true, // or false for local dev + buildDir: './dist/packages/uikit-workshop/dist', + prod: false, // or false for local dev sourceMaps: true, - watch: argv.watch ? true : false, + watch: false, publicPath: './styleguide/', copy: { patterns: [ - { from: '../uikit-workshop/src/images/**', to: 'images/[name][ext]' }, + { from: './packages/uikit-workshop/src/images/**', to: 'images/[name][ext]' }, + { from: './packages/uikit-workshop/views-twig/*', to: '../../views-twig/[name][ext]' }, + { from: './packages/uikit-workshop/views-twig/partials/*', to: '../../views-twig/partials/[name][ext]' }, + { from: './packages/uikit-workshop/views/*', to: '../../views/[name][ext]' }, + { from: './packages/uikit-workshop/views/partials/*', to: '../../views/partials/[name][ext]' }, + { from: './packages/uikit-workshop/package.json', to: '../../[name][ext]' }, + { from: './packages/uikit-workshop/LICENSE', to: '../../[name][ext]' }, + { from: './packages/uikit-workshop/CHANGELOG.md', to: '../../[name][ext]' }, ], }, noViewAll: false, @@ -31,339 +34,272 @@ const defaultConfig = { // Requiring partials // adapted from https://github.com/webpack-contrib/html-loader/issues/291#issuecomment-721909576 -const INCLUDE_PATTERN = /\<include src=\"(.+)\"\/?\>(?:\<\/include\>)?/gi; +const INCLUDE_PATTERN = /<include src="(.+)"\/?>(?:<\/include>)?/gi; const processNestedHtml = (content, loaderContext) => !INCLUDE_PATTERN.test(content) ? content : content.replace(INCLUDE_PATTERN, (m, src) => - processNestedHtml( - fs.readFileSync(path.resolve(loaderContext.context, src), 'utf8'), - loaderContext - ) + processNestedHtml(fs.readFileSync(path.resolve(loaderContext.context, src), 'utf8'), loaderContext), ); -module.exports = function (apiConfig) { - return new Promise(async (resolve) => { - let customConfig = defaultConfig; - let configToSearchFor; - - if (argv.patternlabrc) { - configToSearchFor = await explorerSync.load(argv.patternlabrc); - } else { - configToSearchFor = await explorerSync.search(); - } +// Nx plugins for webpack. +module.exports = composePlugins(() => { + // Allow external flags for modifying PL's prod mode, on top of the .patternlabrc config file + const config = defaultConfig; - if (configToSearchFor) { - if (configToSearchFor.config) { - customConfig = configToSearchFor.config; - } - } - - // Allow external flags for modifying PL's prod mode, on top of the .patternlabrc config file - const config = Object.assign({}, defaultConfig, customConfig, apiConfig); - - function getBabelConfig(isModern = false) { - return { - presets: [ - [ - '@babel/preset-env', - { - targets: { - browsers: isModern - ? [ - // NOTE: I'm not using the `esmodules` target due to this issue: - // https://github.com/babel/babel/issues/8809 - 'last 2 Chrome versions', - 'last 2 Safari versions', - 'last 2 iOS versions', - 'last 2 Edge versions', - 'Firefox ESR', - ] - : ['ie 11'], - }, - useBuiltIns: 'entry', - corejs: 3, - modules: false, - debug: false, + function getBabelConfig(isModern = false) { + return { + presets: [ + [ + '@babel/preset-env', + { + targets: { + browsers: isModern + ? [ + // NOTE: I'm not using the `esmodules` target due to this issue: + // https://github.com/babel/babel/issues/8809 + 'last 2 Chrome versions', + 'last 2 Safari versions', + 'last 2 iOS versions', + 'last 2 Edge versions', + 'Firefox ESR', + ] + : ['ie 11'], }, - ], + useBuiltIns: 'entry', + corejs: 3, + modules: false, + debug: false, + }, ], - plugins: [ - '@babel/plugin-proposal-optional-chaining', - ['@babel/plugin-proposal-decorators', { legacy: true }], - ['@babel/plugin-proposal-class-properties', { loose: true }], - ['@babel/plugin-proposal-private-methods', { loose: true }], - [ - '@babel/plugin-proposal-private-property-in-object', - { loose: true }, - ], - '@babel/plugin-syntax-dynamic-import', - '@babel/plugin-syntax-jsx' /* [1] */, - [ - '@babel/plugin-transform-react-jsx' /* [1] */, - { - pragma: 'h', - pragmaFrag: 'Fragment', - throwIfNamespace: false, - useBuiltIns: false, - }, - ], + ], + plugins: [ + '@babel/plugin-proposal-optional-chaining', + ['@babel/plugin-proposal-decorators', { legacy: true }], + ['@babel/plugin-proposal-class-properties', { loose: true }], + ['@babel/plugin-proposal-private-methods', { loose: true }], + ['@babel/plugin-proposal-private-property-in-object', { loose: true }], + '@babel/plugin-syntax-dynamic-import', + '@babel/plugin-syntax-jsx' /* [1] */, + [ + '@babel/plugin-transform-react-jsx' /* [1] */, + { + pragma: 'h', + pragmaFrag: 'Fragment', + throwIfNamespace: false, + useBuiltIns: false, + }, ], - }; - } + ], + }; + } - // organize the series of plugins to run our Sass through as an external array -- this is necessary since we need to add additional loaders when compiling Sass to standalone CSS files vs compiling Sass and returning an inline-able <style> block of CSS (which we need to do both) - const scssLoaders = [ - { - loader: 'css-loader', - options: { - sourceMap: config.sourceMaps, - }, + // organize the series of plugins to run our Sass through as an external array -- this is necessary since we need to add additional loaders when compiling Sass to standalone CSS files vs compiling Sass and returning an inline-able <style> block of CSS (which we need to do both) + const scssLoaders = [ + { + loader: 'css-loader', + options: { + sourceMap: config.sourceMaps, }, - { - loader: 'postcss-loader', - options: { - sourceMap: config.sourceMaps, - postcssOptions: { - plugins: [['autoprefixer', {}]], - }, + }, + { + loader: 'postcss-loader', + options: { + sourceMap: config.sourceMaps, + postcssOptions: { + plugins: [['autoprefixer', {}]], }, }, - { - loader: 'clean-css-loader', - options: { - compatibility: 'ie9', - level: 1, // @todo: test bumping this up to 2 - inline: ['remote'], - }, + }, + { + loader: 'clean-css-loader', + options: { + compatibility: 'ie9', + level: 1, // @todo: test bumping this up to 2 + inline: ['remote'], }, - { - loader: 'sass-loader', - options: { - sassOptions: { - sourceMap: config.sourceMaps, - outputStyle: 'expanded', - }, + }, + { + loader: 'sass-loader', + options: { + sassOptions: { + sourceMap: config.sourceMaps, + outputStyle: 'expanded', }, }, - ]; + }, + ]; - const webpackConfig = { - stats: 'errors-warnings', - performance: { - hints: false, - }, - resolve: { - extensions: ['.js', '.jsx'], - alias: { - react: 'preact/compat', - 'react-dom/test-utils': 'preact/test-utils', - 'react-dom': 'preact/compat', - }, - }, - output: { - path: path.resolve(config.rootDir, `${config.buildDir}/styleguide`), - publicPath: `${config.publicPath}`, - chunkFilename: `js/[name]-chunk-[chunkhash].js`, + const webpackConfig = { + stats: 'errors-warnings', + performance: { + hints: false, + }, + resolve: { + extensions: ['.js', '.jsx'], + alias: { + react: 'preact/compat', + 'react-dom/test-utils': 'preact/test-utils', + 'react-dom': 'preact/compat', }, - module: { - rules: [ - { - test: /\.(ts|tsx)$/, - use: [ - { - loader: 'ts-loader', - options: { - transpileOnly: true, - experimentalWatchApi: true, - }, + }, + output: { + path: path.resolve(config.rootDir, `${config.buildDir}/styleguide`), + publicPath: `${config.publicPath}`, + chunkFilename: `js/[name]-chunk-[chunkhash].js`, + }, + module: { + rules: [ + { + test: /\.(ts|tsx)$/, + use: [ + { + loader: 'ts-loader', + options: { + transpileOnly: true, + experimentalWatchApi: true, }, - ], - }, - { - test: /\.html$/, - use: [ - { - loader: 'html-loader', - options: { - minimize: { - minifyCSS: false, - minifyJS: config.prod ? true : false, - }, - preprocessor: processNestedHtml, + }, + ], + }, + { + test: /\.html$/, + use: [ + { + loader: 'html-loader', + options: { + minimize: { + minifyCSS: false, + minifyJS: config.prod ? true : false, }, + preprocessor: processNestedHtml, }, - ], - }, - { - test: /\.svg$/, - use: [ - { loader: 'svg-sprite-loader', options: {} }, - 'svg-transform-loader', - 'svgo-loader', - ], - }, - { - test: /\.css$/, - use: ['style-loader', 'css-loader'], - }, - { - test: /\.scss$/, - oneOf: [ - { - resourceQuery: /external/, // foo.scss?external - use: [ - { - loader: 'style-loader', - options: { injectType: 'lazySingletonStyleTag' }, - }, - scssLoaders, - ].reduce((acc, val) => acc.concat(val), []), - }, - { - // if .scss files are included by JS or HTML files, inline and don't spit out a file - issuer: /(\.js$|\.html$)/, - use: [scssLoaders].reduce((acc, val) => acc.concat(val), []), - }, - { - // otherwise extract the result and write out a .css file per usual - use: [MiniCssExtractPlugin.loader, scssLoaders].reduce( - (acc, val) => acc.concat(val), - [] - ), - }, - ], - }, - ], - }, - cache: true, - mode: config.prod ? 'production' : 'development', - optimization: { - minimize: config.prod, - chunkIds: 'total-size', - moduleIds: 'size', - removeAvailableModules: true, - removeEmptyChunks: true, - nodeEnv: 'production', - mergeDuplicateChunks: true, - concatenateModules: true, - splitChunks: { - chunks: 'async', - cacheGroups: { - defaultVendors: { - test: /[\\/]node_modules[\\/]/, - idHint: 'vendors', - chunks: 'async', - reuseExistingChunk: true, }, - }, + ], + }, + { + test: /\.svg$/, + use: [{ loader: 'svg-sprite-loader', options: {} }, 'svg-transform-loader', 'svgo-loader'], }, - minimizer: config.prod - ? [ - new TerserPlugin({ - test: /\.m?js(\?.*)?$/i, - terserOptions: { - safari10: true, + { + test: /\.css$/, + use: ['style-loader', 'css-loader'], + }, + { + test: /\.scss$/, + oneOf: [ + { + resourceQuery: /external/, // foo.scss?external + use: [ + { + loader: 'style-loader', + options: { injectType: 'lazySingletonStyleTag' }, }, - }), - ] - : [], - }, - plugins: [new WebpackBar(), new CopyPlugin(config.copy)], - }; - - const legacyConfig = merge(webpackConfig, { - entry: { - 'js/patternlab-pattern': path.join( - __dirname, - './src/scripts/patternlab-pattern.js' - ), - 'js/patternlab-viewer': path.join( - __dirname, - './src/scripts/patternlab-viewer.js' - ), - 'css/pattern-lab': path.join(__dirname, './src/sass/pattern-lab.scss'), - }, - module: { - rules: [ - { - test: /\.js$/, - exclude: /(bower_components|document-register-element)/, - use: { - loader: 'babel-loader', - options: getBabelConfig(false), + scssLoaders, + ].reduce((acc, val) => acc.concat(val), []), }, - }, - ], - }, - plugins: [ - new MiniCssExtractPlugin({ - filename: `[name].css`, - chunkFilename: `[id].css`, - }), - ], - }); - - const modernConfig = merge(webpackConfig, { - resolve: { - mainFields: ['esnext', 'jsnext:main', 'browser', 'module', 'main'], - }, - entry: { - 'js/patternlab-pattern': path.join( - __dirname, - './src/scripts/patternlab-pattern.modern.js' - ), - 'js/patternlab-viewer': path.join( - __dirname, - './src/scripts/patternlab-viewer.modern.js' - ), - 'css/pattern-lab': path.join(__dirname, './src/sass/pattern-lab.scss'), - }, - output: { - path: path.resolve(process.cwd(), `${config.buildDir}/styleguide`), - publicPath: `${config.publicPath}`, - filename: '[name].modern.js', - chunkFilename: `js/[name]-chunk-[chunkhash].modern.js`, - }, - module: { - rules: [ - { - test: /\.js$/, - exclude: /(node_modules)/, - use: { - loader: 'babel-loader', - options: getBabelConfig(true), + { + // if .scss files are included by JS or HTML files, inline and don't spit out a file + issuer: /(\.js$|\.html$)/, + use: [scssLoaders].reduce((acc, val) => acc.concat(val), []), }, + { + // otherwise extract the result and write out a .css file per usual + use: [MiniCssExtractPlugin.loader, scssLoaders].reduce((acc, val) => acc.concat(val), []), + }, + ], + }, + ], + }, + cache: true, + mode: config.prod ? 'production' : 'development', + optimization: { + minimize: config.prod, + chunkIds: 'total-size', + moduleIds: 'size', + removeAvailableModules: true, + removeEmptyChunks: true, + nodeEnv: 'production', + mergeDuplicateChunks: true, + concatenateModules: true, + splitChunks: { + chunks: 'async', + cacheGroups: { + defaultVendors: { + test: /[\\/]node_modules[\\/]/, + idHint: 'vendors', + chunks: 'async', + reuseExistingChunk: true, }, - ], + }, }, - plugins: [ - // clear out the buildDir on every fresh Webpack build - new CleanWebpackPlugin({ - verbose: false, - cleanOnceBeforeBuildPatterns: config.watch - ? [] - : [ - `${config.buildDir}/index.html`, - `${config.buildDir}/styleguide/css`, - `${config.buildDir}/styleguide/js`, - ], + minimizer: config.prod + ? [ + new TerserPlugin({ + test: /\.m?js(\?.*)?$/i, + terserOptions: { + safari10: true, + }, + }), + ] + : [], + }, + plugins: [new WebpackBar(), new CopyPlugin(config.copy)], + }; - // perform clean just before files are emitted to the output dir - beforeEmit: false, - }), - new HtmlWebpackPlugin({ - filename: '../index.html', - template: path.resolve(__dirname, 'src/html/index.html'), - inject: false, - }), - new MiniCssExtractPlugin({ - filename: `[name].css`, - chunkFilename: `[id].css`, - }), + const modernConfig = merge(webpackConfig, { + resolve: { + mainFields: ['esnext', 'jsnext:main', 'browser', 'module', 'main'], + }, + entry: { + 'js/patternlab-pattern': path.join(__dirname, './src/scripts/patternlab-pattern.js'), + 'js/patternlab-viewer': path.join(__dirname, './src/scripts/patternlab-viewer.js'), + 'css/pattern-lab': path.join(__dirname, './src/sass/pattern-lab.scss'), + }, + output: { + path: path.resolve(process.cwd(), `${config.buildDir}/styleguide`), + publicPath: `${config.publicPath}`, + filename: '[name].js', + chunkFilename: `js/[name]-chunk-[chunkhash].js`, + }, + module: { + rules: [ + { + test: /\.js$/, + exclude: /(node_modules)/, + use: { + loader: 'babel-loader', + options: getBabelConfig(true), + }, + }, ], - }); + }, + plugins: [ + // clear out the buildDir on every fresh Webpack build + new CleanWebpackPlugin({ + verbose: false, + cleanOnceBeforeBuildPatterns: config.watch + ? [] + : [ + `${config.buildDir}/index.html`, + `${config.buildDir}/styleguide/css`, + `${config.buildDir}/styleguide/js`, + ], - return resolve([modernConfig, legacyConfig]); + // perform clean just before files are emitted to the output dir + beforeEmit: false, + }), + new HtmlWebpackPlugin({ + filename: '../index.html', + template: path.resolve(__dirname, 'src/html/index.html'), + inject: false, + }), + new MiniCssExtractPlugin({ + filename: `[name].css`, + chunkFilename: `[id].css`, + }), + ], }); -}; + + return modernConfig; +}); diff --git a/tools/scripts/publish.mjs b/tools/scripts/publish.mjs new file mode 100644 index 000000000..9f5c576cb --- /dev/null +++ b/tools/scripts/publish.mjs @@ -0,0 +1,59 @@ +/** + * This is a minimal script to publish your package to "npm". + * This is meant to be used as-is or customize as you see fit. + * + * This script is executed on "dist/path/to/library" as "cwd" by default. + * + * You might need to authenticate with NPM before running this script. + */ + +import { readCachedProjectGraph } from '@nrwl/devkit'; +import { execSync } from 'child_process'; +import { readFileSync, writeFileSync } from 'fs'; +import chalk from 'chalk'; + +function invariant(condition, message) { + if (!condition) { + console.error(chalk.bold.red(message)); + process.exit(1); + } +} + +// Executing publish script: node path/to/publish.mjs {name} --version {version} --tag {tag} +// Default "tag" to "next" so we won't publish the "latest" tag by accident. +const [, , name, version, tag = 'next'] = process.argv; + +// A simple SemVer validation to validate the version +const validVersion = /^\d+\.\d+\.\d+(-\w+\.\d+)?/; +invariant( + version && validVersion.test(version), + `No version provided or version did not match Semantic Versioning, expected: #.#.#-tag.# or #.#.#, got ${version}.`, +); + +const graph = readCachedProjectGraph(); +const project = graph.nodes[name]; + +invariant( + project, + `Could not find project "${name}" in the workspace. Is the project.json configured correctly?`, +); + +const outputPath = project.data?.targets?.build?.options?.outputPath; +invariant( + outputPath, + `Could not find "build.options.outputPath" of project "${name}". Is project.json configured correctly?`, +); + +process.chdir(outputPath); + +// Updating the version in "package.json" before publishing +try { + const json = JSON.parse(readFileSync(`package.json`).toString()); + json.version = version; + writeFileSync(`package.json`, JSON.stringify(json, null, 2)); +} catch (e) { + console.error(chalk.bold.red(`Error reading package.json file from library build output.`)); +} + +// Execute "npm publish" to publish +execSync(`npm publish --access public --tag ${tag}`); diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 000000000..37e41dd8c --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,39 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "rootDir": ".", + "sourceMap": true, + "declaration": false, + "moduleResolution": "node", + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "esModuleInterop": true, + "importHelpers": true, + "target": "es2015", + "module": "esnext", + "lib": ["es2017", "dom"], + "skipLibCheck": true, + "skipDefaultLibCheck": true, + "baseUrl": ".", + "paths": { + "@pattern-lab/cli": ["packages/cli/bin/patternlab.js"], + "@pattern-lab/core": ["packages/core/src/index.js"], + "@pattern-lab/create": ["packages/create/src/index.ts"], + "@pattern-lab/docs": ["packages/docs/src/index.js"], + "@pattern-lab/edition-node": ["packages/edition-node/src/index.ts"], + "@pattern-lab/edition-node-gulp": ["packages/edition-node-gulp/src/index.ts"], + "@pattern-lab/edition-twig": ["packages/edition-twig/src/index.ts"], + "@pattern-lab/engine-handlebars": ["packages/engine-handlebars/src/index.ts"], + "@pattern-lab/engine-liquid": ["packages/engine-liquid/src/index.ts"], + "@pattern-lab/engine-mustache": ["packages/engine-mustache/src/index.ts"], + "@pattern-lab/engine-nunjucks": ["packages/engine-nunjucks/src/index.ts"], + "@pattern-lab/engine-twig": ["packages/engine-twig/src/index.ts"], + "@pattern-lab/engine-twig-php": ["packages/engine-twig-php/src/index.ts"], + "@pattern-lab/engine-underscore": ["packages/engine-underscore/src/index.ts"], + "@pattern-lab/live-server": ["packages/live-server/src/index.js"], + "@pattern-lab/plugin-tab": ["packages/plugin-tab/src/index.js"], + "@pattern-lab/types": ["packages/types/src/index.ts"] + } + }, + "exclude": ["node_modules", "tmp"] +} diff --git a/yarn.lock b/yarn.lock index 53b21fc3f..b255e4992 100644 --- a/yarn.lock +++ b/yarn.lock @@ -77,11 +77,49 @@ "@jridgewell/gen-mapping" "^0.1.0" "@jridgewell/trace-mapping" "^0.3.9" +"@auto-it/all-contributors@10.38.5": + version "10.38.5" + resolved "https://registry.yarnpkg.com/@auto-it/all-contributors/-/all-contributors-10.38.5.tgz#8606ea49cfa8a036e75a2bd0a914fac43a8303e5" + integrity sha512-JC+QdMGM6WJonfKRW9Y0SKBI7ittrrbxwIzw7kOVZ7F1OdzvcLu61xrcpUlQIuhLte8xKFnSdSq3LFZvM1UCAA== + dependencies: + "@auto-it/bot-list" "10.38.5" + "@auto-it/core" "10.38.5" + "@octokit/rest" "^18.12.0" + all-contributors-cli "6.19.0" + anymatch "^3.1.1" + await-to-js "^3.0.0" + endent "^2.1.0" + env-ci "^5.0.1" + fp-ts "^2.5.3" + fromentries "^1.2.0" + io-ts "^2.1.2" + tslib "2.1.0" + "@auto-it/bot-list@10.37.6": version "10.37.6" resolved "https://registry.yarnpkg.com/@auto-it/bot-list/-/bot-list-10.37.6.tgz#3ca9380a44b9c8d33b2088b8fed2c2ffc79c91ed" integrity sha512-ltcLZEzXOOWh24qgNE4mPYJR25Dh9mQy2QwyD8uOE01Vy0yu89RGLi0TahUlUNZUSPBjLYUCxNOcp9WHKBJ7Sg== +"@auto-it/bot-list@10.38.5": + version "10.38.5" + resolved "https://registry.yarnpkg.com/@auto-it/bot-list/-/bot-list-10.38.5.tgz#51453cd9dfe455e0dfefdfc004756749a84d5575" + integrity sha512-Svi7SyMpXjvPmsRXEW/sU4SoI+gpvZW3KeHBdRHXE+kGd4TIvGwX8Sg0ojT8OsaiFk+8xSodv9ajf8MMI6jqPA== + +"@auto-it/conventional-commits@10.38.5": + version "10.38.5" + resolved "https://registry.yarnpkg.com/@auto-it/conventional-commits/-/conventional-commits-10.38.5.tgz#dc0d92339c655104414f4e39fd2be0471a4914c8" + integrity sha512-cVYXvDfcIazME+1t0zkP3eqEP/+YJTFuIkLUu+riUoeLRgzxhoPCk8LS4oPxPw2bNeNBP2356OQsTS0JAnZ0yQ== + dependencies: + "@auto-it/core" "10.38.5" + array.prototype.flatmap "^1.2.2" + conventional-changelog-core "^4.2.0" + conventional-changelog-preset-loader "^2.3.4" + conventional-commits-parser "^3.1.0" + endent "^2.1.0" + fp-ts "^2.5.3" + io-ts "^2.1.2" + tslib "2.1.0" + "@auto-it/core@10.37.6": version "10.37.6" resolved "https://registry.yarnpkg.com/@auto-it/core/-/core-10.37.6.tgz#04e5f47dbd89a4ab253f9562cd214ff8b7408b7c" @@ -128,6 +166,64 @@ typescript-memoize "^1.0.0-alpha.3" url-join "^4.0.0" +"@auto-it/core@10.38.5": + version "10.38.5" + resolved "https://registry.yarnpkg.com/@auto-it/core/-/core-10.38.5.tgz#c6766c62fafe15a66c2bc13cc93d447fd830c67b" + integrity sha512-H463k1iC/lyFWbxLszLs3f+mM5CgbcHTN+ivDxOvRyUd3EDHZwv6sHHcN6BfWwmSpT03kjtsAugoQdMsyeArWA== + dependencies: + "@auto-it/bot-list" "10.38.5" + "@endemolshinegroup/cosmiconfig-typescript-loader" "^3.0.2" + "@octokit/core" "^3.5.1" + "@octokit/plugin-enterprise-compatibility" "1.3.0" + "@octokit/plugin-retry" "^3.0.9" + "@octokit/plugin-throttling" "^3.6.2" + "@octokit/rest" "^18.12.0" + await-to-js "^3.0.0" + chalk "^4.0.0" + cosmiconfig "7.0.0" + deepmerge "^4.0.0" + dotenv "^8.0.0" + endent "^2.1.0" + enquirer "^2.3.4" + env-ci "^5.0.1" + fast-glob "^3.1.1" + fp-ts "^2.5.3" + fromentries "^1.2.0" + gitlog "^4.0.3" + https-proxy-agent "^5.0.0" + import-cwd "^3.0.0" + import-from "^3.0.0" + io-ts "^2.1.2" + lodash.chunk "^4.2.0" + log-symbols "^4.0.0" + node-fetch "2.6.7" + parse-author "^2.0.0" + parse-github-url "1.0.2" + pretty-ms "^7.0.0" + requireg "^0.2.2" + semver "^7.0.0" + signale "^1.4.0" + tapable "^2.2.0" + terminal-link "^2.1.1" + tinycolor2 "^1.4.1" + ts-node "^10.9.1" + tslib "2.1.0" + type-fest "^0.21.1" + typescript-memoize "^1.0.0-alpha.3" + url-join "^4.0.0" + +"@auto-it/first-time-contributor@10.38.5": + version "10.38.5" + resolved "https://registry.yarnpkg.com/@auto-it/first-time-contributor/-/first-time-contributor-10.38.5.tgz#6fc064eacee2aa2b3d257223dd39191e93ff776c" + integrity sha512-gO5aMulO8jS6aUHa8blEscAvVwXv5lx+zc++tf9W8MtTfUj0ZMzWPNhV/MTkgEgQzT0PJDoJNB9jZvC4B0U71g== + dependencies: + "@auto-it/bot-list" "10.38.5" + "@auto-it/core" "10.38.5" + array.prototype.flatmap "^1.2.2" + endent "^2.1.0" + tslib "2.1.0" + url-join "^4.0.0" + "@auto-it/npm@10.37.6": version "10.37.6" resolved "https://registry.yarnpkg.com/@auto-it/npm/-/npm-10.37.6.tgz#a838c7880747d1871a4afacd38ccfa750cbc6500" @@ -179,7 +275,7 @@ semver "^7.0.0" tslib "1.10.0" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== @@ -191,7 +287,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz#9d92fa81b87542fff50e848ed585b4212c1d34ec" integrity sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg== -"@babel/core@^7.13.14", "@babel/core@^7.2.0", "@babel/core@^7.5.5": +"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.14", "@babel/core@^7.15.0", "@babel/core@^7.2.0": version "7.20.12" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz#7930db57443c6714ad216953d1356dac0eb8496d" integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== @@ -212,7 +308,7 @@ json5 "^2.2.2" semver "^6.3.0" -"@babel/generator@^7.20.7", "@babel/generator@^7.4.0": +"@babel/generator@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.7.tgz#f8ef57c8242665c5929fe2e8d82ba75460187b4a" integrity sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw== @@ -221,6 +317,15 @@ "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" +"@babel/generator@^7.7.2": + version "7.20.14" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.14.tgz#9fa772c9f86a46c6ac9b321039400712b96f64ce" + integrity sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg== + dependencies: + "@babel/types" "^7.20.7" + "@jridgewell/gen-mapping" "^0.3.2" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" @@ -247,7 +352,7 @@ lru-cache "^5.1.1" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.5", "@babel/helper-create-class-features-plugin@^7.20.7": +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.12", "@babel/helper-create-class-features-plugin@^7.20.5", "@babel/helper-create-class-features-plugin@^7.20.7": version "7.20.12" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.12.tgz#4349b928e79be05ed2d1643b20b99bb87c503819" integrity sha512-9OunRkbT0JQcednL0UFvbfXpAsUXiGjUk0a7sN8fUXX7Mue79cUSMjHGDRRi/Vz9vYlpIhLV5fMD5dKoMhhsNQ== @@ -434,7 +539,12 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.20.7", "@babel/parser@^7.4.3", "@babel/parser@^7.6.0", "@babel/parser@^7.7.0", "@babel/parser@^7.9.4", "@babel/parser@^7.9.6": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.13", "@babel/parser@^7.6.0", "@babel/parser@^7.9.6": + version "7.20.15" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.15.tgz#eec9f36d8eaf0948bb88c87a46784b5ee9fd0c89" + integrity sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg== + +"@babel/parser@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.7.tgz#66fe23b3c8569220817d5feb8b9dcdc95bb4f71b" integrity sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg== @@ -465,7 +575,7 @@ "@babel/helper-remap-async-to-generator" "^7.18.9" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.18.6": +"@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.14.5", "@babel/plugin-proposal-class-properties@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -482,12 +592,12 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-proposal-decorators@^7.13.5": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.7.tgz#05d37453c2ce818f3e47bbeda9468c8de947eecc" - integrity sha512-JB45hbUweYpwAGjkiM7uCyXMENH2lG+9r3G2E+ttc2PRXAoEkpfd/KW5jDg4j8RS6tLtTG1jZi9LbHZVSfs1/A== +"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.14.5": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.13.tgz#b6bea3b18e88443688fa7ed2cc06d2c60da9f4a7" + integrity sha512-7T6BKHa9Cpd7lCueHBBzP0nkXNina+h5giOZw+a8ZpMfPFY19VjJAjIxyFHuWkhCWgL6QMqRiY/wB1fLXzm6Mw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.20.7" + "@babel/helper-create-class-features-plugin" "^7.20.12" "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-replace-supers" "^7.20.7" "@babel/helper-split-export-declaration" "^7.18.6" @@ -541,7 +651,7 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@^7.20.2", "@babel/plugin-proposal-object-rest-spread@^7.5.5": +"@babel/plugin-proposal-object-rest-spread@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== @@ -602,7 +712,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13": +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== @@ -644,6 +761,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.19.0" +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" @@ -658,7 +782,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4": +"@babel/plugin-syntax-jsx@^7.7.2": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz#f264ed7bf40ffc9ec239edabc17a50c4f5b6fea2" + integrity sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + +"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== @@ -672,7 +803,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.10.4": +"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== @@ -707,13 +838,20 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-top-level-await@^7.14.5": +"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" +"@babel/plugin-syntax-typescript@^7.20.0", "@babel/plugin-syntax-typescript@^7.3.3", "@babel/plugin-syntax-typescript@^7.7.2": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7" + integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/plugin-transform-arrow-functions@^7.18.6": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz#bea332b0e8b2dab3dafe55a163d8227531ab0551" @@ -767,7 +905,7 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/template" "^7.20.7" -"@babel/plugin-transform-destructuring@^7.20.2", "@babel/plugin-transform-destructuring@^7.5.0": +"@babel/plugin-transform-destructuring@^7.20.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz#8bda578f71620c7de7c93af590154ba331415454" integrity sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA== @@ -899,10 +1037,24 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-react-jsx@^7.13.12", "@babel/plugin-transform-react-jsx@^7.3.0": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.20.7.tgz#025d85a1935fd7e19dfdcb1b1d4df34d4da484f7" - integrity sha512-Tfq7qqD+tRj3EoDhY00nn2uP2hsRxgYGi5mLQ5TimKav0a9Lrpd4deE+fcLXU8zFYRjlKPHZhpCvfEA6qnBxqQ== +"@babel/plugin-transform-react-display-name@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz#8b1125f919ef36ebdfff061d664e266c666b9415" + integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-react-jsx-development@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz#dbe5c972811e49c7405b630e4d0d2e1380c0ddc5" + integrity sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA== + dependencies: + "@babel/plugin-transform-react-jsx" "^7.18.6" + +"@babel/plugin-transform-react-jsx@^7.13.12", "@babel/plugin-transform-react-jsx@^7.18.6": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.20.13.tgz#f950f0b0c36377503d29a712f16287cedf886cbb" + integrity sha512-MmTZx/bkUrfJhhYAYt3Urjm+h8DQGrPrnKQ94jLo7NLuOU+T89a7IByhKmrb8SKhrIYIQ0FN0CHMbnFRen4qNw== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" "@babel/helper-module-imports" "^7.18.6" @@ -910,6 +1062,14 @@ "@babel/plugin-syntax-jsx" "^7.18.6" "@babel/types" "^7.20.7" +"@babel/plugin-transform-react-pure-annotations@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz#561af267f19f3e5d59291f9950fd7b9663d0d844" + integrity sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-transform-regenerator@^7.18.6": version "7.20.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz#57cda588c7ffb7f4f8483cc83bdcea02a907f04d" @@ -925,7 +1085,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-runtime@^7.13.10": +"@babel/plugin-transform-runtime@^7.13.10", "@babel/plugin-transform-runtime@^7.15.0": version "7.19.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz#9d2a9dbf4e12644d6f46e5e75bfbf02b5d6e9194" integrity sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw== @@ -973,6 +1133,15 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.9" +"@babel/plugin-transform-typescript@^7.18.6": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.13.tgz#e3581b356b8694f6ff450211fe6774eaff8d25ab" + integrity sha512-O7I/THxarGcDZxkgWKMUrk7NK1/WbHAg3Xx86gqS6x9MTrNL6AwIluuZ96ms4xeDe6AVx6rjHbWHP7x26EPQBA== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.20.12" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-typescript" "^7.20.0" + "@babel/plugin-transform-unicode-escapes@^7.18.10": version "7.18.10" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz#1ecfb0eda83d09bbcb77c09970c2dd55832aa246" @@ -988,7 +1157,7 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/preset-env@^7.13.12", "@babel/preset-env@^7.2.0": +"@babel/preset-env@^7.13.12", "@babel/preset-env@^7.15.0", "@babel/preset-env@^7.2.0": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== @@ -1080,14 +1249,42 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/runtime@^7.13.10", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": +"@babel/preset-react@7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.18.6.tgz#979f76d6277048dc19094c217b507f3ad517dd2d" + integrity sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-react-display-name" "^7.18.6" + "@babel/plugin-transform-react-jsx" "^7.18.6" + "@babel/plugin-transform-react-jsx-development" "^7.18.6" + "@babel/plugin-transform-react-pure-annotations" "^7.18.6" + +"@babel/preset-typescript@^7.15.0": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz#ce64be3e63eddc44240c6358daefac17b3186399" + integrity sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-typescript" "^7.18.6" + +"@babel/runtime@^7.13.10", "@babel/runtime@^7.14.8", "@babel/runtime@^7.18.9", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.9.2": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.13.tgz#7055ab8a7cff2b8f6058bf6ae45ff84ad2aded4b" + integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== + dependencies: + regenerator-runtime "^0.13.11" + +"@babel/runtime@^7.8.4": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.7.tgz#fcb41a5a70550e04a7b708037c7c32f7f356d8fd" integrity sha512-UF0tvkUtxwAgZ5W/KrkHf0Rn0fdnLDU9ScxBrEVNUprE/MzirjK4MJUX1/BVDv00Sv8cljtukVK1aky++X1SjQ== dependencies: regenerator-runtime "^0.13.11" -"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.4.0": +"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== @@ -1096,7 +1293,23 @@ "@babel/parser" "^7.20.7" "@babel/types" "^7.20.7" -"@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.5", "@babel/traverse@^7.20.7", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.0": +"@babel/traverse@^7.16.0", "@babel/traverse@^7.7.2": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.13.tgz#817c1ba13d11accca89478bd5481b2d168d07473" + integrity sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ== + dependencies: + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.20.7" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/parser" "^7.20.13" + "@babel/types" "^7.20.7" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.5", "@babel/traverse@^7.20.7": version "7.20.12" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.12.tgz#7f0f787b3a67ca4475adef1f56cb94f6abd4a4b5" integrity sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ== @@ -1112,7 +1325,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.6.1", "@babel/types@^7.7.0", "@babel/types@^7.9.6": +"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.6.1", "@babel/types@^7.9.6": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.7.tgz#54ec75e252318423fc07fb644dc6a58a64c09b7f" integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== @@ -1135,6 +1348,172 @@ node-fetch "^2.1.2" sleep-promise "^8.0.1" +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + +"@commitlint/cli@^17.0.0": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-17.4.2.tgz#8600c83abb7e84191fd59528fc14f436496fb00b" + integrity sha512-0rPGJ2O1owhpxMIXL9YJ2CgPkdrFLKZElIZHXDN8L8+qWK1DGH7Q7IelBT1pchXTYTuDlqkOTdh//aTvT3bSUA== + dependencies: + "@commitlint/format" "^17.4.0" + "@commitlint/lint" "^17.4.2" + "@commitlint/load" "^17.4.2" + "@commitlint/read" "^17.4.2" + "@commitlint/types" "^17.4.0" + execa "^5.0.0" + lodash.isfunction "^3.0.9" + resolve-from "5.0.0" + resolve-global "1.0.0" + yargs "^17.0.0" + +"@commitlint/config-conventional@^17.0.0": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-17.4.2.tgz#671f7febfcfef90ec11b122a659c6be25e11c19e" + integrity sha512-JVo1moSj5eDMoql159q8zKCU8lkOhQ+b23Vl3LVVrS6PXDLQIELnJ34ChQmFVbBdSSRNAbbXnRDhosFU+wnuHw== + dependencies: + conventional-changelog-conventionalcommits "^5.0.0" + +"@commitlint/config-validator@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-17.4.0.tgz#2cb229672a22476cf1f21bedbfcd788e5da5b54f" + integrity sha512-Sa/+8KNpDXz4zT4bVbz2fpFjvgkPO6u2V2fP4TKgt6FjmOw2z3eEX859vtfeaTav/ukBw0/0jr+5ZTZp9zCBhA== + dependencies: + "@commitlint/types" "^17.4.0" + ajv "^8.11.0" + +"@commitlint/ensure@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-17.4.0.tgz#3de65768bfccb9956ec3a0ecd8a415421bf315e5" + integrity sha512-7oAxt25je0jeQ/E0O/M8L3ADb1Cvweu/5lc/kYF8g/kXatI0wxGE5La52onnAUAWeWlsuvBNar15WcrmDmr5Mw== + dependencies: + "@commitlint/types" "^17.4.0" + lodash.camelcase "^4.3.0" + lodash.kebabcase "^4.1.1" + lodash.snakecase "^4.1.1" + lodash.startcase "^4.4.0" + lodash.upperfirst "^4.3.1" + +"@commitlint/execute-rule@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz#4518e77958893d0a5835babe65bf87e2638f6939" + integrity sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA== + +"@commitlint/format@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-17.4.0.tgz#1c80cf3a6274ff9b3d3c0dd150a97882d557aa0f" + integrity sha512-Z2bWAU5+f1YZh9W76c84J8iLIWIvvm+mzqogTz0Nsc1x6EHW0Z2gI38g5HAjB0r0I3ZjR15IDEJKhsxyblcyhA== + dependencies: + "@commitlint/types" "^17.4.0" + chalk "^4.1.0" + +"@commitlint/is-ignored@^17.4.2": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-17.4.2.tgz#2d40a34e071c3e595e485fafe8460457a7b7af9d" + integrity sha512-1b2Y2qJ6n7bHG9K6h8S4lBGUl6kc7mMhJN9gy1SQfUZqe92ToDjUTtgNWb6LbzR1X8Cq4SEus4VU8Z/riEa94Q== + dependencies: + "@commitlint/types" "^17.4.0" + semver "7.3.8" + +"@commitlint/lint@^17.4.2": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-17.4.2.tgz#1277cb4d5395e9d6c39cbc351984bac9dcc6b7cd" + integrity sha512-HcymabrdBhsDMNzIv146+ZPNBPBK5gMNsVH+el2lCagnYgCi/4ixrHooeVyS64Fgce2K26+MC7OQ4vVH8wQWVw== + dependencies: + "@commitlint/is-ignored" "^17.4.2" + "@commitlint/parse" "^17.4.2" + "@commitlint/rules" "^17.4.2" + "@commitlint/types" "^17.4.0" + +"@commitlint/load@^17.4.2": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-17.4.2.tgz#551875c3e1dce6dc0375dc9c8ad551de8ba35de4" + integrity sha512-Si++F85rJ9t4hw6JcOw1i2h0fdpdFQt0YKwjuK4bk9KhFjyFkRxvR3SB2dPaMs+EwWlDrDBGL+ygip1QD6gmPw== + dependencies: + "@commitlint/config-validator" "^17.4.0" + "@commitlint/execute-rule" "^17.4.0" + "@commitlint/resolve-extends" "^17.4.0" + "@commitlint/types" "^17.4.0" + "@types/node" "*" + chalk "^4.1.0" + cosmiconfig "^8.0.0" + cosmiconfig-typescript-loader "^4.0.0" + lodash.isplainobject "^4.0.6" + lodash.merge "^4.6.2" + lodash.uniq "^4.5.0" + resolve-from "^5.0.0" + ts-node "^10.8.1" + typescript "^4.6.4" + +"@commitlint/message@^17.4.2": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-17.4.2.tgz#f4753a79701ad6db6db21f69076e34de6580e22c" + integrity sha512-3XMNbzB+3bhKA1hSAWPCQA3lNxR4zaeQAQcHj0Hx5sVdO6ryXtgUBGGv+1ZCLMgAPRixuc6en+iNAzZ4NzAa8Q== + +"@commitlint/parse@^17.4.2": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-17.4.2.tgz#b0f8a257a1f93387a497408b0b4cadba60ee3359" + integrity sha512-DK4EwqhxfXpyCA+UH8TBRIAXAfmmX4q9QRBz/2h9F9sI91yt6mltTrL6TKURMcjUVmgaB80wgS9QybNIyVBIJA== + dependencies: + "@commitlint/types" "^17.4.0" + conventional-changelog-angular "^5.0.11" + conventional-commits-parser "^3.2.2" + +"@commitlint/read@^17.4.2": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-17.4.2.tgz#4880a05271fb44cefa54d365a17d5753496a6de0" + integrity sha512-hasYOdbhEg+W4hi0InmXHxtD/1favB4WdwyFxs1eOy/DvMw6+2IZBmATgGOlqhahsypk4kChhxjAFJAZ2F+JBg== + dependencies: + "@commitlint/top-level" "^17.4.0" + "@commitlint/types" "^17.4.0" + fs-extra "^11.0.0" + git-raw-commits "^2.0.0" + minimist "^1.2.6" + +"@commitlint/resolve-extends@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-17.4.0.tgz#9023da6c70c4ebd173b4b0995fe29f27051da2d3" + integrity sha512-3JsmwkrCzoK8sO22AzLBvNEvC1Pmdn/65RKXzEtQMy6oYMl0Snrq97a5bQQEFETF0VsvbtUuKttLqqgn99OXRQ== + dependencies: + "@commitlint/config-validator" "^17.4.0" + "@commitlint/types" "^17.4.0" + import-fresh "^3.0.0" + lodash.mergewith "^4.6.2" + resolve-from "^5.0.0" + resolve-global "^1.0.0" + +"@commitlint/rules@^17.4.2": + version "17.4.2" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-17.4.2.tgz#cdf203bc82af979cb319210ef9215cb1de216a9b" + integrity sha512-OGrPsMb9Fx3/bZ64/EzJehY9YDSGWzp81Pj+zJiY+r/NSgJI3nUYdlS37jykNIugzazdEXfMtQ10kmA+Kx2pZQ== + dependencies: + "@commitlint/ensure" "^17.4.0" + "@commitlint/message" "^17.4.2" + "@commitlint/to-lines" "^17.4.0" + "@commitlint/types" "^17.4.0" + execa "^5.0.0" + +"@commitlint/to-lines@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-17.4.0.tgz#9bd02e911e7d4eab3fb4a50376c4c6d331e10d8d" + integrity sha512-LcIy/6ZZolsfwDUWfN1mJ+co09soSuNASfKEU5sCmgFCvX5iHwRYLiIuoqXzOVDYOy7E7IcHilr/KS0e5T+0Hg== + +"@commitlint/top-level@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-17.4.0.tgz#540cac8290044cf846fbdd99f5cc51e8ac5f27d6" + integrity sha512-/1loE/g+dTTQgHnjoCy0AexKAEFyHsR2zRB4NWrZ6lZSMIxAhBJnmCqwao7b4H8888PsfoTBCLBYIw8vGnej8g== + dependencies: + find-up "^5.0.0" + +"@commitlint/types@^17.4.0": + version "17.4.0" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-17.4.0.tgz#c7c2b97b959f6175c164632bf26208ce417b3f31" + integrity sha512-2NjAnq5IcxY9kXtUeO2Ac0aPpvkuOmwbH/BxIm36XXK5LtWFObWJWjXOA+kcaABMrthjWu6la+FUpyYFMHRvbA== + dependencies: + chalk "^4.1.0" + "@cspotcode/source-map-support@^0.8.0": version "0.8.1" resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" @@ -1176,26 +1555,270 @@ crypto-browserify "^3.11.0" process-es6 "^0.11.2" +"@eslint-community/eslint-utils@^4.2.0": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== + dependencies: + eslint-visitor-keys "^3.3.0" + +"@eslint-community/regexpp@^4.4.0": + version "4.5.1" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884" + integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ== + +"@eslint/eslintrc@^1.2.3": + version "1.4.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz#af58772019a2d271b7e2d4c23ff4ddcba3ccfb3e" + integrity sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^9.4.0" + globals "^13.19.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + "@fontsource/abel@^4.5.7": version "4.5.7" resolved "https://registry.yarnpkg.com/@fontsource/abel/-/abel-4.5.7.tgz#dc6b639624ab5d28496d32288dad017287719def" integrity sha512-BNhXYSF7piPi619Yv/dlWAhfe71ZNxxLqlXbjkcjSmsACTt57qnQBs3FHSgCeIqYj0yhipvTab5xz4KgM/1nNA== "@fontsource/raleway@^4.5.11": - version "4.5.11" - resolved "https://registry.yarnpkg.com/@fontsource/raleway/-/raleway-4.5.11.tgz#6da0bad1f44e0360fe465663ac0683601d29bda7" - integrity sha512-WrFuS5q3tPqNci4iDwIf7lnkHY5jrkWswy6B007W//cAB7Iiw2NuxBNxrCetYpe3efPbEoFPcoKeTPqDzoWQ3A== + version "4.5.12" + resolved "https://registry.yarnpkg.com/@fontsource/raleway/-/raleway-4.5.12.tgz#25a7bc448a8440a46205e7259e1f8cb03fa59e18" + integrity sha512-uKs13d6NFWU4vf5LSDHK/cbaAw+UXkzz03fKjyvkKq8Nop+CeB6o8STEDkZD9/uOo3v3sgm59Wyw8uGWvxoCiA== -"@gar/promisify@^1.0.1": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" - integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== +"@humanwhocodes/config-array@^0.9.2": + version "0.9.5" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7" + integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw== + dependencies: + "@humanwhocodes/object-schema" "^1.2.1" + debug "^4.1.1" + minimatch "^3.0.4" + +"@humanwhocodes/object-schema@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== "@hutson/parse-repository-url@^3.0.0": version "3.0.2" resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.5.0.tgz#593a6c5c0d3f75689835f1b3b4688c4f8544cb57" + integrity sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ== + dependencies: + "@jest/types" "^29.5.0" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^29.5.0" + jest-util "^29.5.0" + slash "^3.0.0" + +"@jest/core@^29.4.3", "@jest/core@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.5.0.tgz#76674b96904484e8214614d17261cc491e5f1f03" + integrity sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ== + dependencies: + "@jest/console" "^29.5.0" + "@jest/reporters" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + ci-info "^3.2.0" + exit "^0.1.2" + graceful-fs "^4.2.9" + jest-changed-files "^29.5.0" + jest-config "^29.5.0" + jest-haste-map "^29.5.0" + jest-message-util "^29.5.0" + jest-regex-util "^29.4.3" + jest-resolve "^29.5.0" + jest-resolve-dependencies "^29.5.0" + jest-runner "^29.5.0" + jest-runtime "^29.5.0" + jest-snapshot "^29.5.0" + jest-util "^29.5.0" + jest-validate "^29.5.0" + jest-watcher "^29.5.0" + micromatch "^4.0.4" + pretty-format "^29.5.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^29.4.3", "@jest/environment@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.5.0.tgz#9152d56317c1fdb1af389c46640ba74ef0bb4c65" + integrity sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ== + dependencies: + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" + jest-mock "^29.5.0" + +"@jest/expect-utils@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.5.0.tgz#f74fad6b6e20f924582dc8ecbf2cb800fe43a036" + integrity sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg== + dependencies: + jest-get-type "^29.4.3" + +"@jest/expect@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.5.0.tgz#80952f5316b23c483fbca4363ce822af79c38fba" + integrity sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g== + dependencies: + expect "^29.5.0" + jest-snapshot "^29.5.0" + +"@jest/fake-timers@^29.4.3", "@jest/fake-timers@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.5.0.tgz#d4d09ec3286b3d90c60bdcd66ed28d35f1b4dc2c" + integrity sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg== + dependencies: + "@jest/types" "^29.5.0" + "@sinonjs/fake-timers" "^10.0.2" + "@types/node" "*" + jest-message-util "^29.5.0" + jest-mock "^29.5.0" + jest-util "^29.5.0" + +"@jest/globals@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.5.0.tgz#6166c0bfc374c58268677539d0c181f9c1833298" + integrity sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ== + dependencies: + "@jest/environment" "^29.5.0" + "@jest/expect" "^29.5.0" + "@jest/types" "^29.5.0" + jest-mock "^29.5.0" + +"@jest/reporters@^29.4.1", "@jest/reporters@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.5.0.tgz#985dfd91290cd78ddae4914ba7921bcbabe8ac9b" + integrity sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@jridgewell/trace-mapping" "^0.3.15" + "@types/node" "*" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.9" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^5.1.0" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.1.3" + jest-message-util "^29.5.0" + jest-util "^29.5.0" + jest-worker "^29.5.0" + slash "^3.0.0" + string-length "^4.0.1" + strip-ansi "^6.0.0" + v8-to-istanbul "^9.0.1" + +"@jest/schemas@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788" + integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== + dependencies: + "@sinclair/typebox" "^0.25.16" + +"@jest/source-map@^29.4.3": + version "29.4.3" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.4.3.tgz#ff8d05cbfff875d4a791ab679b4333df47951d20" + integrity sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w== + dependencies: + "@jridgewell/trace-mapping" "^0.3.15" + callsites "^3.0.0" + graceful-fs "^4.2.9" + +"@jest/test-result@^29.4.1", "@jest/test-result@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.5.0.tgz#7c856a6ca84f45cc36926a4e9c6b57f1973f1408" + integrity sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ== + dependencies: + "@jest/console" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz#34d7d82d3081abd523dbddc038a3ddcb9f6d3cc4" + integrity sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ== + dependencies: + "@jest/test-result" "^29.5.0" + graceful-fs "^4.2.9" + jest-haste-map "^29.5.0" + slash "^3.0.0" + +"@jest/transform@^29.4.3", "@jest/transform@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.5.0.tgz#cf9c872d0965f0cbd32f1458aa44a2b1988b00f9" + integrity sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw== + dependencies: + "@babel/core" "^7.11.6" + "@jest/types" "^29.5.0" + "@jridgewell/trace-mapping" "^0.3.15" + babel-plugin-istanbul "^6.1.1" + chalk "^4.0.0" + convert-source-map "^2.0.0" + fast-json-stable-stringify "^2.1.0" + graceful-fs "^4.2.9" + jest-haste-map "^29.5.0" + jest-regex-util "^29.4.3" + jest-util "^29.5.0" + micromatch "^4.0.4" + pirates "^4.0.4" + slash "^3.0.0" + write-file-atomic "^4.0.2" + +"@jest/types@^29.4.3", "@jest/types@^29.5.0": + version "29.5.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593" + integrity sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog== + dependencies: + "@jest/schemas" "^29.4.3" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^17.0.8" + chalk "^4.0.0" + "@jridgewell/gen-mapping@^0.1.0": version "0.1.1" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" @@ -1231,6 +1854,14 @@ "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/source-map@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.3.tgz#8108265659d4c33e72ffe14e33d6cc5eb59f2fda" + integrity sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.14" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" @@ -1244,7 +1875,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.9": +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.9": version "0.3.17" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== @@ -1252,676 +1883,30 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" -"@lerna/add@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" - integrity sha512-cpmAH1iS3k8JBxNvnMqrGTTjbY/ZAiKa1ChJzFevMYY3eeqbvhsBKnBcxjRXtdrJ6bd3dCQM+ZtK+0i682Fhng== - dependencies: - "@lerna/bootstrap" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - npm-package-arg "^8.1.0" - p-map "^4.0.0" - pacote "^11.2.6" - semver "^7.3.4" - -"@lerna/bootstrap@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-4.0.0.tgz#5f5c5e2c6cfc8fcec50cb2fbe569a8c607101891" - integrity sha512-RkS7UbeM2vu+kJnHzxNRCLvoOP9yGNgkzRdy4UV2hNalD7EP41bLvRVOwRYQ7fhc2QcbhnKNdOBihYRL0LcKtw== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/has-npm-version" "4.0.0" - "@lerna/npm-install" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/symlink-binary" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - get-port "^5.1.1" - multimatch "^5.0.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - p-map "^4.0.0" - p-map-series "^2.1.0" - p-waterfall "^2.1.1" - read-package-tree "^5.3.1" - semver "^7.3.4" - -"@lerna/changed@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-4.0.0.tgz#b9fc76cea39b9292a6cd263f03eb57af85c9270b" - integrity sha512-cD+KuPRp6qiPOD+BO6S6SN5cARspIaWSOqGBpGnYzLb4uWT8Vk4JzKyYtc8ym1DIwyoFXHosXt8+GDAgR8QrgQ== +"@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.17": + version "0.3.18" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" + integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" -"@lerna/check-working-tree@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-4.0.0.tgz#257e36a602c00142e76082a19358e3e1ae8dbd58" - integrity sha512-/++bxM43jYJCshBiKP5cRlCTwSJdRSxVmcDAXM+1oUewlZJVSVlnks5eO0uLxokVFvLhHlC5kHMc7gbVFPHv6Q== +"@jscutlery/semver@^2.29.3": + version "2.29.3" + resolved "https://registry.yarnpkg.com/@jscutlery/semver/-/semver-2.29.3.tgz#e705ce22d74ce54872f9cd05a1298b2ce94fae78" + integrity sha512-Vb1K8xsZtU2iz25/QcXm0JCTmLcX91mNqRf8/6Pp5vzaO0aKztDX4hHNIRBBo/5nCh4TVJk6QWp3CeUCGdoFNQ== dependencies: - "@lerna/collect-uncommitted" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/validation-error" "4.0.0" + chalk "4.1.2" + conventional-changelog "^3.1.25" + conventional-recommended-bump "^6.1.0" + detect-indent "6.1.0" + inquirer "8.2.5" + rxjs "7.6.0" -"@lerna/child-process@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-4.0.0.tgz#341b96a57dffbd9705646d316e231df6fa4df6e1" - integrity sha512-XtCnmCT9eyVsUUHx6y/CTBYdV9g2Cr/VxyseTWBgfIur92/YKClfEtJTbOh94jRT62hlKLqSvux/UhxXVh613Q== - dependencies: - chalk "^4.1.0" - execa "^5.0.0" - strong-log-transformer "^2.1.0" - -"@lerna/clean@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-4.0.0.tgz#8f778b6f2617aa2a936a6b5e085ae62498e57dc5" - integrity sha512-uugG2iN9k45ITx2jtd8nEOoAtca8hNlDCUM0N3lFgU/b1mEQYAPRkqr1qs4FLRl/Y50ZJ41wUz1eazS+d/0osA== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" - p-map "^4.0.0" - p-map-series "^2.1.0" - p-waterfall "^2.1.1" - -"@lerna/cli@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-4.0.0.tgz#8eabd334558836c1664df23f19acb95e98b5bbf3" - integrity sha512-Neaw3GzFrwZiRZv2g7g6NwFjs3er1vhraIniEs0jjVLPMNC4eata0na3GfE5yibkM/9d3gZdmihhZdZ3EBdvYA== - dependencies: - "@lerna/global-options" "4.0.0" - dedent "^0.7.0" - npmlog "^4.1.2" - yargs "^16.2.0" - -"@lerna/collect-uncommitted@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-4.0.0.tgz#855cd64612969371cfc2453b90593053ff1ba779" - integrity sha512-ufSTfHZzbx69YNj7KXQ3o66V4RC76ffOjwLX0q/ab//61bObJ41n03SiQEhSlmpP+gmFbTJ3/7pTe04AHX9m/g== - dependencies: - "@lerna/child-process" "4.0.0" - chalk "^4.1.0" - npmlog "^4.1.2" - -"@lerna/collect-updates@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-4.0.0.tgz#8e208b1bafd98a372ff1177f7a5e288f6bea8041" - integrity sha512-bnNGpaj4zuxsEkyaCZLka9s7nMs58uZoxrRIPJ+nrmrZYp1V5rrd+7/NYTuunOhY2ug1sTBvTAxj3NZQ+JKnOw== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/describe-ref" "4.0.0" - minimatch "^3.0.4" - npmlog "^4.1.2" - slash "^3.0.0" - -"@lerna/command@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/command/-/command-4.0.0.tgz#991c7971df8f5bf6ae6e42c808869a55361c1b98" - integrity sha512-LM9g3rt5FsPNFqIHUeRwWXLNHJ5NKzOwmVKZ8anSp4e1SPrv2HNc1V02/9QyDDZK/w+5POXH5lxZUI1CHaOK/A== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/project" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/write-log-file" "4.0.0" - clone-deep "^4.0.1" - dedent "^0.7.0" - execa "^5.0.0" - is-ci "^2.0.0" - npmlog "^4.1.2" - -"@lerna/conventional-commits@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-4.0.0.tgz#660fb2c7b718cb942ead70110df61f18c6f99750" - integrity sha512-CSUQRjJHFrH8eBn7+wegZLV3OrNc0Y1FehYfYGhjLE2SIfpCL4bmfu/ViYuHh9YjwHaA+4SX6d3hR+xkeseKmw== - dependencies: - "@lerna/validation-error" "4.0.0" - conventional-changelog-angular "^5.0.12" - conventional-changelog-core "^4.2.2" - conventional-recommended-bump "^6.1.0" - fs-extra "^9.1.0" - get-stream "^6.0.0" - lodash.template "^4.5.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - pify "^5.0.0" - semver "^7.3.4" - -"@lerna/create-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-4.0.0.tgz#8c5317ce5ae89f67825443bd7651bf4121786228" - integrity sha512-I0phtKJJdafUiDwm7BBlEUOtogmu8+taxq6PtIrxZbllV9hWg59qkpuIsiFp+no7nfRVuaasNYHwNUhDAVQBig== - dependencies: - cmd-shim "^4.1.0" - fs-extra "^9.1.0" - npmlog "^4.1.2" - -"@lerna/create@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/create/-/create-4.0.0.tgz#b6947e9b5dfb6530321952998948c3e63d64d730" - integrity sha512-mVOB1niKByEUfxlbKTM1UNECWAjwUdiioIbRQZEeEabtjCL69r9rscIsjlGyhGWCfsdAG5wfq4t47nlDXdLLag== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - fs-extra "^9.1.0" - globby "^11.0.2" - init-package-json "^2.0.2" - npm-package-arg "^8.1.0" - p-reduce "^2.1.0" - pacote "^11.2.6" - pify "^5.0.0" - semver "^7.3.4" - slash "^3.0.0" - validate-npm-package-license "^3.0.4" - validate-npm-package-name "^3.0.0" - whatwg-url "^8.4.0" - yargs-parser "20.2.4" - -"@lerna/describe-ref@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-4.0.0.tgz#53c53b4ea65fdceffa072a62bfebe6772c45d9ec" - integrity sha512-eTU5+xC4C5Gcgz+Ey4Qiw9nV2B4JJbMulsYJMW8QjGcGh8zudib7Sduj6urgZXUYNyhYpRs+teci9M2J8u+UvQ== - dependencies: - "@lerna/child-process" "4.0.0" - npmlog "^4.1.2" - -"@lerna/diff@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-4.0.0.tgz#6d3071817aaa4205a07bf77cfc6e932796d48b92" - integrity sha512-jYPKprQVg41+MUMxx6cwtqsNm0Yxx9GDEwdiPLwcUTFx+/qKCEwifKNJ1oGIPBxyEHX2PFCOjkK39lHoj2qiag== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/validation-error" "4.0.0" - npmlog "^4.1.2" - -"@lerna/exec@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-4.0.0.tgz#eb6cb95cb92d42590e9e2d628fcaf4719d4a8be6" - integrity sha512-VGXtL/b/JfY84NB98VWZpIExfhLOzy0ozm/0XaS4a2SmkAJc5CeUfrhvHxxkxiTBLkU+iVQUyYEoAT0ulQ8PCw== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - p-map "^4.0.0" - -"@lerna/filter-options@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-4.0.0.tgz#ac94cc515d7fa3b47e2f7d74deddeabb1de5e9e6" - integrity sha512-vV2ANOeZhOqM0rzXnYcFFCJ/kBWy/3OA58irXih9AMTAlQLymWAK0akWybl++sUJ4HB9Hx12TOqaXbYS2NM5uw== - dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/filter-packages" "4.0.0" - dedent "^0.7.0" - npmlog "^4.1.2" - -"@lerna/filter-packages@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-4.0.0.tgz#b1f70d70e1de9cdd36a4e50caa0ac501f8d012f2" - integrity sha512-+4AJIkK7iIiOaqCiVTYJxh/I9qikk4XjNQLhE3kixaqgMuHl1NQ99qXRR0OZqAWB9mh8Z1HA9bM5K1HZLBTOqA== - dependencies: - "@lerna/validation-error" "4.0.0" - multimatch "^5.0.0" - npmlog "^4.1.2" - -"@lerna/get-npm-exec-opts@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-4.0.0.tgz#dc955be94a4ae75c374ef9bce91320887d34608f" - integrity sha512-yvmkerU31CTWS2c7DvmAWmZVeclPBqI7gPVr5VATUKNWJ/zmVcU4PqbYoLu92I9Qc4gY1TuUplMNdNuZTSL7IQ== - dependencies: - npmlog "^4.1.2" - -"@lerna/get-packed@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-4.0.0.tgz#0989d61624ac1f97e393bdad2137c49cd7a37823" - integrity sha512-rfWONRsEIGyPJTxFzC8ECb3ZbsDXJbfqWYyeeQQDrJRPnEJErlltRLPLgC2QWbxFgFPsoDLeQmFHJnf0iDfd8w== - dependencies: - fs-extra "^9.1.0" - ssri "^8.0.1" - tar "^6.1.0" - -"@lerna/github-client@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-4.0.0.tgz#2ced67721363ef70f8e12ffafce4410918f4a8a4" - integrity sha512-2jhsldZtTKXYUBnOm23Lb0Fx8G4qfSXF9y7UpyUgWUj+YZYd+cFxSuorwQIgk5P4XXrtVhsUesIsli+BYSThiw== - dependencies: - "@lerna/child-process" "4.0.0" - "@octokit/plugin-enterprise-rest" "^6.0.1" - "@octokit/rest" "^18.1.0" - git-url-parse "^11.4.4" - npmlog "^4.1.2" - -"@lerna/gitlab-client@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-4.0.0.tgz#00dad73379c7b38951d4b4ded043504c14e2b67d" - integrity sha512-OMUpGSkeDWFf7BxGHlkbb35T7YHqVFCwBPSIR6wRsszY8PAzCYahtH3IaJzEJyUg6vmZsNl0FSr3pdA2skhxqA== - dependencies: - node-fetch "^2.6.1" - npmlog "^4.1.2" - whatwg-url "^8.4.0" - -"@lerna/global-options@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-4.0.0.tgz#c7d8b0de6a01d8a845e2621ea89e7f60f18c6a5f" - integrity sha512-TRMR8afAHxuYBHK7F++Ogop2a82xQjoGna1dvPOY6ltj/pEx59pdgcJfYcynYqMkFIk8bhLJJN9/ndIfX29FTQ== - -"@lerna/has-npm-version@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-4.0.0.tgz#d3fc3292c545eb28bd493b36e6237cf0279f631c" - integrity sha512-LQ3U6XFH8ZmLCsvsgq1zNDqka0Xzjq5ibVN+igAI5ccRWNaUsE/OcmsyMr50xAtNQMYMzmpw5GVLAivT2/YzCg== - dependencies: - "@lerna/child-process" "4.0.0" - semver "^7.3.4" - -"@lerna/import@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/import/-/import-4.0.0.tgz#bde656c4a451fa87ae41733ff8a8da60547c5465" - integrity sha512-FaIhd+4aiBousKNqC7TX1Uhe97eNKf5/SC7c5WZANVWtC7aBWdmswwDt3usrzCNpj6/Wwr9EtEbYROzxKH8ffg== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/validation-error" "4.0.0" - dedent "^0.7.0" - fs-extra "^9.1.0" - p-map-series "^2.1.0" - -"@lerna/info@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/info/-/info-4.0.0.tgz#b9fb0e479d60efe1623603958a831a88b1d7f1fc" - integrity sha512-8Uboa12kaCSZEn4XRfPz5KU9XXoexSPS4oeYGj76s2UQb1O1GdnEyfjyNWoUl1KlJ2i/8nxUskpXIftoFYH0/Q== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/output" "4.0.0" - envinfo "^7.7.4" - -"@lerna/init@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/init/-/init-4.0.0.tgz#dadff67e6dfb981e8ccbe0e6a310e837962f6c7a" - integrity sha512-wY6kygop0BCXupzWj5eLvTUqdR7vIAm0OgyV9WHpMYQGfs1V22jhztt8mtjCloD/O0nEe4tJhdG62XU5aYmPNQ== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - write-json-file "^4.3.0" - -"@lerna/link@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/link/-/link-4.0.0.tgz#c3a38aabd44279d714e90f2451e31b63f0fb65ba" - integrity sha512-KlvPi7XTAcVOByfaLlOeYOfkkDcd+bejpHMCd1KcArcFTwijOwXOVi24DYomIeHvy6HsX/IUquJ4PPUJIeB4+w== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" - p-map "^4.0.0" - slash "^3.0.0" - -"@lerna/list@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/list/-/list-4.0.0.tgz#24b4e6995bd73f81c556793fe502b847efd9d1d7" - integrity sha512-L2B5m3P+U4Bif5PultR4TI+KtW+SArwq1i75QZ78mRYxPc0U/piau1DbLOmwrdqr99wzM49t0Dlvl6twd7GHFg== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" - -"@lerna/listable@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-4.0.0.tgz#d00d6cb4809b403f2b0374fc521a78e318b01214" - integrity sha512-/rPOSDKsOHs5/PBLINZOkRIX1joOXUXEtyUs5DHLM8q6/RP668x/1lFhw6Dx7/U+L0+tbkpGtZ1Yt0LewCLgeQ== - dependencies: - "@lerna/query-graph" "4.0.0" - chalk "^4.1.0" - columnify "^1.5.4" - -"@lerna/log-packed@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-4.0.0.tgz#95168fe2e26ac6a71e42f4be857519b77e57a09f" - integrity sha512-+dpCiWbdzgMAtpajLToy9PO713IHoE6GV/aizXycAyA07QlqnkpaBNZ8DW84gHdM1j79TWockGJo9PybVhrrZQ== - dependencies: - byte-size "^7.0.0" - columnify "^1.5.4" - has-unicode "^2.0.1" - npmlog "^4.1.2" - -"@lerna/npm-conf@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-4.0.0.tgz#b259fd1e1cee2bf5402b236e770140ff9ade7fd2" - integrity sha512-uS7H02yQNq3oejgjxAxqq/jhwGEE0W0ntr8vM3EfpCW1F/wZruwQw+7bleJQ9vUBjmdXST//tk8mXzr5+JXCfw== - dependencies: - config-chain "^1.1.12" - pify "^5.0.0" - -"@lerna/npm-dist-tag@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-4.0.0.tgz#d1e99b4eccd3414142f0548ad331bf2d53f3257a" - integrity sha512-F20sg28FMYTgXqEQihgoqSfwmq+Id3zT23CnOwD+XQMPSy9IzyLf1fFVH319vXIw6NF6Pgs4JZN2Qty6/CQXGw== - dependencies: - "@lerna/otplease" "4.0.0" - npm-package-arg "^8.1.0" - npm-registry-fetch "^9.0.0" - npmlog "^4.1.2" - -"@lerna/npm-install@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-4.0.0.tgz#31180be3ab3b7d1818a1a0c206aec156b7094c78" - integrity sha512-aKNxq2j3bCH3eXl3Fmu4D54s/YLL9WSwV8W7X2O25r98wzrO38AUN6AB9EtmAx+LV/SP15et7Yueg9vSaanRWg== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" - fs-extra "^9.1.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - signal-exit "^3.0.3" - write-pkg "^4.0.0" - -"@lerna/npm-publish@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-4.0.0.tgz#84eb62e876fe949ae1fd62c60804423dbc2c4472" - integrity sha512-vQb7yAPRo5G5r77DRjHITc9piR9gvEKWrmfCH7wkfBnGWEqu7n8/4bFQ7lhnkujvc8RXOsYpvbMQkNfkYibD/w== - dependencies: - "@lerna/otplease" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - fs-extra "^9.1.0" - libnpmpublish "^4.0.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - pify "^5.0.0" - read-package-json "^3.0.0" - -"@lerna/npm-run-script@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-4.0.0.tgz#dfebf4f4601442e7c0b5214f9fb0d96c9350743b" - integrity sha512-Jmyh9/IwXJjOXqKfIgtxi0bxi1pUeKe5bD3S81tkcy+kyng/GNj9WSqD5ZggoNP2NP//s4CLDAtUYLdP7CU9rA== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" - npmlog "^4.1.2" - -"@lerna/otplease@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-4.0.0.tgz#84972eb43448f8a1077435ba1c5e59233b725850" - integrity sha512-Sgzbqdk1GH4psNiT6hk+BhjOfIr/5KhGBk86CEfHNJTk9BK4aZYyJD4lpDbDdMjIV4g03G7pYoqHzH765T4fxw== - dependencies: - "@lerna/prompt" "4.0.0" - -"@lerna/output@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/output/-/output-4.0.0.tgz#b1d72215c0e35483e4f3e9994debc82c621851f2" - integrity sha512-Un1sHtO1AD7buDQrpnaYTi2EG6sLF+KOPEAMxeUYG5qG3khTs2Zgzq5WE3dt2N/bKh7naESt20JjIW6tBELP0w== - dependencies: - npmlog "^4.1.2" - -"@lerna/pack-directory@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-4.0.0.tgz#8b617db95d20792f043aaaa13a9ccc0e04cb4c74" - integrity sha512-NJrmZNmBHS+5aM+T8N6FVbaKFScVqKlQFJNY2k7nsJ/uklNKsLLl6VhTQBPwMTbf6Tf7l6bcKzpy7aePuq9UiQ== - dependencies: - "@lerna/get-packed" "4.0.0" - "@lerna/package" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - npm-packlist "^2.1.4" - npmlog "^4.1.2" - tar "^6.1.0" - temp-write "^4.0.0" - -"@lerna/package-graph@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-4.0.0.tgz#16a00253a8ac810f72041481cb46bcee8d8123dd" - integrity sha512-QED2ZCTkfXMKFoTGoccwUzjHtZMSf3UKX14A4/kYyBms9xfFsesCZ6SLI5YeySEgcul8iuIWfQFZqRw+Qrjraw== - dependencies: - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/validation-error" "4.0.0" - npm-package-arg "^8.1.0" - npmlog "^4.1.2" - semver "^7.3.4" - -"@lerna/package@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" - integrity sha512-l0M/izok6FlyyitxiQKr+gZLVFnvxRQdNhzmQ6nRnN9dvBJWn+IxxpM+cLqGACatTnyo9LDzNTOj2Db3+s0s8Q== - dependencies: - load-json-file "^6.2.0" - npm-package-arg "^8.1.0" - write-pkg "^4.0.0" - -"@lerna/prerelease-id-from-version@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-4.0.0.tgz#c7e0676fcee1950d85630e108eddecdd5b48c916" - integrity sha512-GQqguzETdsYRxOSmdFZ6zDBXDErIETWOqomLERRY54f4p+tk4aJjoVdd9xKwehC9TBfIFvlRbL1V9uQGHh1opg== - dependencies: - semver "^7.3.4" - -"@lerna/profiler@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-4.0.0.tgz#8a53ab874522eae15d178402bff90a14071908e9" - integrity sha512-/BaEbqnVh1LgW/+qz8wCuI+obzi5/vRE8nlhjPzdEzdmWmZXuCKyWSEzAyHOJWw1ntwMiww5dZHhFQABuoFz9Q== - dependencies: - fs-extra "^9.1.0" - npmlog "^4.1.2" - upath "^2.0.1" - -"@lerna/project@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" - integrity sha512-o0MlVbDkD5qRPkFKlBZsXZjoNTWPyuL58564nSfZJ6JYNmgAptnWPB2dQlAc7HWRZkmnC2fCkEdoU+jioPavbg== - dependencies: - "@lerna/package" "4.0.0" - "@lerna/validation-error" "4.0.0" - cosmiconfig "^7.0.0" - dedent "^0.7.0" - dot-prop "^6.0.1" - glob-parent "^5.1.1" - globby "^11.0.2" - load-json-file "^6.2.0" - npmlog "^4.1.2" - p-map "^4.0.0" - resolve-from "^5.0.0" - write-json-file "^4.3.0" - -"@lerna/prompt@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-4.0.0.tgz#5ec69a803f3f0db0ad9f221dad64664d3daca41b" - integrity sha512-4Ig46oCH1TH5M7YyTt53fT6TuaKMgqUUaqdgxvp6HP6jtdak6+amcsqB8YGz2eQnw/sdxunx84DfI9XpoLj4bQ== - dependencies: - inquirer "^7.3.3" - npmlog "^4.1.2" - -"@lerna/publish@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-4.0.0.tgz#f67011305adeba120066a3b6d984a5bb5fceef65" - integrity sha512-K8jpqjHrChH22qtkytA5GRKIVFEtqBF6JWj1I8dWZtHs4Jywn8yB1jQ3BAMLhqmDJjWJtRck0KXhQQKzDK2UPg== - dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/log-packed" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/npm-dist-tag" "4.0.0" - "@lerna/npm-publish" "4.0.0" - "@lerna/otplease" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/pack-directory" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/version" "4.0.0" - fs-extra "^9.1.0" - libnpmaccess "^4.0.1" - npm-package-arg "^8.1.0" - npm-registry-fetch "^9.0.0" - npmlog "^4.1.2" - p-map "^4.0.0" - p-pipe "^3.1.0" - pacote "^11.2.6" - semver "^7.3.4" - -"@lerna/pulse-till-done@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-4.0.0.tgz#04bace7d483a8205c187b806bcd8be23d7bb80a3" - integrity sha512-Frb4F7QGckaybRhbF7aosLsJ5e9WuH7h0KUkjlzSByVycxY91UZgaEIVjS2oN9wQLrheLMHl6SiFY0/Pvo0Cxg== - dependencies: - npmlog "^4.1.2" - -"@lerna/query-graph@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-4.0.0.tgz#09dd1c819ac5ee3f38db23931143701f8a6eef63" - integrity sha512-YlP6yI3tM4WbBmL9GCmNDoeQyzcyg1e4W96y/PKMZa5GbyUvkS2+Jc2kwPD+5KcXou3wQZxSPzR3Te5OenaDdg== - dependencies: - "@lerna/package-graph" "4.0.0" - -"@lerna/resolve-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-4.0.0.tgz#6d006628a210c9b821964657a9e20a8c9a115e14" - integrity sha512-RtX8VEUzqT+uLSCohx8zgmjc6zjyRlh6i/helxtZTMmc4+6O4FS9q5LJas2uGO2wKvBlhcD6siibGt7dIC3xZA== - dependencies: - fs-extra "^9.1.0" - npmlog "^4.1.2" - read-cmd-shim "^2.0.0" - -"@lerna/rimraf-dir@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-4.0.0.tgz#2edf3b62d4eb0ef4e44e430f5844667d551ec25a" - integrity sha512-QNH9ABWk9mcMJh2/muD9iYWBk1oQd40y6oH+f3wwmVGKYU5YJD//+zMiBI13jxZRtwBx0vmBZzkBkK1dR11cBg== - dependencies: - "@lerna/child-process" "4.0.0" - npmlog "^4.1.2" - path-exists "^4.0.0" - rimraf "^3.0.2" - -"@lerna/run-lifecycle@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-4.0.0.tgz#e648a46f9210a9bcd7c391df6844498cb5079334" - integrity sha512-IwxxsajjCQQEJAeAaxF8QdEixfI7eLKNm4GHhXHrgBu185JcwScFZrj9Bs+PFKxwb+gNLR4iI5rpUdY8Y0UdGQ== - dependencies: - "@lerna/npm-conf" "4.0.0" - npm-lifecycle "^3.1.5" - npmlog "^4.1.2" - -"@lerna/run-topologically@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-4.0.0.tgz#af846eeee1a09b0c2be0d1bfb5ef0f7b04bb1827" - integrity sha512-EVZw9hGwo+5yp+VL94+NXRYisqgAlj0jWKWtAIynDCpghRxCE5GMO3xrQLmQgqkpUl9ZxQFpICgYv5DW4DksQA== - dependencies: - "@lerna/query-graph" "4.0.0" - p-queue "^6.6.2" - -"@lerna/run@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run/-/run-4.0.0.tgz#4bc7fda055a729487897c23579694f6183c91262" - integrity sha512-9giulCOzlMPzcZS/6Eov6pxE9gNTyaXk0Man+iCIdGJNMrCnW7Dme0Z229WWP/UoxDKg71F2tMsVVGDiRd8fFQ== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-run-script" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/timer" "4.0.0" - "@lerna/validation-error" "4.0.0" - p-map "^4.0.0" - -"@lerna/symlink-binary@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-4.0.0.tgz#21009f62d53a425f136cb4c1a32c6b2a0cc02d47" - integrity sha512-zualodWC4q1QQc1pkz969hcFeWXOsVYZC5AWVtAPTDfLl+TwM7eG/O6oP+Rr3fFowspxo6b1TQ6sYfDV6HXNWA== - dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/package" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - -"@lerna/symlink-dependencies@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-4.0.0.tgz#8910eca084ae062642d0490d8972cf2d98e9ebbd" - integrity sha512-BABo0MjeUHNAe2FNGty1eantWp8u83BHSeIMPDxNq0MuW2K3CiQRaeWT3EGPAzXpGt0+hVzBrA6+OT0GPn7Yuw== - dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/resolve-symlink" "4.0.0" - "@lerna/symlink-binary" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - p-map-series "^2.1.0" - -"@lerna/timer@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-4.0.0.tgz#a52e51bfcd39bfd768988049ace7b15c1fd7a6da" - integrity sha512-WFsnlaE7SdOvjuyd05oKt8Leg3ENHICnvX3uYKKdByA+S3g+TCz38JsNs7OUZVt+ba63nC2nbXDlUnuT2Xbsfg== - -"@lerna/validation-error@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" - integrity sha512-1rBOM5/koiVWlRi3V6dB863E1YzJS8v41UtsHgMr6gB2ncJ2LsQtMKlJpi3voqcgh41H8UsPXR58RrrpPpufyw== - dependencies: - npmlog "^4.1.2" - -"@lerna/version@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/version/-/version-4.0.0.tgz#532659ec6154d8a8789c5ab53878663e244e3228" - integrity sha512-otUgiqs5W9zGWJZSCCMRV/2Zm2A9q9JwSDS7s/tlKq4mWCYriWo7+wsHEA/nPTMDyYyBO5oyZDj+3X50KDUzeA== - dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/conventional-commits" "4.0.0" - "@lerna/github-client" "4.0.0" - "@lerna/gitlab-client" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - chalk "^4.1.0" - dedent "^0.7.0" - load-json-file "^6.2.0" - minimatch "^3.0.4" - npmlog "^4.1.2" - p-map "^4.0.0" - p-pipe "^3.1.0" - p-reduce "^2.1.0" - p-waterfall "^2.1.1" - semver "^7.3.4" - slash "^3.0.0" - temp-write "^4.0.0" - write-json-file "^4.3.0" - -"@lerna/write-log-file@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-4.0.0.tgz#18221a38a6a307d6b0a5844dd592ad53fa27091e" - integrity sha512-XRG5BloiArpXRakcnPHmEHJp+4AtnhRtpDIHSghmXD5EichI1uD73J7FgPp30mm2pDRq3FdqB0NbwSEsJ9xFQg== - dependencies: - npmlog "^4.1.2" - write-file-atomic "^3.0.3" +"@leichtgewicht/ip-codec@^2.0.1": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" + integrity sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A== "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -1944,70 +1929,292 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@npmcli/ci-detect@^1.0.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" - integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q== +"@nrwl/devkit@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/devkit/-/devkit-16.3.1.tgz#3d89fb9d86ec8396e8ac1880a90b7724bba8b4b0" + integrity sha512-05WYGkjDjnzUDfA2MYyltTHYrGr4LqUF95Xxp/sOpXhhjklSAqK5wSwN+5S4pasNZhlPJ9DK+OJarkLAE08rkA== + dependencies: + "@nx/devkit" "16.3.1" -"@npmcli/fs@^1.0.0": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" - integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== +"@nrwl/eslint-plugin-nx@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/eslint-plugin-nx/-/eslint-plugin-nx-16.3.1.tgz#f3212b2ff9d5c1efa7fe971a0c5e3d77343fddd8" + integrity sha512-EgpWz8jpnTk3tWvzusmTXfv3WKejeFMQO4plaj6o4nXvx2uZ/1Iy0R6E8F7R2FcL8tbYCIXqk9Ac9m4A5Ypz4Q== dependencies: - "@gar/promisify" "^1.0.1" - semver "^7.3.5" + "@nx/eslint-plugin" "16.3.1" -"@npmcli/git@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" - integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== +"@nrwl/jest@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/jest/-/jest-16.3.1.tgz#5add7aff1a9614492ba32c1c86ac5c8c0e491e2e" + integrity sha512-WI7BIkUnA2yrjwvnWTRpVt+gE24SMMBkEry6TxB0MgalM1jKMdsOSoBcuC/PPtPN3l2miRDQ/9I4qKWiPYiQiw== dependencies: - "@npmcli/promise-spawn" "^1.3.2" - lru-cache "^6.0.0" - mkdirp "^1.0.4" - npm-pick-manifest "^6.1.1" - promise-inflight "^1.0.1" - promise-retry "^2.0.1" - semver "^7.3.5" - which "^2.0.2" + "@nx/jest" "16.3.1" -"@npmcli/installed-package-contents@^1.0.6": - version "1.0.7" - resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" - integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== +"@nrwl/js@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/js/-/js-16.3.1.tgz#41e5f5d0a7beb1ace9bd9cd53712b01b6851a1e1" + integrity sha512-pdMtyGWZu9PwCOHRiZqvrDY6nPN/irKbtx66pRnpbVIxALa2yw14ZVeI6LfLp02yLj2OKx7s5P46++yLgKFITA== dependencies: - npm-bundled "^1.1.1" - npm-normalize-package-bin "^1.0.1" + "@nx/js" "16.3.1" -"@npmcli/move-file@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" - integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== +"@nrwl/linter@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/linter/-/linter-16.3.1.tgz#a79320f5ee538d86c256bc19d17aac3521c75854" + integrity sha512-IUAQF9ohZ0AU7eTqP15RhBDfWInqEhUTB6NVdsDp9lQJrWpw+JNUN1x0vByDnmJXuTGc1hCy5jzDsjK4wGJa2A== dependencies: - mkdirp "^1.0.4" - rimraf "^3.0.2" + "@nx/linter" "16.3.1" -"@npmcli/node-gyp@^1.0.2": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" - integrity sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA== +"@nrwl/tao@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/tao/-/tao-16.3.1.tgz#0b57eb2c8c6919c19fe4aa6660e89709ea437754" + integrity sha512-uyEA2Es3YB2jqyCXXoYNyJvLap9k1Mss/GSK0TmMscAe5HNyDM3HjtMTwROSL0uBJwi5JIpj4zauiVqQ8NRQsw== + dependencies: + nx "16.3.1" -"@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" - integrity sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg== +"@nrwl/web@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/web/-/web-16.3.1.tgz#55c30fac328cf7d239f458a6e8aa2cc95694f894" + integrity sha512-orSTTBo+ThxL+xLdPnCCyXywu77d2Mtzybs3M4d3FZHzXX5cEt6uywV5KPQ4PRH0/58WJHuldDwWLKJByL4QbQ== + dependencies: + "@nx/web" "16.3.1" + +"@nrwl/webpack@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/webpack/-/webpack-16.3.1.tgz#c3f4c89812a1374cf9d7f1bd7e33ab0ab379d2cc" + integrity sha512-ZOv7zaElo5n0LzMvDgdtz/WpYUBbxtsM+wi/bsJOWocw20qv95WI/wTHu3PlaQmtAEYjMXQOW6Mo47/rFIzRgw== dependencies: - infer-owner "^1.0.4" + "@nx/webpack" "16.3.1" -"@npmcli/run-script@^1.8.2": - version "1.8.6" - resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" - integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== +"@nrwl/workspace@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nrwl/workspace/-/workspace-16.3.1.tgz#c5d2929911f8bb6fac2c7e1e3511d821da8cdbd1" + integrity sha512-OiSMp9ClVW2xs05iLsN2ZJX80eUuK3CxnzDsBABup2ZtkqF0imdfMmTsckOYfF8VJbSXKxUplzXQyE79y4+a9g== dependencies: - "@npmcli/node-gyp" "^1.0.2" - "@npmcli/promise-spawn" "^1.3.2" - node-gyp "^7.1.0" - read-package-json-fast "^2.0.1" + "@nx/workspace" "16.3.1" + +"@nx/devkit@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/devkit/-/devkit-16.3.1.tgz#dddf83403326d5326153fd5ecc08359bb4871c65" + integrity sha512-L0p4aIvR8dB2qjVF3vR1fkKNsm8/MeV9sLTMNCKWBWcyXzHTS48nUZMhizq59FNMlYn3Bz6yqfntXv6QKiYyvw== + dependencies: + "@nrwl/devkit" "16.3.1" + ejs "^3.1.7" + ignore "^5.0.4" + semver "7.3.4" + tmp "~0.2.1" + tslib "^2.3.0" + +"@nx/eslint-plugin@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/eslint-plugin/-/eslint-plugin-16.3.1.tgz#d203d74939bcb2115e88298860968ec4af8c5c38" + integrity sha512-e+hT8Y5It1162mDAx2YbOt0luOlJev71KzNUrEJxL1ehsE514VNb9nXjK27YVz7EKc6UVyzolrE8ouwJm2Dm7w== + dependencies: + "@nrwl/eslint-plugin-nx" "16.3.1" + "@nx/devkit" "16.3.1" + "@nx/js" "16.3.1" + "@typescript-eslint/type-utils" "^5.58.0" + "@typescript-eslint/utils" "^5.58.0" + chalk "^4.1.0" + confusing-browser-globals "^1.0.9" + semver "7.3.4" + +"@nx/jest@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/jest/-/jest-16.3.1.tgz#637c98c2081728f05e6d0a1b3c8c897067833aa9" + integrity sha512-Lr2AObWTTRikj45qWQ8DTGJXuAGB/kfGu4O4wGErC+KCT2+k0tat8tU+bOJytjeULG6BoyPWagd7Y78dJsU1ew== + dependencies: + "@jest/reporters" "^29.4.1" + "@jest/test-result" "^29.4.1" + "@nrwl/jest" "16.3.1" + "@nx/devkit" "16.3.1" + "@nx/js" "16.3.1" + "@phenomnomnominal/tsquery" "~5.0.1" + chalk "^4.1.0" + dotenv "~10.0.0" + identity-obj-proxy "3.0.0" + jest-config "^29.4.1" + jest-resolve "^29.4.1" + jest-util "^29.4.1" + resolve.exports "1.1.0" + tslib "^2.3.0" + +"@nx/js@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/js/-/js-16.3.1.tgz#22846a1e66f2e0554945eb8d99e86e65443b8fbc" + integrity sha512-0YAPvaUUMuQRsvcciYDZRsCFKI7GEcieYAJhE+SrU3Zl9+HH59O0wMLw3fD483gYkoT36Q/j4QBXtD0hpGEKGw== + dependencies: + "@babel/core" "^7.15.0" + "@babel/plugin-proposal-class-properties" "^7.14.5" + "@babel/plugin-proposal-decorators" "^7.14.5" + "@babel/plugin-transform-runtime" "^7.15.0" + "@babel/preset-env" "^7.15.0" + "@babel/preset-typescript" "^7.15.0" + "@babel/runtime" "^7.14.8" + "@nrwl/js" "16.3.1" + "@nx/devkit" "16.3.1" + "@nx/workspace" "16.3.1" + "@phenomnomnominal/tsquery" "~5.0.1" + babel-plugin-const-enum "^1.0.1" + babel-plugin-macros "^2.8.0" + babel-plugin-transform-typescript-metadata "^0.3.1" + chalk "^4.1.0" + fast-glob "3.2.7" + fs-extra "^11.1.0" + ignore "^5.0.4" + js-tokens "^4.0.0" + minimatch "3.0.5" + source-map-support "0.5.19" + tslib "^2.3.0" + +"@nx/linter@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/linter/-/linter-16.3.1.tgz#41f7e62b2e738019fd5a002badf17f3af254d5ff" + integrity sha512-uPgdEX69U/wyLDSfLOczEj4GtxvhcncOV0UYXBMYNKtURVQzJV8VzH6ldwpgjZc9Hscm2CPV7HICia6jxzN3sw== + dependencies: + "@nrwl/linter" "16.3.1" + "@nx/devkit" "16.3.1" + "@nx/js" "16.3.1" + "@phenomnomnominal/tsquery" "~5.0.1" + tmp "~0.2.1" + tslib "^2.3.0" + +"@nx/nx-darwin-arm64@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-darwin-arm64/-/nx-darwin-arm64-16.3.1.tgz#d32f76c33cc51727dad7fde4b6737a04a96c0157" + integrity sha512-o1nGAT6p+fMZ5XgzHluOTNWoa/T+BMaC1/ji9bNTK/kOnR5OiXwsQ5KdjkS2Y5axEoKGhXp7rf4Ud+RnTEMVCg== + +"@nx/nx-darwin-x64@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-darwin-x64/-/nx-darwin-x64-16.3.1.tgz#b85333f11b4feebb21112d4f37074bd866ee381b" + integrity sha512-K6eb2o9nmLdGb1oDxn3lyTaHPDbxKvSGB5U/hPyIcPqVa50N59rZixbZmtoawA0INyrj3xIjveUf4huxDIkAFw== + +"@nx/nx-freebsd-x64@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-freebsd-x64/-/nx-freebsd-x64-16.3.1.tgz#ab4ba412a9003b1417e1c0627d15cd84acc0b187" + integrity sha512-rbWgfjE6GR+iUCGNmh8AWW5jMt9sZoB77eYe07nuz3N8WEUE0PTBMcoRcTphN2VwUJYtgp8gAmem2lwKN5oBBw== + +"@nx/nx-linux-arm-gnueabihf@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-16.3.1.tgz#63e52343bb5a73e1208ec755d19ccd7d59e3bf79" + integrity sha512-amFz9dWdt853cXjGApqAMeTn4Bd3N9GcejwBu+Pn2OVcBDv5CJH4npmR/3vfNBVfRFtQusnfFnzgrIynI2gsIQ== + +"@nx/nx-linux-arm64-gnu@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-16.3.1.tgz#57a771baac2538110aec5da48218982849984b87" + integrity sha512-aXaM2lVKyULsFPYtAU1Y7GmyOYOBmoNzDRORx+4BJpDIBX91KTV75wcyI8VuxJUvIv8034Lg9/br3W0YhDmQ+Q== + +"@nx/nx-linux-arm64-musl@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-16.3.1.tgz#b6756c56530bb8b4c9b79121f9d94f66a56453c2" + integrity sha512-qC1SYzicIYQjxdLmAKFKDP2lFi7XtdqsqfPgh8236OX5lj7pUHCBucXhAYlYw0Afps3/EU7mI8BC2KiNi6+PpQ== + +"@nx/nx-linux-x64-gnu@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-16.3.1.tgz#acb39b4450c44f555c8b697bec0e08346fe97965" + integrity sha512-fZcamYMdXywvte/kuRzH1MM5hdzuRmS/429Tg2m8sJojQ6IHFKFagphmBfUs6d7nrbC4aysdaJBwMiCu/7ifpQ== + +"@nx/nx-linux-x64-musl@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-16.3.1.tgz#de40e21c148159c2091265f1bc2193b00e5b6398" + integrity sha512-vSm5w9SnFy8qVzIJgvRdD+uWi8h/k2qspB6IOiDXyZTdif7Qv+a8BYTYJQfpJE3QoF3Mvyk25K5JF80Gkc+TFQ== + +"@nx/nx-win32-arm64-msvc@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-16.3.1.tgz#b1a629bb1f93323da52dc15696c1a59620fd1a74" + integrity sha512-psw+Qqk2anmLstKMXPGtDrPVwo7CDyWeluy3wa1Qhe/1mow8l8jLRbyr3MxnjfQ95SmsI/uBdj0znK3IxmOguQ== + +"@nx/nx-win32-x64-msvc@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-16.3.1.tgz#8f32cfc6bc7cc865671929854825ef852c983b20" + integrity sha512-f2KH/8dwrkwhJS8coupruQ9WET7qipWFjX1idlE+PXuAMUcpUChwxhrvgTTSUvwmVpAxAwZDPG6iklkjSIrDKQ== + +"@nx/web@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/web/-/web-16.3.1.tgz#f9e83038613f1077ffa5f0e0718b21cc5aeedfa8" + integrity sha512-KKAQ4r9CY96ZLxNyqpG8nb6cJaJKsbPUI5Vf4KuB00eEGyiRfaTXYiXnZEAt0djMKihaE6jQ0ZlqnXarpYf47g== + dependencies: + "@nrwl/web" "16.3.1" + "@nx/devkit" "16.3.1" + "@nx/js" "16.3.1" + chalk "^4.1.0" + chokidar "^3.5.1" + detect-port "^1.5.1" + http-server "^14.1.0" + ignore "^5.0.4" + tslib "^2.3.0" + +"@nx/webpack@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/webpack/-/webpack-16.3.1.tgz#9c09f0dfcc91fa1f3da3955af62600932dd3709b" + integrity sha512-M9fu0JrMwhtyKzYcoL6JOmh16OjHtLSfsiR2Y68GjeSFJue/ym6aZhChCpgP0wrj1ccPVVbwnuvTaGjkq/dNIA== + dependencies: + "@babel/core" "^7.15.0" + "@nrwl/webpack" "16.3.1" + "@nx/devkit" "16.3.1" + "@nx/js" "16.3.1" + autoprefixer "^10.4.9" + babel-loader "^9.1.2" + chalk "^4.1.0" + chokidar "^3.5.1" + copy-webpack-plugin "^10.2.4" + css-loader "^6.4.0" + css-minimizer-webpack-plugin "^3.4.1" + dotenv "~10.0.0" + file-loader "^6.2.0" + fork-ts-checker-webpack-plugin "7.2.13" + ignore "^5.0.4" + less "4.1.3" + less-loader "11.1.0" + license-webpack-plugin "^4.0.2" + loader-utils "^2.0.3" + mini-css-extract-plugin "~2.4.7" + parse5 "4.0.0" + postcss "^8.4.14" + postcss-import "~14.1.0" + postcss-loader "^6.1.1" + rxjs "^7.8.0" + sass "^1.42.1" + sass-loader "^12.2.0" + source-map-loader "^3.0.0" + style-loader "^3.3.0" + stylus "^0.55.0" + stylus-loader "^7.1.0" + terser-webpack-plugin "^5.3.3" + ts-loader "^9.3.1" + ts-node "10.9.1" + tsconfig-paths "^4.1.2" + tsconfig-paths-webpack-plugin "4.0.0" + tslib "^2.3.0" + webpack "^5.80.0" + webpack-dev-server "^4.9.3" + webpack-node-externals "^3.0.0" + webpack-subresource-integrity "^5.1.0" + +"@nx/workspace@16.3.1": + version "16.3.1" + resolved "https://registry.yarnpkg.com/@nx/workspace/-/workspace-16.3.1.tgz#ce9d66093e8a7fa1383969dfe91fb4adbe81dd6c" + integrity sha512-sm2wH64qxE+PUqDdBCjEgWSQhP+TGsgycnR1h7COKMGywCTw2OXVJN6WSvLUc5tuFhvWRiHSwbR+usHOEtbRZg== + dependencies: + "@nrwl/workspace" "16.3.1" + "@nx/devkit" "16.3.1" + "@parcel/watcher" "2.0.4" + chalk "^4.1.0" + chokidar "^3.5.1" + cli-cursor "3.1.0" + cli-spinners "2.6.1" + dotenv "~10.0.0" + figures "3.2.0" + flat "^5.0.2" + ignore "^5.0.4" + minimatch "3.0.5" + npm-run-path "^4.0.1" + nx "16.3.1" + open "^8.4.0" + rxjs "^7.8.0" + tmp "~0.2.1" + tslib "^2.3.0" + yargs "^17.6.2" + yargs-parser "21.1.1" "@octokit/auth-token@^2.4.4": version "2.5.0" @@ -2060,11 +2267,6 @@ "@octokit/request-error" "^2.1.0" "@octokit/types" "^6.0.3" -"@octokit/plugin-enterprise-rest@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" - integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== - "@octokit/plugin-paginate-rest@^2.16.8": version "2.21.3" resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz#7f12532797775640dbb8224da577da7dc210c87e" @@ -2122,7 +2324,7 @@ node-fetch "^2.6.7" universal-user-agent "^6.0.0" -"@octokit/rest@^18.1.0", "@octokit/rest@^18.12.0": +"@octokit/rest@^18.12.0": version "18.12.0" resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== @@ -2139,16 +2341,50 @@ dependencies: "@octokit/openapi-types" "^12.11.0" +"@parcel/watcher@2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.0.4.tgz#f300fef4cc38008ff4b8c29d92588eced3ce014b" + integrity sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg== + dependencies: + node-addon-api "^3.2.1" + node-gyp-build "^4.3.0" + +"@phenomnomnominal/tsquery@~5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@phenomnomnominal/tsquery/-/tsquery-5.0.1.tgz#a2a5abc89f92c01562a32806655817516653a388" + integrity sha512-3nVv+e2FQwsW8Aw6qTU6f+1rfcJ3hrcnvH/mu9i8YhxO+9sqbOfpL8m6PbET5+xKOlz/VSbp0RoYWYCtIsnmuA== + dependencies: + esquery "^1.4.0" + "@reach/visually-hidden@^0.1.2": version "0.1.4" resolved "https://registry.yarnpkg.com/@reach/visually-hidden/-/visually-hidden-0.1.4.tgz#0dc4ecedf523004337214187db70a46183bd945b" integrity sha512-QHbzXjflSlCvDd6vJwdwx16mSB+vUCCQMiU/wK/CgVNPibtpEiIbisyxkpZc55DyDFNUIqP91rSUsNae+ogGDQ== +"@sinclair/typebox@^0.25.16": + version "0.25.24" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718" + integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== + "@sindresorhus/is@^0.14.0": version "0.14.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== +"@sinonjs/commons@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72" + integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^10.0.2": + version "10.2.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.2.0.tgz#b3e322a34c5f26e3184e7f6115695f299c1b1194" + integrity sha512-OPwQlEdg40HAj5KNF8WW6q2KG4Z+cBCZb3m4ninfTZKaBmbIJodviQsDBoYMPHkOyJJMHnOJo5j2+LKDOhOACg== + dependencies: + "@sinonjs/commons" "^3.0.0" + "@socket.io/component-emitter@~3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz#96116f2a912e0c02817345b3c10751069920d553" @@ -2194,10 +2430,10 @@ ws "^6.1.0" xml-name-validator "^3.0.0" -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== +"@tootallnate/once@2": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" + integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== "@trysound/sax@0.2.0": version "0.2.0" @@ -2224,6 +2460,54 @@ resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== +"@types/babel__core@^7.1.14": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891" + integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ== + dependencies: + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.4" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" + integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.1" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": + version "7.18.3" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.3.tgz#dfc508a85781e5698d5b33443416b6268c4b3e8d" + integrity sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w== + dependencies: + "@babel/types" "^7.3.0" + +"@types/body-parser@*": + version "1.19.2" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.2.tgz#aea2059e28b7658639081347ac4fab3de166e6f0" + integrity sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/bonjour@^3.5.9": + version "3.5.10" + resolved "https://registry.yarnpkg.com/@types/bonjour/-/bonjour-3.5.10.tgz#0f6aadfe00ea414edc86f5d106357cda9701e275" + integrity sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw== + dependencies: + "@types/node" "*" + "@types/command-line-args@^5.0.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@types/command-line-args/-/command-line-args-5.2.0.tgz#adbb77980a1cc376bb208e3f4142e907410430f6" @@ -2234,6 +2518,21 @@ resolved "https://registry.yarnpkg.com/@types/command-line-usage/-/command-line-usage-5.0.2.tgz#ba5e3f6ae5a2009d466679cc431b50635bf1a064" integrity sha512-n7RlEEJ+4x4TS7ZQddTmNSxP+zziEG0TNsMfiRIxcIVXt71ENJ9ojeXmGO3wPoTdn7pJcU2xc3CJYMktNT6DPg== +"@types/connect-history-api-fallback@^1.3.5": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz#d1f7a8a09d0ed5a57aee5ae9c18ab9b803205dae" + integrity sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw== + dependencies: + "@types/express-serve-static-core" "*" + "@types/node" "*" + +"@types/connect@*": + version "3.4.35" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" + integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== + dependencies: + "@types/node" "*" + "@types/cookie@^0.4.1": version "0.4.1" resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.4.1.tgz#bfd02c1f2224567676c1545199f87c3a861d878d" @@ -2255,9 +2554,9 @@ "@types/estree" "*" "@types/eslint@*": - version "8.4.10" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.10.tgz#19731b9685c19ed1552da7052b6f668ed7eb64bb" - integrity sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw== + version "8.21.0" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.21.0.tgz#21724cfe12b96696feafab05829695d4d7bd7c48" + integrity sha512-35EhHNOXgxnUgh4XCJsGhE7zdlDhYDN/aMG6UbkByCFFNgQ7b3U+uVoqBpicFydR8JEfgdjCF7SJ7MiJfzuiTA== dependencies: "@types/estree" "*" "@types/json-schema" "*" @@ -2272,6 +2571,38 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== +"@types/estree@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.1.tgz#aa22750962f3bf0e79d753d3cc067f010c95f194" + integrity sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA== + +"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.33": + version "4.17.33" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz#de35d30a9d637dc1450ad18dd583d75d5733d543" + integrity sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + +"@types/express@*", "@types/express@^4.17.13": + version "4.17.17" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.17.tgz#01d5437f6ef9cfa8668e616e13c2f2ac9a491ae4" + integrity sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^4.17.33" + "@types/qs" "*" + "@types/serve-static" "*" + +"@types/fs-extra@^11.0.1": + version "11.0.1" + resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-11.0.1.tgz#f542ec47810532a8a252127e6e105f487e0a6ea5" + integrity sha512-MxObHvNl4A69ofaTRU8DFqvgzzv8s9yRtaPPm5gud9HDNvpB3GPQFvNuTWAI59B9huVGV5jXYJwbCsmBsOGYWA== + dependencies: + "@types/jsonfile" "*" + "@types/node" "*" + "@types/glob@^7.1.1": version "7.2.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" @@ -2280,40 +2611,92 @@ "@types/minimatch" "*" "@types/node" "*" +"@types/glob@^8.0.1": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.0.1.tgz#6e3041640148b7764adf21ce5c7138ad454725b0" + integrity sha512-8bVUjXZvJacUFkJXHdyZ9iH1Eaj5V7I8c4NdH5sQJsdXkqT4CA5Dhb4yb4VE/3asyx4L9ayZr1NIhTsWHczmMw== + dependencies: + "@types/minimatch" "^5.1.2" + "@types/node" "*" + +"@types/graceful-fs@^4.1.3": + version "4.1.6" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae" + integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== + dependencies: + "@types/node" "*" + "@types/html-minifier-terser@^6.0.0": version "6.1.0" resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== +"@types/http-proxy@^1.17.8": + version "1.17.9" + resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.9.tgz#7f0e7931343761efde1e2bf48c40f02f3f75705a" + integrity sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== + +"@types/istanbul-lib-report@*": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/jest@29.4.4": + version "29.4.4" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.4.4.tgz#ba257bd7b1876dec9e0b4fb82fa60eec5505e5f1" + integrity sha512-qezb65VIH7X1wobSnd6Lvdve7PXSyQRa3dljTkhTtDhi603RvHQCshSlJcuyMLHJpeHgY3NKwvDJWxMOOHxGDQ== + dependencies: + expect "^29.0.0" + pretty-format "^29.0.0" + +"@types/jsdom@^20.0.0": + version "20.0.1" + resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-20.0.1.tgz#07c14bc19bd2f918c1929541cdaacae894744808" + integrity sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ== + dependencies: + "@types/node" "*" + "@types/tough-cookie" "*" + parse5 "^7.0.0" + "@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.11" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== -"@types/linkify-it@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/linkify-it/-/linkify-it-3.0.2.tgz#fd2cd2edbaa7eaac7e7f3c1748b52a19143846c9" - integrity sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA== +"@types/jsonfile@*": + version "6.1.1" + resolved "https://registry.yarnpkg.com/@types/jsonfile/-/jsonfile-6.1.1.tgz#ac84e9aefa74a2425a0fb3012bdea44f58970f1b" + integrity sha512-GSgiRCVeapDN+3pqA35IkQwasaCh/0YFH5dEF6S88iDvEn901DjOeH3/QPY+XYP1DFzDZPvIvfeEgk+7br5png== + dependencies: + "@types/node" "*" "@types/luxon@^1.4.0": version "1.27.1" resolved "https://registry.yarnpkg.com/@types/luxon/-/luxon-1.27.1.tgz#aceeb2d5be8fccf541237e184e37ecff5faa9096" integrity sha512-cPiXpOvPFDr2edMnOXlz3UBDApwUfR+cpizvxCy0n3vp9bz/qe8BWzHPIEFcy+ogUOyjKuCISgyq77ELZPmkkg== -"@types/markdown-it@^12.2.3": - version "12.2.3" - resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-12.2.3.tgz#0d6f6e5e413f8daaa26522904597be3d6cd93b51" - integrity sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ== - dependencies: - "@types/linkify-it" "*" - "@types/mdurl" "*" - -"@types/mdurl@*": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@types/mdurl/-/mdurl-1.0.2.tgz#e2ce9d83a613bacf284c7be7d491945e39e1f8e9" - integrity sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA== +"@types/mime@*": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.1.tgz#5f8f2bca0a5863cb69bc0b0acd88c96cb1d4ae10" + integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA== -"@types/minimatch@*": +"@types/minimatch@*", "@types/minimatch@^5.1.2": version "5.1.2" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== @@ -2328,56 +2711,270 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*", "@types/node@>=10.0.0": +"@types/mustache@^4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@types/mustache/-/mustache-4.2.2.tgz#825bf5c214c3ab84d0b23fef2c8eb898f3ff8717" + integrity sha512-MUSpfpW0yZbTgjekDbH0shMYBUD+X/uJJJMm9LXN1d5yjl5lCY1vN/eWKD6D1tOtjA6206K0zcIPnUaFMurdNA== + +"@types/node@*", "@types/node@18.11.18": version "18.11.18" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.18.tgz#8dfb97f0da23c2293e554c5a50d61ef134d7697f" integrity sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA== +"@types/node@>=10.0.0": + version "18.11.19" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.19.tgz#35e26df9ec441ab99d73e99e9aca82935eea216d" + integrity sha512-YUgMWAQBWLObABqrvx8qKO1enAvBUdjZOAWQ5grBAkp5LQv45jBvYKZ3oFS9iKRCQyFjqw6iuEa1vmFqtxYLZw== + "@types/node@^12.0.8": version "12.20.55" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== -"@types/normalize-package-data@^2.4.0": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" - integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== +"@types/normalize-package-data@^2.4.0": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" + integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== + +"@types/nunjucks@^3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@types/nunjucks/-/nunjucks-3.2.1.tgz#02a3ade3dc4d3950029c6466a4034565dba7cf8c" + integrity sha512-hUh5HIC7peH+0MvlYU5KM2RydWxG1mBceivHsQGwlelU9zlczLICyJmjMwgjkI3m0+N50n46GVHkw35lIim6LQ== + +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + +"@types/prettier@^2.1.5": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0" + integrity sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg== + +"@types/qs@*": + version "6.9.7" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" + integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== + +"@types/range-parser@*": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" + integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== + +"@types/resolve@0.0.8": + version "0.0.8" + resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-0.0.8.tgz#f26074d238e02659e323ce1a13d041eee280e194" + integrity sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ== + dependencies: + "@types/node" "*" + +"@types/retry@0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" + integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== + +"@types/semver@^7.3.12": + version "7.3.13" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" + integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== + +"@types/serve-index@^1.9.1": + version "1.9.1" + resolved "https://registry.yarnpkg.com/@types/serve-index/-/serve-index-1.9.1.tgz#1b5e85370a192c01ec6cec4735cf2917337a6278" + integrity sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg== + dependencies: + "@types/express" "*" + +"@types/serve-static@*", "@types/serve-static@^1.13.10": + version "1.15.0" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.0.tgz#c7930ff61afb334e121a9da780aac0d9b8f34155" + integrity sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg== + dependencies: + "@types/mime" "*" + "@types/node" "*" + +"@types/sockjs@^0.3.33": + version "0.3.33" + resolved "https://registry.yarnpkg.com/@types/sockjs/-/sockjs-0.3.33.tgz#570d3a0b99ac995360e3136fd6045113b1bd236f" + integrity sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw== + dependencies: + "@types/node" "*" + +"@types/stack-utils@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== + +"@types/tough-cookie@*": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" + integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw== + +"@types/underscore@^1.11.4": + version "1.11.4" + resolved "https://registry.yarnpkg.com/@types/underscore/-/underscore-1.11.4.tgz#62e393f8bc4bd8a06154d110c7d042a93751def3" + integrity sha512-uO4CD2ELOjw8tasUrAhvnn2W4A0ZECOvMjCivJr4gA9pGgjv+qxKWY9GLTMVEK8ej85BxQOocUyE7hImmSQYcg== + +"@types/ws@^8.5.1": + version "8.5.4" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.4.tgz#bb10e36116d6e570dd943735f86c933c1587b8a5" + integrity sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg== + dependencies: + "@types/node" "*" + +"@types/yargs-parser@*": + version "21.0.0" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== + +"@types/yargs@^17.0.8": + version "17.0.22" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.22.tgz#7dd37697691b5f17d020f3c63e7a45971ff71e9a" + integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== + dependencies: + "@types/yargs-parser" "*" + +"@typescript-eslint/eslint-plugin@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.58.0.tgz#b1d4b0ad20243269d020ef9bbb036a40b0849829" + integrity sha512-vxHvLhH0qgBd3/tW6/VccptSfc8FxPQIkmNTVLWcCOVqSBvqpnKkBTYrhcGlXfSnd78azwe+PsjYFj0X34/njA== + dependencies: + "@eslint-community/regexpp" "^4.4.0" + "@typescript-eslint/scope-manager" "5.58.0" + "@typescript-eslint/type-utils" "5.58.0" + "@typescript-eslint/utils" "5.58.0" + debug "^4.3.4" + grapheme-splitter "^1.0.4" + ignore "^5.2.0" + natural-compare-lite "^1.4.0" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/parser@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.58.0.tgz#2ac4464cf48bef2e3234cb178ede5af352dddbc6" + integrity sha512-ixaM3gRtlfrKzP8N6lRhBbjTow1t6ztfBvQNGuRM8qH1bjFFXIJ35XY+FC0RRBKn3C6cT+7VW1y8tNm7DwPHDQ== + dependencies: + "@typescript-eslint/scope-manager" "5.58.0" + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/typescript-estree" "5.58.0" + debug "^4.3.4" + +"@typescript-eslint/scope-manager@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.58.0.tgz#5e023a48352afc6a87be6ce3c8e763bc9e2f0bc8" + integrity sha512-b+w8ypN5CFvrXWQb9Ow9T4/6LC2MikNf1viLkYTiTbkQl46CnR69w7lajz1icW0TBsYmlpg+mRzFJ4LEJ8X9NA== + dependencies: + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/visitor-keys" "5.58.0" + +"@typescript-eslint/scope-manager@5.59.8": + version "5.59.8" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.8.tgz#ff4ad4fec6433647b817c4a7d4b4165d18ea2fa8" + integrity sha512-/w08ndCYI8gxGf+9zKf1vtx/16y8MHrZs5/tnjHhMLNSixuNcJavSX4wAiPf4aS5x41Es9YPCn44MIe4cxIlig== + dependencies: + "@typescript-eslint/types" "5.59.8" + "@typescript-eslint/visitor-keys" "5.59.8" + +"@typescript-eslint/type-utils@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.58.0.tgz#f7d5b3971483d4015a470d8a9e5b8a7d10066e52" + integrity sha512-FF5vP/SKAFJ+LmR9PENql7fQVVgGDOS+dq3j+cKl9iW/9VuZC/8CFmzIP0DLKXfWKpRHawJiG70rVH+xZZbp8w== + dependencies: + "@typescript-eslint/typescript-estree" "5.58.0" + "@typescript-eslint/utils" "5.58.0" + debug "^4.3.4" + tsutils "^3.21.0" + +"@typescript-eslint/type-utils@^5.58.0": + version "5.59.8" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.8.tgz#aa6c029a9d7706d26bbd25eb4666398781df6ea2" + integrity sha512-+5M518uEIHFBy3FnyqZUF3BMP+AXnYn4oyH8RF012+e7/msMY98FhGL5SrN29NQ9xDgvqCgYnsOiKp1VjZ/fpA== + dependencies: + "@typescript-eslint/typescript-estree" "5.59.8" + "@typescript-eslint/utils" "5.59.8" + debug "^4.3.4" + tsutils "^3.21.0" -"@types/parse-json@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" - integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== +"@typescript-eslint/types@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.58.0.tgz#54c490b8522c18986004df7674c644ffe2ed77d8" + integrity sha512-JYV4eITHPzVQMnHZcYJXl2ZloC7thuUHrcUmxtzvItyKPvQ50kb9QXBkgNAt90OYMqwaodQh2kHutWZl1fc+1g== -"@types/prop-types@*": - version "15.7.5" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" - integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== +"@typescript-eslint/types@5.59.8": + version "5.59.8" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.8.tgz#212e54414733618f5d0fd50b2da2717f630aebf8" + integrity sha512-+uWuOhBTj/L6awoWIg0BlWy0u9TyFpCHrAuQ5bNfxDaZ1Ppb3mx6tUigc74LHcbHpOHuOTOJrBoAnhdHdaea1w== -"@types/react@^16.9.16": - version "16.14.34" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.14.34.tgz#d129324ffda312044e1c47aab18696e4ed493282" - integrity sha512-b99nWeGGReLh6aKBppghVqp93dFJtgtDOzc8NXM6hewD8PQ2zZG5kBLgbx+VJr7Q7WBMjHxaIl3dwpwwPIUgyA== +"@typescript-eslint/typescript-estree@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.58.0.tgz#4966e6ff57eaf6e0fce2586497edc097e2ab3e61" + integrity sha512-cRACvGTodA+UxnYM2uwA2KCwRL7VAzo45syNysqlMyNyjw0Z35Icc9ihPJZjIYuA5bXJYiJ2YGUB59BqlOZT1Q== dependencies: - "@types/prop-types" "*" - "@types/scheduler" "*" - csstype "^3.0.2" + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/visitor-keys" "5.58.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" -"@types/resolve@0.0.8": - version "0.0.8" - resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-0.0.8.tgz#f26074d238e02659e323ce1a13d041eee280e194" - integrity sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ== +"@typescript-eslint/typescript-estree@5.59.8": + version "5.59.8" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.8.tgz#801a7b1766481629481b3b0878148bd7a1f345d7" + integrity sha512-Jy/lPSDJGNow14vYu6IrW790p7HIf/SOV1Bb6lZ7NUkLc2iB2Z9elESmsaUtLw8kVqogSbtLH9tut5GCX1RLDg== dependencies: - "@types/node" "*" + "@typescript-eslint/types" "5.59.8" + "@typescript-eslint/visitor-keys" "5.59.8" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" -"@types/scheduler@*": - version "0.16.2" - resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" - integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== +"@typescript-eslint/utils@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.58.0.tgz#430d7c95f23ec457b05be5520c1700a0dfd559d5" + integrity sha512-gAmLOTFXMXOC+zP1fsqm3VceKSBQJNzV385Ok3+yzlavNHZoedajjS4UyS21gabJYcobuigQPs/z71A9MdJFqQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.58.0" + "@typescript-eslint/types" "5.58.0" + "@typescript-eslint/typescript-estree" "5.58.0" + eslint-scope "^5.1.1" + semver "^7.3.7" + +"@typescript-eslint/utils@5.59.8", "@typescript-eslint/utils@^5.58.0": + version "5.59.8" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.8.tgz#34d129f35a2134c67fdaf024941e8f96050dca2b" + integrity sha512-Tr65630KysnNn9f9G7ROF3w1b5/7f6QVCJ+WK9nhIocWmx9F+TmCAcglF26Vm7z8KCTwoKcNEBZrhlklla3CKg== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.59.8" + "@typescript-eslint/types" "5.59.8" + "@typescript-eslint/typescript-estree" "5.59.8" + eslint-scope "^5.1.1" + semver "^7.3.7" -"@types/yoga-layout@1.9.2": - version "1.9.2" - resolved "https://registry.yarnpkg.com/@types/yoga-layout/-/yoga-layout-1.9.2.tgz#efaf9e991a7390dc081a0b679185979a83a9639a" - integrity sha512-S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw== +"@typescript-eslint/visitor-keys@5.58.0": + version "5.58.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.58.0.tgz#eb9de3a61d2331829e6761ce7fd13061781168b4" + integrity sha512-/fBraTlPj0jwdyTwLyrRTxv/3lnU2H96pNTVM6z3esTWLtA5MZ9ghSMJ7Rb+TtUAdtEw9EyJzJ0EydIMKxQ9gA== + dependencies: + "@typescript-eslint/types" "5.58.0" + eslint-visitor-keys "^3.3.0" + +"@typescript-eslint/visitor-keys@5.59.8": + version "5.59.8" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.8.tgz#aa6a7ef862add919401470c09e1609392ef3cc40" + integrity sha512-pJhi2ms0x0xgloT7xYabil3SGGlojNNKjK/q6dB3Ey0uJLMjK2UDGJvHieiyJVW/7C3KI+Z4Q3pEHkm4ejA+xQ== + dependencies: + "@typescript-eslint/types" "5.59.8" + eslint-visitor-keys "^3.3.0" "@webassemblyjs/ast@1.11.1": version "1.11.1" @@ -2387,21 +2984,44 @@ "@webassemblyjs/helper-numbers" "1.11.1" "@webassemblyjs/helper-wasm-bytecode" "1.11.1" +"@webassemblyjs/ast@1.11.6", "@webassemblyjs/ast@^1.11.5": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.6.tgz#db046555d3c413f8966ca50a95176a0e2c642e24" + integrity sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q== + dependencies: + "@webassemblyjs/helper-numbers" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/floating-point-hex-parser@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== +"@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/helper-api-error@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== +"@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-buffer@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== +"@webassemblyjs/helper-buffer@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz#b66d73c43e296fd5e88006f18524feb0f2c7c093" + integrity sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA== + "@webassemblyjs/helper-numbers@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" @@ -2411,11 +3031,25 @@ "@webassemblyjs/helper-api-error" "1.11.1" "@xtuc/long" "4.2.2" +"@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" + integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.11.6" + "@webassemblyjs/helper-api-error" "1.11.6" + "@xtuc/long" "4.2.2" + "@webassemblyjs/helper-wasm-bytecode@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== +"@webassemblyjs/helper-wasm-bytecode@1.11.6": + version "1.11.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-section@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" @@ -2426,6 +3060,16 @@ "@webassemblyjs/helper-wasm-bytecode" "1.11.1" "@webassemblyjs/wasm-gen" "1.11.1" +"@webassemblyjs/helper-wasm-section@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz#ff97f3863c55ee7f580fd5c41a381e9def4aa577" + integrity sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-buffer" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/wasm-gen" "1.11.6" + "@webassemblyjs/ieee754@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" @@ -2433,6 +3077,13 @@ dependencies: "@xtuc/ieee754" "^1.2.0" +"@webassemblyjs/ieee754@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" + integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== + dependencies: + "@xtuc/ieee754" "^1.2.0" + "@webassemblyjs/leb128@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" @@ -2440,11 +3091,23 @@ dependencies: "@xtuc/long" "4.2.2" +"@webassemblyjs/leb128@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" + integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== + dependencies: + "@xtuc/long" "4.2.2" + "@webassemblyjs/utf8@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== +"@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/wasm-edit@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" @@ -2459,6 +3122,20 @@ "@webassemblyjs/wasm-parser" "1.11.1" "@webassemblyjs/wast-printer" "1.11.1" +"@webassemblyjs/wasm-edit@^1.11.5": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz#c72fa8220524c9b416249f3d94c2958dfe70ceab" + integrity sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-buffer" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/helper-wasm-section" "1.11.6" + "@webassemblyjs/wasm-gen" "1.11.6" + "@webassemblyjs/wasm-opt" "1.11.6" + "@webassemblyjs/wasm-parser" "1.11.6" + "@webassemblyjs/wast-printer" "1.11.6" + "@webassemblyjs/wasm-gen@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" @@ -2470,6 +3147,17 @@ "@webassemblyjs/leb128" "1.11.1" "@webassemblyjs/utf8" "1.11.1" +"@webassemblyjs/wasm-gen@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz#fb5283e0e8b4551cc4e9c3c0d7184a65faf7c268" + integrity sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/wasm-opt@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" @@ -2480,6 +3168,16 @@ "@webassemblyjs/wasm-gen" "1.11.1" "@webassemblyjs/wasm-parser" "1.11.1" +"@webassemblyjs/wasm-opt@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz#d9a22d651248422ca498b09aa3232a81041487c2" + integrity sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-buffer" "1.11.6" + "@webassemblyjs/wasm-gen" "1.11.6" + "@webassemblyjs/wasm-parser" "1.11.6" + "@webassemblyjs/wasm-parser@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" @@ -2492,6 +3190,18 @@ "@webassemblyjs/leb128" "1.11.1" "@webassemblyjs/utf8" "1.11.1" +"@webassemblyjs/wasm-parser@1.11.6", "@webassemblyjs/wasm-parser@^1.11.5": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz#bb85378c527df824004812bbdb784eea539174a1" + integrity sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-api-error" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/wast-printer@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" @@ -2500,15 +3210,13 @@ "@webassemblyjs/ast" "1.11.1" "@xtuc/long" "4.2.2" -"@webcomponents/custom-elements@^1.4.3": - version "1.5.1" - resolved "https://registry.yarnpkg.com/@webcomponents/custom-elements/-/custom-elements-1.5.1.tgz#48029f6c62b94a4b49be061ca1dae04ab9681ace" - integrity sha512-6T/XT3S1UHDlRWFSxRXdeSoYWczEl78sygNPS7jDyHVrfZcF/pUtWGYgxF4uviH59iPVw1eOWbhubm8CqO0MpA== - -"@webcomponents/webcomponentsjs@^2.5.0": - version "2.7.0" - resolved "https://registry.yarnpkg.com/@webcomponents/webcomponentsjs/-/webcomponentsjs-2.7.0.tgz#8a87aeaaa0757c95eae0e07dd45f3050d1f8be01" - integrity sha512-j161Z9oiy8k74vchdrQGihfSp7QulrTclCUiPo0D7JF6/RjpXAmB0ThlTAFlSElkgqg0vdFgNAXaX9ZHZy25wQ== +"@webassemblyjs/wast-printer@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz#a7bf8dd7e362aeb1668ff43f35cb849f188eff20" + integrity sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@xtuc/long" "4.2.2" "@webpack-cli/configtest@^2.0.1": version "2.0.1" @@ -2535,6 +3243,33 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== +"@yarnpkg/lockfile@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" + integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== + +"@yarnpkg/parsers@^3.0.0-rc.18": + version "3.0.0-rc.38" + resolved "https://registry.yarnpkg.com/@yarnpkg/parsers/-/parsers-3.0.0-rc.38.tgz#91b393554017016e12d2f4ea33f589dcfe7d5670" + integrity sha512-YqkUSOZSBjbhzvU/ZbK6yoE70L/KVXAQTyUMaKAFoHEpy7csAljivTBu0C3SZKbDxMRjFWAvnLS8US7W3hFLow== + dependencies: + js-yaml "^3.10.0" + tslib "^2.4.0" + +"@zkochan/js-yaml@0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz#975f0b306e705e28b8068a07737fa46d3fc04826" + integrity sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg== + dependencies: + argparse "^2.0.1" + +"@zkochan/rimraf@^2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@zkochan/rimraf/-/rimraf-2.1.2.tgz#84b502594321360e4a4ca864b9e6457af2f5212d" + integrity sha512-Lc2oK51J6aQWcLWTloobJun5ZF41BbTDdLvE+aMcexoVWFoFqvZmnZoyXR2IZk6NJEVoZW8tjgtvQLfTsmRs2Q== + dependencies: + rimraf "^3.0.2" + JSONStream@^1.0.4: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" @@ -2548,7 +3283,7 @@ a-sync-waterfall@^1.0.0: resolved "https://registry.yarnpkg.com/a-sync-waterfall/-/a-sync-waterfall-1.0.1.tgz#75b6b6aa72598b497a125e7a2770f14f4c8a1fa7" integrity sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA== -abab@^2.0.0: +abab@^2.0.0, abab@^2.0.5, abab@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== @@ -2577,7 +3312,7 @@ abstract-leveldown@~6.2.1: level-supports "~1.0.0" xtend "~4.0.0" -accepts@~1.3.4, accepts@~1.3.8: +accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== @@ -2593,19 +3328,25 @@ acorn-globals@^4.3.0: acorn "^6.0.1" acorn-walk "^6.0.1" +acorn-globals@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-7.0.1.tgz#0dbf05c44fa7c94332914c02066d5beff62c40c3" + integrity sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q== + dependencies: + acorn "^8.1.0" + acorn-walk "^8.0.2" + acorn-import-assertions@^1.7.6: version "1.8.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== -acorn-jsx@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" - integrity sha512-AU7pnZkguthwBjKgCg6998ByQNIMjbuDQZ8bb78QAFZwPfmKia8AIzgY/gWgqCjnht8JLdXmB4YxA0KaV60ncQ== - dependencies: - acorn "^3.0.4" +acorn-import-assertions@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" + integrity sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA== -acorn-jsx@^5.2.0: +acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== @@ -2615,21 +3356,11 @@ acorn-walk@^6.0.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== -acorn-walk@^8.1.1: +acorn-walk@^8.0.2, acorn-walk@^8.1.1: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== -acorn@^3.0.4: - version "3.3.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" - integrity sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw== - -acorn@^5.5.0: - version "5.7.4" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e" - integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg== - acorn@^6.0.1, acorn@^6.0.2: version "6.4.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" @@ -2640,7 +3371,12 @@ acorn@^7.1.0, acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1: +acorn@^8.1.0, acorn@^8.7.1, acorn@^8.8.0, acorn@^8.8.1, acorn@^8.8.2: + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== + +acorn@^8.4.1, acorn@^8.5.0: version "8.8.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== @@ -2650,30 +3386,18 @@ add-stream@^1.0.0: resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" integrity sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ== -agent-base@6, agent-base@^6.0.2: +address@^1.0.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" + integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== + +agent-base@6: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" -agentkeepalive@^4.1.3: - version "4.2.1" - resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" - integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== - dependencies: - debug "^4.1.0" - depd "^1.1.2" - humanize-ms "^1.2.1" - -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - ajv-formats@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" @@ -2681,11 +3405,6 @@ ajv-formats@^2.1.1: dependencies: ajv "^8.0.0" -ajv-keywords@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" - integrity sha512-ZFztHzVRdGLAzJmpUT9LNFLe1YiVOEylcaNpEutM26PVTCtOD919IMfD01CgbRouB42Dd9atjx1HseC15DgOZA== - ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" @@ -2698,17 +3417,7 @@ ajv-keywords@^5.0.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^5.2.3, ajv@^5.3.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw== - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.5, ajv@^6.5.1, ajv@^6.5.2: +ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.5.1, ajv@^6.5.2: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2718,7 +3427,7 @@ ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.5, ajv@^6.5.1, ajv@^6.5.2: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.8.0: +ajv@^8.0.0, ajv@^8.11.0, ajv@^8.8.0: version "8.12.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -2728,6 +3437,22 @@ ajv@^8.0.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" +all-contributors-cli@6.19.0: + version "6.19.0" + resolved "https://registry.yarnpkg.com/all-contributors-cli/-/all-contributors-cli-6.19.0.tgz#7e4550973afede2476b62bd159fee6d72a1ad802" + integrity sha512-QJN4iLeTeYpTZJES8XFTzQ+itA1qSyBbxLapJLtwrnY+kipyRhCX49fS/s/qftQQym9XLATMZUpUeEeJSox1sw== + dependencies: + "@babel/runtime" "^7.7.6" + async "^3.0.1" + chalk "^4.0.0" + didyoumean "^1.2.1" + inquirer "^7.0.4" + json-fixer "^1.5.1" + lodash "^4.11.2" + node-fetch "^2.6.0" + pify "^5.0.0" + yargs "^15.0.1" + ansi-align@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" @@ -2735,30 +3460,11 @@ ansi-align@^3.0.0: dependencies: string-width "^4.1.0" -ansi-colors@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-1.1.0.tgz#6374b4dd5d4718ff3ce27a671a3b1cad077132a9" - integrity sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA== - dependencies: - ansi-wrap "^0.1.0" - ansi-colors@^4.1.1: version "4.1.3" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== -ansi-escape-sequences@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-escape-sequences/-/ansi-escape-sequences-4.1.0.tgz#2483c8773f50dd9174dd9557e92b1718f1816097" - integrity sha512-dzW9kHxH011uBsidTXd14JXgzye/YLb2LzeKZ4bsgl/Knwx8AtbSFkkGxagdNOoh0DlqHCmfiEjWKBaqjOanVw== - dependencies: - array-back "^3.0.1" - -ansi-escapes@^3.0.0, ansi-escapes@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" - integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== - ansi-escapes@^4.2.1: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -2766,14 +3472,7 @@ ansi-escapes@^4.2.1: dependencies: type-fest "^0.21.3" -ansi-gray@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" - integrity sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw== - dependencies: - ansi-wrap "0.1.0" - -ansi-html-community@0.0.8: +ansi-html-community@0.0.8, ansi-html-community@^0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== @@ -2817,31 +3516,21 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +ansi-styles@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== + ansi-styles@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178" integrity sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA== -ansi-wrap@0.1.0, ansi-wrap@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" - integrity sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw== - -ansicolors@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" - integrity sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg== - any-promise@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-0.1.0.tgz#830b680aa7e56f33451d4b049f3bd8044498ee27" integrity sha512-lqzY9o+BbeGHRCOyxQkt/Tgvz0IZhTmQiA+LxQW8wSNpcTbj8K+0cZiSEvbpNZZP9/11Gy7dnLO3GNWUXO4d1g== -any-promise@^1.3.0: - version "1.3.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" @@ -2850,7 +3539,7 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -anymatch@~3.1.1, anymatch@~3.1.2: +anymatch@^3.0.3, anymatch@^3.1.1, anymatch@~3.1.1, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== @@ -2870,30 +3559,6 @@ apache-md5@^1.0.6: resolved "https://registry.yarnpkg.com/apache-md5/-/apache-md5-1.1.8.tgz#ea79c6feb03abfed42b2830dde06f75df5e3bbd9" integrity sha512-FCAJojipPn0bXjuEpjOOOMN8FZDkxfWWp4JGN9mifU2IhxvKyXZYqpzPHdnTSUpmPDy+tsslB6Z1g+Vg6nVbYA== -append-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/append-buffer/-/append-buffer-1.0.2.tgz#d8220cf466081525efea50614f3de6514dfa58f1" - integrity sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA== - dependencies: - buffer-equal "^1.0.0" - -append-transform@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-1.0.0.tgz#046a52ae582a228bd72f58acfbe2967c678759ab" - integrity sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw== - dependencies: - default-require-extensions "^2.0.0" - -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -aproba@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" - integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== - archiver-utils@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz#e8a460e94b693c3e3da182a098ca6285ba9249e2" @@ -2923,19 +3588,6 @@ archiver@5.3.0: tar-stream "^2.2.0" zip-stream "^4.1.0" -archy@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" - integrity sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw== - -are-we-there-yet@~1.1.2: - version "1.1.7" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" - integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - arg@^4.1.0: version "4.1.3" resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" @@ -2958,44 +3610,16 @@ arr-diff@^4.0.0: resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== -arr-filter@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/arr-filter/-/arr-filter-1.1.2.tgz#43fdddd091e8ef11aa4c45d9cdc18e2dff1711ee" - integrity sha512-A2BETWCqhsecSvCkWAeVBFLH6sXEUGASuzkpjL3GR1SlL/PWL6M3J8EAAld2Uubmh39tvkJTqC9LeLHCUKmFXA== - dependencies: - make-iterator "^1.0.0" - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: +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-map@^2.0.0, arr-map@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/arr-map/-/arr-map-2.0.2.tgz#3a77345ffc1cf35e2a91825601f9e58f2e24cac4" - integrity sha512-tVqVTHt+Q5Xb09qRkbu+DidW1yYzz5izWS2Xm2yFm7qJnmUfz4HPzNxbHkdRJbz2lrqI7S+z17xNYdFcBBO8Hw== - dependencies: - make-iterator "^1.0.0" - 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-back@^1.0.2, array-back@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-1.0.4.tgz#644ba7f095f7ffcf7c43b5f0dc39d3c1f03c063b" - integrity sha512-1WxbZvrmyhkNoeYcizokbmh5oiOCIfyvGtcqbK3Ls1v1fKcquzxnQSceOx6tzq7jmai2kFLWIpGND2cLhH6TPw== - dependencies: - typical "^2.6.0" - -array-back@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-2.0.0.tgz#6877471d51ecc9c9bfa6136fb6c7d5fe69748022" - integrity sha512-eJv4pLLufP3g5kcZry0j6WXpIbzYw9GUB4mVJZno9wfwiBxbizTnHCw3VJb07cBihbFX48Y7oSrW9y+gt4glyw== - dependencies: - typical "^2.6.1" - array-back@^3.0.1, array-back@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/array-back/-/array-back-3.1.0.tgz#b8859d7a508871c9a7b2cf42f99428f65e96bfb0" @@ -3006,11 +3630,6 @@ array-back@^4.0.1, array-back@^4.0.2: resolved "https://registry.yarnpkg.com/array-back/-/array-back-4.0.2.tgz#8004e999a6274586beeb27342168652fdb89fa1e" integrity sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg== -array-back@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/array-back/-/array-back-5.0.0.tgz#e196609edcec48376236d163958df76e659a0d36" - integrity sha512-kgVWwJReZWmVuWOQKEOohXKJX+nD02JAZ54D1RRWlv8L0NebauKAaFxACKzB74RTclt1+WNz5KHaLRDAPZbDEw== - array-differ@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" @@ -3021,11 +3640,6 @@ array-differ@^3.0.0: resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== -array-each@^1.0.0, array-each@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" - integrity sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA== - array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" @@ -3041,40 +3655,16 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== +array-flatten@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" + integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== + array-ify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng== -array-initial@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/array-initial/-/array-initial-1.1.0.tgz#2fa74b26739371c3947bd7a7adc73be334b3d795" - integrity sha512-BC4Yl89vneCYfpLrs5JU2aAu9/a+xWbeKhvISg9PT7eWFB9UlRvI+rKEtk6mgxWr3dSkk9gQ8hCrdqt06NXPdw== - dependencies: - array-slice "^1.0.0" - is-number "^4.0.0" - -array-last@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/array-last/-/array-last-1.3.0.tgz#7aa77073fec565ddab2493f5f88185f404a9d336" - integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== - dependencies: - is-number "^4.0.0" - -array-slice@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.1.0.tgz#e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4" - integrity sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w== - -array-sort@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-sort/-/array-sort-1.0.0.tgz#e4c05356453f56f53512a7d1d6123f2c54c0a88a" - integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== - dependencies: - default-compare "^1.0.0" - get-value "^2.0.6" - kind-of "^5.0.2" - array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -3087,6 +3677,11 @@ 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-union@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-3.0.1.tgz#da52630d327f8b88cfbfb57728e2af5cd9b6b975" + integrity sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw== + array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -3097,16 +3692,15 @@ array-unique@^0.3.2: resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== -array.prototype.reduce@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz#6b20b0daa9d9734dd6bc7ea66b5bbce395471eac" - integrity sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q== +array.prototype.flatmap@^1.2.2: + version "1.3.1" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183" + integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== dependencies: call-bind "^1.0.2" define-properties "^1.1.4" es-abstract "^1.20.4" - es-array-method-boxes-properly "^1.0.0" - is-string "^1.0.7" + es-shim-unscopables "^1.0.0" arrify@^1.0.0, arrify@^1.0.1: version "1.0.1" @@ -3118,7 +3712,7 @@ arrify@^2.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== -asap@^2.0.0, asap@^2.0.3, asap@~2.0.3: +asap@^2.0.3, asap@~2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== @@ -3155,55 +3749,16 @@ assign-symbols@^1.0.0: resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - -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-done@^1.2.0, async-done@^1.2.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/async-done/-/async-done-1.3.2.tgz#5e15aa729962a4b07414f528a88cdf18e0b290a2" - integrity sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.2" - process-nextick-args "^2.0.0" - stream-exhaust "^1.0.1" - async-each-series@0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/async-each-series/-/async-each-series-0.1.1.tgz#7617c1917401fd8ca4a28aadce3dbae98afeb432" integrity sha512-p4jj6Fws4Iy2m0iCmI2am2ZNZCgbdgE+P8F/8csmn2vx7ixXrO2zGcuNsD46X5uZSVecmkEy/M06X2vG8KD6dQ== -async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== - -async-hook-domain@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/async-hook-domain/-/async-hook-domain-1.1.3.tgz#f4f531b8ee8206b1ea1825fe3825e015c66f44d0" - integrity sha512-ZovMxSbADV3+biB7oR1GL5lGyptI24alp0LWHlmz1OFc5oL47pz3EiIF6nXOkDW7yLqih4NtsiYduzdDW0i+Wg== - dependencies: - source-map-support "^0.5.11" - async-limiter@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== -async-settle@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-settle/-/async-settle-1.0.0.tgz#1d0a914bb02575bec8a8f3a74e5080f72b2c0c6b" - integrity sha512-VPXfB4Vk49z1LHHodrEQ6Xf7W4gg1w0dAPROHngx7qgDjqmIQ+fXmwgGXTW/ITLai0YLSvWepJOP9EVpMnEAcw== - dependencies: - async-done "^1.2.2" - async@^2.6.0, async@^2.6.4: version "2.6.4" resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" @@ -3211,7 +3766,7 @@ async@^2.6.0, async@^2.6.4: dependencies: lodash "^4.17.14" -async@^3.2.0, async@^3.2.3: +async@^3.0.1, async@^3.2.0, async@^3.2.3: version "3.2.4" resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== @@ -3221,11 +3776,6 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -at-least-node@^1.0.0: - version "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" @@ -3236,11 +3786,6 @@ author-regex@^1.0.0: resolved "https://registry.yarnpkg.com/author-regex/-/author-regex-1.0.0.tgz#d08885be6b9bbf9439fe087c76287245f0a81450" integrity sha512-KbWgR8wOYRAPekEmMXrYYdc7BRyhn2Ftk7KWfMUnQ43hFdojWEFRxhhRUm3/OFEdPa1r0KAvTTg9YQK57xTe0g== -auto-bind@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-4.0.0.tgz#e3589fc6c2da8f7ca43ba9f84fa52a744fc997fb" - integrity sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ== - auto@^10.27.0: version "10.37.6" resolved "https://registry.yarnpkg.com/auto/-/auto-10.37.6.tgz#3bc64d60afac2cb713a0192a4f89d64816db26c7" @@ -3259,7 +3804,7 @@ auto@^10.27.0: terminal-link "^2.1.1" tslib "2.1.0" -autoprefixer@^10.2.5: +autoprefixer@^10.2.5, autoprefixer@^10.4.9: version "10.4.13" resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.13.tgz#b5136b59930209a321e9fa3dca2e7c4d223e83a8" integrity sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg== @@ -3298,109 +3843,40 @@ axios@0.21.4: dependencies: follow-redirects "^1.14.0" -babel-code-frame@^6.16.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g== - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@6.17.0: - version "6.17.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.17.0.tgz#6c4576447df479e241e58c807e4bc7da4db7f425" - integrity sha512-FwC3L8MvSnPZgcvE8O/DLMEJKHcbUgjgsl2EU4+7qaFzHUkTP/+Kuqmu1mDEFKqWvWBEYwGDpGxm9huJURkImg== - dependencies: - babel-code-frame "^6.16.0" - babel-generator "^6.17.0" - babel-helpers "^6.16.0" - babel-messages "^6.8.0" - babel-register "^6.16.0" - babel-runtime "^6.9.1" - babel-template "^6.16.0" - babel-traverse "^6.16.0" - babel-types "^6.16.0" - babylon "^6.11.0" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.4.0" - lodash "^4.2.0" - minimatch "^3.0.2" - path-exists "^1.0.0" - path-is-absolute "^1.0.0" - private "^0.1.6" - shebang-regex "^1.0.0" - slash "^1.0.0" - source-map "^0.5.0" - -babel-core@^6.26.0: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-eslint@^10.0.2: - version "10.1.0" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232" - integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" - eslint-visitor-keys "^1.0.0" - resolve "^1.12.0" - -babel-generator@^6.17.0, babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helper-builder-react-jsx@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz#39ff8313b75c8b65dceff1f31d383e0ff2a408a0" - integrity sha512-02I9jDjnVEuGy2BR3LRm9nPRb/+Ja0pvZVLr1eI5TYAA/dB0Xoc+WBo50+aDfhGDLhlBY1+QURjn9uvcFd8gzg== - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - esutils "^2.0.2" +axios@^1.0.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.3.2.tgz#7ac517f0fa3ec46e0e636223fd973713a09c72b3" + integrity sha512-1M3O703bYqYuPhbHeya5bnhpYVsDDRyQSabNja04mZtboLNSuZ4YrltestrLXfHgmzua4TpUqRiVKbiQuo2epw== + dependencies: + follow-redirects "^1.15.0" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + +babel-jest@29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.4.3.tgz#478b84d430972b277ad67dd631be94abea676792" + integrity sha512-o45Wyn32svZE+LnMVWv/Z4x0SwtLbh4FyGcYtR20kIWd+rdrDZ9Fzq8Ml3MYLD+mZvEdzCjZsCnYZ2jpJyQ+Nw== + dependencies: + "@jest/transform" "^29.4.3" + "@types/babel__core" "^7.1.14" + babel-plugin-istanbul "^6.1.1" + babel-preset-jest "^29.4.3" + chalk "^4.0.0" + graceful-fs "^4.2.9" + slash "^3.0.0" -babel-helpers@^6.16.0, babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ== +babel-jest@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.5.0.tgz#3fe3ddb109198e78b1c88f9ebdecd5e4fc2f50a5" + integrity sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q== dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" + "@jest/transform" "^29.5.0" + "@types/babel__core" "^7.1.14" + babel-plugin-istanbul "^6.1.1" + babel-preset-jest "^29.5.0" + chalk "^4.0.0" + graceful-fs "^4.2.9" + slash "^3.0.0" babel-loader@^9.1.2: version "9.1.2" @@ -3410,12 +3886,44 @@ babel-loader@^9.1.2: find-cache-dir "^3.3.2" schema-utils "^4.0.0" -babel-messages@^6.23.0, babel-messages@^6.8.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w== +babel-plugin-const-enum@^1.0.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-const-enum/-/babel-plugin-const-enum-1.2.0.tgz#3d25524106f68f081e187829ba736b251c289861" + integrity sha512-o1m/6iyyFnp9MRsK1dHF3bneqyf3AlM2q3A/YbgQr2pCat6B6XJVDv2TXqzfY2RYUi4mak6WAksSBPlyYGx9dg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-typescript" "^7.3.3" + "@babel/traverse" "^7.16.0" + +babel-plugin-istanbul@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^5.0.4" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz#a97db437936f441ec196990c9738d4b88538618a" + integrity sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.1.14" + "@types/babel__traverse" "^7.0.6" + +babel-plugin-macros@^2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" + integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== dependencies: - babel-runtime "^6.22.0" + "@babel/runtime" "^7.7.2" + cosmiconfig "^6.0.0" + resolve "^1.12.0" babel-plugin-polyfill-corejs2@^0.3.3: version "0.3.3" @@ -3441,143 +3949,38 @@ babel-plugin-polyfill-regenerator@^0.4.1: dependencies: "@babel/helper-define-polyfill-provider" "^0.3.3" -babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.3.13: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" - integrity sha512-HbTDIoG1A1op7Tl/wIFQPULIBA61tsJ8Ntq2FAhLwuijrzosM/92kAfgU1Q3Kc7DH/cprJg5vDfuTY4QUL4rDA== - -babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" - integrity sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw== - -babel-plugin-transform-es2015-modules-commonjs@6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.16.0.tgz#0a34b447bc88ad1a70988b6d199cca6d0b96c892" - integrity sha512-S9/RjERTgjuvorn9X1XZcyM9YIpypOTvl1gcrHdb8/GybYyRsm7PzmV7BAHhv7UrcUVx3kayOM5iQZtycm2HMw== - dependencies: - babel-plugin-transform-strict-mode "^6.8.0" - babel-runtime "^6.0.0" - babel-template "^6.16.0" - babel-types "^6.16.0" - -babel-plugin-transform-flow-strip-types@^6.3.13: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" - integrity sha512-TxIM0ZWNw9oYsoTthL3lvAK3+eTujzktoXJg4ubGvICGbVuXVYv5hHv0XXpz8fbqlJaGYY4q5SVzaSmsg3t4Fg== - dependencies: - babel-plugin-syntax-flow "^6.18.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-react-display-name@^6.3.13: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1" - integrity sha512-QLYkLiZeeED2PKd4LuXGg5y9fCgPB5ohF8olWUuETE2ryHNRqqnXlEVP7RPuef89+HTfd3syptMGVHeoAu0Wig== - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx-self@^6.11.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz#df6d80a9da2612a121e6ddd7558bcbecf06e636e" - integrity sha512-Y3ZHP1nunv0U1+ysTNwLK39pabHj6cPVsfN4TRC7BDBfbgbyF4RifP5kd6LnbuMV9wcfedQMe7hn1fyKc7IzTQ== - dependencies: - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx-source@^6.3.13: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6" - integrity sha512-pcDNDsZ9q/6LJmujQ/OhjeoIlp5Nl546HJ2yiFIJK3mYpgNXhI5/S9mXfVxu5yqWAi7HdI7e/q6a9xtzwL69Vw== - dependencies: - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx@^6.3.13: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3" - integrity sha512-s+q/Y2u2OgDPHRuod3t6zyLoV8pUHc64i/O7ZNgIOEdYTq+ChPeybcKBi/xk9VI60VriILzFPW+dUxAEbTxh2w== - dependencies: - babel-helper-builder-react-jsx "^6.24.1" - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-strict-mode@^6.8.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - integrity sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw== - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-preset-react@6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.16.0.tgz#aa117d60de0928607e343c4828906e4661824316" - integrity sha512-Lw1kglonZlCFMlsxE/WJ6wXqVzTC2pa60L+WNGKa0e2oBAF0pNnyFFl1mM+Ko0qGE96F0p1XXSb31mHtx/N4Fw== - dependencies: - babel-plugin-syntax-flow "^6.3.13" - babel-plugin-syntax-jsx "^6.3.13" - babel-plugin-transform-flow-strip-types "^6.3.13" - babel-plugin-transform-react-display-name "^6.3.13" - babel-plugin-transform-react-jsx "^6.3.13" - babel-plugin-transform-react-jsx-self "^6.11.0" - babel-plugin-transform-react-jsx-source "^6.3.13" - -babel-register@^6.16.0, babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A== - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.0.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0, babel-runtime@^6.9.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg== - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.16.0, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA== - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.16.0, babel-types@^6.24.1, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g== - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" +babel-plugin-transform-typescript-metadata@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-typescript-metadata/-/babel-plugin-transform-typescript-metadata-0.3.2.tgz#7a327842d8c36ffe07ee1b5276434e56c297c9b7" + integrity sha512-mWEvCQTgXQf48yDqgN7CH50waTyYBeP2Lpqx4nNWab9sxEpdXVeKgfj1qYI2/TgUPQtNFZ85i3PemRtnXVYYJg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^29.4.3, babel-preset-jest@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz#57bc8cc88097af7ff6a5ab59d1cd29d52a5916e2" + integrity sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg== + dependencies: + babel-plugin-jest-hoist "^29.5.0" + babel-preset-current-node-syntax "^1.0.0" babel-walk@3.0.0-canary-5: version "3.0.0-canary-5" @@ -3586,26 +3989,6 @@ babel-walk@3.0.0-canary-5: dependencies: "@babel/types" "^7.9.6" -babylon@^6.11.0, babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -bach@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/bach/-/bach-1.2.0.tgz#4b3ce96bf27134f79a1b414a51c14e34c3bd9880" - integrity sha512-bZOOfCb3gXBXbTFXq3OZtGR88LwGeJvzu6szttaIzymOTS4ZttBNOWSv7aLZja2EMycKtRYV0Oa8SNKH/zkxvg== - dependencies: - arr-filter "^1.1.1" - arr-flatten "^1.0.1" - arr-map "^2.0.0" - array-each "^1.0.0" - array-initial "^1.0.0" - array-last "^1.1.1" - async-done "^1.2.2" - async-settle "^1.0.0" - now-and-later "^2.0.0" - balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" @@ -3634,7 +4017,7 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" -basic-auth@~2.0.1: +basic-auth@^2.0.1, basic-auth@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-2.0.1.tgz#b998279bf47ce38344b4f3cf916d4679bbf51e3a" integrity sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg== @@ -3663,46 +4046,22 @@ before-after-hook@^2.2.0: resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== -better-opn@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/better-opn/-/better-opn-3.0.2.tgz#f96f35deaaf8f34144a4102651babcf00d1d8817" - integrity sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ== +better-path-resolve@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/better-path-resolve/-/better-path-resolve-1.0.0.tgz#13a35a1104cdd48a7b74bf8758f96a1ee613f99d" + integrity sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g== dependencies: - open "^8.0.4" + is-windows "^1.0.0" big.js@^5.2.2: version "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.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== - -bind-obj-methods@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/bind-obj-methods/-/bind-obj-methods-2.0.2.tgz#ea603b0f2455dce76d177c69747751b40c815897" - integrity sha512-bUkRdEOppT1Xg/jG0+bp0JSjUD9U0r7skxb/42WeBUjfBpW6COQTIgQmKX5J2Z3aMXcORKgN2N+d7IQwTK3pag== - -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" - -bl@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/bl/-/bl-3.0.1.tgz#1cbb439299609e419b5a74d7fce2f8b37d8e5c6f" - integrity sha512-jrCW5ZhfQ/Vt07WX1Ngs+yn9BDqPL/gw28S7s9H6QK/gupnizNzJAss5akW20ISgOrbLTlXOOCTJeNUQqruAWQ== - dependencies: - readable-stream "^3.0.1" + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== bl@^4.0.3, bl@^4.1.0: version "4.1.0" @@ -3713,7 +4072,7 @@ bl@^4.0.3, bl@^4.1.0: inherits "^2.0.4" readable-stream "^3.4.0" -bluebird@^3.5.0, bluebird@^3.7.2: +bluebird@^3.5.0: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== @@ -3746,7 +4105,17 @@ body-parser@1.20.1: type-is "~1.6.18" unpipe "1.0.0" -boolbase@^1.0.0, boolbase@~1.0.0: +bonjour-service@^1.0.11: + version "1.1.0" + resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.1.0.tgz#424170268d68af26ff83a5c640b95def01803a13" + integrity sha512-LVRinRB3k1/K0XzZ2p58COnWvkQknIY6sf0zF2rpErvcJXpMBttEPQSxK+HEXSS9VmpZlDoDnQWv8ftJT20B0Q== + dependencies: + array-flatten "^2.1.2" + dns-equal "^1.0.0" + fast-deep-equal "^3.1.3" + multicast-dns "^7.2.5" + +boolbase@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== @@ -3785,7 +4154,7 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^2.2.2, braces@^2.3.1, braces@^2.3.2: +braces@^2.2.2, braces@^2.3.1: version "2.3.2" resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== @@ -3818,11 +4187,6 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browser-stdout@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" - integrity sha512-7Rfk377tpSM9TWBEeHs0FlDZGoAIei2V/4MdZJoFMBFAK6BqLpxAIUepGRHGdPFgGsLb02PXovC4qddyHvQqTg== - browser-sync-client@^2.27.11: version "2.27.11" resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.27.11.tgz#1450e662ba805386b842f2b89456b48bdab7b968" @@ -3846,7 +4210,7 @@ browser-sync-ui@^2.27.11: socket.io-client "^4.4.1" stream-throttle "^0.1.3" -browser-sync@^2.26.14, browser-sync@^2.26.7: +browser-sync@^2.26.14: version "2.27.11" resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.27.11.tgz#bb2c07fa586863612507cf0b7963e352a26a07af" integrity sha512-U5f9u97OYJH66T0MGWWzG9rOQTW6ZmDMj97vsmtqwNS03JAwdLVES8eel2lD3rvAqQCNAFqaJ74NMacBI57vJg== @@ -3936,7 +4300,17 @@ browserify-sign@^4.0.0: readable-stream "^3.6.0" safe-buffer "^5.2.0" -browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4: +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6: + version "4.21.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" + integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== + dependencies: + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" + +browserslist@^4.21.3, browserslist@^4.21.4: version "4.21.4" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== @@ -3946,6 +4320,13 @@ browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4: node-releases "^2.0.6" update-browserslist-db "^1.0.9" +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + bs-recipes@1.3.4: version "1.3.4" resolved "https://registry.yarnpkg.com/bs-recipes/-/bs-recipes-1.3.4.tgz#0d2d4d48a718c8c044769fdc4f89592dc8b69585" @@ -3956,16 +4337,18 @@ bs-snippet-injector@^2.0.1: resolved "https://registry.yarnpkg.com/bs-snippet-injector/-/bs-snippet-injector-2.0.1.tgz#61b5393f11f52559ed120693100343b6edb04dd5" integrity sha512-4u8IgB+L9L+S5hknOj3ddNSb42436gsnGm1AuM15B7CdbkpQTyVWgIM5/JUBiKiRwGOR86uo0Lu/OsX+SAlJmw== +bser@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + buffer-crc32@^0.2.1, buffer-crc32@^0.2.13: version "0.2.13" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== -buffer-equal@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.1.tgz#2f7651be5b1b3f057fcd6e7ee16cf34767077d90" - integrity sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg== - buffer-es6@^4.9.2: version "4.9.3" resolved "https://registry.yarnpkg.com/buffer-es6/-/buffer-es6-4.9.3.tgz#f26347b82df76fd37e18bcb5288c4970cfd5c404" @@ -3994,50 +4377,16 @@ builtin-modules@^3.1.0: resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== -builtins@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" - integrity sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ== - -byline@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" - integrity sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q== - -byte-size@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" - integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== bytes@3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== -cacache@^15.0.5, cacache@^15.2.0: - version "15.3.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" - integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== - dependencies: - "@npmcli/fs" "^1.0.0" - "@npmcli/move-file" "^1.0.1" - chownr "^2.0.0" - fs-minipass "^2.0.0" - glob "^7.1.4" - infer-owner "^1.0.4" - lru-cache "^6.0.0" - minipass "^3.1.1" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^1.0.3" - p-map "^4.0.0" - promise-inflight "^1.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.0.2" - unique-filename "^1.1.1" - cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -4053,15 +4402,6 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -cache-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cache-point/-/cache-point-2.0.0.tgz#91e03c38da9cfba9d95ac6a34d24cfe6eff8920f" - integrity sha512-4gkeHlFpSKgm3vm2gJN5sPqfmijYRFYCQ6tv5cLw0xVmT6r1z1vd4FNnpuOREco3cBs1G709sZ72LdgddKvL5w== - dependencies: - array-back "^4.0.1" - fs-then-native "^2.0.0" - mkdirp2 "^1.0.4" - cacheable-request@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" @@ -4075,16 +4415,6 @@ cacheable-request@^6.0.0: normalize-url "^4.1.0" responselike "^1.0.2" -caching-transform@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/caching-transform/-/caching-transform-3.0.2.tgz#601d46b91eca87687a281e71cef99791b0efca70" - integrity sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w== - dependencies: - hasha "^3.0.0" - make-dir "^2.0.0" - package-hash "^3.0.0" - write-file-atomic "^2.4.2" - call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" @@ -4093,37 +4423,6 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" -caller-callsite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" - integrity sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ== - dependencies: - callsites "^2.0.0" - -caller-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - integrity sha512-UJiE1otjXPF5/x+T3zTnSFiTOEmJoGTD9HmBoxnCUwho61a2eSNn/VwtwuIBDAo2SEOv1AJ7ARI5gCmohFLu/g== - dependencies: - callsites "^0.2.0" - -caller-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" - integrity sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A== - dependencies: - caller-callsite "^2.0.0" - -callsites@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" - integrity sha512-Zv4Dns9IbXXmPkgRRUjAaJQgfN4xX5p6+RQFhWUqscdvvK2xK/ZL8b3IXIJsj+4sD+f24NwnWy2BY8AJ82JB0A== - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ== - callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -4163,11 +4462,6 @@ camelcase-keys@^6.2.2: map-obj "^4.0.0" quick-lru "^4.0.1" -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - integrity sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg== - camelcase@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" @@ -4183,7 +4477,22 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001400, caniuse-lite@^1.0.30001426: +caniuse-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== + dependencies: + browserslist "^4.0.0" + caniuse-lite "^1.0.0" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.30001449: + version "1.0.30001451" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001451.tgz#2e197c698fc1373d63e1406d6607ea4617c613f1" + integrity sha512-XY7UbUpGRatZzoRft//5xOa69/1iGJRBlrieH6QYrkKLIFn3m7OVEJ81dSrKoy2BnKsdbX5cLrOispZNYo9v2w== + +caniuse-lite@^1.0.30001400: version "1.0.30001442" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz#40337f1cf3be7c637b061e2f78582dc1daec0614" integrity sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow== @@ -4193,30 +4502,15 @@ capitalize@^1.0.0: resolved "https://registry.yarnpkg.com/capitalize/-/capitalize-1.0.0.tgz#dc802c580aee101929020d2ca14b4ca8a0ae44be" integrity sha512-ZvPF27zRh4ZiRbWYfSktO+t7xi4RPfqL9w6gfPAWGT5pT9TjB0rlP8cKHmKWHYYCR8QHKDDebX3HVHcfw6K3GQ== -cardinal@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-2.1.1.tgz#7cc1055d822d212954d07b085dea251cc7bc5505" - integrity sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw== - dependencies: - ansicolors "~0.3.2" - redeyed "~2.1.0" - caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== -catharsis@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/catharsis/-/catharsis-0.9.0.tgz#40382a168be0e6da308c277d3a2b3eb40c7d2121" - integrity sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A== - dependencies: - lodash "^4.17.15" - -chalk@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" - integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== +chalk@4.1.2, chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1, 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" @@ -4241,7 +4535,7 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -4250,21 +4544,10 @@ chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0: - 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" +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== character-parser@^2.2.0: version "2.2.0" @@ -4273,38 +4556,11 @@ character-parser@^2.2.0: dependencies: is-regex "^1.0.3" -chardet@^0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" - integrity sha512-j/Toj7f1z98Hh2cYo2BVr85EpIRWqUi7rtRSGxh/cqUjqrnJe9l9UE7IUGd2vQ2p+kSHLkSzObQPZPLUC6TQwg== - chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -cheerio@0.22.0: - version "0.22.0" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz#a9baa860a3f9b595a6b81b1a86873121ed3a269e" - integrity sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA== - dependencies: - css-select "~1.2.0" - dom-serializer "~0.1.0" - entities "~1.1.1" - htmlparser2 "^3.9.1" - lodash.assignin "^4.0.9" - lodash.bind "^4.1.4" - lodash.defaults "^4.0.1" - lodash.filter "^4.4.0" - lodash.flatten "^4.2.0" - lodash.foreach "^4.3.0" - lodash.map "^4.4.0" - lodash.merge "^4.4.0" - lodash.pick "^4.2.1" - lodash.reduce "^4.4.0" - lodash.reject "^4.4.0" - lodash.some "^4.4.0" - chokidar-cli@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/chokidar-cli/-/chokidar-cli-2.1.0.tgz#2491df133bd62cd145227b1746fbd94f2733e1bc" @@ -4330,7 +4586,7 @@ chokidar@3.5.1: optionalDependencies: fsevents "~2.3.1" -"chokidar@>=3.0.0 <4.0.0", chokidar@^3.2.3, chokidar@^3.3.0, chokidar@^3.5.1: +"chokidar@>=3.0.0 <4.0.0", chokidar@^3.2.3, chokidar@^3.5.1, chokidar@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== @@ -4345,35 +4601,6 @@ chokidar@3.5.1: optionalDependencies: fsevents "~2.3.2" -chokidar@^2.0.0: - 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.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - -chownr@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" - integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== - chrome-trace-event@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" @@ -4384,6 +4611,11 @@ ci-info@^2.0.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== +ci-info@^3.2.0: + version "3.7.1" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.1.tgz#708a6cdae38915d597afdf3b145f2f8e1ff55f3f" + integrity sha512-4jYS4MOAaCIStSRwiuxc4B8MYhIe676yO1sYGzARnjXkWpmzZMMYxY6zu8WYWDhSuth5zhrQ1rhNSibyyvv4/w== + 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" @@ -4392,10 +4624,10 @@ cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: inherits "^2.0.1" safe-buffer "^5.0.1" -circular-json@^0.3.1: - version "0.3.3" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== +cjs-module-lexer@^1.0.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" + integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== class-utils@^0.3.5: version "0.3.6" @@ -4434,17 +4666,12 @@ clean-css@^4.2.1: source-map "~0.6.0" clean-css@^5.0.0, clean-css@^5.2.2: - version "5.3.1" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.1.tgz#d0610b0b90d125196a2894d35366f734e5d7aa32" - integrity sha512-lCr8OHhiWCTw4v8POJovCoh4T7I9U11yVsPjMWWnnMmp9ZowCxyad1Pathle/9HjaDp+fdQKjO9fQydE6RHTZg== + version "5.3.2" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.2.tgz#70ecc7d4d4114921f5d298349ff86a31a9975224" + integrity sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww== dependencies: source-map "~0.6.0" -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - clean-webpack-plugin@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/clean-webpack-plugin/-/clean-webpack-plugin-4.0.0.tgz#72947d4403d452f38ed61a9ff0ada8122aacd729" @@ -4457,51 +4684,35 @@ cli-boxes@^2.2.1: resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== -cli-cursor@^2.0.0, cli-cursor@^2.1.0: +cli-cursor@3.1.0, cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== + dependencies: + restore-cursor "^3.1.0" + +cli-cursor@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" integrity sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw== dependencies: restore-cursor "^2.0.0" -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" +cli-spinners@2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" + integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== cli-spinners@^2.5.0: version "2.7.0" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== -cli-truncate@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" - integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== - dependencies: - slice-ansi "^3.0.0" - string-width "^4.2.0" - -cli-width@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" - integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== - cli-width@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== -cli@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz#22817534f24bfa4950c34d532d48ecbc621b8c14" - integrity sha512-41U72MB56TfUMGndAKK8vJ78eooOD4Z5NOL4xEfjc0c23s+6EYKXlXsmACBVclLP1yOfWCgEganVzddVrSNoTg== - dependencies: - exit "0.1.2" - glob "^7.1.1" - clipboard@^2.0.8: version "2.0.11" resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.11.tgz#62180360b97dd668b6b3a84ec226975762a70be5" @@ -4511,15 +4722,6 @@ clipboard@^2.0.8: select "^1.1.2" tiny-emitter "^2.0.0" -cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w== - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - cliui@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" @@ -4538,7 +4740,16 @@ cliui@^5.0.0: strip-ansi "^5.2.0" wrap-ansi "^5.1.0" -cliui@^7.0.2, cliui@^7.0.4: +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + +cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== @@ -4556,11 +4767,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" @@ -4577,11 +4783,6 @@ clone-response@^1.0.2: dependencies: mimic-response "^1.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, clone@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" @@ -4597,22 +4798,6 @@ clone@~0.1.9: resolved "https://registry.yarnpkg.com/clone/-/clone-0.1.19.tgz#613fb68639b26a494ac53253e15b1a6bd88ada85" integrity sha512-IO78I0y6JcSpEPHzK4obKdsL7E7oLdRVDVOLwr2Hkbjsb+Eoz0dxW6tef0WizoKu0gLC4oZSZuEF4U2K6w1WQw== -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" - -cmd-shim@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" - integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw== - dependencies: - mkdirp-infer-owner "^2.0.0" - co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -4623,22 +4808,10 @@ code-point-at@^1.0.0: resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== -collect-all@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/collect-all/-/collect-all-1.0.4.tgz#50cd7119ac24b8e12a661f0f8c3aa0ea7222ddfc" - integrity sha512-RKZhRwJtJEP5FWul+gkSMEnaK6H3AGPTTWOiRimCcs+rc/OmQE3Yhy1Q7A7KsdkG3ZXVdZq68Y6ONSdvkeEcKA== - dependencies: - stream-connect "^1.0.2" - stream-via "^1.0.4" - -collection-map@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-map/-/collection-map-1.0.0.tgz#aea0f06f8d26c780c2b75494385544b2255af18c" - integrity sha512-5D2XXSpkOnleOI21TG7p3T0bGAsZ/XknZpKBmGYyluO8pw4zA3K8ZlrBIbC4FXg3m6z/RNFiUFfT2sQK01+UHA== - dependencies: - arr-map "^2.0.2" - for-own "^1.0.0" - make-iterator "^1.0.0" +collect-v8-coverage@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== collection-visit@^1.0.0: version "1.0.0" @@ -4679,10 +4852,10 @@ color-parse@^1.3.7: dependencies: color-name "^1.0.0" -color-support@^1.1.0, color-support@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" - integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== +colord@^2.9.1: + version "2.9.3" + resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" + integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== colorette@^2.0.10, colorette@^2.0.14: version "2.0.19" @@ -4694,15 +4867,7 @@ colors@1.4.0: resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== -columnify@^1.5.4: - version "1.6.0" - resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3" - integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q== - dependencies: - strip-ansi "^6.0.1" - wcwidth "^1.0.0" - -combined-stream@^1.0.6, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -4723,7 +4888,7 @@ command-line-application@^0.10.1: remove-markdown "^0.3.0" tslib "1.10.0" -command-line-args@^5.0.0, command-line-args@^5.1.1: +command-line-args@^5.1.1: version "5.2.1" resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e" integrity sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg== @@ -4733,27 +4898,6 @@ command-line-args@^5.0.0, command-line-args@^5.1.1: lodash.camelcase "^4.3.0" typical "^4.0.0" -command-line-tool@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/command-line-tool/-/command-line-tool-0.8.0.tgz#b00290ef1dfc11cc731dd1f43a92cfa5f21e715b" - integrity sha512-Xw18HVx/QzQV3Sc5k1vy3kgtOeGmsKIqwtFFoyjI4bbcpSgnw2CWVULvtakyw4s6fhyAdI6soQQhXc2OzJy62g== - dependencies: - ansi-escape-sequences "^4.0.0" - array-back "^2.0.0" - command-line-args "^5.0.0" - command-line-usage "^4.1.0" - typical "^2.6.1" - -command-line-usage@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-4.1.0.tgz#a6b3b2e2703b4dcf8bd46ae19e118a9a52972882" - integrity sha512-MxS8Ad995KpdAC0Jopo/ovGIroV/m0KHwzKfXxKag6FHOkGsH8/lv5yjgablcRxCJJC0oJeUMuO/gmaq+Wq46g== - dependencies: - ansi-escape-sequences "^4.0.0" - array-back "^2.0.0" - table-layout "^0.4.2" - typical "^2.6.1" - command-line-usage@^6.0.0: version "6.1.3" resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-6.1.3.tgz#428fa5acde6a838779dfa30e44686f4b6761d957" @@ -4764,11 +4908,6 @@ command-line-usage@^6.0.0: table-layout "^1.0.2" typical "^5.2.0" -commander@2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - integrity sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ== - commander@9.4.1: version "9.4.1" resolved "https://registry.yarnpkg.com/commander/-/commander-9.4.1.tgz#d1dd8f2ce6faf93147295c0df13c7c21141cfbdd" @@ -4799,11 +4938,6 @@ commander@^9.4.1: resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30" integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== -common-sequence@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/common-sequence/-/common-sequence-2.0.2.tgz#accc76bdc5876a1fcd92b73484d4285fff99d838" - integrity sha512-jAg09gkdkrDO9EWTdXfv80WWH3yeZl5oT69fGfedBNS9pXUKYInVJ1bJ+/ht2+Moeei48TmSbQDYMc8EOx9G0g== - commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -4817,7 +4951,7 @@ compare-func@^2.0.0: array-ify "^1.0.0" dot-prop "^5.1.0" -component-emitter@^1.2.0, component-emitter@^1.2.1: +component-emitter@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== @@ -4832,12 +4966,32 @@ compress-commons@^4.1.0: normalize-path "^3.0.0" readable-stream "^3.6.0" +compressible@~2.0.16: + version "2.0.18" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" + integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== + dependencies: + mime-db ">= 1.43.0 < 2" + +compression@^1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.16" + debug "2.6.9" + on-headers "~1.0.2" + safe-buffer "5.1.2" + vary "~1.1.2" + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -concat-stream@^1.4.4, concat-stream@^1.6.0: +concat-stream@^1.4.4: version "1.6.2" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== @@ -4889,13 +5043,6 @@ config-chain@^1.1.12, config-chain@^1.1.13: ini "^1.3.4" proto-list "~1.2.1" -config-master@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/config-master/-/config-master-3.1.0.tgz#667663590505a283bf26a484d68489d74c5485da" - integrity sha512-n7LBL1zBzYdTpF1mx5DNcZnZn05CWIdsdvtPL4MosvqbBUK3Rq6VWEtGUuF3Y0s9/CIhMejezqlSkP6TnCJ/9g== - dependencies: - walk-back "^2.0.1" - configstore@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" @@ -4908,11 +5055,21 @@ configstore@^5.0.1: write-file-atomic "^3.0.0" xdg-basedir "^4.0.0" +confusing-browser-globals@^1.0.9: + version "1.0.11" + resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz#ae40e9b57cdd3915408a2805ebd3a5585608dc81" + integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== + connect-history-api-fallback@^1: version "1.6.0" resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== +connect-history-api-fallback@^2.0.0: + version "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== + connect@3.6.6: version "3.6.6" resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.6.tgz#09eff6c55af7236e137135a72574858b6786f524" @@ -4938,18 +5095,6 @@ consola@^2.15.3: resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== -console-browserify@1.1.x: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - integrity sha512-duS7VP5pvfsNLDvL1O4VOEbw37AI3A4ZUQYemvDlnpGrNu9tprR7BYWpDYwC0Xia0Zxz5ZupdiIrUp0GH1aXfg== - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== - constantinople@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/constantinople/-/constantinople-4.0.1.tgz#0def113fa0e4dc8de83331a5cf79c8b325213151" @@ -4966,11 +5111,11 @@ content-disposition@0.5.4: safe-buffer "5.2.1" content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== -conventional-changelog-angular@^5.0.12: +conventional-changelog-angular@^5.0.11, conventional-changelog-angular@^5.0.12: version "5.0.13" resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== @@ -4992,30 +5137,25 @@ conventional-changelog-codemirror@^2.0.8: dependencies: q "^1.5.1" -conventional-changelog-config-spec@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.1.0.tgz#874a635287ef8b581fd8558532bf655d4fb59f2d" - integrity sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ== - -conventional-changelog-conventionalcommits@4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.5.0.tgz#a02e0b06d11d342fdc0f00c91d78265ed0bc0a62" - integrity sha512-buge9xDvjjOxJlyxUnar/+6i/aVEVGA7EEh4OafBCXPlLUQPGbRUBhBUveWRxzvR8TEjhKEP4BdepnpG2FSZXw== +conventional-changelog-conventionalcommits@^4.5.0: + version "4.6.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz#0765490f56424b46f6cb4db9135902d6e5a36dc2" + integrity sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g== dependencies: compare-func "^2.0.0" lodash "^4.17.15" q "^1.5.1" -conventional-changelog-conventionalcommits@^4.5.0: - version "4.6.3" - resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz#0765490f56424b46f6cb4db9135902d6e5a36dc2" - integrity sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g== +conventional-changelog-conventionalcommits@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-5.0.0.tgz#41bdce54eb65a848a4a3ffdca93e92fa22b64a86" + integrity sha512-lCDbA+ZqVFQGUj7h9QBKoIpLhl8iihkO0nCTyRNzuXtcd7ubODpYB04IFy31JloiJgG0Uovu8ot8oxRzn7Nwtw== dependencies: compare-func "^2.0.0" lodash "^4.17.15" q "^1.5.1" -conventional-changelog-core@^4.2.1, conventional-changelog-core@^4.2.2: +conventional-changelog-core@^4.2.0, conventional-changelog-core@^4.2.1: version "4.2.4" resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f" integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg== @@ -5091,10 +5231,10 @@ conventional-changelog-writer@^5.0.0: split "^1.0.0" through2 "^4.0.0" -conventional-changelog@3.1.24: - version "3.1.24" - resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.24.tgz#ebd180b0fd1b2e1f0095c4b04fd088698348a464" - integrity sha512-ed6k8PO00UVvhExYohroVPXcOJ/K1N0/drJHx/faTH37OIZthlecuLIRX/T6uOp682CAoVoFpu+sSEaeuH6Asg== +conventional-changelog@^3.1.25: + version "3.1.25" + resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.25.tgz#3e227a37d15684f5aa1fb52222a6e9e2536ccaff" + integrity sha512-ryhi3fd1mKf3fSjbLXOfK2D06YwKNic1nC9mWqybBHdObPd8KJ2vjaXZfYj1U23t+V8T8n0d7gwnc9XbIdFbyQ== dependencies: conventional-changelog-angular "^5.0.12" conventional-changelog-atom "^2.0.8" @@ -5116,7 +5256,7 @@ conventional-commits-filter@^2.0.7: lodash.ismatch "^4.4.0" modify-values "^1.0.0" -conventional-commits-parser@^3.2.0: +conventional-commits-parser@^3.1.0, conventional-commits-parser@^3.2.0, conventional-commits-parser@^3.2.2: version "3.2.4" resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972" integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q== @@ -5128,7 +5268,7 @@ conventional-commits-parser@^3.2.0: split2 "^3.0.0" through2 "^4.0.0" -conventional-recommended-bump@6.1.0, conventional-recommended-bump@^6.1.0: +conventional-recommended-bump@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== @@ -5142,11 +5282,16 @@ conventional-recommended-bump@6.1.0, conventional-recommended-bump@^6.1.0: meow "^8.0.0" q "^1.5.1" -convert-source-map@^1.1.0, convert-source-map@^1.5.0, convert-source-map@^1.5.1, convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== + cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" @@ -5162,23 +5307,29 @@ cookie@~0.4.1: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== -cookiejar@^2.1.0: - version "2.1.3" - resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" - integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== +copy-anything@^2.0.1: + version "2.0.6" + resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-2.0.6.tgz#092454ea9584a7b7ad5573062b2a87f5900fc480" + integrity sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw== + dependencies: + is-what "^3.14.1" 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-props@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/copy-props/-/copy-props-2.0.5.tgz#03cf9ae328d4ebb36f8f1d804448a6af9ee3f2d2" - integrity sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw== +copy-webpack-plugin@^10.2.4: + version "10.2.4" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz#6c854be3fdaae22025da34b9112ccf81c63308fe" + integrity sha512-xFVltahqlsRcyyJqQbDY6EYTtyQZF9rf+JPjwHObLdPFMEISqkFkr7mFoVOC6BfYS/dNThyoQKvziugm+OnwBg== dependencies: - each-props "^1.3.2" - is-plain-object "^5.0.0" + fast-glob "^3.2.7" + glob-parent "^6.0.1" + globby "^12.0.2" + normalize-path "^3.0.0" + schema-utils "^4.0.0" + serialize-javascript "^6.0.0" copy-webpack-plugin@^11.0.0: version "11.0.0" @@ -5212,21 +5363,6 @@ core-js-compat@^3.25.1: dependencies: browserslist "^4.21.4" -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - integrity sha512-ZiPp9pZlgxpWRu0M+YWbm6+aQ84XEfH1JRXvfOc/fILWI0VKhLC2LX13X1NYq4fULzLMq7Hfh43CSo2/aIaUPA== - -core-js@^2.4.0, core-js@^2.5.0: - version "2.6.12" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" - integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== - -core-js@^3.6.5: - version "3.27.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.27.1.tgz#23cc909b315a6bb4e418bf40a52758af2103ba46" - integrity sha512-GutwJLBChfGCpwwhbYoqfv03LAfmiz7e7D/BNxzeMxwQf10GRSzqiOjx7AmtEk+heiD/JWmBuyBPgFtx0Sg1ww== - core-util-is@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -5245,6 +5381,16 @@ cors@2.8.5, cors@~2.8.5: object-assign "^4" vary "^1" +corser@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/corser/-/corser-2.0.1.tgz#8eda252ecaab5840dcd975ceb90d9370c819ff87" + integrity sha512-utCYNzRSQIZNPIcGZdQc92UVJYAhtGAteCFg0yRaFm8f0P+CPtyGyHXJcGXnffjCybUCEx3FQ2G7U3/o9eIkVQ== + +cosmiconfig-typescript-loader@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.3.0.tgz#c4259ce474c9df0f32274ed162c0447c951ef073" + integrity sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q== + cosmiconfig@7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" @@ -5256,7 +5402,18 @@ cosmiconfig@7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cosmiconfig@^7.0.0: +cosmiconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" + integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.7.2" + +cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: version "7.1.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== @@ -5267,27 +5424,15 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -coveralls@^3.0.11: - version "3.1.1" - resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.1.1.tgz#f5d4431d8b5ae69c5079c8f8ca00d64ac77cf081" - integrity sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww== - dependencies: - js-yaml "^3.13.1" - lcov-parse "^1.0.0" - log-driver "^1.2.7" - minimist "^1.2.5" - request "^2.88.2" - -cp-file@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-6.2.0.tgz#40d5ea4a1def2a9acdd07ba5c0b0246ef73dc10d" - integrity sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA== +cosmiconfig@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.0.0.tgz#e9feae014eab580f858f8a0288f38997a7bebe97" + integrity sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ== dependencies: - graceful-fs "^4.1.2" - make-dir "^2.0.0" - nested-error-stacks "^2.0.0" - pify "^4.0.1" - safe-buffer "^5.0.1" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" crc-32@^1.2.0: version "1.2.2" @@ -5345,23 +5490,6 @@ cross-env@^5.2.0: dependencies: cross-spawn "^6.0.5" -cross-spawn@^4: - version "4.0.2" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41" - integrity sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA== - dependencies: - lru-cache "^4.0.1" - which "^1.2.9" - -cross-spawn@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A== - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" @@ -5373,7 +5501,7 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.0, cross-spawn@^7.0.3: +cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -5409,7 +5537,12 @@ crypto-random-string@^2.0.0: resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== -css-loader@^6.7.3: +css-declaration-sorter@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz#be5e1d71b7a992433fb1c542c7a1b835e45682ec" + integrity sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w== + +css-loader@^6.4.0, css-loader@^6.7.3: version "6.7.3" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.7.3.tgz#1e8799f3ccc5874fdd55461af51137fcc5befbcd" integrity sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ== @@ -5423,6 +5556,18 @@ css-loader@^6.7.3: postcss-value-parser "^4.2.0" semver "^7.3.8" +css-minimizer-webpack-plugin@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz#ab78f781ced9181992fe7b6e4f3422e76429878f" + integrity sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q== + dependencies: + cssnano "^5.0.6" + jest-worker "^27.0.2" + postcss "^8.3.5" + schema-utils "^4.0.0" + serialize-javascript "^6.0.0" + source-map "^0.6.1" + css-select@^4.1.3, css-select@^4.2.1: version "4.3.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" @@ -5445,15 +5590,13 @@ css-select@^5.1.0: domutils "^3.0.1" nth-check "^2.0.1" -css-select@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA== +css-tree@^1.1.2, css-tree@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" + integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" + mdn-data "2.0.14" + source-map "^0.6.1" css-tree@^2.2.1: version "2.3.1" @@ -5471,21 +5614,81 @@ css-tree@~2.2.0: mdn-data "2.0.28" source-map-js "^1.0.1" -css-what@2.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" - integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== - css-what@^6.0.1, css-what@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== +css@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/css/-/css-3.0.0.tgz#4447a4d58fdd03367c516ca9f64ae365cee4aa5d" + integrity sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ== + dependencies: + inherits "^2.0.4" + source-map "^0.6.1" + source-map-resolve "^0.6.0" + cssesc@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== +cssnano-preset-default@^5.2.13: + version "5.2.13" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.2.13.tgz#e7353b0c57975d1bdd97ac96e68e5c1b8c68e990" + integrity sha512-PX7sQ4Pb+UtOWuz8A1d+Rbi+WimBIxJTRyBdgGp1J75VU0r/HFQeLnMYgHiCAp6AR4rqrc7Y4R+1Rjk3KJz6DQ== + dependencies: + css-declaration-sorter "^6.3.1" + cssnano-utils "^3.1.0" + postcss-calc "^8.2.3" + postcss-colormin "^5.3.0" + postcss-convert-values "^5.1.3" + postcss-discard-comments "^5.1.2" + postcss-discard-duplicates "^5.1.0" + postcss-discard-empty "^5.1.1" + postcss-discard-overridden "^5.1.0" + postcss-merge-longhand "^5.1.7" + postcss-merge-rules "^5.1.3" + postcss-minify-font-values "^5.1.0" + postcss-minify-gradients "^5.1.1" + postcss-minify-params "^5.1.4" + postcss-minify-selectors "^5.2.1" + postcss-normalize-charset "^5.1.0" + postcss-normalize-display-values "^5.1.0" + postcss-normalize-positions "^5.1.1" + postcss-normalize-repeat-style "^5.1.1" + postcss-normalize-string "^5.1.0" + postcss-normalize-timing-functions "^5.1.0" + postcss-normalize-unicode "^5.1.1" + postcss-normalize-url "^5.1.0" + postcss-normalize-whitespace "^5.1.1" + postcss-ordered-values "^5.1.3" + postcss-reduce-initial "^5.1.1" + postcss-reduce-transforms "^5.1.0" + postcss-svgo "^5.1.0" + postcss-unique-selectors "^5.1.1" + +cssnano-utils@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" + integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== + +cssnano@^5.0.6: + version "5.1.14" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.1.14.tgz#07b0af6da73641276fe5a6d45757702ebae2eb05" + integrity sha512-Oou7ihiTocbKqi0J1bB+TRJIQX5RMR3JghA8hcWSw9mjBLQ5Y3RWqEDoYG3sRNlAbCIXpqMoZGbq5KDR3vdzgw== + dependencies: + cssnano-preset-default "^5.2.13" + lilconfig "^2.0.3" + yaml "^1.10.2" + +csso@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" + integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== + dependencies: + css-tree "^1.1.2" + csso@^5.0.5: version "5.0.5" resolved "https://registry.yarnpkg.com/csso/-/csso-5.0.5.tgz#f9b7fe6cc6ac0b7d90781bb16d5e9874303e2ca6" @@ -5493,7 +5696,7 @@ csso@^5.0.5: dependencies: css-tree "~2.2.0" -cssom@0.3.x, cssom@^0.3.4: +cssom@0.3.x, cssom@^0.3.4, cssom@~0.3.6: version "0.3.8" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== @@ -5510,10 +5713,12 @@ cssstyle@^1.1.1: dependencies: cssom "0.3.x" -csstype@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" - integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== +cssstyle@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" currently-unhandled@^0.4.1: version "0.4.1" @@ -5522,19 +5727,6 @@ currently-unhandled@^0.4.1: dependencies: array-find-index "^1.0.1" -custom-event-polyfill@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/custom-event-polyfill/-/custom-event-polyfill-1.0.7.tgz#9bc993ddda937c1a30ccd335614c6c58c4f87aee" - integrity sha512-TDDkd5DkaZxZFM8p+1I3yAlvM3rSr1wbrOliG4yJiwinMZN8z/iGL7BTlDkrJcYTmgUSb4ywVCc3ZaUtOtC76w== - -d@1, d@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" - integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== - dependencies: - es5-ext "^0.10.50" - type "^1.0.1" - dargs@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" @@ -5556,16 +5748,20 @@ data-urls@^1.0.1: whatwg-mimetype "^2.2.0" whatwg-url "^7.0.0" +data-urls@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143" + integrity sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ== + dependencies: + abab "^2.0.6" + whatwg-mimetype "^3.0.0" + whatwg-url "^11.0.0" + date-fns@^1.30.1: version "1.30.1" resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - integrity sha512-AsElvov3LoNB7tf5k37H2jYSB+ZZPMT5sG2QjJCcdlV5chIv6htBUBUui2IKRjgtKAKtCBN7Zbwa+MtwLjSeNw== - date-time@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/date-time/-/date-time-0.1.1.tgz#ed2f6d93d9790ce2fd66d5b5ff3edd5bbcbf3b07" @@ -5576,21 +5772,14 @@ dateformat@^3.0.0: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -debug@2.6.9, debug@^2.1.1, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.3, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -5604,17 +5793,19 @@ debug@4.3.2: dependencies: ms "2.1.2" -debug@^3.1.0, debug@^3.2.7: +debug@^3.2.6, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" -debuglog@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" - integrity sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw== +debug@~3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" decamelize-keys@^1.0.0, decamelize-keys@^1.1.0: version "1.1.1" @@ -5624,11 +5815,16 @@ decamelize-keys@^1.0.0, decamelize-keys@^1.1.0: decamelize "^1.1.0" map-obj "^1.0.0" -decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.2.0: +decamelize@^1.1.0, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== +decimal.js@^10.4.2: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + 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" @@ -5651,7 +5847,7 @@ deep-extend@^0.6.0, deep-extend@~0.6.0: resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== -deep-is@~0.1.3: +deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== @@ -5671,24 +5867,12 @@ deepmerge@^4.0.0, deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== -default-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f" - integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== - dependencies: - kind-of "^5.0.2" - -default-require-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7" - integrity sha512-B0n2zDIXpzLzKeoEozorDSa1cHc1t0NjmxP0zuAxbizNU2MBqYJJKYXrrFdKuQliojXynrxgd7l4ahfg/+aA5g== +default-gateway@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-6.0.3.tgz#819494c888053bdb743edbf343d6cdf7f2943a71" + integrity sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg== dependencies: - strip-bom "^3.0.0" - -default-resolution@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/default-resolution/-/default-resolution-2.0.0.tgz#bcb82baa72ad79b426a76732f1a81ad6df26d684" - integrity sha512-2xaP6GiwVwOEbXCGoJ4ufgC76m8cj805jrghScewJC2ZDsb9U0b4BIrba+xt/Uytyd0HvQ6+WymSRTfnYj59GQ== + execa "^5.0.0" defaults@^1.0.3: version "1.0.4" @@ -5781,17 +5965,12 @@ delegate@^3.1.2: resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== - depd@2.0.0, depd@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -depd@^1.1.2, depd@~1.1.2: +depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== @@ -5824,55 +6003,43 @@ destroy@~1.0.4: resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" integrity sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg== -detect-file@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" - integrity sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q== - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A== - dependencies: - repeating "^2.0.0" - -detect-indent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" - integrity sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g== - -detect-indent@^6.0.0: +detect-indent@6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== -detect-newline@^3.1.0: +detect-newline@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== +detect-node@^2.0.4: + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" + integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== + +detect-port@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.5.1.tgz#451ca9b6eaf20451acb0799b8ab40dff7718727b" + integrity sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ== + dependencies: + address "^1.0.1" + debug "4" + dev-ip@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/dev-ip/-/dev-ip-1.0.1.tgz#a76a3ed1855be7a012bb8ac16cb80f3c00dc28f0" integrity sha512-LmVkry/oDShEgSZPNgqCIp2/TlqtExeGmymru3uCELnfyjY11IzpAproLYs+1X88fXO6DBoYP3ul2Xo2yz2j6A== -dezalgo@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" - integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== - dependencies: - asap "^2.0.0" - wrappy "1" - -diff-frag@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/diff-frag/-/diff-frag-1.1.1.tgz#3f4f00e16dc55e283cc2ed9fe1487d1abed76bde" - integrity sha512-y0YLhUGviNXaypPimkzmOCaZf8ruocRb+dpOL/lfoicxBua2gkExddlbWxIP56Z5BpSg4gL5sAWhBN2iQm4HVQ== +didyoumean@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" + integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== -diff@3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" - integrity sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww== +diff-sequences@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2" + integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== diff@^4.0.1: version "4.0.2" @@ -5912,30 +6079,17 @@ dlv@^1.1.3: resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== -dmd@^5.0.1: - version "5.0.2" - resolved "https://registry.yarnpkg.com/dmd/-/dmd-5.0.2.tgz#a911c8dbab10ec64fbc134eeb69b933618ebeb07" - integrity sha512-npXsE2+/onRPk/LCrUmx7PcUSqcSVnbrDDMi2nBSawNZ8QXlHE/8xaEZ6pNqPD1lQZv8LGr1xEIpyxP336xyfw== - dependencies: - array-back "^4.0.1" - cache-point "^2.0.0" - common-sequence "^2.0.0" - file-set "^4.0.1" - handlebars "^4.7.6" - marked "^1.1.0" - object-get "^2.1.1" - reduce-flatten "^3.0.0" - reduce-unique "^2.0.1" - reduce-without "^1.0.1" - test-value "^3.0.0" - walk-back "^4.0.0" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== +dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + integrity sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg== + +dns-packet@^5.2.2: + version "5.4.0" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.4.0.tgz#1f88477cf9f27e78a213fb6d118ae38e759a879b" + integrity sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g== dependencies: - esutils "^2.0.2" + "@leichtgewicht/ip-codec" "^2.0.1" doctrine@^3.0.0: version "3.0.0" @@ -5982,15 +6136,7 @@ dom-serializer@^2.0.0: domhandler "^5.0.2" entities "^4.2.0" -dom-serializer@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" - integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== - dependencies: - domelementtype "^1.3.0" - entities "^1.1.1" - -domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: +domelementtype@1, domelementtype@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== @@ -6007,12 +6153,12 @@ domexception@^1.0.1: dependencies: webidl-conversions "^4.0.2" -domhandler@2.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz#2de59a0822d5027fabff6f032c2b25a2a8abe738" - integrity sha512-q9bUwjfp7Eif8jWxxxPSykdRZAb6GkguBGSgvvCrhI9wB71W2K/Kvv4E61CF/mcCfnVJDeDWx/Vb/uAqbDj6UQ== +domexception@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz#4ad1be56ccadc86fc76d033353999a8037d03673" + integrity sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw== dependencies: - domelementtype "1" + webidl-conversions "^7.0.0" domhandler@^2.3.0: version "2.4.2" @@ -6040,14 +6186,6 @@ domready@1.0.8: resolved "https://registry.yarnpkg.com/domready/-/domready-1.0.8.tgz#91f252e597b65af77e745ae24dd0185d5e26d58c" integrity sha512-uIzsOJUNk+AdGE9a6VDeessoMCzF8RrZvJCX/W8QtyfgdR6Uofn/MvRonih3OtCO79b2VDzDOymuiABrQ4z3XA== -domutils@1.5, domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw== - dependencies: - dom-serializer "0" - domelementtype "1" - domutils@^1.5.1: version "1.7.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" @@ -6074,14 +6212,6 @@ domutils@^3.0.1: domelementtype "^2.3.0" domhandler "^5.0.1" -dos2unix-cli@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/dos2unix-cli/-/dos2unix-cli-1.0.1.tgz#5b368cc601eb2518329ea3b7c830f20bfe033f32" - integrity sha512-lYfvT0gDtcy41yc510t3s01JsbKdbLj4AEqKk2LTMMw8XLA8VWXgETfX2AvBL0AThn25RnSSTDuBWf1jTzewmA== - dependencies: - glob-array "^1.0.0" - yargs "^7.0.2" - dot-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" @@ -6097,25 +6227,15 @@ dot-prop@^5.1.0, dot-prop@^5.2.0: dependencies: is-obj "^2.0.0" -dot-prop@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" - integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== - dependencies: - is-obj "^2.0.0" - dotenv@^8.0.0: version "8.6.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== -dotgitignore@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/dotgitignore/-/dotgitignore-2.1.0.tgz#a4b15a4e4ef3cf383598aaf1dfa4a04bcc089b7b" - integrity sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA== - dependencies: - find-up "^3.0.0" - minimatch "^3.0.4" +dotenv@~10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== duplexer3@^0.1.4: version "0.1.5" @@ -6127,24 +6247,6 @@ duplexer@^0.1.1, duplexer@~0.1.1: resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== -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" - -each-props@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/each-props/-/each-props-1.3.2.tgz#ea45a414d16dd5cfa419b1a81720d5ca06892333" - integrity sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA== - dependencies: - is-plain-object "^2.0.1" - object.defaults "^1.1.0" - easy-extender@^2.3.4: version "2.3.4" resolved "https://registry.yarnpkg.com/easy-extender/-/easy-extender-2.3.4.tgz#298789b64f9aaba62169c77a2b3b64b4c9589b8f" @@ -6187,7 +6289,7 @@ ejs@^2.7.4: resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba" integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA== -ejs@^3.1.6: +ejs@^3.1.7: version "3.1.8" resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b" integrity sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ== @@ -6199,10 +6301,10 @@ electron-to-chromium@^1.4.251: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592" integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== -element-closest@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/element-closest/-/element-closest-3.0.2.tgz#3814a69a84f30e48e63eaf57341f4dbf4227d2aa" - integrity sha512-JxKQiJKX0Zr5Q2/bCaTx8P+UbfyMET1OQd61qu5xQFeWr1km3fGaxelSJtnfT27XQ5Uoztn2yIyeamAc/VX13g== +electron-to-chromium@^1.4.284: + version "1.4.289" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.289.tgz#02b59b1096486fc0bd4871a0484d8317802c6658" + integrity sha512-relLdMfPBxqGCxy7Gyfm1HcbRPcFUJdlgnCPVgQ23sr1TvUrRJz0/QPoGP0+x41wOVSTN/Wi3w6YDgHiHJGOzg== elliptic@^6.5.3: version "6.5.4" @@ -6217,6 +6319,11 @@ elliptic@^6.5.3: minimalistic-assert "^1.0.1" minimalistic-crypto-utils "^1.0.1" +emittery@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" + integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== + emoji-regex@^7.0.1: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" @@ -6237,14 +6344,7 @@ encodeurl@~1.0.1, 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.11, 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, end-of-stream@^1.4.1: +end-of-stream@^1.1.0, end-of-stream@^1.4.1: 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== @@ -6272,9 +6372,9 @@ engine.io-client@~6.2.3: xmlhttprequest-ssl "~2.0.0" engine.io-parser@~5.0.3: - version "5.0.5" - resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-5.0.5.tgz#c6fa52e57d8d2dc68b24754348f779aa6e44f886" - integrity sha512-mjEyaa4zhuuRhaSLOdjEb57X0XPP9JEsnXI4E+ivhwT0GgzUogARx4MqoY1jQyB+4Bkz3BUOmzL7t9RMKmlG3g== + version "5.0.6" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-5.0.6.tgz#7811244af173e157295dec9b2718dfe42a64ef45" + integrity sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw== engine.io@~6.2.1: version "6.2.1" @@ -6292,7 +6392,7 @@ engine.io@~6.2.1: engine.io-parser "~5.0.3" ws "~8.2.3" -enhanced-resolve@^5.0.0, enhanced-resolve@^5.10.0: +enhanced-resolve@^5.0.0, enhanced-resolve@^5.10.0, enhanced-resolve@^5.7.0: version "5.12.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz#300e1c90228f5b570c4d35babf263f6da7155634" integrity sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ== @@ -6300,19 +6400,22 @@ enhanced-resolve@^5.0.0, enhanced-resolve@^5.10.0: graceful-fs "^4.2.4" tapable "^2.2.0" -enquirer@^2.3.4: +enhanced-resolve@^5.14.1: + version "5.14.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.14.1.tgz#de684b6803724477a4af5d74ccae5de52c25f6b3" + integrity sha512-Vklwq2vDKtl0y/vtwjSesgJ5MYS7Etuk5txS8VdKL4AOS1aUlD96zqIfsOSLQsdv3xgMRbtkWM8eG9XDfKUPow== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + +enquirer@^2.3.4, enquirer@~2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== dependencies: ansi-colors "^4.1.1" -entities@1.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.0.0.tgz#b2987aa3821347fcde642b24fdfc9e4fb712bf26" - integrity sha512-LbLqfXgJMmy81t+7c14mnulFHJ170cM6E+0vMXR9k/ZiZwgX8i5pNgjTCX3SO4VeUsFLV+8InixoretwU+MjBQ== - -entities@^1.1.1, entities@~1.1.1: +entities@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== @@ -6351,21 +6454,11 @@ env-ci@^5.0.1: fromentries "^1.3.2" java-properties "^1.0.0" -env-paths@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" - integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== - -envinfo@^7.7.3, envinfo@^7.7.4: +envinfo@^7.7.3: version "7.8.1" resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== -err-code@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" - integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== - errno@^0.1.1, errno@^0.1.2, errno@^0.1.3, errno@~0.1.1: version "0.1.8" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" @@ -6373,7 +6466,7 @@ errno@^0.1.1, errno@^0.1.2, errno@^0.1.3, errno@~0.1.1: dependencies: prr "~1.0.1" -error-ex@^1.2.0, error-ex@^1.3.1: +error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== @@ -6418,16 +6511,16 @@ es-abstract@^1.19.0, es-abstract@^1.20.4: unbox-primitive "^1.0.2" which-typed-array "^1.1.9" -es-array-method-boxes-properly@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" - integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== - es-module-lexer@^0.9.0: version "0.9.3" resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== +es-module-lexer@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.2.1.tgz#ba303831f63e6a394983fde2f97ad77b22324527" + integrity sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg== + es-set-tostringtag@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" @@ -6437,6 +6530,13 @@ es-set-tostringtag@^2.0.0: has "^1.0.3" has-tostringtag "^1.0.0" +es-shim-unscopables@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" + integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== + dependencies: + has "^1.0.3" + es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" @@ -6446,47 +6546,6 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" -es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50: - version "0.10.62" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5" - integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA== - dependencies: - es6-iterator "^2.0.3" - es6-symbol "^3.1.3" - next-tick "^1.1.0" - -es6-error@^4.0.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" - integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg== - -es6-iterator@^2.0.1, es6-iterator@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - -es6-symbol@^3.1.1, es6-symbol@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" - integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== - dependencies: - d "^1.0.1" - ext "^1.1.2" - -es6-weak-map@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" - integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== - dependencies: - d "1" - es5-ext "^0.10.46" - es6-iterator "^2.0.3" - es6-symbol "^3.1.1" - escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -6512,6 +6571,11 @@ escape-string-regexp@^2.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escodegen@^1.11.0: version "1.14.3" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" @@ -6524,27 +6588,22 @@ escodegen@^1.11.0: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-2.9.0.tgz#5ecd65174d486c22dff389fe036febf502d468a3" - integrity sha512-ag8YEyBXsm3nmOv1Hz991VtNNDMRa+MNy8cY47Pl4bw6iuzqKbJajXdqUpiw13STdLLrznxgm1hj9NhxeOYq0A== - dependencies: - get-stdin "^5.0.1" - -eslint-config-prettier@^6.0.0: - version "6.15.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz#7f93f6cb7d45a92f1537a70ecc06366e1ac6fed9" - integrity sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw== +escodegen@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== dependencies: - get-stdin "^6.0.0" + esprima "^4.0.1" + estraverse "^5.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" -eslint-plugin-prettier@2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.6.0.tgz#33e4e228bdb06142d03c560ce04ec23f6c767dd7" - integrity sha512-floiaI4F7hRkTrFe8V2ItOK97QYrX75DjmdzmVITZoAP6Cn06oEDPQRsO6MlHEP/u2SxI3xQ52Kpjw6j5WGfeQ== - dependencies: - fast-diff "^1.1.1" - jest-docblock "^21.0.0" +eslint-config-prettier@8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz#4ef1eaf97afe5176e6a75ddfb57c335121abc5a6" + integrity sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw== eslint-plugin-prettier@^3.1.0: version "3.4.1" @@ -6553,7 +6612,7 @@ eslint-plugin-prettier@^3.1.0: dependencies: prettier-linter-helpers "^1.0.0" -eslint-scope@5.1.1, eslint-scope@^5.0.0: +eslint-scope@5.1.1, eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -6561,147 +6620,94 @@ eslint-scope@5.1.1, eslint-scope@^5.0.0: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-scope@^3.7.1: - version "3.7.3" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.3.tgz#bb507200d3d17f60247636160b4826284b108535" - integrity sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA== +eslint-scope@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" + integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" + esrecurse "^4.3.0" + estraverse "^5.2.0" -eslint-utils@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" - integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== dependencies: - eslint-visitor-keys "^1.1.0" + eslint-visitor-keys "^2.0.0" -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== -eslint@4.18.2: - version "4.18.2" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.18.2.tgz#0f81267ad1012e7d2051e186a9004cc2267b8d45" - integrity sha512-qy4i3wODqKMYfz9LUI8N2qYDkHkoieTbiHpMrYUI/WbjhXJQr7lI4VngixTgaG+yHX+NBCv7nW4hA0ShbvaNKw== - dependencies: - ajv "^5.3.0" - babel-code-frame "^6.22.0" - chalk "^2.1.0" - concat-stream "^1.6.0" - cross-spawn "^5.1.0" - debug "^3.1.0" - doctrine "^2.1.0" - eslint-scope "^3.7.1" - eslint-visitor-keys "^1.0.0" - espree "^3.5.2" - esquery "^1.0.0" - esutils "^2.0.2" - file-entry-cache "^2.0.0" - functional-red-black-tree "^1.0.1" - glob "^7.1.2" - globals "^11.0.1" - ignore "^3.3.3" - imurmurhash "^0.1.4" - inquirer "^3.0.6" - is-resolvable "^1.0.0" - js-yaml "^3.9.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.4" - minimatch "^3.0.2" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.2" - pluralize "^7.0.0" - progress "^2.0.0" - require-uncached "^1.0.3" - semver "^5.3.0" - strip-ansi "^4.0.0" - strip-json-comments "~2.0.1" - table "4.0.2" - text-table "~0.2.0" +eslint-visitor-keys@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" + integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== -eslint@^6.1.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz#62262d6729739f9275723824302fb227c8c93ffb" - integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== +eslint@~8.15.0: + version "8.15.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.15.0.tgz#fea1d55a7062da48d82600d2e0974c55612a11e9" + integrity sha512-GG5USZ1jhCu8HJkzGgeK8/+RGnHaNYZGrGDzUtigK3BsGESW/rs2az23XqE0WVwDxy1VRvvjSSGu5nB0Bu+6SA== dependencies: - "@babel/code-frame" "^7.0.0" + "@eslint/eslintrc" "^1.2.3" + "@humanwhocodes/config-array" "^0.9.2" ajv "^6.10.0" - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^4.0.1" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.3.2" doctrine "^3.0.0" - eslint-scope "^5.0.0" - eslint-utils "^1.4.3" - eslint-visitor-keys "^1.1.0" - espree "^6.1.2" - esquery "^1.0.1" + escape-string-regexp "^4.0.0" + eslint-scope "^7.1.1" + eslint-utils "^3.0.0" + eslint-visitor-keys "^3.3.0" + espree "^9.3.2" + esquery "^1.4.0" esutils "^2.0.2" - file-entry-cache "^5.0.1" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" - globals "^12.1.0" - ignore "^4.0.6" + glob-parent "^6.0.1" + globals "^13.6.0" + ignore "^5.2.0" import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^7.0.0" is-glob "^4.0.0" - js-yaml "^3.13.1" + js-yaml "^4.1.0" json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.14" - minimatch "^3.0.4" - mkdirp "^0.5.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" natural-compare "^1.4.0" - optionator "^0.8.3" - progress "^2.0.0" - regexpp "^2.0.1" - semver "^6.1.2" - strip-ansi "^5.2.0" - strip-json-comments "^3.0.1" - table "^5.2.3" + optionator "^0.9.1" + regexpp "^3.2.0" + strip-ansi "^6.0.1" + strip-json-comments "^3.1.0" text-table "^0.2.0" v8-compile-cache "^2.0.3" -esm@^3.2.25: - version "3.2.25" - resolved "https://registry.yarnpkg.com/esm/-/esm-3.2.25.tgz#342c18c29d56157688ba5ce31f8431fbb795cc10" - integrity sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA== - -espree@^3.5.2: - version "3.5.4" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.4.tgz#b0f447187c8a8bed944b815a660bddf5deb5d1a7" - integrity sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A== - dependencies: - acorn "^5.5.0" - acorn-jsx "^3.0.0" - -espree@^6.1.2: - version "6.2.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" - integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== +espree@^9.3.2, espree@^9.4.0: + version "9.4.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.4.1.tgz#51d6092615567a2c2cff7833445e37c28c0065bd" + integrity sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg== dependencies: - acorn "^7.1.1" - acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.1.0" + acorn "^8.8.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^3.3.0" -esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: +esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.0.0, esquery@^1.0.1: +esquery@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== 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== @@ -6751,16 +6757,11 @@ event-stream@3.3.4: stream-combiner "~0.0.4" through "~2.3.1" -eventemitter3@^4.0.0, eventemitter3@^4.0.4: +eventemitter3@^4.0.0: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== -events-to-array@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/events-to-array/-/events-to-array-1.1.2.tgz#2d41f563e1fe400ed4962fe1a4d5c6a7539df7f6" - integrity sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA== - events@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" @@ -6802,21 +6803,6 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -execa@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" - integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -6832,7 +6818,7 @@ execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" -exit@0.1.2, exit@0.1.x: +exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== @@ -6850,14 +6836,18 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expand-tilde@^2.0.0, expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw== +expect@^29.0.0, expect@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-29.5.0.tgz#68c0509156cb2a0adb8865d413b137eeaae682f7" + integrity sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg== dependencies: - homedir-polyfill "^1.0.1" + "@jest/expect-utils" "^29.5.0" + jest-get-type "^29.4.3" + jest-matcher-utils "^29.5.0" + jest-message-util "^29.5.0" + jest-util "^29.5.0" -express@^4.17.1: +express@^4.17.3: version "4.18.2" resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== @@ -6894,13 +6884,6 @@ express@^4.17.1: utils-merge "1.0.1" vary "~1.1.2" -ext@^1.1.2: - version "1.7.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" - integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== - dependencies: - type "^2.7.2" - extend-shallow@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" @@ -6916,20 +6899,11 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0, extend@~3.0.2: +extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -external-editor@^2.0.4: - version "2.2.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" - integrity sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A== - dependencies: - chardet "^0.4.0" - iconv-lite "^0.4.17" - tmp "^0.0.33" - external-editor@^3.0.3: version "3.1.0" resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" @@ -6963,32 +6937,28 @@ extsprintf@^1.2.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== -fancy-log@^1.3.2: - version "1.3.3" - resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" - integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== - dependencies: - ansi-gray "^0.1.1" - color-support "^1.1.3" - parse-node-version "^1.0.0" - time-stamp "^1.0.0" - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - integrity sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw== - fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-diff@^1.1.1, fast-diff@^1.1.2: +fast-diff@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== -fast-glob@^3.1.1, fast-glob@^3.2.11, fast-glob@^3.2.5, fast-glob@^3.2.9: +fast-glob@3.2.7: + version "3.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" + integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + +fast-glob@^3.1.1, fast-glob@^3.2.11, fast-glob@^3.2.12, fast-glob@^3.2.5, fast-glob@^3.2.7, fast-glob@^3.2.9: version "3.2.12" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== @@ -7004,17 +6974,12 @@ fast-json-parse@^1.0.3: resolved "https://registry.yarnpkg.com/fast-json-parse/-/fast-json-parse-1.0.3.tgz#43e5c61ee4efa9265633046b770fb682a7577c4d" integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw== -fast-json-stable-stringify@^2.0.0: +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz#e6a754cc8f15e58987aa9cbd27af66fd6f4e5af9" - integrity sha512-Ia0sQNrMPXXkqVFt6w6M1n1oKo3NfKs+mvaV811Jwir7vAk9a6PVV9VPYf6X3BU97QiLEmuW3uXH9u87zDFfdw== - -fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== @@ -7031,72 +6996,48 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" -faye-websocket@0.11.x: +faye-websocket@0.11.x, faye-websocket@^0.11.3: version "0.11.4" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da" integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== dependencies: websocket-driver ">=0.5.1" -fbjs@^0.8.16, fbjs@^0.8.4: - version "0.8.18" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.18.tgz#9835e0addb9aca2eff53295cd79ca1cfc7c9662a" - integrity sha512-EQaWFK+fEPSoibjNy8IxUtaFOMXcWsY0JaVrQoZR9zC8N2Ygf9iDITPWjUTVIax95b6I742JFLqASHfsag/vKA== - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.30" - -fg-loadjs@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fg-loadjs/-/fg-loadjs-1.1.0.tgz#a976f60eff5deb5a2479c863872ee2920bbedfdc" - integrity sha512-vAQkq2Oj++gIyF2oyjZYnkoqtiSO9cpZmVVJo5cX97wLH8EBkUspPG2kHyE8YlkEYLm/22Ve/espIZV5d1sr9g== - -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA== +fb-watchman@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: - escape-string-regexp "^1.0.5" + bser "2.1.1" -figures@^3.0.0, figures@^3.1.0: +figures@3.2.0, figures@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" -file-entry-cache@^2.0.0: +figures@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" - integrity sha512-uXP/zGzxxFvFfcZGgBIwotm+Tdc55ddPAzF7iHshP4YGaXMww7rSF9peD9D1sui5ebONg5UobsZv+FfgEpGv/w== + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA== dependencies: - flat-cache "^1.2.1" - object-assign "^4.0.1" + escape-string-regexp "^1.0.5" -file-entry-cache@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" - integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== +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" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== dependencies: - flat-cache "^2.0.1" + flat-cache "^3.0.4" -file-set@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/file-set/-/file-set-4.0.2.tgz#8d67c92a864202c2085ac9f03f1c9909c7e27030" - integrity sha512-fuxEgzk4L8waGXaAkd8cMr73Pm0FxOVkn8hztzUW7BAHhOGH90viQNXbiOsnecCWmfInqU6YmAMwxRMdKETceQ== +file-loader@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" + integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== dependencies: - array-back "^5.0.0" - glob "^7.1.6" - -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== + loader-utils "^2.0.0" + schema-utils "^3.0.0" filelist@^1.0.1: version "1.0.4" @@ -7105,14 +7046,6 @@ filelist@^1.0.1: dependencies: minimatch "^5.0.1" -fill-keys@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/fill-keys/-/fill-keys-1.0.2.tgz#9a8fa36f4e8ad634e3bf6b4f3c8882551452eb20" - integrity sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA== - dependencies: - is-object "~1.0.1" - merge-descriptors "~1.0.0" - fill-range@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" @@ -7174,15 +7107,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@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" @@ -7199,14 +7123,6 @@ find-replace@^3.0.0: dependencies: array-back "^3.0.1" -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - find-up@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" @@ -7237,99 +7153,30 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -findit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/findit/-/findit-2.0.0.tgz#6509f0126af4c178551cfa99394e032e13a4d56e" - integrity sha512-ENZS237/Hr8bjczn5eKuBohLgaD0JyUd0arxretR1f9RO46vZHA1b2y0VorgGV3WaOT3c+78P8h7v4JGJ1i/rg== - -findup-sync@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" - integrity sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g== - dependencies: - detect-file "^1.0.0" - is-glob "^3.1.0" - micromatch "^3.0.4" - resolve-dir "^1.0.1" - -findup-sync@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" - integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== - dependencies: - detect-file "^1.0.0" - is-glob "^4.0.0" - micromatch "^3.0.4" - resolve-dir "^1.0.1" - -fined@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fined/-/fined-1.2.0.tgz#d00beccf1aa2b475d16d423b0238b713a2c4a37b" - integrity sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng== - dependencies: - expand-tilde "^2.0.2" - is-plain-object "^2.0.3" - object.defaults "^1.1.0" - object.pick "^1.2.0" - parse-filepath "^1.0.1" - -flagged-respawn@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41" - integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== - -flat-cache@^1.2.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.4.tgz#2c2ef77525cc2929007dfffa1dd314aa9c9dee6f" - integrity sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg== +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== dependencies: - circular-json "^0.3.1" - graceful-fs "^4.1.2" - rimraf "~2.6.2" - write "^0.2.1" + flatted "^3.1.0" + rimraf "^3.0.2" -flat-cache@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" - integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== - dependencies: - flatted "^2.0.0" - rimraf "2.6.3" - write "1.0.3" +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== -flatted@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" - integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== +flatted@^3.1.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" + integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== flatten@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== -flow-parser@^0.196.3: - version "0.196.3" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.196.3.tgz#dd923f29a6c194770a4f999f8026ef1da79d428b" - integrity sha512-R8wj12eHW6og+IBWeRS6aihkdac1Prh4zw1bfxtt/aeu8r5OFmQEZjnmINcjO/5Q+OKvI4Eg367ygz2SHvtH+w== - -flow-remove-types@^2.112.0: - version "2.196.3" - resolved "https://registry.yarnpkg.com/flow-remove-types/-/flow-remove-types-2.196.3.tgz#665ef6e80bfb656c2e170a848ccb252bbcd248b0" - integrity sha512-tunXyUd/jttmYafqPNV0S6+wAIhGbqNhDQHX4UFoJ7Wbwqq6utFQUcAgbn5aHz9RxA5pPI2L3f4R2I6OE8wy2A== - dependencies: - flow-parser "^0.196.3" - pirates "^3.0.2" - vlq "^0.2.1" - -flush-write-stream@^1.0.2: - 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.14.0: +follow-redirects@^1.0.0, follow-redirects@^1.14.0, follow-redirects@^1.15.0: version "1.15.2" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== @@ -7341,43 +7188,46 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -for-in@^1.0.1, for-in@^1.0.2: +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== -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg== - dependencies: - for-in "^1.0.1" - foreach@~2.0.1: version "2.0.6" resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.6.tgz#87bcc8a1a0e74000ff2bf9802110708cfb02eb6e" integrity sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg== -foreground-child@^1.3.3, foreground-child@^1.5.6: - version "1.5.6" - resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-1.5.6.tgz#4fd71ad2dfde96789b980a5c0a295937cb2f5ce9" - integrity sha512-3TOY+4TKV0Ml83PXJQY+JFQaHNV38lzQDIzzXYg1kWdBLenGgoZhAs0CKgzI31vi2pWEpQMq/Yi4bpKwCPkw7g== - dependencies: - cross-spawn "^4" - signal-exit "^3.0.0" - forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== -form-data@^2.3.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4" - integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA== +fork-ts-checker-webpack-plugin@7.2.13: + version "7.2.13" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-7.2.13.tgz#51ffd6a2f96f03ab64b92f8aedf305dbf3dee0f1" + integrity sha512-fR3WRkOb4bQdWB/y7ssDUlVdrclvwtyCUIHCfivAoYxq9dF7XfrDKbMdZIfwJ7hxIAqkYSGeU7lLJE6xrxIBdg== + dependencies: + "@babel/code-frame" "^7.16.7" + chalk "^4.1.2" + chokidar "^3.5.3" + cosmiconfig "^7.0.1" + deepmerge "^4.2.2" + fs-extra "^10.0.0" + memfs "^3.4.1" + minimatch "^3.0.4" + node-abort-controller "^3.0.1" + schema-utils "^3.1.1" + semver "^7.3.5" + tapable "^2.2.1" + +form-data@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== dependencies: asynckit "^0.4.0" - combined-stream "^1.0.6" + combined-stream "^1.0.8" mime-types "^2.1.12" form-data@~2.3.2: @@ -7389,11 +7239,6 @@ form-data@~2.3.2: combined-stream "^1.0.6" mime-types "^2.1.12" -formidable@^1.2.0: - version "1.2.6" - resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.6.tgz#d2a51d60162bbc9b4a055d8457a7c75315d1a168" - integrity sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ== - forwarded@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" @@ -7431,27 +7276,15 @@ fromentries@^1.2.0, fromentries@^1.3.2: resolved "https://registry.yarnpkg.com/fromentries/-/fromentries-1.3.2.tgz#e4bca6808816bf8f93b52750f1127f5a6fd86e3a" integrity sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg== -fs-access@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" - integrity sha512-05cXDIwNbFaoFWaz5gNHlUTbH5whiss/hr/ibzPd4MH3cR4w0ZKeIPiVdbyJurg3O5r/Bjpvn9KOb1/rPMf3nA== - dependencies: - null-check "^1.0.0" - fs-constants@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -fs-exists-cached@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz#cf25554ca050dc49ae6656b41de42258989dcbce" - integrity sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg== - -fs-extra@10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1" - integrity sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ== +fs-extra@10.1.0, fs-extra@^10.0.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== dependencies: graceful-fs "^4.2.0" jsonfile "^6.0.1" @@ -7466,10 +7299,10 @@ fs-extra@3.0.1: jsonfile "^3.0.0" universalify "^0.1.0" -fs-extra@^10.0.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" - integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== +fs-extra@^11.0.0, fs-extra@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.0.tgz#5784b102104433bb0e090f48bfc4a30742c357ed" + integrity sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw== dependencies: graceful-fs "^4.2.0" jsonfile "^6.0.1" @@ -7502,62 +7335,17 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs-minipass@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - -fs-minipass@^2.0.0, fs-minipass@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - -fs-mkdirp-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" - integrity sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ== - dependencies: - graceful-fs "^4.1.11" - through2 "^2.0.3" - fs-monkey@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.3.tgz#ae3ac92d53bb328efe0e9a1d9541f6ad8d48e2d3" integrity sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q== -fs-then-native@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fs-then-native/-/fs-then-native-2.0.0.tgz#19a124d94d90c22c8e045f2e8dd6ebea36d48c67" - integrity sha512-X712jAOaWXkemQCAmWeg5rOT2i+KOpWz1Z/txk/cW0qlOu2oQ9H61vc5w3X/iyuUEfq/OyaFJ78/cZAQD1/bgA== - 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.1, fsevents@~2.3.2: +fsevents@^2.3.2, fsevents@~2.3.1, fsevents@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -7567,11 +7355,6 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function-loop@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/function-loop/-/function-loop-1.0.2.tgz#16b93dd757845eacfeca1a8061a6a65c106e0cb2" - integrity sha512-Iw4MzMfS3udk/rqxTiDDCllhGwlOrsr50zViTOO/W6lS/9y6B1J0BD2VZzrnWUYBJsl3aeqjgR5v7bWWhZSYbA== - function.prototype.name@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" @@ -7604,20 +7387,6 @@ fwd-stream@^1.0.4: dependencies: readable-stream "~1.0.26-4" -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg== - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" @@ -7650,10 +7419,10 @@ get-monorepo-packages@^1.1.0: globby "^7.1.1" load-json-file "^4.0.0" -get-own-property-symbols@^0.9.5: - version "0.9.5" - resolved "https://registry.yarnpkg.com/get-own-property-symbols/-/get-own-property-symbols-0.9.5.tgz#14916f4b4488478cff7bdcff00b209db6724a559" - integrity sha512-ZvAIlmbmRE39iErqrw45vIkUUi0TQ78AWi5RtesI8rP13kECtm56WwgaWXn8valvJ6bOhQhBrn+PoNqnDu132w== +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== get-pkg-repo@^4.0.0: version "4.2.1" @@ -7665,21 +7434,11 @@ get-pkg-repo@^4.0.0: through2 "^2.0.0" yargs "^16.2.0" -get-port@^5.0.0, get-port@^5.1.1: +get-port@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== -get-stdin@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" - integrity sha512-jZV7n6jGE3Gt7fgSTJoz91Ak5MuTLwMwkoYdjxuJ/AmjIsE1UC03y/IWkZCQGEvVNS9qoRNwy5BCqxImv0FVeA== - -get-stdin@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" - integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== - get-stream@^4.0.0, get-stream@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" @@ -7687,7 +7446,7 @@ get-stream@^4.0.0, get-stream@^4.1.0: dependencies: pump "^3.0.0" -get-stream@^5.0.0, get-stream@^5.1.0: +get-stream@^5.1.0: version "5.2.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== @@ -7719,7 +7478,7 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" -git-raw-commits@^2.0.8: +git-raw-commits@^2.0.0, git-raw-commits@^2.0.8: version "2.0.11" resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" integrity sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A== @@ -7738,7 +7497,7 @@ git-remote-origin-url@^2.0.0: gitconfiglocal "^1.0.0" pify "^2.3.0" -git-semver-tags@^4.0.0, git-semver-tags@^4.1.1: +git-semver-tags@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.1.1.tgz#63191bcd809b0ec3e151ba4751c16c444e5b5780" integrity sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA== @@ -7746,21 +7505,6 @@ git-semver-tags@^4.0.0, git-semver-tags@^4.1.1: meow "^8.0.0" semver "^6.0.0" -git-up@^4.0.0: - version "4.0.5" - resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" - integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA== - dependencies: - is-ssh "^1.3.0" - parse-url "^6.0.0" - -git-url-parse@^11.4.4: - version "11.6.0" - resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605" - integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g== - dependencies: - git-up "^4.0.0" - gitconfiglocal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" @@ -7776,22 +7520,7 @@ gitlog@^4.0.3: debug "^4.1.1" tslib "^1.14.1" -glob-array@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/glob-array/-/glob-array-1.0.0.tgz#7666dd1c9ba5fdaf68556180de3bbd008103b3c1" - integrity sha512-nzLY/g/y/qfTow+v7pIC/M1PW/SqWT8jH+jdjVimda13ACtgpP99nVnO8QAq6AnLQGu+WsSPQWLfb+3w7Gtp8g== - dependencies: - glob "7.1.1" - -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.0.0, glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.0, glob-parent@~5.1.2: +glob-parent@^5.1.2, glob-parent@~5.1.0, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -7805,68 +7534,15 @@ glob-parent@^6.0.1: dependencies: is-glob "^4.0.3" -glob-stream@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" - integrity sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw== - dependencies: - extend "^3.0.0" - glob "^7.1.1" - glob-parent "^3.1.0" - is-negated-glob "^1.0.0" - ordered-read-streams "^1.0.0" - pumpify "^1.3.5" - readable-stream "^2.1.5" - remove-trailing-separator "^1.0.1" - to-absolute-glob "^2.0.0" - unique-stream "^2.0.2" - glob-to-regexp@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob-watcher@^5.0.3: - version "5.0.5" - resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-5.0.5.tgz#aa6bce648332924d9a8489be41e3e5c52d4186dc" - integrity sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw== - dependencies: - anymatch "^2.0.0" - async-done "^1.2.0" - chokidar "^2.0.0" - is-negated-glob "^1.0.0" - just-debounce "^1.0.0" - normalize-path "^3.0.0" - object.defaults "^1.1.0" - -glob@7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" - integrity sha512-mRyN/EsN2SyNhKWykF3eEGhDpeNplMWaW18Bmh76tnOqk5TbELAVwFAYOCmKVssOYFrYvvLMguiA+NXO3ZTuVA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.2" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== +glob@7.1.4: + version "7.1.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" + integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -7875,7 +7551,7 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: +glob@^7.0.3, glob@^7.0.5, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -7888,9 +7564,9 @@ glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, gl path-is-absolute "^1.0.0" glob@^8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" - integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -7898,6 +7574,13 @@ glob@^8.0.3: minimatch "^5.0.1" once "^1.3.0" +global-dirs@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" + integrity sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg== + dependencies: + ini "^1.3.4" + global-dirs@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.1.tgz#0c488971f066baceda21447aecb1a8b911d22485" @@ -7905,42 +7588,17 @@ global-dirs@^3.0.0: dependencies: ini "2.0.0" -global-modules@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" - integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== - dependencies: - global-prefix "^1.0.1" - is-windows "^1.0.1" - resolve-dir "^1.0.0" - -global-prefix@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg== - dependencies: - expand-tilde "^2.0.2" - homedir-polyfill "^1.0.1" - ini "^1.3.4" - is-windows "^1.0.1" - which "^1.2.14" - -globals@^11.0.1, globals@^11.1.0: +globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^12.1.0: - version "12.4.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" - integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== +globals@^13.19.0, globals@^13.6.0: + version "13.20.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" + integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== dependencies: - type-fest "^0.8.1" - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== + type-fest "^0.20.2" globalthis@^1.0.3: version "1.0.3" @@ -7949,7 +7607,7 @@ globalthis@^1.0.3: dependencies: define-properties "^1.1.3" -globby@^11.0.2: +globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -7961,6 +7619,18 @@ globby@^11.0.2: merge2 "^1.4.1" slash "^3.0.0" +globby@^12.0.2: + version "12.2.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-12.2.0.tgz#2ab8046b4fba4ff6eede835b29f678f90e3d3c22" + integrity sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA== + dependencies: + array-union "^3.0.1" + dir-glob "^3.0.1" + fast-glob "^3.2.7" + ignore "^5.1.9" + merge2 "^1.4.1" + slash "^4.0.0" + globby@^13.1.1: version "13.1.3" resolved "https://registry.yarnpkg.com/globby/-/globby-13.1.3.tgz#f62baf5720bcb2c1330c8d4ef222ee12318563ff" @@ -8007,13 +7677,6 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" -glogg@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.2.tgz#2d7dd702beda22eb3bffadf880696da6d846313f" - integrity sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA== - dependencies: - sparkles "^1.0.0" - good-listener@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" @@ -8045,11 +7708,16 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== +grapheme-splitter@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" + integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== + graphlib@2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/graphlib/-/graphlib-2.1.8.tgz#5761d414737870084c92ec7b5dbcb0592c9d35da" @@ -8067,58 +7735,17 @@ gray-matter@^4.0.2: section-matter "^1.0.0" strip-bom-string "^1.0.0" -growl@1.10.3: - version "1.10.3" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" - integrity sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q== - -gulp-cli@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/gulp-cli/-/gulp-cli-2.3.0.tgz#ec0d380e29e52aa45e47977f0d32e18fd161122f" - integrity sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A== - dependencies: - ansi-colors "^1.0.1" - archy "^1.0.0" - array-sort "^1.0.0" - color-support "^1.1.3" - concat-stream "^1.6.0" - copy-props "^2.0.1" - fancy-log "^1.3.2" - gulplog "^1.0.0" - interpret "^1.4.0" - isobject "^3.0.1" - liftoff "^3.1.0" - matchdep "^2.0.0" - mute-stdout "^1.0.0" - pretty-hrtime "^1.0.0" - replace-homedir "^1.0.0" - semver-greatest-satisfied-range "^1.1.0" - v8flags "^3.2.0" - yargs "^7.1.0" - -gulp@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/gulp/-/gulp-4.0.2.tgz#543651070fd0f6ab0a0650c6a3e6ff5a7cb09caa" - integrity sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA== - dependencies: - glob-watcher "^5.0.3" - gulp-cli "^2.2.0" - undertaker "^1.2.1" - vinyl-fs "^3.0.0" - -gulplog@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" - integrity sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw== - dependencies: - glogg "^1.0.0" - hamljs@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/hamljs/-/hamljs-0.6.2.tgz#7b7116cf6dbe7278e42b3f6ef8725a33e177c8e3" integrity sha512-/chXRp4WpL47I+HX1vCCdSbEXAljEG2FBMmgO7Am0bYsqgnEjreeWzUdX1onXqwZtcfgxbCg5WtEYYvuZ5muBg== -handlebars@4.7.7, handlebars@^4.7.6, handlebars@^4.7.7: +handle-thing@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" + integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== + +handlebars@^4.7.7: version "4.7.7" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== @@ -8148,6 +7775,11 @@ hard-rejection@^2.1.0: resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== +harmony-reflect@^1.4.6: + version "1.6.2" + resolved "https://registry.yarnpkg.com/harmony-reflect/-/harmony-reflect-1.6.2.tgz#31ecbd32e648a34d030d86adb67d4d47547fe710" + integrity sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g== + has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" @@ -8209,11 +7841,6 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -has-unicode@^2.0.0, has-unicode@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== - has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -8274,26 +7901,6 @@ hash.js@^1.0.0, hash.js@^1.0.3: inherits "^2.0.3" minimalistic-assert "^1.0.1" -hasha@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/hasha/-/hasha-3.0.0.tgz#52a32fab8569d41ca69a61ff1a214f8eb7c8bd39" - integrity sha512-w0Kz8lJFBoyaurBiNrIvxPqr/gJ6fOfSkpAPOepN3oECqGJag37xPbOv57izi/KP8auHgNYxn5fXtAb+1LsJ6w== - dependencies: - is-stream "^1.0.1" - -hasha@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/hasha/-/hasha-5.2.2.tgz#a48477989b3b327aea3c04f53096d816d97522a1" - integrity sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ== - dependencies: - is-stream "^2.0.0" - type-fest "^0.8.0" - -he@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" - integrity sha512-z/GDPjlRMNOa2XJiB4em8wJpuuBfrFOlYKTZxtpkdr1uPdibHI8rYA3MY0KDObpVyaes0e/aunid/t88ZI2EKA== - he@^1.1.1, he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" @@ -8308,21 +7915,6 @@ hmac-drbg@^1.0.1: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -homedir-polyfill@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" - integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== - dependencies: - parse-passwd "^1.0.0" - 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" @@ -8335,6 +7927,16 @@ hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + integrity sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ== + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + html-encoding-sniffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" @@ -8342,7 +7944,14 @@ html-encoding-sniffer@^1.0.2: dependencies: whatwg-encoding "^1.0.1" -html-entities@^2.1.0: +html-encoding-sniffer@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" + integrity sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA== + dependencies: + whatwg-encoding "^2.0.0" + +html-entities@^2.1.0, html-entities@^2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== @@ -8415,18 +8024,7 @@ html-webpack-plugin@^5.5.0: pretty-error "^4.0.0" tapable "^2.0.0" -htmlparser2@3.8.x: - version "3.8.3" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.8.3.tgz#996c28b191516a8be86501a7d79757e5c70c1068" - integrity sha512-hBxEg3CYXe+rPIua8ETe7tmG3XDn9B0edOE/e9wH2nLczxzgdu0m0aNHY+5wFZiviLWLdANPJTssa92dMcXQ5Q== - dependencies: - domelementtype "1" - domhandler "2.3" - domutils "1.5" - entities "1.0" - readable-stream "1.1" - -htmlparser2@^3.8.3, htmlparser2@^3.9.0, htmlparser2@^3.9.1, htmlparser2@^3.9.2: +htmlparser2@^3.8.3, htmlparser2@^3.9.0, htmlparser2@^3.9.2: version "3.10.1" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== @@ -8478,10 +8076,15 @@ http-auth@4.1.x: bcryptjs "^2.4.3" uuid "^8.3.2" -http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" - integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== +http-cache-semantics@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" + integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== + +http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== http-equiv-refresh@^1.0.0: version "1.0.0" @@ -8514,15 +8117,26 @@ http-parser-js@>=0.5.1: resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== -http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== +http-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" + integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== dependencies: - "@tootallnate/once" "1" + "@tootallnate/once" "2" agent-base "6" debug "4" +http-proxy-middleware@^2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz#e1a4dd6979572c7ab5a4e4b55095d1f32a74963f" + integrity sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw== + dependencies: + "@types/http-proxy" "^1.17.8" + http-proxy "^1.18.1" + is-glob "^4.0.1" + is-plain-obj "^3.0.0" + micromatch "^4.0.2" + http-proxy@^1.18.1: version "1.18.1" resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" @@ -8532,6 +8146,25 @@ http-proxy@^1.18.1: follow-redirects "^1.0.0" requires-port "^1.0.0" +http-server@^14.1.0: + version "14.1.1" + resolved "https://registry.yarnpkg.com/http-server/-/http-server-14.1.1.tgz#d60fbb37d7c2fdff0f0fbff0d0ee6670bd285e2e" + integrity sha512-+cbxadF40UXd9T01zUHgA+rlo2Bg1Srer4+B4NwIHdaGxAGGv59nYRnGGDJ9LBk7alpS0US+J+bLLdQOOkJq4A== + dependencies: + basic-auth "^2.0.1" + chalk "^4.1.2" + corser "^2.0.1" + he "^1.2.0" + html-encoding-sniffer "^3.0.0" + http-proxy "^1.18.1" + mime "^1.6.0" + minimist "^1.2.6" + opener "^1.5.1" + portfinder "^1.0.28" + secure-compare "3.0.1" + union "~0.5.0" + url-join "^4.0.1" + http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -8541,7 +8174,7 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -https-proxy-agent@^5.0.0: +https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== @@ -8549,36 +8182,24 @@ https-proxy-agent@^5.0.0: agent-base "6" debug "4" -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== - human-signals@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -humanize-ms@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" - integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== - dependencies: - ms "^2.0.0" - husky@^8.0.2: version "8.0.3" resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184" integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg== -iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.19, iconv-lite@^0.4.24: +iconv-lite@0.4.24, iconv-lite@^0.4.19, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 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== @@ -8590,34 +8211,29 @@ 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== +identity-obj-proxy@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" + integrity sha512-00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA== + dependencies: + harmony-reflect "^1.4.6" + ieee754@^1.1.13: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore-walk@^3.0.3: - version "3.0.4" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" - integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== - dependencies: - minimatch "^3.0.4" - -ignore@^3.3.3, ignore@^3.3.5: +ignore@^3.3.5: version "3.3.10" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.1.4, ignore@^5.2.0: +ignore@^5.0.4, ignore@^5.1.9, ignore@^5.2.0: version "5.2.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== -image-size@^0.5.1: +image-size@^0.5.1, image-size@~0.5.0: version "0.5.5" resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" integrity sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ== @@ -8638,9 +8254,9 @@ immutable@^3: integrity sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg== immutable@^4.0.0: - version "4.2.2" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.2.2.tgz#2da9ff4384a4330c36d4d1bc88e90f9e0b0ccd16" - integrity sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og== + version "4.2.4" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.2.4.tgz#83260d50889526b4b531a5e293709a77f7c55a2a" + integrity sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w== import-cwd@^3.0.0: version "3.0.0" @@ -8649,7 +8265,7 @@ import-cwd@^3.0.0: dependencies: import-from "^3.0.0" -import-fresh@^3.0.0, import-fresh@^3.2.1: +import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -8664,18 +8280,6 @@ import-from@^3.0.0: dependencies: resolve-from "^5.0.0" -import-jsx@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/import-jsx/-/import-jsx-3.1.0.tgz#f17a29dd43eda827f335c0766235f9fd07f7913f" - integrity sha512-lTuMdQ/mRXC+xQSGPDvAg1VkODlX78j5hZv2tneJ+zuo7GH/XhUF/YVKoeF382a4jO4GYw9jgganbMhEcxwb0g== - dependencies: - "@babel/core" "^7.5.5" - "@babel/plugin-proposal-object-rest-spread" "^7.5.5" - "@babel/plugin-transform-destructuring" "^7.5.0" - "@babel/plugin-transform-react-jsx" "^7.3.0" - caller-path "^2.0.0" - resolve-from "^3.0.0" - import-lazy@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" @@ -8714,11 +8318,6 @@ indexof@~0.0.1: resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" integrity sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg== -infer-owner@^1.0.4: - 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" @@ -8747,43 +8346,6 @@ ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -init-package-json@^2.0.2: - version "2.0.5" - resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" - integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA== - dependencies: - npm-package-arg "^8.1.5" - promzard "^0.3.0" - read "~1.0.1" - read-package-json "^4.1.1" - semver "^7.3.5" - validate-npm-package-license "^3.0.4" - validate-npm-package-name "^3.0.0" - -ink@^2.6.0: - version "2.7.1" - resolved "https://registry.yarnpkg.com/ink/-/ink-2.7.1.tgz#ff1c75b4b022924e2993af62297fa0e48e85618b" - integrity sha512-s7lJuQDJEdjqtaIWhp3KYHl6WV3J04U9zoQ6wVc+Xoa06XM27SXUY57qC5DO46xkF0CfgXMKkKNcgvSu/SAEpA== - dependencies: - ansi-escapes "^4.2.1" - arrify "^2.0.1" - auto-bind "^4.0.0" - chalk "^3.0.0" - cli-cursor "^3.1.0" - cli-truncate "^2.1.0" - is-ci "^2.0.0" - lodash.throttle "^4.1.1" - log-update "^3.0.0" - prop-types "^15.6.2" - react-reconciler "^0.24.0" - scheduler "^0.18.0" - signal-exit "^3.0.2" - slice-ansi "^3.0.0" - string-length "^3.1.0" - widest-line "^3.1.0" - wrap-ansi "^6.2.0" - yoga-layout-prebuilt "^1.9.3" - inquirer@8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.0.0.tgz#957a46db1abcf0fdd2ab82deb7470e90afc7d0ac" @@ -8803,27 +8365,28 @@ inquirer@8.0.0: strip-ansi "^6.0.0" through "^2.3.6" -inquirer@^3.0.6: - version "3.3.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" - integrity sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ== +inquirer@8.2.5: + version "8.2.5" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.5.tgz#d8654a7542c35a9b9e069d27e2df4858784d54f8" + integrity sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ== dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^2.0.4" - figures "^2.0.0" - lodash "^4.3.0" - mute-stream "0.0.7" - run-async "^2.2.0" - rx-lite "^4.0.8" - rx-lite-aggregates "^4.0.8" - string-width "^2.1.0" - strip-ansi "^4.0.0" + ansi-escapes "^4.2.1" + chalk "^4.1.1" + cli-cursor "^3.1.0" + cli-width "^3.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.21" + mute-stream "0.0.8" + ora "^5.4.1" + run-async "^2.4.0" + rxjs "^7.5.5" + string-width "^4.1.0" + strip-ansi "^6.0.0" through "^2.3.6" + wrap-ansi "^7.0.0" -inquirer@^7.0.0, inquirer@^7.3.3: +inquirer@^7.0.4: version "7.3.3" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== @@ -8851,28 +8414,11 @@ internal-slot@^1.0.4: has "^1.0.3" side-channel "^1.0.4" -interpret@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" - integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== - interpret@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/interpret/-/interpret-3.1.1.tgz#5be0ceed67ca79c6c4bc5cf0d7ee843dcea110c4" integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ== -invariant@^2.2.2: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ== - invert-kv@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" @@ -8883,16 +8429,16 @@ io-ts@^2.1.2: resolved "https://registry.yarnpkg.com/io-ts/-/io-ts-2.2.20.tgz#be42b75f6668a2c44f706f72ee6e4c906777c7f5" integrity sha512-Rq2BsYmtwS5vVttie4rqrOCIfHCS9TgpRLFpKQCM1wZBBRY9nWVGmEvm2FnDbSE2un1UE39DvFpTR5UL47YDcA== -ip@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da" - integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ== - ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== +ipaddr.js@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.0.1.tgz#eca256a7a877e917aeb368b0a7497ddf42ef81c0" + integrity sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng== + is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" @@ -8936,13 +8482,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" @@ -9046,7 +8585,7 @@ is-extendable@^1.0.1: 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== @@ -9073,12 +8612,10 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -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-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" @@ -9112,21 +8649,11 @@ is-json@^2.0.1: resolved "https://registry.yarnpkg.com/is-json/-/is-json-2.0.1.tgz#6be166d144828a131d686891b983df62c39491ff" integrity sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA== -is-lambda@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" - integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== - is-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g== -is-negated-glob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" - integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug== - is-negative-zero@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -9158,11 +8685,6 @@ is-number@^3.0.0: dependencies: kind-of "^3.0.2" -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - is-number@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-5.0.0.tgz#c393bc471e65de1a10a6abcb20efeb12d2b88166" @@ -9183,11 +8705,6 @@ is-object@~0.1.2: resolved "https://registry.yarnpkg.com/is-object/-/is-object-0.1.2.tgz#00efbc08816c33cfc4ac8251d132e10dc65098d7" integrity sha512-GkfZZlIZtpkFrqyAXPQSRBMsaHAw+CgoKe2HXAkjd/sfoI9+hS8PT4wg2rJxdQyUKr7N2vHJbg7/jQtE5l5vBQ== -is-object@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" - integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== - is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" @@ -9231,17 +8748,17 @@ is-path-inside@^3.0.2: resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== -is-plain-obj@^1.0.0, is-plain-obj@^1.1, is-plain-obj@^1.1.0: +is-plain-obj@^1.1, is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== -is-plain-obj@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" - integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== +is-plain-obj@^3.0.0: + version "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.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.3, 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== @@ -9253,7 +8770,7 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-potential-custom-element-name@^1.0.0: +is-potential-custom-element-name@^1.0.0, is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== @@ -9285,11 +8802,6 @@ is-relative@^1.0.0: dependencies: is-unc-path "^1.0.0" -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - is-shared-array-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" @@ -9297,14 +8809,7 @@ is-shared-array-buffer@^1.0.2: dependencies: call-bind "^1.0.2" -is-ssh@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2" - integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ== - dependencies: - protocols "^2.0.1" - -is-stream@^1.0.1, is-stream@^1.1.0: +is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== @@ -9363,16 +8868,6 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== -is-utf8@^0.2.0, is-utf8@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== - -is-valid-glob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" - integrity sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA== - is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -9380,12 +8875,17 @@ is-weakref@^1.0.2: dependencies: call-bind "^1.0.2" +is-what@^3.14.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/is-what/-/is-what-3.14.1.tgz#e1222f46ddda85dead0fd1c9df131760e77755c1" + integrity sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA== + is-whitespace@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/is-whitespace/-/is-whitespace-0.3.0.tgz#1639ecb1be036aec69a54cbb401cfbed7114ab7f" integrity sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg== -is-windows@^1.0.1, is-windows@^1.0.2: +is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== @@ -9439,88 +8939,52 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha512-9c4TNAKYXM5PRyVcwUZrF3W09nQ+sO7+jydgs4ZGW9dhsLG2VOlISJABombdQqQRXCwuYG3sYV/puGf5rp0qmA== - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== -istanbul-lib-coverage@^2.0.3, istanbul-lib-coverage@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" - integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== - -istanbul-lib-hook@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz#c95695f383d4f8f60df1f04252a9550e15b5b133" - integrity sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA== - dependencies: - append-transform "^1.0.0" - -istanbul-lib-instrument@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" - integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA== - dependencies: - "@babel/generator" "^7.4.0" - "@babel/parser" "^7.4.3" - "@babel/template" "^7.4.0" - "@babel/traverse" "^7.4.3" - "@babel/types" "^7.4.0" - istanbul-lib-coverage "^2.0.5" - semver "^6.0.0" +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-processinfo@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-processinfo/-/istanbul-lib-processinfo-1.0.0.tgz#6c0b59411d2897313ea09165fd95464a32be5610" - integrity sha512-FY0cPmWa4WoQNlvB8VOcafiRoB5nB+l2Pz2xGuXHRSy1KM8QFOYfz/rN+bGMCAeejrY3mrpF5oJHcN0s/garCg== +istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== dependencies: - archy "^1.0.0" - cross-spawn "^6.0.5" - istanbul-lib-coverage "^2.0.3" - rimraf "^2.6.3" - uuid "^3.3.2" + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^6.3.0" -istanbul-lib-report@^2.0.8: - version "2.0.8" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" - integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ== +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== dependencies: - istanbul-lib-coverage "^2.0.5" - make-dir "^2.1.0" - supports-color "^6.1.0" + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" -istanbul-lib-source-maps@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" - integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== +istanbul-lib-source-maps@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" - istanbul-lib-coverage "^2.0.5" - make-dir "^2.1.0" - rimraf "^2.6.3" + istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" -istanbul-reports@^2.2.4: - version "2.2.7" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.7.tgz#5d939f6237d7b48393cc0959eab40cd4fd056931" - integrity sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg== +istanbul-reports@^3.1.3: + version "3.1.5" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" + integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w== dependencies: html-escaper "^2.0.0" - -jackspeak@^1.4.0: - version "1.4.2" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-1.4.2.tgz#30ad5e4b7b36f9f3ae580e23272b1a386b4f6b93" - integrity sha512-GHeGTmnuaHnvS+ZctRB01bfxARuu9wW83ENbuiweu07SFcVlZrJpcshSre/keGT7YGBhLHg/+rXCNSrsEHKU4Q== - dependencies: - cliui "^7.0.4" + istanbul-lib-report "^3.0.0" jake@^10.8.5: version "10.8.5" @@ -9542,12 +9006,362 @@ javascript-stringify@^2.0.1: resolved "https://registry.yarnpkg.com/javascript-stringify/-/javascript-stringify-2.1.0.tgz#27c76539be14d8bd128219a2d731b09337904e79" integrity sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg== -jest-docblock@^21.0.0: - version "21.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414" - integrity sha512-5IZ7sY9dBAYSV+YjQ0Ovb540Ku7AO9Z5o2Cg789xj167iQuZ2cG+z0f3Uct6WeYLbU6aQiM2pCs7sZ+4dotydw== +jest-changed-files@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.5.0.tgz#e88786dca8bf2aa899ec4af7644e16d9dcf9b23e" + integrity sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag== + dependencies: + execa "^5.0.0" + p-limit "^3.1.0" + +jest-circus@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.5.0.tgz#b5926989449e75bff0d59944bae083c9d7fb7317" + integrity sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA== + dependencies: + "@jest/environment" "^29.5.0" + "@jest/expect" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + dedent "^0.7.0" + is-generator-fn "^2.0.0" + jest-each "^29.5.0" + jest-matcher-utils "^29.5.0" + jest-message-util "^29.5.0" + jest-runtime "^29.5.0" + jest-snapshot "^29.5.0" + jest-util "^29.5.0" + p-limit "^3.1.0" + pretty-format "^29.5.0" + pure-rand "^6.0.0" + slash "^3.0.0" + stack-utils "^2.0.3" + +jest-cli@^29.4.3: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.5.0.tgz#b34c20a6d35968f3ee47a7437ff8e53e086b4a67" + integrity sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw== + dependencies: + "@jest/core" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/types" "^29.5.0" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.9" + import-local "^3.0.2" + jest-config "^29.5.0" + jest-util "^29.5.0" + jest-validate "^29.5.0" + prompts "^2.0.1" + yargs "^17.3.1" + +jest-config@^29.4.1, jest-config@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.5.0.tgz#3cc972faec8c8aaea9ae158c694541b79f3748da" + integrity sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA== + dependencies: + "@babel/core" "^7.11.6" + "@jest/test-sequencer" "^29.5.0" + "@jest/types" "^29.5.0" + babel-jest "^29.5.0" + chalk "^4.0.0" + ci-info "^3.2.0" + deepmerge "^4.2.2" + glob "^7.1.3" + graceful-fs "^4.2.9" + jest-circus "^29.5.0" + jest-environment-node "^29.5.0" + jest-get-type "^29.4.3" + jest-regex-util "^29.4.3" + jest-resolve "^29.5.0" + jest-runner "^29.5.0" + jest-util "^29.5.0" + jest-validate "^29.5.0" + micromatch "^4.0.4" + parse-json "^5.2.0" + pretty-format "^29.5.0" + slash "^3.0.0" + strip-json-comments "^3.1.1" + +jest-diff@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.5.0.tgz#e0d83a58eb5451dcc1fa61b1c3ee4e8f5a290d63" + integrity sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw== + dependencies: + chalk "^4.0.0" + diff-sequences "^29.4.3" + jest-get-type "^29.4.3" + pretty-format "^29.5.0" + +jest-docblock@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.4.3.tgz#90505aa89514a1c7dceeac1123df79e414636ea8" + integrity sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg== + dependencies: + detect-newline "^3.0.0" + +jest-each@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.5.0.tgz#fc6e7014f83eac68e22b7195598de8554c2e5c06" + integrity sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA== + dependencies: + "@jest/types" "^29.5.0" + chalk "^4.0.0" + jest-get-type "^29.4.3" + jest-util "^29.5.0" + pretty-format "^29.5.0" + +jest-environment-jsdom@29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-29.4.3.tgz#bd8ed3808e6d3f616403fbaf8354f77019613d90" + integrity sha512-rFjf8JXrw3OjUzzmSE5l0XjMj0/MSVEUMCSXBGPDkfwb1T03HZI7iJSL0cGctZApPSyJxbjyKDVxkZuyhHkuTw== + dependencies: + "@jest/environment" "^29.4.3" + "@jest/fake-timers" "^29.4.3" + "@jest/types" "^29.4.3" + "@types/jsdom" "^20.0.0" + "@types/node" "*" + jest-mock "^29.4.3" + jest-util "^29.4.3" + jsdom "^20.0.0" + +jest-environment-node@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.5.0.tgz#f17219d0f0cc0e68e0727c58b792c040e332c967" + integrity sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw== + dependencies: + "@jest/environment" "^29.5.0" + "@jest/fake-timers" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" + jest-mock "^29.5.0" + jest-util "^29.5.0" + +jest-get-type@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.4.3.tgz#1ab7a5207c995161100b5187159ca82dd48b3dd5" + integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg== + +jest-haste-map@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.5.0.tgz#69bd67dc9012d6e2723f20a945099e972b2e94de" + integrity sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA== + dependencies: + "@jest/types" "^29.5.0" + "@types/graceful-fs" "^4.1.3" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.9" + jest-regex-util "^29.4.3" + jest-util "^29.5.0" + jest-worker "^29.5.0" + micromatch "^4.0.4" + walker "^1.0.8" + optionalDependencies: + fsevents "^2.3.2" + +jest-leak-detector@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz#cf4bdea9615c72bac4a3a7ba7e7930f9c0610c8c" + integrity sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow== + dependencies: + jest-get-type "^29.4.3" + pretty-format "^29.5.0" + +jest-matcher-utils@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz#d957af7f8c0692c5453666705621ad4abc2c59c5" + integrity sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw== + dependencies: + chalk "^4.0.0" + jest-diff "^29.5.0" + jest-get-type "^29.4.3" + pretty-format "^29.5.0" + +jest-message-util@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.5.0.tgz#1f776cac3aca332ab8dd2e3b41625435085c900e" + integrity sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA== + dependencies: + "@babel/code-frame" "^7.12.13" + "@jest/types" "^29.5.0" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.9" + micromatch "^4.0.4" + pretty-format "^29.5.0" + slash "^3.0.0" + stack-utils "^2.0.3" + +jest-mock@^29.4.3, jest-mock@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.5.0.tgz#26e2172bcc71d8b0195081ff1f146ac7e1518aed" + integrity sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw== + dependencies: + "@jest/types" "^29.5.0" + "@types/node" "*" + jest-util "^29.5.0" + +jest-pnp-resolver@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== + +jest-regex-util@^29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.4.3.tgz#a42616141e0cae052cfa32c169945d00c0aa0bb8" + integrity sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg== + +jest-resolve-dependencies@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz#f0ea29955996f49788bf70996052aa98e7befee4" + integrity sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg== + dependencies: + jest-regex-util "^29.4.3" + jest-snapshot "^29.5.0" + +jest-resolve@^29.4.1, jest-resolve@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.5.0.tgz#b053cc95ad1d5f6327f0ac8aae9f98795475ecdc" + integrity sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w== + dependencies: + chalk "^4.0.0" + graceful-fs "^4.2.9" + jest-haste-map "^29.5.0" + jest-pnp-resolver "^1.2.2" + jest-util "^29.5.0" + jest-validate "^29.5.0" + resolve "^1.20.0" + resolve.exports "^2.0.0" + slash "^3.0.0" + +jest-runner@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.5.0.tgz#6a57c282eb0ef749778d444c1d758c6a7693b6f8" + integrity sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ== + dependencies: + "@jest/console" "^29.5.0" + "@jest/environment" "^29.5.0" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.13.1" + graceful-fs "^4.2.9" + jest-docblock "^29.4.3" + jest-environment-node "^29.5.0" + jest-haste-map "^29.5.0" + jest-leak-detector "^29.5.0" + jest-message-util "^29.5.0" + jest-resolve "^29.5.0" + jest-runtime "^29.5.0" + jest-util "^29.5.0" + jest-watcher "^29.5.0" + jest-worker "^29.5.0" + p-limit "^3.1.0" + source-map-support "0.5.13" + +jest-runtime@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.5.0.tgz#c83f943ee0c1da7eb91fa181b0811ebd59b03420" + integrity sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw== + dependencies: + "@jest/environment" "^29.5.0" + "@jest/fake-timers" "^29.5.0" + "@jest/globals" "^29.5.0" + "@jest/source-map" "^29.4.3" + "@jest/test-result" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" + chalk "^4.0.0" + cjs-module-lexer "^1.0.0" + collect-v8-coverage "^1.0.0" + glob "^7.1.3" + graceful-fs "^4.2.9" + jest-haste-map "^29.5.0" + jest-message-util "^29.5.0" + jest-mock "^29.5.0" + jest-regex-util "^29.4.3" + jest-resolve "^29.5.0" + jest-snapshot "^29.5.0" + jest-util "^29.5.0" + slash "^3.0.0" + strip-bom "^4.0.0" + +jest-snapshot@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.5.0.tgz#c9c1ce0331e5b63cd444e2f95a55a73b84b1e8ce" + integrity sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g== + dependencies: + "@babel/core" "^7.11.6" + "@babel/generator" "^7.7.2" + "@babel/plugin-syntax-jsx" "^7.7.2" + "@babel/plugin-syntax-typescript" "^7.7.2" + "@babel/traverse" "^7.7.2" + "@babel/types" "^7.3.3" + "@jest/expect-utils" "^29.5.0" + "@jest/transform" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/babel__traverse" "^7.0.6" + "@types/prettier" "^2.1.5" + babel-preset-current-node-syntax "^1.0.0" + chalk "^4.0.0" + expect "^29.5.0" + graceful-fs "^4.2.9" + jest-diff "^29.5.0" + jest-get-type "^29.4.3" + jest-matcher-utils "^29.5.0" + jest-message-util "^29.5.0" + jest-util "^29.5.0" + natural-compare "^1.4.0" + pretty-format "^29.5.0" + semver "^7.3.5" + +jest-util@^29.0.0, jest-util@^29.4.1, jest-util@^29.4.3, jest-util@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.5.0.tgz#24a4d3d92fc39ce90425311b23c27a6e0ef16b8f" + integrity sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ== + dependencies: + "@jest/types" "^29.5.0" + "@types/node" "*" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" + +jest-validate@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.5.0.tgz#8e5a8f36178d40e47138dc00866a5f3bd9916ffc" + integrity sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ== + dependencies: + "@jest/types" "^29.5.0" + camelcase "^6.2.0" + chalk "^4.0.0" + jest-get-type "^29.4.3" + leven "^3.1.0" + pretty-format "^29.5.0" + +jest-watcher@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.5.0.tgz#cf7f0f949828ba65ddbbb45c743a382a4d911363" + integrity sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA== + dependencies: + "@jest/test-result" "^29.5.0" + "@jest/types" "^29.5.0" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + emittery "^0.13.1" + jest-util "^29.5.0" + string-length "^4.0.1" -jest-worker@^27.4.5: +jest-worker@^27.0.2, jest-worker@^27.4.5: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== @@ -9556,6 +9370,26 @@ jest-worker@^27.4.5: merge-stream "^2.0.0" supports-color "^8.0.0" +jest-worker@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.5.0.tgz#bdaefb06811bd3384d93f009755014d8acb4615d" + integrity sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA== + dependencies: + "@types/node" "*" + jest-util "^29.5.0" + merge-stream "^2.0.0" + supports-color "^8.0.0" + +jest@29.4.3: + version "29.4.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-29.4.3.tgz#1b8be541666c6feb99990fd98adac4737e6e6386" + integrity sha512-XvK65feuEFGZT8OO0fB/QAQS+LGHvQpaadkH5p47/j3Ocqq3xf2pK9R+G0GzgfuhXVxEv76qCOOcMb5efLk6PA== + dependencies: + "@jest/core" "^29.4.3" + "@jest/types" "^29.4.3" + import-local "^3.0.2" + jest-cli "^29.4.3" + js-base64@^2.1.9: version "2.6.4" resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.6.4.tgz#f4e686c5de1ea1f867dbcad3d46d969428df98c4" @@ -9592,19 +9426,14 @@ js-stringify@^1.0.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg== - -js-yaml@4.1.0: +js-yaml@4.1.0, js-yaml@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" -js-yaml@^3.13.1, js-yaml@^3.9.1: +js-yaml@^3.10.0, js-yaml@^3.13.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== @@ -9612,83 +9441,42 @@ js-yaml@^3.13.1, js-yaml@^3.9.1: argparse "^1.0.7" esprima "^4.0.0" -js2xmlparser@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/js2xmlparser/-/js2xmlparser-4.0.2.tgz#2a1fdf01e90585ef2ae872a01bc169c6a8d5e60a" - integrity sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA== - dependencies: - xmlcreate "^2.0.4" - jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== -jsdoc-api@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/jsdoc-api/-/jsdoc-api-6.0.0.tgz#fbba403ef59de0480b7e5aadd563a7bb715b0187" - integrity sha512-zvfB63nAc9e+Rv2kKmJfE6tmo4x8KFho5vKr6VfYTlCCgqtrfPv0McCdqT4betUT9rWtw0zGkNUVkVqeQipY6Q== - dependencies: - array-back "^4.0.1" - cache-point "^2.0.0" - collect-all "^1.0.3" - file-set "^4.0.1" - fs-then-native "^2.0.0" - jsdoc "^3.6.4" - object-to-spawn-args "^2.0.0" - temp-path "^1.0.0" - walk-back "^4.0.0" - -jsdoc-parse@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/jsdoc-parse/-/jsdoc-parse-5.0.0.tgz#01fb96e04955df05bca1ad722d76e969a30108f7" - integrity sha512-Khw8c3glrTeA3/PfUJUBvhrMhWpSClORBUvL4pvq2wFcqvUVmA96wxnMkCno2GfZY4pnd8BStK5WGKGyn4Vckg== - dependencies: - array-back "^4.0.1" - lodash.omit "^4.5.0" - lodash.pick "^4.4.0" - reduce-extract "^1.0.0" - sort-array "^4.1.1" - test-value "^3.0.0" - -jsdoc-to-markdown@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/jsdoc-to-markdown/-/jsdoc-to-markdown-6.0.1.tgz#55640eea7a4f56fa9353316648bf0775531811ff" - integrity sha512-hUI2PAR5n/KlmQU3mAWO9i3D7jVbhyvUHfQ6oYVBt+wnnsyxpsAuhCODY1ryLOb2U9OPJd4GIK9mL2hqy7fHDg== +jsdom@^20.0.0: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.3.tgz#886a41ba1d4726f67a8858028c99489fed6ad4db" + integrity sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ== dependencies: - array-back "^4.0.1" - command-line-tool "^0.8.0" - config-master "^3.1.0" - dmd "^5.0.1" - jsdoc-api "^6.0.0" - jsdoc-parse "^5.0.0" - walk-back "^4.0.0" - -jsdoc@^3.6.4: - version "3.6.11" - resolved "https://registry.yarnpkg.com/jsdoc/-/jsdoc-3.6.11.tgz#8bbb5747e6f579f141a5238cbad4e95e004458ce" - integrity sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg== - dependencies: - "@babel/parser" "^7.9.4" - "@types/markdown-it" "^12.2.3" - bluebird "^3.7.2" - catharsis "^0.9.0" - escape-string-regexp "^2.0.0" - js2xmlparser "^4.0.2" - klaw "^3.0.0" - markdown-it "^12.3.2" - markdown-it-anchor "^8.4.1" - marked "^4.0.10" - mkdirp "^1.0.4" - requizzle "^0.2.3" - strip-json-comments "^3.1.0" - taffydb "2.6.2" - underscore "~1.13.2" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA== + abab "^2.0.6" + acorn "^8.8.1" + acorn-globals "^7.0.0" + cssom "^0.5.0" + cssstyle "^2.3.0" + data-urls "^3.0.2" + decimal.js "^10.4.2" + domexception "^4.0.0" + escodegen "^2.0.0" + form-data "^4.0.0" + html-encoding-sniffer "^3.0.0" + http-proxy-agent "^5.0.0" + https-proxy-agent "^5.0.1" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.2" + parse5 "^7.1.1" + saxes "^6.0.0" + symbol-tree "^3.2.4" + tough-cookie "^4.1.2" + w3c-xmlserializer "^4.0.0" + webidl-conversions "^7.0.0" + whatwg-encoding "^2.0.0" + whatwg-mimetype "^3.0.0" + whatwg-url "^11.0.0" + ws "^8.11.0" + xml-name-validator "^4.0.0" jsesc@^2.5.1: version "2.5.2" @@ -9700,25 +9488,20 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== -jshint@2.12.0: - version "2.12.0" - resolved "https://registry.yarnpkg.com/jshint/-/jshint-2.12.0.tgz#52e75bd058d587ef81a0e2f95e5cf18eb5dc5c37" - integrity sha512-TwuuaUDmra0JMkuqvqy+WGo2xGHSNjv1BA1nTIgtH2K5z1jHuAEeAgp7laaR+hLRmajRjcrM71+vByBDanCyYA== - dependencies: - cli "~1.0.0" - console-browserify "1.1.x" - exit "0.1.x" - htmlparser2 "3.8.x" - lodash "~4.17.19" - minimatch "~3.0.2" - shelljs "0.3.x" - strip-json-comments "1.0.x" - json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ== +json-fixer@^1.5.1: + version "1.6.15" + resolved "https://registry.yarnpkg.com/json-fixer/-/json-fixer-1.6.15.tgz#f1f03b6771fcb383695d458c53e50b10999fba7f" + integrity sha512-TuDuZ5KrgyjoCIppdPXBMqiGfota55+odM+j2cQ5rt/XKyKmqGB3Whz1F8SN8+60yYGy/Nu5lbRZ+rx8kBIvBw== + dependencies: + "@babel/runtime" "^7.18.9" + chalk "^4.1.2" + pegjs "^0.10.0" + json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" @@ -9729,11 +9512,6 @@ json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA== - json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -9759,7 +9537,7 @@ json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== -json-to-scss@^1.6.2: +json-to-scss@1.6.2: version "1.6.2" resolved "https://registry.yarnpkg.com/json-to-scss/-/json-to-scss-1.6.2.tgz#8efbd21bb3d655e7ef0e3680f04e3c3d883c402a" integrity sha512-ha9o8xiQVb0f/ErOYmmAtnz2jox0W5qJz8O6mfIM4+kMVikule/wUD0kuQ5B2HKYLqcDtVJqMRxl12tFEWzfkw== @@ -9772,16 +9550,6 @@ json-to-scss@^1.6.2: terminal-overwrite "^2.0.1" yargs "^13.3.2" -json5@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" - integrity sha512-5EEuuI7oad0d6c2PcrTRLoLH2JNuI/aJxHsVT2hVFK6fKHu+MXONdhzzzNAlb3JXMeuN1o+kDU78fV1YH6VmKQ== - -json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw== - json5@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" @@ -9789,11 +9557,16 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.2.2: +json5@^2.1.2, json5@^2.2.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== +jsonc-parser@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" + integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== + jsonfile@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" @@ -9817,7 +9590,7 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" -jsonparse@^1.2.0, jsonparse@^1.3.1: +jsonparse@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg== @@ -9845,11 +9618,6 @@ junk@^1.0.1: resolved "https://registry.yarnpkg.com/junk/-/junk-1.0.3.tgz#87be63488649cbdca6f53ab39bec9ccd2347f592" integrity sha512-3KF80UaaSSxo8jVnRYtMKNGFOoVPBdkkVPsw+Ad0y4oxKXPduS6G6iHkrf69yJVff/VAaYXkV42rtZ7daJxU3w== -just-debounce@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/just-debounce/-/just-debounce-1.1.0.tgz#2f81a3ad4121a76bc7cb45dbf704c0d76a8e5ddf" - integrity sha512-qpcRocdkUmf+UTNBYx5w6dexX5J31AKK1OmPwH630a83DdVVUIngk55RSAiIGpQyoH0dlr872VHfPjnQnK1qDQ== - keyv@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" @@ -9881,25 +9649,15 @@ kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== -klaw@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/klaw/-/klaw-3.0.0.tgz#b11bec9cf2492f06756d6e809ab73a2910259146" - integrity sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g== - dependencies: - graceful-fs "^4.1.9" +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== klona@^2.0.4, klona@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" - integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== - -last-run@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/last-run/-/last-run-1.1.1.tgz#45b96942c17b1c79c772198259ba943bebf8ca5b" - integrity sha512-U/VxvpX4N/rFvPzr3qG5EtLKEnNI0emvIQB3/ecEwv+8GHaUKbIB8vxv1Oai5FAF0d0r7LXHhLLe5K/yChm5GQ== - dependencies: - default-resolution "^2.0.0" - es6-weak-map "^2.0.1" + version "2.0.6" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" + integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== latest-version@^5.1.0: version "5.1.0" @@ -9915,13 +9673,6 @@ lazystream@^1.0.0: dependencies: readable-stream "^2.0.5" -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw== - dependencies: - invert-kv "^1.0.0" - lcid@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" @@ -9929,41 +9680,29 @@ lcid@^2.0.0: dependencies: invert-kv "^2.0.0" -lcov-parse@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-1.0.0.tgz#eb0d46b54111ebc561acb4c408ef9363bdc8f7e0" - integrity sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ== - -lead@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lead/-/lead-1.0.0.tgz#6f14f99a37be3a9dd784f5495690e5903466ee42" - integrity sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow== +less-loader@11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/less-loader/-/less-loader-11.1.0.tgz#a452384259bdf8e4f6d5fdcc39543609e6313f82" + integrity sha512-C+uDBV7kS7W5fJlUjq5mPBeBVhYpTIm5gB09APT9o3n/ILeaXVsiSFTbZpTJCJwQ/Crczfn3DmfQFwxYusWFug== dependencies: - flush-write-stream "^1.0.2" + klona "^2.0.4" -lerna@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/lerna/-/lerna-4.0.0.tgz#b139d685d50ea0ca1be87713a7c2f44a5b678e9e" - integrity sha512-DD/i1znurfOmNJb0OBw66NmNqiM8kF6uIrzrJ0wGE3VNdzeOhz9ziWLYiRaZDGGwgbcjOo6eIfcx9O5Qynz+kg== - dependencies: - "@lerna/add" "4.0.0" - "@lerna/bootstrap" "4.0.0" - "@lerna/changed" "4.0.0" - "@lerna/clean" "4.0.0" - "@lerna/cli" "4.0.0" - "@lerna/create" "4.0.0" - "@lerna/diff" "4.0.0" - "@lerna/exec" "4.0.0" - "@lerna/import" "4.0.0" - "@lerna/info" "4.0.0" - "@lerna/init" "4.0.0" - "@lerna/link" "4.0.0" - "@lerna/list" "4.0.0" - "@lerna/publish" "4.0.0" - "@lerna/run" "4.0.0" - "@lerna/version" "4.0.0" - import-local "^3.0.2" - npmlog "^4.1.2" +less@4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/less/-/less-4.1.3.tgz#175be9ddcbf9b250173e0a00b4d6920a5b770246" + integrity sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA== + dependencies: + copy-anything "^2.0.1" + parse-node-version "^1.0.1" + tslib "^2.3.0" + optionalDependencies: + errno "^0.1.1" + graceful-fs "^4.1.2" + image-size "~0.5.0" + make-dir "^2.1.0" + mime "^1.4.1" + needle "^3.1.0" + source-map "~0.6.0" level-blobs@^0.1.7: version "0.1.7" @@ -10075,12 +9814,25 @@ levelup@^4.0.0: level-supports "~1.0.0" xtend "~4.0.0" +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + levenshtein@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/levenshtein/-/levenshtein-1.0.5.tgz#3911737a9cb56da345d008f55782c6f138979ba3" integrity sha512-UQf1nnmxjl7O0+snDXj2YF2r74Gkya8ZpnegrUBYN9tikh2dtxV/ey8e07BO5wwo0i76yjOvbDhFHdcPEiH9aA== -levn@^0.3.0, levn@~0.3.0: +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== @@ -10088,40 +9840,17 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -libnpmaccess@^4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" - integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ== - dependencies: - aproba "^2.0.0" - minipass "^3.1.1" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" - -libnpmpublish@^4.0.0: +license-webpack-plugin@^4.0.2: version "4.0.2" - resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" - integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw== + resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz#1e18442ed20b754b82f1adeff42249b81d11aec6" + integrity sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw== dependencies: - normalize-package-data "^3.0.2" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" - semver "^7.1.3" - ssri "^8.0.1" + webpack-sources "^3.0.0" -liftoff@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-3.1.0.tgz#c9ba6081f908670607ee79062d700df062c52ed3" - integrity sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog== - dependencies: - extend "^3.0.0" - findup-sync "^3.0.0" - fined "^1.0.1" - flagged-respawn "^1.0.0" - is-plain-object "^2.0.4" - object.map "^1.0.0" - rechoir "^0.6.2" - resolve "^1.1.7" +lilconfig@^2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.6.tgz#32a384558bd58af3d4c6e077dd1ad1d397bc69d4" + integrity sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg== limiter@^1.0.5: version "1.1.5" @@ -10133,6 +9862,11 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +lines-and-columns@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-2.0.3.tgz#b2f0badedb556b747020ab8ea7f0373e22efac1b" + integrity sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w== + linkedom@^0.13.0: version "0.13.7" resolved "https://registry.yarnpkg.com/linkedom/-/linkedom-0.13.7.tgz#5d5584e73415911ac387a2794acd61933699e477" @@ -10158,12 +9892,10 @@ linkify-it@^3.0.1: dependencies: uc.micro "^1.0.1" -liquidjs@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/liquidjs/-/liquidjs-2.2.0.tgz#41b912c3743941cd80ad4adf5302e4cac7627ced" - integrity sha512-y3/w8nxb+SQpKAd6FvJP8WjicVDeOMFJFpFDm4nYuYBspHax8ZhUTNtGuyDPs+XxTfWtP0d82wdl65tYQrNvDg== - dependencies: - any-promise "^1.3.0" +liquidjs@10.4.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/liquidjs/-/liquidjs-10.4.0.tgz#4993135c87a582389bccd3a4be2cabf044c01474" + integrity sha512-4fpR8KFJ96bXkzynK9Yo1jwn7sjOkJfKawSbEXINc39DZfy7r5SYtcAM5T/Ccg5n0xoZf6ap5Gap4VwFCJiQ1g== liquidjs@^6.4.3: version "6.4.3" @@ -10187,17 +9919,6 @@ lit-html@^1.1.1, lit-html@^1.1.2: resolved "https://registry.yarnpkg.com/lit-html/-/lit-html-1.4.1.tgz#0c6f3ee4ad4eb610a49831787f0478ad8e9ae5e0" integrity sha512-B9btcSgPYb1q4oSOb/PrOT6Z/H+r6xuNzfH4lFli/AWhYwdtrgQkQWBbIc6mdnf6E2IL3gDXdkkqNktpU0OZQA== -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -10208,16 +9929,6 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" -load-json-file@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" - integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== - dependencies: - graceful-fs "^4.1.15" - parse-json "^5.0.0" - strip-bom "^4.0.0" - type-fest "^0.6.0" - loader-runner@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" @@ -10232,6 +9943,15 @@ loader-utils@^1.1.0: emojis-list "^3.0.0" json5 "^1.0.1" +loader-utils@^2.0.0, loader-utils@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" + integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + localtunnel@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/localtunnel/-/localtunnel-2.0.2.tgz#528d50087151c4790f89c2db374fe7b0a48501f0" @@ -10277,21 +9997,6 @@ locutus@^2.0.11: resolved "https://registry.yarnpkg.com/locutus/-/locutus-2.0.16.tgz#1da15532f1d735712a27e35a1caf0ccb7041f6b3" integrity sha512-pGfl6Hb/1mXLzrX5kl5lH7gz25ey0vwQssZp8Qo2CEF59di6KrAgdFm+0pW8ghLnvNzzJGj5tlWhhv2QbK3jeQ== -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== - -lodash.assignin@^4.0.9: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" - integrity sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg== - -lodash.bind@^4.1.4: - version "4.2.1" - resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35" - integrity sha512-lxdsn7xxlCymgLYo1gGvVrfHmkjDiyqVv62FAeF2i5ta72BipE1SLxw8hPEPLhD4/247Ijw07UQH7Hq/chT5LA== - lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -10307,7 +10012,7 @@ lodash.debounce@^4.0.8: resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== -lodash.defaults@^4.0.1, lodash.defaults@^4.2.0: +lodash.defaults@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== @@ -10317,26 +10022,11 @@ lodash.difference@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" integrity sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA== -lodash.filter@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" - integrity sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ== - -lodash.flatten@^4.2.0, lodash.flatten@^4.4.0: +lodash.flatten@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" integrity sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g== -lodash.flattendeep@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" - integrity sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ== - -lodash.foreach@^4.3.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" - integrity sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ== - lodash.get@^4: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" @@ -10352,6 +10042,11 @@ lodash.isfinite@^3.3.2: resolved "https://registry.yarnpkg.com/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz#fb89b65a9a80281833f0b7478b3a5104f898ebb3" integrity sha512-7FGG40uhC8Mm633uKW1r58aElFlBlxCrg9JfSi3P6aYiWmfiWF0PgMd86ZUsxE5GwWPdHoS2+48bwTh2VPkIQA== +lodash.isfunction@^3.0.9: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz#06de25df4db327ac931981d1bdb067e5af68d051" + integrity sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw== + lodash.isinteger@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" @@ -10367,65 +10062,40 @@ lodash.isplainobject@^4.0.6: resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== -lodash.map@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" - integrity sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q== +lodash.kebabcase@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" + integrity sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g== + +lodash.memoize@4.x, lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== -lodash.merge@^4.4.0: +lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.omit@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-4.5.0.tgz#6eb19ae5a1ee1dd9df0b969e66ce0b7fa30b5e60" - integrity sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg== - -lodash.padend@^4.6.1: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" - integrity sha512-sOQs2aqGpbl27tmCS1QNZA09Uqp01ZzWfDUoD+xzTii0E7dSQfRKcRetFwa+uXaxaqL+TKm7CgD2JdKP7aZBSw== - -lodash.pick@^4.2.1, lodash.pick@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" - integrity sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q== - -lodash.reduce@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b" - integrity sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw== - -lodash.reject@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415" - integrity sha512-qkTuvgEzYdyhiJBx42YPzPo71R1aEr0z79kAv7Ixg8wPFEjgRgJdUsGMG3Hf3OYSF/kHI79XhNlt+5Ar6OzwxQ== +lodash.mergewith@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz#617121f89ac55f59047c7aec1ccd6654c6590f55" + integrity sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ== -lodash.some@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d" - integrity sha512-j7MJE+TuT51q9ggt4fSgVqro163BEFjAt3u97IqU+JA2DkWl80nFTrowzLpZ/BnpN7rrl0JA/593NAdd8p/scQ== +lodash.snakecase@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d" + integrity sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw== lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA== -lodash.template@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" +lodash.startcase@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" + integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== lodash.throttle@^4.1.1: version "4.1.1" @@ -10437,16 +10107,21 @@ lodash.union@^4.6.0: resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" integrity sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw== -lodash@4.17.21, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0, lodash@^4.7.0, lodash@~4.17.19: +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== + +lodash.upperfirst@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz#1365edf431480481ef0d1c68957a5ed99d49f7ce" + integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg== + +lodash@4.17.21, lodash@^4.11.2, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -log-driver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.7.tgz#63b95021f0702fedfa2c9bb0a24e7797d71871d8" - integrity sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg== - log-symbols@^4.0.0, log-symbols@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" @@ -10455,16 +10130,7 @@ log-symbols@^4.0.0, log-symbols@^4.1.0: chalk "^4.1.0" is-unicode-supported "^0.1.0" -log-update@^3.0.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-3.4.0.tgz#3b9a71e00ac5b1185cc193a36d654581c48f97b9" - integrity sha512-ILKe88NeMt4gmDvk/eb615U/IVn7K9KWGkoYbdatQ69Z65nj1ZzjM6fHXfcs0Uge+e+EGnMW7DY4T9yko8vWFg== - dependencies: - ansi-escapes "^3.2.0" - cli-cursor "^2.1.0" - wrap-ansi "^5.0.0" - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: +loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== @@ -10501,7 +10167,7 @@ lowercase-keys@^2.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== -lru-cache@^4.0.1, lru-cache@^4.1.5: +lru-cache@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== @@ -10563,60 +10229,17 @@ make-dir@^3.0.0, make-dir@^3.0.2: dependencies: semver "^6.0.0" -make-error@^1, make-error@^1.1.1: +make-error@1.x, make-error@^1, make-error@^1.1.1: version "1.3.6" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== -make-fetch-happen@^8.0.9: - version "8.0.14" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" - integrity sha512-EsS89h6l4vbfJEtBZnENTOFk8mCRpY5ru36Xe5bcX1KYIli2mkSHqoFsp5O1wMDvTJJzxe/4THpCTtygjeeGWQ== - dependencies: - agentkeepalive "^4.1.3" - cacache "^15.0.5" - http-cache-semantics "^4.1.0" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-lambda "^1.0.1" - lru-cache "^6.0.0" - minipass "^3.1.3" - minipass-collect "^1.0.2" - minipass-fetch "^1.3.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.4" - promise-retry "^2.0.1" - socks-proxy-agent "^5.0.0" - ssri "^8.0.0" - -make-fetch-happen@^9.0.1: - version "9.1.0" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" - integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== - dependencies: - agentkeepalive "^4.1.3" - cacache "^15.2.0" - http-cache-semantics "^4.1.0" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-lambda "^1.0.1" - lru-cache "^6.0.0" - minipass "^3.1.3" - minipass-collect "^1.0.2" - minipass-fetch "^1.3.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.4" - negotiator "^0.6.2" - promise-retry "^2.0.1" - socks-proxy-agent "^6.0.0" - ssri "^8.0.0" - -make-iterator@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/make-iterator/-/make-iterator-1.0.1.tgz#29b33f312aa8f547c4a5e490f56afcec99133ad6" - integrity sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw== +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: - kind-of "^6.0.2" + tmpl "1.0.5" map-age-cleaner@^0.1.1: version "0.1.3" @@ -10657,12 +10280,7 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -markdown-it-anchor@^8.4.1: - version "8.6.6" - resolved "https://registry.yarnpkg.com/markdown-it-anchor/-/markdown-it-anchor-8.6.6.tgz#4a12e358c9c2167ee28cb7a5f10e29d6f1ffd7ca" - integrity sha512-jRW30YGywD2ESXDc+l17AiritL0uVaSnWsb26f+68qaW9zgbIIr1f4v2Nsvc0+s0Z2N3uX6t/yAw7BwCQ1wMsA== - -markdown-it@12.3.2, markdown-it@^12.3.2: +markdown-it@12.3.2: version "12.3.2" resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-12.3.2.tgz#bf92ac92283fe983fe4de8ff8abfb5ad72cd0c90" integrity sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg== @@ -10684,26 +10302,6 @@ markdown-it@^10.0.0: mdurl "^1.0.1" uc.micro "^1.0.5" -marked@^1.1.0: - version "1.2.9" - resolved "https://registry.yarnpkg.com/marked/-/marked-1.2.9.tgz#53786f8b05d4c01a2a5a76b7d1ec9943d29d72dc" - integrity sha512-H8lIX2SvyitGX+TRdtS06m1jHMijKN/XjfH6Ooii9fvxMlh8QdqBfBDkGUpMWH2kQNrtixjzYUa3SH8ROTgRRw== - -marked@^4.0.10: - version "4.2.5" - resolved "https://registry.yarnpkg.com/marked/-/marked-4.2.5.tgz#979813dfc1252cc123a79b71b095759a32f42a5d" - integrity sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ== - -matchdep@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-2.0.0.tgz#c6f34834a0d8dbc3b37c27ee8bbcb27c7775582e" - integrity sha512-LFgVbaHIHMqCRuCZyfCtUOq9/Lnzhi7Z0KFUE2fhD54+JN2jLh3hC02RLkqauJ3U4soU6H1J3tfj/Byk7GoEjA== - dependencies: - findup-sync "^2.0.0" - micromatch "^3.0.4" - resolve "^1.4.0" - stack-trace "0.0.10" - maximatch@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/maximatch/-/maximatch-0.1.0.tgz#86cd8d6b04c9f307c05a6b9419906d0360fb13a2" @@ -10723,6 +10321,11 @@ md5.js@^1.3.4: inherits "^2.0.1" safe-buffer "^5.1.2" +mdn-data@2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" + integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== + mdn-data@2.0.28: version "2.0.28" resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba" @@ -10757,7 +10360,7 @@ mem@^4.0.0: mimic-fn "^2.0.0" p-is-promise "^2.0.0" -memfs@^3.4.12: +memfs@^3.4.1, memfs@^3.4.3: version "3.4.13" resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.4.13.tgz#248a8bd239b3c240175cd5ec548de5227fc4f345" integrity sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg== @@ -10804,7 +10407,7 @@ meow@^8.0.0: type-fest "^0.18.0" yargs-parser "^20.2.3" -merge-descriptors@1.0.1, merge-descriptors@~1.0.0: +merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== @@ -10816,13 +10419,6 @@ merge-options@1.0.1, merge-options@^1.0.0: dependencies: is-plain-obj "^1.1" -merge-source-map@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" - integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw== - dependencies: - source-map "^0.6.1" - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -10838,7 +10434,7 @@ merge@^1.2.1: resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== -methods@^1.1.1, methods@~1.1.2: +methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== @@ -10862,7 +10458,7 @@ micromatch@3.1.0: snapdragon "^0.8.1" to-regex "^3.0.1" -micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: +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== @@ -10897,7 +10493,7 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.52.0: +mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": version "1.52.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== @@ -10914,7 +10510,7 @@ mime@1.4.1: resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== -mime@1.6.0, mime@^1.4.1: +mime@1.6.0, mime@^1.4.1, mime@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -10946,6 +10542,13 @@ mini-css-extract-plugin@^2.7.2: dependencies: schema-utils "^4.0.0" +mini-css-extract-plugin@~2.4.7: + version "2.4.7" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.4.7.tgz#b9f4c4f4d727c7a3cd52a11773bb739f00177fac" + integrity sha512-euWmddf0sk9Nv1O0gfeeUAvAkoSlWncNLF77C0TP2+WoPvy8mAHKOzMajcCz2dzvyt3CNgxb1obIEVFIRxaipg== + dependencies: + schema-utils "^4.0.0" + minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -10956,26 +10559,33 @@ minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1: +minimatch@3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.5.tgz#4da8f1290ee0f0f8e83d60ca69f8f134068604a3" + integrity sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1, minimatch@^5.1.0: +minimatch@^5.0.1: version "5.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.2.tgz#0939d7d6f0898acbd1508abe534d1929368a8fff" integrity sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg== dependencies: brace-expansion "^2.0.1" -minimatch@~3.0.2: - version "3.0.8" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.8.tgz#5e6a59bd11e2ab0de1cfb843eb2d82e546c321c1" - integrity sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q== +minimatch@^5.1.0: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== dependencies: - brace-expansion "^1.1.7" + brace-expansion "^2.0.1" minimist-options@4.1.0: version "4.1.0" @@ -10994,105 +10604,11 @@ minimist-options@^3.0.1: arrify "^1.0.1" is-plain-obj "^1.1.0" -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q== - -minimist@1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== -minipass-collect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== - dependencies: - minipass "^3.0.0" - -minipass-fetch@^1.3.0, minipass-fetch@^1.3.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" - integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== - dependencies: - minipass "^3.1.0" - minipass-sized "^1.0.3" - minizlib "^2.0.0" - optionalDependencies: - encoding "^0.1.12" - -minipass-flush@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== - dependencies: - minipass "^3.0.0" - -minipass-json-stream@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" - integrity sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg== - dependencies: - jsonparse "^1.3.1" - minipass "^3.0.0" - -minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" - integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== - dependencies: - minipass "^3.0.0" - -minipass-sized@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" - integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== - dependencies: - minipass "^3.0.0" - -minipass@^2.6.0, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3, minipass@^3.1.6: - version "3.3.6" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" - integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== - dependencies: - yallist "^4.0.0" - -minipass@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.0.0.tgz#7cebb0f9fa7d56f0c5b17853cbe28838a8dbbd3b" - integrity sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw== - dependencies: - yallist "^4.0.0" - -minizlib@^1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - -minizlib@^2.0.0, minizlib@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" - integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== - dependencies: - minipass "^3.0.0" - yallist "^4.0.0" - mitt@1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/mitt/-/mitt-1.1.2.tgz#380e61480d6a615b660f07abb60d51e0a4e4bed6" @@ -11111,55 +10627,18 @@ mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp-infer-owner@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" - integrity sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw== - dependencies: - chownr "^2.0.0" - infer-owner "^1.0.4" - mkdirp "^1.0.3" - -mkdirp2@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/mkdirp2/-/mkdirp2-1.0.5.tgz#68bbe61defefafce4b48948608ec0bac942512c2" - integrity sha512-xOE9xbICroUDmG1ye2h4bZ8WBie9EGmACaco8K8cx6RlkJJrxGIqjGqztAI+NMhexXBcdGbSEzI6N3EJPevxZw== - -mkdirp@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA== - dependencies: - minimist "0.0.8" - -mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.4, mkdirp@^0.5.5, mkdirp@^0.5.6: +mkdirp@^0.5.1, mkdirp@^0.5.6: 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" -mkdirp@^1.0.3, mkdirp@^1.0.4: +mkdirp@^1.0.4, mkdirp@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mocha@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-4.0.1.tgz#0aee5a95cf69a4618820f5e51fa31717117daf1b" - integrity sha512-evDmhkoA+cBNiQQQdSKZa2b9+W2mpLoj50367lhy+Klnx9OV8XlCIhigUnn1gaTFLQCa0kdNhEGDr0hCXOQFDw== - dependencies: - browser-stdout "1.3.0" - commander "2.11.0" - debug "3.1.0" - diff "3.3.1" - escape-string-regexp "1.0.5" - glob "7.1.2" - growl "1.10.3" - he "1.1.1" - mkdirp "0.5.1" - supports-color "4.4.0" - modify-values@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" @@ -11170,11 +10649,6 @@ module-alias@^2.2.2: resolved "https://registry.yarnpkg.com/module-alias/-/module-alias-2.2.2.tgz#151cdcecc24e25739ff0aa6e51e1c5716974c0e0" integrity sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q== -module-not-found-error@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/module-not-found-error/-/module-not-found-error-1.0.1.tgz#cf8b4ff4f29640674d6cdd02b0e3bc523c2bbdc0" - integrity sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g== - moo@^0.5.1: version "0.5.2" resolved "https://registry.yarnpkg.com/moo/-/moo-0.5.2.tgz#f9fe82473bc7c184b0d32e2215d3f6e67278733c" @@ -11196,11 +10670,6 @@ mousetrap@^1.6.5: resolved "https://registry.yarnpkg.com/mousetrap/-/mousetrap-1.6.5.tgz#8a766d8c272b08393d5f56074e0b5ec183485bf9" integrity sha512-QNo4kEepaIBwiT8CDhP98umTetp+JNfQYBWvC1pc6/OAibuXtRcxZ58Qz8skvEHYvURne/7R8T5VoOI7rDsEUA== -mri@^1.1.5: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" - integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== - ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -11211,11 +10680,19 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.2: +ms@2.1.3, ms@^2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +multicast-dns@^7.2.5: + version "7.2.5" + resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-7.2.5.tgz#77eb46057f4d7adbd16d9290fa7299f6fa64cced" + integrity sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg== + dependencies: + dns-packet "^5.2.2" + thunky "^1.0.2" + multimatch@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-4.0.0.tgz#8c3c0f6e3e8449ada0af3dd29efb491a375191b3" @@ -11227,17 +10704,6 @@ multimatch@^4.0.0: arrify "^2.0.1" minimatch "^3.0.4" -multimatch@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" - integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== - dependencies: - "@types/minimatch" "^3.0.3" - array-differ "^3.0.0" - array-union "^2.1.0" - arrify "^2.0.1" - minimatch "^3.0.4" - mustache@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/mustache/-/mustache-3.1.0.tgz#9fba26e7aefc5709f07ff585abb7e0abced6c372" @@ -11248,26 +10714,11 @@ mustache@^2.3.2: resolved "https://registry.yarnpkg.com/mustache/-/mustache-2.3.2.tgz#a6d4d9c3f91d13359ab889a812954f9230a3d0c5" integrity sha512-KpMNwdQsYz3O/SBS1qJ/o3sqUJ5wSb8gb0pul8CO0S56b9Y2ALm8zCfsjPXsqGFfoNBkDwZuZIAjhsZI03gYVQ== -mute-stdout@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-1.0.1.tgz#acb0300eb4de23a7ddeec014e3e96044b3472331" - integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== - -mute-stream@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" - integrity sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ== - -mute-stream@0.0.8, mute-stream@~0.0.4: +mute-stream@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nan@^2.12.1: - version "2.17.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb" - integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ== - nanoid@^3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" @@ -11290,12 +10741,26 @@ nanomatch@^1.2.1, nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" +natural-compare-lite@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -negotiator@0.6.3, negotiator@^0.6.2: +needle@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/needle/-/needle-3.2.0.tgz#07d240ebcabfd65c76c03afae7f6defe6469df44" + integrity sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ== + dependencies: + debug "^3.2.6" + iconv-lite "^0.6.3" + sax "^1.2.4" + +negotiator@0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== @@ -11305,21 +10770,11 @@ neo-async@^2.6.0, neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -nested-error-stacks@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz#26c8a3cee6cc05fbcf1e333cd2fc3e003326c0b5" - integrity sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw== - nested-error-stacks@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.0.1.tgz#d2cc9fc5235ddb371fc44d506234339c8e4b0a4b" integrity sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A== -next-tick@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" - integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== - nice-try@^1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" @@ -11340,6 +10795,16 @@ no-case@^3.0.4: lower-case "^2.0.2" tslib "^2.0.3" +node-abort-controller@^3.0.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548" + integrity sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ== + +node-addon-api@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" + integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== + node-emoji@^1.10.0: version "1.11.0" resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c" @@ -11347,64 +10812,45 @@ node-emoji@^1.10.0: dependencies: lodash "^4.17.21" -node-fetch@2.6.7, node-fetch@^2.1.2, node-fetch@^2.6.1, node-fetch@^2.6.7: +node-fetch@2.6.7, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== +node-fetch@^2.1.2, node-fetch@^2.6.0: + version "2.6.9" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" + integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" + whatwg-url "^5.0.0" -node-gyp@^5.0.2: - version "5.1.1" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" - integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.2" - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.1.2" - request "^2.88.0" - rimraf "^2.6.3" - semver "^5.7.1" - tar "^4.4.12" - which "^1.3.1" +node-forge@^1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" + integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== -node-gyp@^7.1.0: - version "7.1.2" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" - integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.3" - nopt "^5.0.0" - npmlog "^4.1.2" - request "^2.88.2" - rimraf "^3.0.2" - semver "^7.3.2" - tar "^6.0.2" - which "^2.0.2" +node-gyp-build@^4.3.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.0.tgz#0c52e4cbf54bbd28b709820ef7b6a3c2d6209055" + integrity sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ== -node-modules-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" - integrity sha512-JMaRS9L4wSRIR+6PTVEikTrq/lMGEZR43a48ETeilY0Q0iMwVnccMFrUM1k+tNzmYuIU0Vh710bCUqHX+/+ctQ== +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== node-releases@^2.0.6: version "2.0.8" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.8.tgz#0f349cdc8fcfa39a92ac0be9bc48b7706292b9ae" integrity sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A== +node-releases@^2.0.8: + version "2.0.10" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" + integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== + noms@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" @@ -11413,14 +10859,6 @@ noms@0.0.0: inherits "^2.0.1" readable-stream "~1.0.31" -nopt@^4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== - dependencies: - abbrev "1" - osenv "^0.1.4" - nopt@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" @@ -11435,7 +10873,7 @@ nopt@^6.0.0: dependencies: abbrev "^1.0.0" -normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -11445,7 +10883,7 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: +normalize-package-data@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== @@ -11460,122 +10898,27 @@ normalize-path@^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" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== - -normalize-url@^4.1.0: - version "4.5.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" - integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== - -normalize-url@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" - integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== - -now-and-later@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/now-and-later/-/now-and-later-2.0.1.tgz#8e579c8685764a7cc02cb680380e94f43ccb1f7c" - integrity sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ== - dependencies: - once "^1.3.2" - -npm-bundled@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" - integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== - dependencies: - npm-normalize-package-bin "^1.0.1" - -npm-install-checks@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" - integrity sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w== - dependencies: - semver "^7.1.1" - -npm-lifecycle@^3.1.5: - version "3.1.5" - resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" - integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== - dependencies: - byline "^5.0.0" - graceful-fs "^4.1.15" - node-gyp "^5.0.2" - resolve-from "^4.0.0" - slide "^1.1.6" - uid-number "0.0.6" - umask "^1.1.0" - which "^1.3.1" - -npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== - -npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-package-arg@^8.1.2, npm-package-arg@^8.1.5: - version "8.1.5" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" - integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== - dependencies: - hosted-git-info "^4.0.1" - semver "^7.3.4" - validate-npm-package-name "^3.0.0" + remove-trailing-separator "^1.0.1" -npm-packlist@^2.1.4: - version "2.2.2" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" - integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== - dependencies: - glob "^7.1.6" - ignore-walk "^3.0.3" - npm-bundled "^1.1.1" - npm-normalize-package-bin "^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" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" - integrity sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA== - dependencies: - npm-install-checks "^4.0.0" - npm-normalize-package-bin "^1.0.1" - npm-package-arg "^8.1.2" - semver "^7.3.4" +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== -npm-registry-fetch@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" - integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== - dependencies: - make-fetch-happen "^9.0.1" - minipass "^3.1.3" - minipass-fetch "^1.3.0" - minipass-json-stream "^1.0.1" - minizlib "^2.0.0" - npm-package-arg "^8.0.0" - -npm-registry-fetch@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661" - integrity sha512-PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA== - dependencies: - "@npmcli/ci-detect" "^1.0.0" - lru-cache "^6.0.0" - make-fetch-happen "^8.0.9" - minipass "^3.1.3" - minipass-fetch "^1.3.0" - minipass-json-stream "^1.0.1" - minizlib "^2.0.0" - npm-package-arg "^8.0.0" +normalize-url@^4.1.0: + version "4.5.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" + integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== + +normalize-url@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== npm-run-path@^2.0.0: version "2.0.2" @@ -11584,23 +10927,13 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npm-run-path@^4.0.0, npm-run-path@^4.0.1: +npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" -npmlog@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - nth-check@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" @@ -11608,18 +10941,6 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" -nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - -null-check@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" - integrity sha512-j8ZNHg19TyIQOWCGeeQJBuu6xZYIEurf8M1Qsfd8mFrGEfIZytbw18YjKWg+LcO25NowXGZXZpKAx+Ui3TFfDw== - number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -11639,36 +10960,61 @@ nwsapi@^2.0.9: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw== -nyc@^14.1.1: - version "14.1.1" - resolved "https://registry.yarnpkg.com/nyc/-/nyc-14.1.1.tgz#151d64a6a9f9f5908a1b73233931e4a0a3075eeb" - integrity sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw== - dependencies: - archy "^1.0.0" - caching-transform "^3.0.2" - convert-source-map "^1.6.0" - cp-file "^6.2.0" - find-cache-dir "^2.1.0" - find-up "^3.0.0" - foreground-child "^1.5.6" - glob "^7.1.3" - istanbul-lib-coverage "^2.0.5" - istanbul-lib-hook "^2.0.7" - istanbul-lib-instrument "^3.3.0" - istanbul-lib-report "^2.0.8" - istanbul-lib-source-maps "^3.0.6" - istanbul-reports "^2.2.4" - js-yaml "^3.13.1" - make-dir "^2.1.0" - merge-source-map "^1.1.0" - resolve-from "^4.0.0" - rimraf "^2.6.3" - signal-exit "^3.0.2" - spawn-wrap "^1.4.2" - test-exclude "^5.2.3" - uuid "^3.3.2" - yargs "^13.2.2" - yargs-parser "^13.0.0" +nwsapi@^2.2.2: + version "2.2.5" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.5.tgz#a52744c61b3889dd44b0a158687add39b8d935e2" + integrity sha512-6xpotnECFy/og7tKSBVmUNft7J3jyXAka4XvG6AUhFWRz+Q/Ljus7znJAA3bxColfQLdS+XsjoodtJfCgeTEFQ== + +nx@16.3.1: + version "16.3.1" + resolved "https://registry.yarnpkg.com/nx/-/nx-16.3.1.tgz#154e060c52940f7da4319b113452b073a1b4cba5" + integrity sha512-/66TJEcJAe7PAhISQ8jkEiQCUdOcQqJbQcEwmSyapJ3C+yQjIaYcxvQ8SygwsopRJivEBb/LOKgWlyU1s0DryQ== + dependencies: + "@nrwl/tao" "16.3.1" + "@parcel/watcher" "2.0.4" + "@yarnpkg/lockfile" "^1.1.0" + "@yarnpkg/parsers" "^3.0.0-rc.18" + "@zkochan/js-yaml" "0.0.6" + axios "^1.0.0" + chalk "^4.1.0" + cli-cursor "3.1.0" + cli-spinners "2.6.1" + cliui "^7.0.2" + dotenv "~10.0.0" + enquirer "~2.3.6" + fast-glob "3.2.7" + figures "3.2.0" + flat "^5.0.2" + fs-extra "^11.1.0" + glob "7.1.4" + ignore "^5.0.4" + js-yaml "4.1.0" + jsonc-parser "3.2.0" + lines-and-columns "~2.0.3" + minimatch "3.0.5" + npm-run-path "^4.0.1" + open "^8.4.0" + semver "7.3.4" + string-width "^4.2.3" + strong-log-transformer "^2.1.0" + tar-stream "~2.2.0" + tmp "~0.2.1" + tsconfig-paths "^4.1.2" + tslib "^2.3.0" + v8-compile-cache "2.3.0" + yargs "^17.6.2" + yargs-parser "21.1.1" + optionalDependencies: + "@nx/nx-darwin-arm64" "16.3.1" + "@nx/nx-darwin-x64" "16.3.1" + "@nx/nx-freebsd-x64" "16.3.1" + "@nx/nx-linux-arm-gnueabihf" "16.3.1" + "@nx/nx-linux-arm64-gnu" "16.3.1" + "@nx/nx-linux-arm64-musl" "16.3.1" + "@nx/nx-linux-x64-gnu" "16.3.1" + "@nx/nx-linux-x64-musl" "16.3.1" + "@nx/nx-win32-arm64-msvc" "16.3.1" + "@nx/nx-win32-x64-msvc" "16.3.1" oauth-sign@~0.9.0: version "0.9.0" @@ -11694,11 +11040,6 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-get@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/object-get/-/object-get-2.1.1.tgz#1dad63baf6d94df184d1c58756cc9be55b174dac" - integrity sha512-7n4IpLMzGGcLEMiQKsNR7vCe+N5E9LORFrtNUVy4sO3dj9a3HedZCxEL2T7QuLhcHN1NBuBsMOKaOsAYI9IIvg== - object-hash@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.1.tgz#fde452098a951cb145f039bb7d455449ddc126df" @@ -11723,11 +11064,6 @@ object-keys@~0.2.0: indexof "~0.0.1" is "~0.2.6" -object-to-spawn-args@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object-to-spawn-args/-/object-to-spawn-args-2.0.1.tgz#cf8b8e3c9b3589137a469cac90391f44870144a5" - integrity sha512-6FuKFQ39cOID+BMZ3QaphcC8Y4cw6LXBLyIgPU+OhIYwviJamPAn+4mITapnSBQrejB+NNp+FMskhD8Cq+Ys3w== - object-visit@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" @@ -11735,7 +11071,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.4: +object.assign@^4.1.4: version "4.1.4" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== @@ -11745,54 +11081,23 @@ object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.4: has-symbols "^1.0.3" object-keys "^1.1.1" -object.defaults@^1.0.0, object.defaults@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf" - integrity sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA== - dependencies: - array-each "^1.0.1" - array-slice "^1.0.0" - for-own "^1.0.0" - isobject "^3.0.0" - -object.getownpropertydescriptors@^2.0.3: - version "2.1.5" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz#db5a9002489b64eef903df81d6623c07e5b4b4d3" - integrity sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw== - dependencies: - array.prototype.reduce "^1.0.5" - call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" - -object.map@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object.map/-/object.map-1.0.1.tgz#cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37" - integrity sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w== - dependencies: - for-own "^1.0.0" - make-iterator "^1.0.0" - -object.pick@^1.2.0, object.pick@^1.3.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.reduce@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object.reduce/-/object.reduce-1.0.1.tgz#6fe348f2ac7fa0f95ca621226599096825bb03ad" - integrity sha512-naLhxxpUESbNkRqc35oQ2scZSJueHGQNUfMW/0U37IgN6tE2dgDWg3whf+NEliy3F/QysrO48XKUz/nGPe+AQw== - dependencies: - for-own "^1.0.0" - make-iterator "^1.0.0" - objectorarray@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/objectorarray/-/objectorarray-1.0.5.tgz#2c05248bbefabd8f43ad13b41085951aac5e68a5" integrity sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg== +obuf@^1.0.0, obuf@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== + octal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/octal/-/octal-1.0.0.tgz#63e7162a68efbeb9e213588d58e989d1e5c4530b" @@ -11817,7 +11122,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.3.2, once@^1.4.0: +once@^1.3.0, once@^1.3.1, once@^1.4.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== @@ -11847,7 +11152,16 @@ open@8.0.9: is-docker "^2.1.1" is-wsl "^2.2.0" -open@^8.0.4: +open@^8.0.9: + version "8.4.1" + resolved "https://registry.yarnpkg.com/open/-/open-8.4.1.tgz#2ab3754c07f5d1f99a7a8d6a82737c95e3101cff" + integrity sha512-/4b7qZNhv6Uhd7jjnREh1NjnPxlTq+XNWPG88Ydkj5AILcA5m3ajvcg57pB24EQjKv0dK62XnDqk9c/hkIG5Kg== + dependencies: + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" + +open@^8.4.0: version "8.4.0" resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== @@ -11873,7 +11187,7 @@ opn@5.3.0: dependencies: is-wsl "^1.1.0" -optionator@^0.8.1, optionator@^0.8.2, optionator@^0.8.3: +optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== @@ -11885,6 +11199,18 @@ optionator@^0.8.1, optionator@^0.8.2, optionator@^0.8.3: type-check "~0.3.2" word-wrap "~1.2.3" +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + ora@5.4.0: version "5.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.0.tgz#42eda4855835b9cd14d33864c97a3c95a3f56bf4" @@ -11900,25 +11226,26 @@ ora@5.4.0: strip-ansi "^6.0.0" wcwidth "^1.0.1" -ordered-read-streams@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" - integrity sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw== +ora@^5.4.1: + version "5.4.1" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" + integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== dependencies: - readable-stream "^2.0.1" + bl "^4.1.0" + chalk "^4.1.0" + cli-cursor "^3.1.0" + cli-spinners "^2.5.0" + is-interactive "^1.0.0" + is-unicode-supported "^0.1.0" + log-symbols "^4.1.0" + strip-ansi "^6.0.0" + wcwidth "^1.0.1" -os-homedir@^1.0.0, os-homedir@^1.0.1: +os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g== - dependencies: - lcid "^1.0.0" - os-locale@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" @@ -11928,31 +11255,11 @@ os-locale@^3.0.0: lcid "^2.0.0" mem "^4.0.0" -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: +os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -own-or-env@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/own-or-env/-/own-or-env-1.0.2.tgz#84e78d2d5128f7ee8a59f741ad5aafb4256a7c89" - integrity sha512-NQ7v0fliWtK7Lkb+WdFqe6ky9XAzYmlkXthQrBbzlYbmFKoAYbDDcwmOm6q8kOuwSRXW8bdL5ORksploUJmWgw== - dependencies: - own-or "^1.0.0" - -own-or@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/own-or/-/own-or-1.0.0.tgz#4e877fbeda9a2ec8000fbc0bcae39645ee8bf8dc" - integrity sha512-NfZr5+Tdf6MB8UI9GLvKRs4cXY8/yB0w3xtt84xFdWy8hkGjn+JFc60VhzS/hFRfbyxFcGYMTjnF4Me+RbbqrA== - p-cancelable@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" @@ -11987,7 +11294,7 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-limit@^3.0.2: +p-limit@^3.0.2, p-limit@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== @@ -12022,47 +11329,18 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" -p-map-series@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-2.1.0.tgz#7560d4c452d9da0c07e692fdbfe6e2c81a2a91f2" - integrity sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q== - p-map@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - -p-pipe@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-3.1.0.tgz#48b57c922aa2e1af6a6404cb7c6bf0eb9cc8e60e" - integrity sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw== - -p-queue@^6.6.2: - version "6.6.2" - resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" - integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== - dependencies: - eventemitter3 "^4.0.4" - p-timeout "^3.2.0" - -p-reduce@^2.0.0, p-reduce@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" - integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== - -p-timeout@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" - integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== +p-retry@^4.5.0: + version "4.6.2" + resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" + integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ== dependencies: - p-finally "^1.0.0" + "@types/retry" "0.12.0" + retry "^0.13.1" p-try@^1.0.0: version "1.0.0" @@ -12074,23 +11352,6 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -p-waterfall@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-2.1.1.tgz#63153a774f472ccdc4eb281cdb2967fcf158b2ee" - integrity sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw== - dependencies: - p-reduce "^2.0.0" - -package-hash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/package-hash/-/package-hash-3.0.0.tgz#50183f2d36c9e3e528ea0a8605dff57ce976f88e" - integrity sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA== - dependencies: - graceful-fs "^4.1.15" - hasha "^3.0.0" - lodash.flattendeep "^4.4.0" - release-zalgo "^1.0.0" - package-json@^6.3.0: version "6.5.0" resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" @@ -12101,31 +11362,6 @@ package-json@^6.3.0: registry-url "^5.0.0" semver "^6.2.0" -pacote@^11.2.6: - version "11.3.5" - resolved "https://registry.yarnpkg.com/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" - integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== - dependencies: - "@npmcli/git" "^2.1.0" - "@npmcli/installed-package-contents" "^1.0.6" - "@npmcli/promise-spawn" "^1.2.0" - "@npmcli/run-script" "^1.8.2" - cacache "^15.0.5" - chownr "^2.0.0" - fs-minipass "^2.1.0" - infer-owner "^1.0.4" - minipass "^3.1.3" - mkdirp "^1.0.3" - npm-package-arg "^8.0.1" - npm-packlist "^2.1.4" - npm-pick-manifest "^6.0.0" - npm-registry-fetch "^11.0.0" - promise-retry "^2.0.1" - read-package-json-fast "^2.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.1.0" - pad@^2.0.3: version "2.3.0" resolved "https://registry.yarnpkg.com/pad/-/pad-2.3.0.tgz#d604f0d5433c3e1500e207279cc5cd0234b1c2aa" @@ -12173,7 +11409,7 @@ parse-author@^2.0.0: dependencies: author-regex "^1.0.0" -parse-filepath@^1.0.1, parse-filepath@^1.0.2: +parse-filepath@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" integrity sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q== @@ -12187,13 +11423,6 @@ parse-github-url@1.0.2: resolved "https://registry.yarnpkg.com/parse-github-url/-/parse-github-url-1.0.2.tgz#242d3b65cbcdda14bb50439e3242acf6971db395" integrity sha512-kgBf6avCbO3Cn6+RnzRGLkUsv4ZVqv/VfAYkRsyBcgkshNvVBkRn1FEZcW0Jb+npXQWm2vHPnnOqFteZxRRGNw== -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== - dependencies: - error-ex "^1.2.0" - parse-json@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" @@ -12202,7 +11431,7 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-json@^5.0.0: +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" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -12222,47 +11451,27 @@ parse-ms@^2.1.0: resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-2.1.0.tgz#348565a753d4391fa524029956b172cb7753097d" integrity sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA== -parse-node-version@^1.0.0: +parse-node-version@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== -parse-passwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== - -parse-path@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.4.tgz#4bf424e6b743fb080831f03b536af9fc43f0ffea" - integrity sha512-Z2lWUis7jlmXC1jeOG9giRO2+FsuyNipeQ43HAjqAZjwSe3SEf+q/84FGPHoso3kyntbxa4c4i77t3m6fGf8cw== - dependencies: - is-ssh "^1.3.0" - protocols "^1.4.0" - qs "^6.9.4" - query-string "^6.13.8" - parse-srcset@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1" integrity sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q== -parse-url@^6.0.0: - version "6.0.5" - resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-6.0.5.tgz#4acab8982cef1846a0f8675fa686cef24b2f6f9b" - integrity sha512-e35AeLTSIlkw/5GFq70IN7po8fmDUjpDPY1rIK+VubRfsUvBonjQ+PBZG+vWMACnQSmNlvl524IucoDmcioMxA== - dependencies: - is-ssh "^1.3.0" - normalize-url "^6.1.0" - parse-path "^4.0.0" - protocols "^1.4.0" +parse5@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" + integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== parse5@5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== -parse5@^7.0.0: +parse5@^7.0.0, parse5@^7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== @@ -12287,23 +11496,6 @@ pascalcase@^0.1.1: resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== -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@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-1.0.0.tgz#d5a8998eb71ef37a74c34eb0d9eba6e878eea081" - integrity sha512-BD2vrQBPFI3VkVKzTrOmaG2WtPQoduNXu1A5tLYMOW8RN6G9CdhdSkmw+ljxUkJcj4pbXQGw0lzl7MFLnhba9Q== - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== - dependencies: - pinkie-promise "^2.0.0" - path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -12314,7 +11506,7 @@ path-exists@^4.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: +path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== @@ -12356,15 +11548,6 @@ path-to-regexp@0.1.7: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -12395,6 +11578,11 @@ pbkdf2@^3.0.3: safe-buffer "^5.0.1" sha.js "^2.4.8" +pegjs@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/pegjs/-/pegjs-0.10.0.tgz#cf8bafae6eddff4b5a7efb185269eaaf4610ddbd" + integrity sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow== + performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" @@ -12410,7 +11598,7 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -12447,12 +11635,10 @@ pinkie@^2.0.0: resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== -pirates@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-3.0.2.tgz#7e6f85413fd9161ab4e12b539b06010d85954bb9" - integrity sha512-c5CgUJq6H2k6MJz72Ak1F5sN9n9wlSlJyEnwvpm9/y3WB4E3pHBDT2c6PEiS1vyJvq2bUxUAIu0EGf8Cx4Ic7Q== - dependencies: - node-modules-regexp "^1.0.0" +pirates@^4.0.4: + version "4.0.5" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" + integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== pkg-conf@^2.1.0: version "2.1.0" @@ -12462,13 +11648,6 @@ pkg-conf@^2.1.0: find-up "^2.0.0" load-json-file "^4.0.0" -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.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -12483,11 +11662,6 @@ please-upgrade-node@^3.2.0: dependencies: semver-compare "^1.0.0" -pluralize@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" - integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow== - pn@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" @@ -12515,6 +11689,52 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== +postcss-calc@^8.2.3: + version "8.2.4" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" + integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== + dependencies: + postcss-selector-parser "^6.0.9" + postcss-value-parser "^4.2.0" + +postcss-colormin@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.0.tgz#3cee9e5ca62b2c27e84fce63affc0cfb5901956a" + integrity sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg== + dependencies: + browserslist "^4.16.6" + caniuse-api "^3.0.0" + colord "^2.9.1" + postcss-value-parser "^4.2.0" + +postcss-convert-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz#04998bb9ba6b65aa31035d669a6af342c5f9d393" + integrity sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA== + dependencies: + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" + +postcss-discard-comments@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz#8df5e81d2925af2780075840c1526f0660e53696" + integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ== + +postcss-discard-duplicates@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" + integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== + +postcss-discard-empty@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" + integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== + +postcss-discard-overridden@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" + integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== + postcss-helpers@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/postcss-helpers/-/postcss-helpers-0.3.2.tgz#cf8721d8d6605d2577302f966afefda1fea9929c" @@ -12522,6 +11742,24 @@ postcss-helpers@^0.3.2: dependencies: urijs "^1.18.12" +postcss-import@~14.1.0: + version "14.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-14.1.0.tgz#a7333ffe32f0b8795303ee9e40215dac922781f0" + integrity sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw== + dependencies: + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-loader@^6.1.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-6.2.1.tgz#0895f7346b1702103d30fdc66e4d494a93c008ef" + integrity sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q== + dependencies: + cosmiconfig "^7.0.0" + klona "^2.0.5" + semver "^7.3.5" + postcss-loader@^7.0.2: version "7.0.2" resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-7.0.2.tgz#b53ff44a26fba3688eee92a048c7f2d4802e23bb" @@ -12531,6 +11769,56 @@ postcss-loader@^7.0.2: klona "^2.0.5" semver "^7.3.8" +postcss-merge-longhand@^5.1.7: + version "5.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz#24a1bdf402d9ef0e70f568f39bdc0344d568fb16" + integrity sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ== + dependencies: + postcss-value-parser "^4.2.0" + stylehacks "^5.1.1" + +postcss-merge-rules@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.3.tgz#8f97679e67cc8d08677a6519afca41edf2220894" + integrity sha512-LbLd7uFC00vpOuMvyZop8+vvhnfRGpp2S+IMQKeuOZZapPRY4SMq5ErjQeHbHsjCUgJkRNrlU+LmxsKIqPKQlA== + dependencies: + browserslist "^4.21.4" + caniuse-api "^3.0.0" + cssnano-utils "^3.1.0" + postcss-selector-parser "^6.0.5" + +postcss-minify-font-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" + integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-minify-gradients@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" + integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== + dependencies: + colord "^2.9.1" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" + +postcss-minify-params@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz#c06a6c787128b3208b38c9364cfc40c8aa5d7352" + integrity sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw== + dependencies: + browserslist "^4.21.4" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" + +postcss-minify-selectors@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz#d4e7e6b46147b8117ea9325a915a801d5fe656c6" + integrity sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg== + dependencies: + postcss-selector-parser "^6.0.5" + postcss-modules-extract-imports@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" @@ -12545,26 +11833,112 @@ postcss-modules-local-by-default@^4.0.0: postcss-selector-parser "^6.0.2" postcss-value-parser "^4.1.0" -postcss-modules-scope@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== +postcss-modules-scope@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" + integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== + dependencies: + postcss-selector-parser "^6.0.4" + +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== + dependencies: + icss-utils "^5.0.0" + +postcss-normalize-charset@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" + integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== + +postcss-normalize-display-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" + integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-positions@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz#ef97279d894087b59325b45c47f1e863daefbb92" + integrity sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-repeat-style@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz#e9eb96805204f4766df66fd09ed2e13545420fb2" + integrity sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-string@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" + integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-timing-functions@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" + integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-unicode@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz#f67297fca3fea7f17e0d2caa40769afc487aa030" + integrity sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA== + dependencies: + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" + +postcss-normalize-url@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" + integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== + dependencies: + normalize-url "^6.0.1" + postcss-value-parser "^4.2.0" + +postcss-normalize-whitespace@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" + integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== dependencies: - postcss-selector-parser "^6.0.4" + postcss-value-parser "^4.2.0" -postcss-modules-values@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" - integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== +postcss-ordered-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz#b6fd2bd10f937b23d86bc829c69e7732ce76ea38" + integrity sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ== dependencies: - icss-utils "^5.0.0" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" postcss-prefix-selector@^1.6.0: version "1.16.0" resolved "https://registry.yarnpkg.com/postcss-prefix-selector/-/postcss-prefix-selector-1.16.0.tgz#ad5b56f9a73a2c090ca7161049632c9d89bcb404" integrity sha512-rdVMIi7Q4B0XbXqNUEI+Z4E+pueiu/CS5E6vRCQommzdQ/sgsS4dK42U7GX8oJR+TJOtT+Qv3GkNo6iijUMp3Q== -postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: +postcss-reduce-initial@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.1.tgz#c18b7dfb88aee24b1f8e4936541c29adbd35224e" + integrity sha512-//jeDqWcHPuXGZLoolFrUXBDyuEGbr9S2rMo19bkTIjBQ4PqkaO+oI8wua5BOUxpfi97i3PCoInsiFIEBfkm9w== + dependencies: + browserslist "^4.21.4" + caniuse-api "^3.0.0" + +postcss-reduce-transforms@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" + integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9: version "6.0.11" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz#2e41dc39b7ad74046e1615185185cd0b17d0c8dc" integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g== @@ -12572,7 +11946,22 @@ postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: +postcss-svgo@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" + integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== + dependencies: + postcss-value-parser "^4.2.0" + svgo "^2.7.0" + +postcss-unique-selectors@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" + integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== + dependencies: + postcss-selector-parser "^6.0.5" + +postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== @@ -12604,7 +11993,7 @@ postcss@^7.0.14: picocolors "^0.2.1" source-map "^0.6.1" -postcss@^8.2.8, postcss@^8.4.19: +postcss@^8.2.8, postcss@^8.3.5, postcss@^8.4.14, postcss@^8.4.19: version "8.4.21" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.21.tgz#c639b719a57efc3187b13a1d765675485f4134f4" integrity sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg== @@ -12729,23 +12118,21 @@ postsvg@^2.2.7: posthtml-parser "^0.4.1" posthtml-render "^1.1.2" -preact-render-to-string@^5.1.1: - version "5.2.6" - resolved "https://registry.yarnpkg.com/preact-render-to-string/-/preact-render-to-string-5.2.6.tgz#0ff0c86cd118d30affb825193f18e92bd59d0604" - integrity sha512-JyhErpYOvBV1hEPwIxc/fHWXPfnEGdRKxc8gFdAZ7XV4tlzyzG847XAyEZqoDnynP88akM4eaHcSOzNcLWFguw== - dependencies: - pretty-format "^3.8.0" - preact@^10.0.5: - version "10.11.3" - resolved "https://registry.yarnpkg.com/preact/-/preact-10.11.3.tgz#8a7e4ba19d3992c488b0785afcc0f8aa13c78d19" - integrity sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg== + version "10.12.0" + resolved "https://registry.yarnpkg.com/preact/-/preact-10.12.0.tgz#5126a361365b20dbced92e8eea459bf094069909" + integrity sha512-+w8ix+huD8CNZemheC53IPjMUFk921i02o30u0K6h53spMX41y/QhVDnG/nU2k42/69tvqWmVsgNLIiwRAcmxg== preload-webpack-plugin@^3.0.0-beta.3: version "3.0.0-beta.4" resolved "https://registry.yarnpkg.com/preload-webpack-plugin/-/preload-webpack-plugin-3.0.0-beta.4.tgz#b8a36046df3b4a1b61db55d92f1a5aebdb99d246" integrity sha512-6hhh0AswCbp/U4EPVN4fbK2wiDkXhmgjjgEYEmXa21UYwjYzCIgh3ZRMXM21ZPLfbQGpdFuSL3zFslU+edjpwg== +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -12763,11 +12150,6 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.1.tgz#4e1fd11c34e2421bc1da9aea9bd8127cd0a35efc" - integrity sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg== - prettier@^2.8.1: version "2.8.2" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.2.tgz#c4ea1b5b454d7c4b59966db2e06ed7eec5dfd160" @@ -12781,15 +12163,14 @@ pretty-error@^4.0.0: lodash "^4.17.20" renderkid "^3.0.0" -pretty-format@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-3.8.0.tgz#bfbed56d5e9a776645f4b1ff7aa1a3ac4fa3c385" - integrity sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew== - -pretty-hrtime@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" - integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== +pretty-format@^29.0.0, pretty-format@^29.5.0: + version "29.5.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.5.0.tgz#283134e74f70e2e3e7229336de0e4fce94ccde5a" + integrity sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw== + dependencies: + "@jest/schemas" "^29.4.3" + ansi-styles "^5.0.0" + react-is "^18.0.0" pretty-ms@^0.2.1: version "0.2.2" @@ -12805,18 +12186,6 @@ pretty-ms@^7.0.0: dependencies: parse-ms "^2.1.0" -pretty-quick@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/pretty-quick/-/pretty-quick-3.1.3.tgz#15281108c0ddf446675157ca40240099157b638e" - integrity sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA== - dependencies: - chalk "^3.0.0" - execa "^4.0.0" - find-up "^4.1.0" - ignore "^5.1.4" - mri "^1.1.5" - multimatch "^4.0.0" - pretty-time@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" @@ -12836,26 +12205,16 @@ prismjs@^1.25.0, prismjs@^1.26.0: resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.29.0.tgz#f113555a8fa9b57c35e637bba27509dcf802dd12" integrity sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q== -private@^0.1.6, private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - process-es6@^0.11.2: version "0.11.6" resolved "https://registry.yarnpkg.com/process-es6/-/process-es6-0.11.6.tgz#c6bb389f9a951f82bd4eb169600105bd2ff9c778" integrity sha512-GYBRQtL4v3wgigq10Pv58jmTbFXlIiTbSfgnNqZLY0ldUPqy1rRxDI5fCjoCpnM6TqmHQI8ydzTBXW86OYc0gA== -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== -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - promise-each@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/promise-each/-/promise-each-2.2.0.tgz#3353174eff2694481037e04e01f77aa0fb6d1b60" @@ -12863,34 +12222,22 @@ promise-each@^2.2.0: dependencies: any-promise "^0.1.0" -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== - -promise-retry@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" - integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== - dependencies: - err-code "^2.0.2" - retry "^0.12.0" - -promise@^7.0.1, promise@^7.1.1: +promise@^7.0.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== dependencies: asap "~2.0.3" -promzard@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" - integrity sha512-JZeYqd7UAcHCwI+sTOeUDYkvEU+1bQ7iE0UT1MgB/tERkAPkesW46MrpIySzODi+owTjZtiF8Ay5j9m60KmMBw== +prompts@^2.0.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== dependencies: - read "1" + kleur "^3.0.3" + sisteransi "^1.0.5" -prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.2: +prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.2: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -12904,16 +12251,6 @@ proto-list@~1.2.1: resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== -protocols@^1.4.0: - version "1.4.8" - resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" - integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== - -protocols@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" - integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== - proxy-addr@~2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" @@ -12922,20 +12259,16 @@ proxy-addr@~2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + proxy-middleware@0.15.0: version "0.15.0" resolved "https://registry.yarnpkg.com/proxy-middleware/-/proxy-middleware-0.15.0.tgz#a3fdf1befb730f951965872ac2f6074c61477a56" integrity sha512-EGCG8SeoIRVMhsqHQUdDigB2i7qU7fCsWASwn54+nPutYO8n4q6EiwMzyfWlC+dzRFExP+kvcnDFdBDHoZBU7Q== -proxyquire@2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/proxyquire/-/proxyquire-2.1.3.tgz#2049a7eefa10a9a953346a18e54aab2b4268df39" - integrity sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg== - dependencies: - fill-keys "^1.0.2" - module-not-found-error "^1.0.1" - resolve "^1.11.1" - prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" @@ -12946,7 +12279,7 @@ pseudomap@^1.0.2: resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== -psl@^1.1.28: +psl@^1.1.28, psl@^1.1.33: version "1.9.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== @@ -13066,14 +12399,6 @@ pug@^3.0.2: pug-runtime "^3.0.1" pug-strip-comments "^2.0.0" -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" @@ -13082,16 +12407,7 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -pumpify@^1.3.5: - 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@^2.0.0, punycode@^2.1.0, punycode@^2.1.1: +punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== @@ -13103,6 +12419,11 @@ pupa@^2.1.1: dependencies: escape-goat "^2.0.0" +pure-rand@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.2.tgz#a9c2ddcae9b68d736a8163036f088a2781c8b306" + integrity sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ== + pwa-helpers@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/pwa-helpers/-/pwa-helpers-0.9.1.tgz#9ea22fa1996ab97df73b276cae962621c3fd2532" @@ -13113,7 +12434,7 @@ q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== -qs@6.11.0, qs@^6.11.0, qs@^6.5.1, qs@^6.9.4: +qs@6.11.0, qs@^6.11.0, qs@^6.4.0: version "6.11.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== @@ -13133,7 +12454,7 @@ query-string@^4.3.2: object-assign "^4.1.0" strict-uri-encode "^1.0.0" -query-string@^6.1.0, query-string@^6.13.8: +query-string@^6.1.0: version "6.14.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== @@ -13143,6 +12464,11 @@ query-string@^6.1.0, query-string@^6.13.8: split-on-first "^1.0.0" strict-uri-encode "^2.0.0" +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -13216,11 +12542,6 @@ react-autowhatever@^10.1.2: react-themeable "^1.1.0" section-iterator "^2.0.0" -react-dom@15.3.2: - version "15.3.2" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-15.3.2.tgz#c46b0aa5380d7b838e7a59c4a7beff2ed315531f" - integrity sha512-FZuPYXNZx/xRYyE41uPlLpXAVwbQ4gyB38xPDu+osflCntg5MgIfBAmbhEsKkbzTBYWifjzrVsRzbncHFIPLkw== - react-dom@^16.8.6: version "16.14.0" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.14.0.tgz#7ad838ec29a777fb3c75c3a190f661cf92ab8b89" @@ -13243,15 +12564,10 @@ react-is@^16.13.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -react-reconciler@^0.24.0: - version "0.24.0" - resolved "https://registry.yarnpkg.com/react-reconciler/-/react-reconciler-0.24.0.tgz#5a396b2c2f5efe8554134a5935f49f546723f2dd" - integrity sha512-gAGnwWkf+NOTig9oOowqid9O0HjTDC+XVGBCAmJYYJ2A2cN/O4gDdIuuUQjv8A4v6GDwVfJkagpBBLW5OW9HSw== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.18.0" +react-is@^18.0.0: + version "18.2.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" + integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== react-themeable@^1.1.0: version "1.1.0" @@ -13260,93 +12576,12 @@ react-themeable@^1.1.0: dependencies: object-assign "^3.0.0" -react@15.3.2: - version "15.3.2" - resolved "https://registry.yarnpkg.com/react/-/react-15.3.2.tgz#a7bccd2fee8af126b0317e222c28d1d54528d09e" - integrity sha512-yuJfSdf7yIqy2FrRFuepZtHEBRoatL/eGiZmgXe6d4jeNxWM0YZIacgXlabP9P2W9bPcmRBJOCXBqpP72lsTVA== - dependencies: - fbjs "^0.8.4" - loose-envify "^1.1.0" - object-assign "^4.1.0" - -react@16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.2.0.tgz#a31bd2dab89bff65d42134fa187f24d054c273ba" - integrity sha512-ZmIomM7EE1DvPEnSFAHZn9Vs9zJl5A9H7el0EGTE6ZbW9FKe/14IYAlPbC8iH25YarEQxZL+E8VW7Mi7kfQrDQ== - dependencies: - fbjs "^0.8.16" - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.0" - -react@^16.12.0: - version "16.14.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d" - integrity sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - -read-cmd-shim@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" - integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== - -read-package-json-fast@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" - integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== - dependencies: - json-parse-even-better-errors "^2.3.0" - npm-normalize-package-bin "^1.0.1" - -read-package-json@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" - integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^2.0.0" - npm-normalize-package-bin "^1.0.0" - -read-package-json@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" - integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^3.0.0" - npm-normalize-package-bin "^1.0.0" - -read-package-json@^4.1.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-4.1.2.tgz#b444d047de7c75d4a160cb056d00c0693c1df703" - integrity sha512-Dqer4pqzamDE2O4M55xp1qZMuLPqi4ldk2ya648FOMHRjwMzFhuxVrG04wd0c38IsvkVdr3vgHI6z+QTPdAjrQ== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^3.0.0" - npm-normalize-package-bin "^1.0.0" - -read-package-tree@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" - integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== - dependencies: - read-package-json "^2.0.0" - readdir-scoped-modules "^1.0.0" - util-promisify "^2.1.0" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" + pify "^2.3.0" read-pkg-up@^3.0.0: version "3.0.0" @@ -13356,14 +12591,6 @@ read-pkg-up@^3.0.0: find-up "^2.0.0" read-pkg "^3.0.0" -read-pkg-up@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" - integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA== - dependencies: - find-up "^3.0.0" - read-pkg "^3.0.0" - read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" @@ -13373,15 +12600,6 @@ read-pkg-up@^7.0.1: read-pkg "^5.2.0" type-fest "^0.8.1" -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -13410,24 +12628,7 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" -read@1, read@~1.0.1: - version "1.0.7" - resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" - integrity sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ== - dependencies: - mute-stream "~0.0.4" - -readable-stream@1.1: - version "1.1.13" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e" - integrity sha512-E98tWzqShvKDGpR2MbjsDkDQWLW2TfWUC15H4tNQhIJ5Lsta84l8nUGL9/ybltGwe+wZzWPpc1Kmd2wQP4bdCA== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.1, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: +readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -13446,7 +12647,7 @@ readable-stream@^1.0.26-4: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, 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.6: +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.5, readable-stream@^2.2.2, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -13476,25 +12677,6 @@ readdir-glob@^1.0.0: dependencies: minimatch "^5.1.0" -readdir-scoped-modules@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" - integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== - dependencies: - debuglog "^1.0.1" - dezalgo "^1.0.0" - graceful-fs "^4.1.2" - once "^1.3.0" - -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.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" @@ -13509,13 +12691,6 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" - integrity sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw== - dependencies: - resolve "^1.1.6" - rechoir@^0.8.0: version "0.8.0" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.8.0.tgz#49f866e0d32146142da3ad8f0eff352b3215ff22" @@ -13569,47 +12744,11 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" -redeyed@~2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-2.1.1.tgz#8984b5815d99cb220469c99eeeffe38913e6cc0b" - integrity sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ== - dependencies: - esprima "~4.0.0" - -reduce-extract@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/reduce-extract/-/reduce-extract-1.0.0.tgz#67f2385beda65061b5f5f4312662e8b080ca1525" - integrity sha512-QF8vjWx3wnRSL5uFMyCjDeDc5EBMiryoT9tz94VvgjKfzecHAVnqmXAwQDcr7X4JmLc2cjkjFGCVzhMqDjgR9g== - dependencies: - test-value "^1.0.1" - -reduce-flatten@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-1.0.1.tgz#258c78efd153ddf93cb561237f61184f3696e327" - integrity sha512-j5WfFJfc9CoXv/WbwVLHq74i/hdTUpy+iNC534LxczMRP67vJeK3V9JOdnL0N1cIRbn9mYhE2yVjvvKXDxvNXQ== - reduce-flatten@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-2.0.0.tgz#734fd84e65f375d7ca4465c69798c25c9d10ae27" integrity sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w== -reduce-flatten@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-3.0.1.tgz#3db6b48ced1f4dbe4f4f5e31e422aa9ff0cd21ba" - integrity sha512-bYo+97BmUUOzg09XwfkwALt4PQH1M5L0wzKerBt6WLm3Fhdd43mMS89HiT1B9pJIqko/6lWx3OnV4J9f2Kqp5Q== - -reduce-unique@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/reduce-unique/-/reduce-unique-2.0.1.tgz#fb34b90e89297c1e08d75dcf17e9a6443ea71081" - integrity sha512-x4jH/8L1eyZGR785WY+ePtyMNhycl1N2XOLxhCbzZFaqF4AXjLzqSxa2UHgJ2ZVR/HHyPOvl1L7xRnW8ye5MdA== - -reduce-without@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/reduce-without/-/reduce-without-1.0.1.tgz#68ad0ead11855c9a37d4e8256c15bbf87972fc8c" - integrity sha512-zQv5y/cf85sxvdrKPlfcRzlDn/OqKFThNimYmsS3flmkioKvkUGn2Qg9cJVoQiEvdxFGLE0MQER/9fZ9sUqdxg== - dependencies: - test-value "^2.0.0" - redux-thunk@^2.4.0: version "2.4.2" resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.4.2.tgz#b9d05d11994b99f7a91ea223e8b04cf0afa5ef3b" @@ -13622,6 +12761,11 @@ redux@4.1.2: dependencies: "@babel/runtime" "^7.9.2" +reflect-metadata@0.1.13: + version "0.1.13" + resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08" + integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg== + regenerate-unicode-properties@^10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" @@ -13634,11 +12778,6 @@ regenerate@^1.4.2: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - regenerator-runtime@^0.13.11: version "0.13.11" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" @@ -13673,10 +12812,10 @@ regexp.prototype.flags@^1.4.3: define-properties "^1.1.3" functions-have-names "^1.2.2" -regexpp@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== +regexpp@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== regexpu-core@^5.2.1: version "5.2.2" @@ -13721,40 +12860,24 @@ relateurl@^0.2.7: resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== -release-zalgo@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/release-zalgo/-/release-zalgo-1.0.0.tgz#09700b7e5074329739330e535c5a90fb67851730" - integrity sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA== - dependencies: - es6-error "^4.0.1" - -remove-bom-buffer@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz#c2bf1e377520d324f623892e33c10cac2c252b53" - integrity sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ== - dependencies: - is-buffer "^1.1.5" - is-utf8 "^0.2.1" - -remove-bom-stream@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz#05f1a593f16e42e1fb90ebf59de8e569525f9523" - integrity sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA== - dependencies: - remove-bom-buffer "^3.0.0" - safe-buffer "^5.1.0" - through2 "^2.0.3" - remove-markdown@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/remove-markdown/-/remove-markdown-0.3.0.tgz#5e4b667493a93579728f3d52ecc1db9ca505dc98" integrity sha512-5392eIuy1mhjM74739VunOlsOYKjsH82rQcTBlJ1bkICVC3dQ3ksQzTHh4jGHQFnM+1xzLzcFOMH+BofqXhroQ== -remove-trailing-separator@^1.0.1, remove-trailing-separator@^1.1.0: +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== +rename-overwrite@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/rename-overwrite/-/rename-overwrite-4.0.3.tgz#92e86b7a10de06c24e03f75384952a356db30a97" + integrity sha512-e1zOWZh4Lauz5DcLMC8j4eoOHPIrZkAVpiocE9SkDE1ZrGMW+W88LR1Y2YjD1DFgOYfJWqSsK6JKsRfuRH+tbQ== + dependencies: + "@zkochan/rimraf" "^2.1.2" + fs-extra "10.1.0" + renderkid@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" @@ -13776,27 +12899,6 @@ repeat-string@^1.6.1: resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A== - dependencies: - is-finite "^1.0.0" - -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== - -replace-homedir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-homedir/-/replace-homedir-1.0.0.tgz#e87f6d513b928dde808260c12be7fec6ff6e798c" - integrity sha512-CHPV/GAglbIB1tnQgaiysb8H2yCy8WQ7lcEwQ/eT+kLj0QHV8LnJW0zpqpE7RSkrMSRoa+EBoag86clf7WAgSg== - dependencies: - homedir-polyfill "^1.0.1" - is-absolute "^1.0.0" - remove-trailing-separator "^1.1.0" - request-promise-core@1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" @@ -13813,7 +12915,7 @@ request-promise-native@^1.0.5: stealthy-require "^1.1.1" tough-cookie "^2.3.3" -request@^2.88.0, request@^2.88.2: +request@^2.88.0: version "2.88.2" resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== @@ -13859,14 +12961,6 @@ require-main-filename@^2.0.0: resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== -require-uncached@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" - integrity sha512-Xct+41K3twrbBHdxAgMoOS+cNcoqIjfM2/VxBF4LL2hVph7YsF8VSKyQ3BDFZwEVbok9yeDl2le/qo0S77WG2w== - dependencies: - caller-path "^0.1.0" - resolve-from "^1.0.0" - requireg@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/requireg/-/requireg-0.2.2.tgz#437e77a5316a54c9bcdbbf5d1f755fe093089830" @@ -13881,13 +12975,6 @@ requires-port@^1.0.0: resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== -requizzle@^0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/requizzle/-/requizzle-0.2.4.tgz#319eb658b28c370f0c20f968fa8ceab98c13d27c" - integrity sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw== - dependencies: - lodash "^4.17.21" - resolve-cwd@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" @@ -13895,47 +12982,39 @@ resolve-cwd@^3.0.0: dependencies: resolve-from "^5.0.0" -resolve-dir@^1.0.0, resolve-dir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg== - dependencies: - expand-tilde "^2.0.0" - global-modules "^1.0.0" - -resolve-from@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - integrity sha512-kT10v4dhrlLNcnO084hEjvXCI1wUG9qZLoz2RogxqDQQYy7IxjI/iMUkOtQTNEh6rzHxvdQWHsJyel1pKOVCxg== - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw== +resolve-from@5.0.0, resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== - -resolve-options@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz#32bb9e39c06d67338dc9378c0d6d6074566ad131" - integrity sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A== +resolve-global@1.0.0, resolve-global@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/resolve-global/-/resolve-global-1.0.0.tgz#a2a79df4af2ca3f49bf77ef9ddacd322dad19255" + integrity sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw== dependencies: - value-or-function "^3.0.0" + global-dirs "^0.1.1" 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@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.14.2, resolve@^1.15.1, resolve@^1.20.0, resolve@^1.4.0: +resolve.exports@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" + integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== + +resolve.exports@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" + integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== + +resolve@^1.1.7, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.14.2, resolve@^1.15.1, resolve@^1.20.0: version "1.22.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== @@ -13987,36 +13066,24 @@ ret@~0.1.10: resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== +retry@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" + integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rewire@2.5.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/rewire/-/rewire-2.5.2.tgz#6427de7b7feefa7d36401507eb64a5385bc58dc7" - integrity sha512-9wOlgRHTOzUv5dQO2XD2qWob+7yi/QXh7SSwLJW5wMAkAdkYuaCtcPuLAXUTllK0MjSvtpxUqAWMuSrrdt9VNw== - -rimraf@2.6.3, rimraf@~2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== - dependencies: - glob "^7.1.3" - -rimraf@^2.2.8, rimraf@^2.6.2, rimraf@^2.6.3, rimraf@^2.7.1: +rimraf@^2.2.8, rimraf@^2.6.3, rimraf@^2.7.1: 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: +rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -14076,7 +13143,7 @@ rollup@^1.16.1: "@types/node" "*" acorn "^7.1.0" -run-async@^2.2.0, run-async@^2.4.0: +run-async@^2.4.0: version "2.4.1" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== @@ -14093,23 +13160,18 @@ runes@^0.4.3: resolved "https://registry.yarnpkg.com/runes/-/runes-0.4.3.tgz#32f7738844bc767b65cc68171528e3373c7bb355" integrity sha512-K6p9y4ZyL9wPzA+PMDloNQPfoDGTiFYDvdlXznyGKgD10BJpcAosvATKrExRKOrNLgD8E7Um7WGW0lxsnOuNLg== -rx-lite-aggregates@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" - integrity sha512-3xPNZGW93oCjiO7PtKxRK6iOVYBWBvtf9QHDfU23Oc+dLIQmAV//UnyXV/yihv81VS/UqoQPk4NegS8EFi55Hg== - dependencies: - rx-lite "*" - -rx-lite@*, rx-lite@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" - integrity sha512-Cun9QucwK6MIrp3mry/Y7hqD1oFqTYLQ4pGxaHTjIdaFDWRGGLikqp6u8LcWJnzpoALg9hap+JGk8sFIUuEGNA== - rx@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" integrity sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug== +rxjs@7.6.0: + version "7.6.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.6.0.tgz#361da5362b6ddaa691a2de0b4f2d32028f1eb5a2" + integrity sha512-DDa7d8TFNUalGC9VqXvQ1euWNN7sc63TrUCuM9J998+ViviahMIjKSOU7rfcgFOF+FCD71BhDRv4hrFz+ImDLQ== + dependencies: + tslib "^2.1.0" + rxjs@^5.5.6: version "5.5.12" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.12.tgz#6fa61b8a77c3d793dbaf270bee2f43f652d741cc" @@ -14124,12 +13186,26 @@ rxjs@^6.5.2, rxjs@^6.6.0, rxjs@^6.6.6: dependencies: tslib "^1.9.0" +rxjs@^7.5.5: + version "7.8.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4" + integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== + dependencies: + tslib "^2.1.0" + +rxjs@^7.8.0: + version "7.8.1" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.1.tgz#6f6f3d99ea8044291efd92e7c7fcf562c4057543" + integrity sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg== + dependencies: + tslib "^2.1.0" + safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" 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.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.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== @@ -14150,11 +13226,19 @@ safe-regex@^1.1.0: dependencies: ret "~0.1.10" -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@^2.1.2, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sass-loader@^12.2.0: + version "12.6.0" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-12.6.0.tgz#5148362c8e2cdd4b950f3c63ac5d16dbfed37bcb" + integrity sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA== + dependencies: + klona "^2.0.4" + neo-async "^2.6.2" + sass-loader@^13.2.0: version "13.2.0" resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-13.2.0.tgz#80195050f58c9aac63b792fa52acb6f5e0f6bdc3" @@ -14170,15 +13254,20 @@ sass@1.43.4: dependencies: chokidar ">=3.0.0 <4.0.0" -sass@^1.19.0, sass@^1.32.8: - version "1.57.1" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.57.1.tgz#dfafd46eb3ab94817145e8825208ecf7281119b5" - integrity sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw== +sass@^1.42.1: + version "1.58.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.58.0.tgz#ee8aea3ad5ea5c485c26b3096e2df6087d0bb1cc" + integrity sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" source-map-js ">=0.6.2 <2.0.0" +sax@^1.2.4, sax@~1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + saxes@^3.1.3: version "3.1.11" resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.11.tgz#d59d1fd332ec92ad98a2e0b2ee644702384b1c5b" @@ -14186,13 +13275,12 @@ saxes@^3.1.3: dependencies: xmlchars "^2.1.1" -scheduler@^0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.18.0.tgz#5901ad6659bc1d8f3fdaf36eb7a67b0d6746b1c4" - integrity sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ== +saxes@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-6.0.0.tgz#fe5b4a4768df4f14a201b1ba6a65c1f3d9988cc5" + integrity sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA== dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" + xmlchars "^2.2.0" scheduler@^0.19.1: version "0.19.1" @@ -14202,7 +13290,7 @@ scheduler@^0.19.1: loose-envify "^1.1.0" object-assign "^4.1.1" -schema-utils@^3.1.0, schema-utils@^3.1.1: +schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== @@ -14211,6 +13299,15 @@ schema-utils@^3.1.0, schema-utils@^3.1.1: ajv "^6.12.5" ajv-keywords "^3.5.2" +schema-utils@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.2.tgz#36c10abca6f7577aeae136c804b0c741edeadc99" + integrity sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + schema-utils@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.0.0.tgz#60331e9e3ae78ec5d16353c467c34b3a0a1d3df7" @@ -14244,11 +13341,28 @@ section-matter@^1.0.0: extend-shallow "^2.0.1" kind-of "^6.0.0" +secure-compare@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/secure-compare/-/secure-compare-3.0.1.tgz#f1a0329b308b221fae37b9974f3d578d0ca999e3" + integrity sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw== + +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg== + select@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" integrity sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA== +selfsigned@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-2.1.1.tgz#18a7613d714c0cd3385c48af0075abf3f266af61" + integrity sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ== + dependencies: + node-forge "^1" + semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -14261,30 +13375,30 @@ semver-diff@^3.1.1: dependencies: semver "^6.3.0" -semver-greatest-satisfied-range@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz#13e8c2658ab9691cb0cd71093240280d36f77a5b" - integrity sha512-Ny/iyOzSSa8M5ML46IAx3iXc6tfOsYU2R4AXi2UpHk60Zrgyq6eqPj/xiOfS0rRl/iiQ/rdJkVjw/5cdUyCntQ== - dependencies: - sver-compat "^1.5.0" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: +"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@7.3.4: + version "7.3.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" + integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== + dependencies: + lru-cache "^6.0.0" -semver@^7.0.0, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.8: +semver@7.3.8, semver@7.x, semver@^7.0.0, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== dependencies: lru-cache "^6.0.0" +semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + send@0.16.2: version "0.16.2" resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" @@ -14323,14 +13437,14 @@ send@0.18.0: range-parser "~1.2.1" statuses "2.0.1" -serialize-javascript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" - integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== +serialize-javascript@^6.0.0, serialize-javascript@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" + integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== dependencies: randombytes "^2.1.0" -serve-index@1.9.1: +serve-index@1.9.1, serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" integrity sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw== @@ -14368,7 +13482,7 @@ server-destroy@1.0.1: resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" integrity sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ== -set-blocking@^2.0.0, set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== @@ -14383,11 +13497,6 @@ set-value@^2.0.0, set-value@^2.0.1: is-plain-object "^2.0.3" split-string "^3.0.1" -setimmediate@^1.0.5: - 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" @@ -14442,11 +13551,6 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shelljs@0.3.x: - version "0.3.0" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz#3596e6307a781544f591f37da618360f31db57b1" - integrity sha512-Ny0KN4dyT8ZSCE0frtcbAJGoM/HTArpyPkeli1/00aYfm0sbD/Gk/4x7N2DP9QKGpBsiQH7n6rpm1L79RtviEQ== - side-channel@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" @@ -14461,7 +13565,7 @@ sigmund@^1.0.1: resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" integrity sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g== -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -14475,6 +13579,11 @@ signale@^1.4.0: figures "^2.0.0" pkg-conf "^2.1.0" +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + skatejs@^5.2.4: version "5.2.4" resolved "https://registry.yarnpkg.com/skatejs/-/skatejs-5.2.4.tgz#945f1451ffb2ed801d19e9baa03f0a259eb84e9e" @@ -14505,46 +13614,11 @@ sleep-promise@^8.0.1: resolved "https://registry.yarnpkg.com/sleep-promise/-/sleep-promise-8.0.1.tgz#8d795a27ea23953df6b52b91081e5e22665993c5" integrity sha512-nfwyX+G1dsx2R1DMMKWLpNxuHMOCL7JIRBUw0fl7Z4nZ1YZK0apZuGY8MDexn0HDZzgbERgj/CrNtsYpo/B7eA== -slice-ansi@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" - integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg== - dependencies: - is-fullwidth-code-point "^2.0.0" - -slice-ansi@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" - integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== - dependencies: - ansi-styles "^3.2.0" - astral-regex "^1.0.0" - is-fullwidth-code-point "^2.0.0" - -slice-ansi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" - integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -slide@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" - integrity sha512-NwrtjCg+lZoqhFU8fOwl4ay2ei8PaqCBOUV3/ektPY9trO1yQ1oXEfmHAhKArUVUr/hOHvy5f6AdP17dCM0zMw== - slugify@^1.4.7, slugify@^1.5.0: version "1.6.5" resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.6.5.tgz#c8f5c072bf2135b80703589b39a3d41451fbe8c8" integrity sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ== -smart-buffer@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" - integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== - snake-case@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-2.1.0.tgz#41bdb1b73f30ec66a04d4e2cad1b76387d4d6d9f" @@ -14598,9 +13672,9 @@ socket.io-client@^4.4.1: socket.io-parser "~4.2.1" socket.io-parser@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.2.1.tgz#01c96efa11ded938dcb21cbe590c26af5eff65e5" - integrity sha512-V4GrkLy+HeF1F/en3SpUaM+7XxYXpuMUWLGde1kSSh5nQMN4hLrbPIkD+otwh6q9R6NOQBN4AMaOZ2zVjui82g== + version "4.2.2" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.2.2.tgz#1dd384019e25b7a3d374877f492ab34f2ad0d206" + integrity sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw== dependencies: "@socket.io/component-emitter" "~3.1.0" debug "~4.3.1" @@ -14617,59 +13691,29 @@ socket.io@^4.4.1: socket.io-adapter "~2.4.0" socket.io-parser "~4.2.1" -socks-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" - integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== - dependencies: - agent-base "^6.0.2" - debug "4" - socks "^2.3.3" - -socks-proxy-agent@^6.0.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz#2687a31f9d7185e38d530bef1944fe1f1496d6ce" - integrity sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ== - dependencies: - agent-base "^6.0.2" - debug "^4.3.3" - socks "^2.6.2" - -socks@^2.3.3, socks@^2.6.2: - version "2.7.1" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.7.1.tgz#d8e651247178fde79c0663043e07240196857d55" - integrity sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ== - dependencies: - ip "^2.0.0" - smart-buffer "^4.2.0" - -sort-array@^4.1.1: - version "4.1.5" - resolved "https://registry.yarnpkg.com/sort-array/-/sort-array-4.1.5.tgz#64b92aaba222aec606786f4df28ae4e3e3e68313" - integrity sha512-Ya4peoS1fgFN42RN1REk2FgdNOeLIEMKFGJvs7VTP3OklF8+kl2SkpVliZ4tk/PurWsrWRsdNdU+tgyOBkB9sA== - dependencies: - array-back "^5.0.0" - typical "^6.0.1" - -sort-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - integrity sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg== - dependencies: - is-plain-obj "^1.0.0" - -sort-keys@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-4.2.0.tgz#6b7638cee42c506fff8c1cecde7376d21315be18" - integrity sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg== +sockjs@^0.3.24: + version "0.3.24" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" + integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== dependencies: - is-plain-obj "^2.0.0" + faye-websocket "^0.11.3" + uuid "^8.3.2" + websocket-driver "^0.7.4" "source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.1, source-map-js@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== +source-map-loader@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/source-map-loader/-/source-map-loader-3.0.2.tgz#af23192f9b344daa729f6772933194cc5fa54fee" + integrity sha512-BokxPoLjyl3iOrgkWaakaxqnelAJSS+0V+De0kKIq6lyWrXuiPgYTGp6z3iHmqljKAaLXwZa+ctD8GccRJeVvg== + dependencies: + abab "^2.0.5" + iconv-lite "^0.6.3" + source-map-js "^1.0.1" + 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" @@ -14681,14 +13725,31 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== +source-map-resolve@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz#3d9df87e236b53f16d01e58150fc7711138e5ed2" + integrity sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.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" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== dependencies: - source-map "^0.5.6" + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-support@0.5.19: + version "0.5.19" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" + integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" -source-map-support@^0.5.11, source-map-support@^0.5.16, source-map-support@^0.5.17, source-map-support@~0.5.20: +source-map-support@^0.5.17, 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== @@ -14701,7 +13762,7 @@ source-map-url@^0.4.0: resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== -source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: +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== @@ -14711,33 +13772,21 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +source-map@^0.7.3: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== + sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== -sparkles@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c" - integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw== - spawn-command@^0.0.2-1: version "0.0.2-1" resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2-1.tgz#62f5e9466981c1b796dc5929937e11c9c6921bd0" integrity sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg== -spawn-wrap@^1.4.2: - version "1.4.3" - resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.4.3.tgz#81b7670e170cca247d80bf5faf0cfb713bdcf848" - integrity sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw== - dependencies: - foreground-child "^1.5.6" - mkdirp "^0.5.0" - os-homedir "^1.0.1" - rimraf "^2.6.2" - signal-exit "^3.0.2" - which "^1.3.0" - spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" @@ -14764,6 +13813,29 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== +spdy-transport@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" + integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== + dependencies: + debug "^4.1.0" + detect-node "^2.0.4" + hpack.js "^2.1.6" + obuf "^1.1.2" + readable-stream "^3.0.6" + wbuf "^1.7.3" + +spdy@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" + integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== + dependencies: + debug "^4.1.0" + handle-thing "^2.0.0" + http-deceiver "^1.2.7" + select-hose "^2.0.0" + spdy-transport "^3.0.0" + split-on-first@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" @@ -14817,52 +13889,18 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" -ssri@^8.0.0, ssri@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" - integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== - dependencies: - minipass "^3.1.1" - -stack-trace@0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" - integrity sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg== +stable@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== -stack-utils@^1.0.3: - version "1.0.5" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.5.tgz#a19b0b01947e0029c8e451d5d61a498f5bb1471b" - integrity sha512-KZiTzuV3CnSnSvgMRrARVCj+Ht7rMbauGDK0LdVFRGyenwdylpajAp4Q0i6SX8rEmbTpMMf6ryq2gb8pPq2WgQ== +stack-utils@^2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== dependencies: escape-string-regexp "^2.0.0" -"stalfos@github:hankchizljaw/stalfos#c8971d22726326cfc04089b2da4d51eeb1ebb0eb": - version "2.0.0" - resolved "https://codeload.github.com/hankchizljaw/stalfos/tar.gz/c8971d22726326cfc04089b2da4d51eeb1ebb0eb" - dependencies: - sass "^1.19.0" - -standard-version@9.1.1: - version "9.1.1" - resolved "https://registry.yarnpkg.com/standard-version/-/standard-version-9.1.1.tgz#7561df6351b075a44544ce3d3ebcffcb9582ba5a" - integrity sha512-PF9JnRauBwH7DAkmefYu1mB2Kx0MVG13udqDTFmDUiogbyikBAHBdMrVuauxtAb2YIkyZ3FMYCNv0hqUKMOPww== - dependencies: - chalk "^2.4.2" - conventional-changelog "3.1.24" - conventional-changelog-config-spec "2.1.0" - conventional-changelog-conventionalcommits "4.5.0" - conventional-recommended-bump "6.1.0" - detect-indent "^6.0.0" - detect-newline "^3.1.0" - dotgitignore "^2.1.0" - figures "^3.1.0" - find-up "^5.0.0" - fs-access "^1.0.1" - git-semver-tags "^4.0.0" - semver "^7.1.1" - stringify-package "^1.0.1" - yargs "^16.0.0" - static-extend@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" @@ -14892,9 +13930,9 @@ statuses@~1.4.0: integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== std-env@^3.0.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.3.1.tgz#93a81835815e618c8aa75e7c8a4dc04f7c314e29" - integrity sha512-3H20QlwQsSm2OvAxWIYhs+j01MzzqwMwGiiO1NQaJYZgJZFPuAbf95/DiKRBSTYIJ2FeGUc+B/6mPGcWP9dO3Q== + version "3.3.2" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.3.2.tgz#af27343b001616015534292178327b202b9ee955" + integrity sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA== stealthy-require@^1.1.1: version "1.1.1" @@ -14908,23 +13946,6 @@ stream-combiner@~0.0.4: dependencies: duplexer "~0.1.1" -stream-connect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/stream-connect/-/stream-connect-1.0.2.tgz#18bc81f2edb35b8b5d9a8009200a985314428a97" - integrity sha512-68Kl+79cE0RGKemKkhxTSg8+6AGrqBt+cbZAXevg2iJ6Y3zX4JhA/sZeGzLpxW9cXhmqAcE7KnJCisUmIUfnFQ== - dependencies: - array-back "^1.0.2" - -stream-exhaust@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/stream-exhaust/-/stream-exhaust-1.0.2.tgz#acdac8da59ef2bc1e17a2c0ccf6c320d120e555d" - integrity sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw== - -stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== - stream-throttle@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/stream-throttle/-/stream-throttle-0.1.3.tgz#add57c8d7cc73a81630d31cd55d3961cfafba9c3" @@ -14933,11 +13954,6 @@ stream-throttle@^0.1.3: commander "^2.2.0" limiter "^1.0.5" -stream-via@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/stream-via/-/stream-via-1.0.4.tgz#8dccbb0ac909328eb8bc8e2a4bd3934afdaf606c" - integrity sha512-DBp0lSvX5G9KGRDTkR/R+a29H+Wk2xItOF+MpZLLNDWbEV9tGPnqLPxHEYjmiz8xGtJHRIqmI+hCjmNzqoA4nQ== - strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" @@ -14948,20 +13964,20 @@ strict-uri-encode@^2.0.0: resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" integrity sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ== -string-length@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-3.1.0.tgz#107ef8c23456e187a8abd4a61162ff4ac6e25837" - integrity sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA== +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: - astral-regex "^1.0.0" - strip-ansi "^5.2.0" + char-regex "^1.0.2" + strip-ansi "^6.0.0" string-range@~1.2, string-range@~1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/string-range/-/string-range-1.2.2.tgz#a893ed347e72299bc83befbbf2a692a8d239d5dd" integrity sha512-tYft6IFi8SjplJpxCUxyqisD3b+R2CSkomrtJYCkvuf1KuCAWgz7YXt4O0jip7efpfCemwHEzTEAO8EuOYgh3w== -string-width@^1.0.1, string-width@^1.0.2: +string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== @@ -14970,16 +13986,7 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: +string-width@^2.0.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== @@ -14996,6 +14003,15 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string.prototype.trimend@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" @@ -15033,11 +14049,6 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -stringify-package@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stringify-package/-/stringify-package-1.0.1.tgz#e5aa3643e7f74d0f28628b72f3dad5cecfc3ba85" - integrity sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg== - strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -15076,13 +14087,6 @@ strip-bom-string@^1.0.0: resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" integrity sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g== -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== - dependencies: - is-utf8 "^0.2.0" - strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -15115,12 +14119,7 @@ strip-indent@^3.0.0: dependencies: min-indent "^1.0.0" -strip-json-comments@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" - integrity sha512-AOPG8EBc5wAikaG1/7uFCNFJwnKOuQwFTpYBdTW6OvWHeZBQBrAA/amefHGrEiOnCPcLFZK6FUPtWVKpQVIRgg== - -strip-json-comments@^3.0.1, strip-json-comments@^3.1.0: +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== @@ -15139,41 +14138,41 @@ strong-log-transformer@^2.1.0: minimist "^1.2.0" through "^2.3.4" -style-loader@^3.3.1: +style-loader@^3.3.0, style-loader@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.1.tgz#057dfa6b3d4d7c7064462830f9113ed417d38575" integrity sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ== -superagent@^3.0.0: - version "3.8.3" - resolved "https://registry.yarnpkg.com/superagent/-/superagent-3.8.3.tgz#460ea0dbdb7d5b11bc4f78deba565f86a178e128" - integrity sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA== - dependencies: - component-emitter "^1.2.0" - cookiejar "^2.1.0" - debug "^3.1.0" - extend "^3.0.0" - form-data "^2.3.1" - formidable "^1.2.0" - methods "^1.1.1" - mime "^1.4.1" - qs "^6.5.1" - readable-stream "^2.3.5" +stylehacks@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" + integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw== + dependencies: + browserslist "^4.21.4" + postcss-selector-parser "^6.0.4" -supertest@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/supertest/-/supertest-3.0.0.tgz#8d4bb68fd1830ee07033b1c5a5a9a4021c965296" - integrity sha512-qpiarzDVqh36Q5SfYoCr57Z1HukIUI0WUaXRef9vNj8FrgB/diGLILtxOTh/B8ye2bDCHexMtSwxugL9fI7O4A== +stylus-loader@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/stylus-loader/-/stylus-loader-7.1.0.tgz#19e09a98b19075c246e6e3f65e38b8cb89d2d6fb" + integrity sha512-gNUEjjozR+oZ8cuC/Fx4LVXqZOgDKvpW9t2hpXHcxjfPYqSjQftaGwZUK+wL9B0QJ26uS6p1EmoWHmvld1dF7g== dependencies: - methods "~1.1.2" - superagent "^3.0.0" + fast-glob "^3.2.12" + klona "^2.0.5" + normalize-path "^3.0.0" -supports-color@4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" - integrity sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ== +stylus@^0.55.0: + version "0.55.0" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.55.0.tgz#bd404a36dd93fa87744a9dd2d2b1b8450345e5fc" + integrity sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw== dependencies: - has-flag "^2.0.0" + css "^3.0.0" + debug "~3.1.0" + glob "^7.1.6" + mkdirp "~1.0.4" + safer-buffer "^2.1.2" + sax "~1.2.4" + semver "^6.3.0" + source-map "^0.7.3" supports-color@^2.0.0: version "2.0.0" @@ -15201,13 +14200,6 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" - integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== - dependencies: - has-flag "^3.0.0" - supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" @@ -15235,14 +14227,6 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -sver-compat@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/sver-compat/-/sver-compat-1.5.0.tgz#3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8" - integrity sha512-aFTHfmjwizMNlNE6dsGmoAM4lHjL0CyiobWaFiXWSlD7cIxshW422Nb8KbXCmR6z+0ZEPY+daXJrDyh/vuwTyg== - dependencies: - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - svg-baker-runtime@^1.4.7: version "1.4.7" resolved "https://registry.yarnpkg.com/svg-baker-runtime/-/svg-baker-runtime-1.4.7.tgz#f4720637f5b6202eef6378d81f1fead0815f8a4e" @@ -15317,6 +14301,19 @@ svgo-loader@^4.0.0: dependencies: svgo "^3.0.0" +svgo@^2.7.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" + integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== + dependencies: + "@trysound/sax" "0.2.0" + commander "^7.2.0" + css-select "^4.1.3" + css-tree "^1.1.3" + csso "^4.2.0" + picocolors "^1.0.0" + stable "^0.1.8" + svgo@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/svgo/-/svgo-3.0.2.tgz#5e99eeea42c68ee0dc46aa16da093838c262fe0a" @@ -15334,21 +14331,18 @@ symbol-observable@1.0.1: resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" integrity sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw== -symbol-tree@^3.2.2: +symbol-tree@^3.2.2, symbol-tree@^3.2.4: version "3.2.4" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== -table-layout@^0.4.2: - version "0.4.5" - resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-0.4.5.tgz#d906de6a25fa09c0c90d1d08ecd833ecedcb7378" - integrity sha512-zTvf0mcggrGeTe/2jJ6ECkJHAQPIYEwDoqsiqBjI24mvRmQbInK5jq33fyypaCBxX08hMkfmdOqj6haT33EqWw== +symlink-dir@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/symlink-dir/-/symlink-dir-5.1.1.tgz#ac105042f183a92f0f698f469d53f20c307d527c" + integrity sha512-kmVV2SfdoDksjJxStJ5N9u1ZZ5tQndCeUEG8St0tHI9BZe/ehZYbKB6eXPjo+AvFG1uRsDymUSGG0OLv2Ox8aQ== dependencies: - array-back "^2.0.0" - deep-extend "~0.6.0" - lodash.padend "^4.6.1" - typical "^2.6.1" - wordwrapjs "^3.0.0" + better-path-resolve "^1.0.0" + rename-overwrite "^4.0.3" table-layout@^1.0.2: version "1.0.2" @@ -15360,127 +14354,12 @@ table-layout@^1.0.2: typical "^5.2.0" wordwrapjs "^4.0.0" -table@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36" - integrity sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA== - dependencies: - ajv "^5.2.3" - ajv-keywords "^2.1.0" - chalk "^2.1.0" - lodash "^4.17.4" - slice-ansi "1.0.0" - string-width "^2.1.1" - -table@^5.2.3: - version "5.4.6" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" - integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== - dependencies: - ajv "^6.10.2" - lodash "^4.17.14" - slice-ansi "^2.1.0" - string-width "^3.0.0" - -taffydb@2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/taffydb/-/taffydb-2.6.2.tgz#7cbcb64b5a141b6a2efc2c5d2c67b4e150b2a268" - integrity sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA== - -tap-mocha-reporter@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/tap-mocha-reporter/-/tap-mocha-reporter-5.0.3.tgz#3e261b2a43092ba8bc0cb67a89b33e283decee05" - integrity sha512-6zlGkaV4J+XMRFkN0X+yuw6xHbE9jyCZ3WUKfw4KxMyRGOpYSRuuQTRJyWX88WWuLdVTuFbxzwXhXuS2XE6o0g== - dependencies: - color-support "^1.1.0" - debug "^4.1.1" - diff "^4.0.1" - escape-string-regexp "^2.0.0" - glob "^7.0.5" - tap-parser "^11.0.0" - tap-yaml "^1.0.0" - unicode-length "^2.0.2" - -tap-parser@^10.0.1: - version "10.1.0" - resolved "https://registry.yarnpkg.com/tap-parser/-/tap-parser-10.1.0.tgz#7b1aac40dbcaa4716c0b58952686eae65d2b74ad" - integrity sha512-FujQeciDaOiOvaIVGS1Rpb0v4R6XkOjvWCWowlz5oKuhPkEJ8U6pxgqt38xuzYhPt8dWEnfHn2jqpZdJEkW7pA== - dependencies: - events-to-array "^1.0.1" - minipass "^3.0.0" - tap-yaml "^1.0.0" - -tap-parser@^11.0.0: - version "11.0.2" - resolved "https://registry.yarnpkg.com/tap-parser/-/tap-parser-11.0.2.tgz#5d3e76e2cc521e23a8c50201487b273ca0fba800" - integrity sha512-6qGlC956rcORw+fg7Fv1iCRAY8/bU9UabUAhs3mXRH6eRmVZcNPLheSXCYaVaYeSwx5xa/1HXZb1537YSvwDZg== - dependencies: - events-to-array "^1.0.1" - minipass "^3.1.6" - tap-yaml "^1.0.0" - -tap-yaml@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/tap-yaml/-/tap-yaml-1.0.2.tgz#62032a459e5524e10661c19ee9df5d33d78812fa" - integrity sha512-GegASpuqBnRNdT1U+yuUPZ8rEU64pL35WPBpCISWwff4dErS2/438barz7WFJl4Nzh3Y05tfPidZnH+GaV1wMg== - dependencies: - yaml "^1.10.2" - -tap@14.11.0: - version "14.11.0" - resolved "https://registry.yarnpkg.com/tap/-/tap-14.11.0.tgz#64f1f50b10280d5149690c9a7059d859f2bbcd24" - integrity sha512-z8qnNFVyIjLh/bNoTLFRkEk09XZUDAZbCkz/BjvHHly3ao5H+y60gPnedALfheEjA6dA4tpp/mrKq2NWlMuq0A== - dependencies: - "@types/react" "^16.9.16" - async-hook-domain "^1.1.3" - bind-obj-methods "^2.0.0" - browser-process-hrtime "^1.0.0" - chokidar "^3.3.0" - color-support "^1.1.0" - coveralls "^3.0.11" - diff "^4.0.1" - esm "^3.2.25" - findit "^2.0.0" - flow-remove-types "^2.112.0" - foreground-child "^1.3.3" - fs-exists-cached "^1.0.0" - function-loop "^1.0.2" - glob "^7.1.6" - import-jsx "^3.1.0" - ink "^2.6.0" - isexe "^2.0.0" - istanbul-lib-processinfo "^1.0.0" - jackspeak "^1.4.0" - minipass "^3.1.1" - mkdirp "^0.5.4" - nyc "^14.1.1" - opener "^1.5.1" - own-or "^1.0.0" - own-or-env "^1.0.1" - react "^16.12.0" - rimraf "^2.7.1" - signal-exit "^3.0.0" - source-map-support "^0.5.16" - stack-utils "^1.0.3" - tap-mocha-reporter "^5.0.0" - tap-parser "^10.0.1" - tap-yaml "^1.0.0" - tcompare "^3.0.0" - treport "^1.0.2" - trivial-deferred "^1.0.1" - ts-node "^8.5.2" - typescript "^3.7.2" - which "^2.0.2" - write-file-atomic "^3.0.1" - yaml "^1.7.2" - yapool "^1.0.0" - -tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: +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" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -tar-stream@^2.2.0: +tar-stream@^2.2.0, tar-stream@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== @@ -15491,59 +14370,6 @@ tar-stream@^2.2.0: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^4.4.12: - version "4.4.19" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" - integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== - dependencies: - chownr "^1.1.4" - fs-minipass "^1.2.7" - minipass "^2.9.0" - minizlib "^1.3.3" - mkdirp "^0.5.5" - safe-buffer "^5.2.1" - yallist "^3.1.1" - -tar@^6.0.2, tar@^6.1.0: - version "6.1.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b" - integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw== - dependencies: - chownr "^2.0.0" - fs-minipass "^2.0.0" - minipass "^4.0.0" - minizlib "^2.1.1" - mkdirp "^1.0.3" - yallist "^4.0.0" - -tcompare@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/tcompare/-/tcompare-3.0.5.tgz#8dc3476ea95be0ce13119287bacd035bc8c4df10" - integrity sha512-+tmloQj1buaShBX+LP1i1NF5riJm110Yr0flIJAEoKf01tFVoMZvW2jq1JLqaW8fspOUVPm5NKKW5qLwT0ETDQ== - dependencies: - diff-frag "^1.0.1" - -temp-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" - integrity sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ== - -temp-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-path/-/temp-path-1.0.0.tgz#24b1543973ab442896d9ad367dd9cbdbfafe918b" - integrity sha512-TvmyH7kC6ZVTYkqCODjJIbgvu0FKiwQpZ4D1aknE7xpcDf/qEOB8KZEK5ef2pfbVoiBhNWs3yx4y+ESMtNYmlg== - -temp-write@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-4.0.0.tgz#cd2e0825fc826ae72d201dc26eef3bf7e6fc9320" - integrity sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw== - dependencies: - graceful-fs "^4.1.15" - is-stream "^2.0.0" - make-dir "^3.0.0" - temp-dir "^1.0.0" - uuid "^3.3.2" - terminal-link@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" @@ -15560,7 +14386,7 @@ terminal-overwrite@^2.0.1: cli-cursor "^2.0.0" string-width "^2.0.0" -terser-webpack-plugin@^5.1.3: +terser-webpack-plugin@^5.1.3, terser-webpack-plugin@^5.3.3: version "5.3.6" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz#5590aec31aa3c6f771ce1b1acca60639eab3195c" integrity sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ== @@ -15571,56 +14397,52 @@ terser-webpack-plugin@^5.1.3: serialize-javascript "^6.0.0" terser "^5.14.1" +terser-webpack-plugin@^5.3.7: + version "5.3.9" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz#832536999c51b46d468067f9e37662a3b96adfe1" + integrity sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA== + dependencies: + "@jridgewell/trace-mapping" "^0.3.17" + jest-worker "^27.4.5" + schema-utils "^3.1.1" + serialize-javascript "^6.0.1" + terser "^5.16.8" + terser@^5.10.0, terser@^5.14.1, terser@^5.15.1: - version "5.16.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.1.tgz#5af3bc3d0f24241c7fb2024199d5c461a1075880" - integrity sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw== + version "5.16.3" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.3.tgz#3266017a9b682edfe019b8ecddd2abaae7b39c6b" + integrity sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q== dependencies: "@jridgewell/source-map" "^0.3.2" acorn "^8.5.0" commander "^2.20.0" source-map-support "~0.5.20" -test-exclude@^5.2.3: - version "5.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" - integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g== - dependencies: - glob "^7.1.3" - minimatch "^3.0.4" - read-pkg-up "^4.0.0" - require-main-filename "^2.0.0" - -test-value@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/test-value/-/test-value-1.1.0.tgz#a09136f72ec043d27c893707c2b159bfad7de93f" - integrity sha512-wrsbRo7qP+2Je8x8DsK8ovCGyxe3sYfQwOraIY/09A2gFXU9DYKiTF14W4ki/01AEh56kMzAmlj9CaHGDDUBJA== - dependencies: - array-back "^1.0.2" - typical "^2.4.2" - -test-value@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/test-value/-/test-value-2.1.0.tgz#11da6ff670f3471a73b625ca4f3fdcf7bb748291" - integrity sha512-+1epbAxtKeXttkGFMTX9H42oqzOTufR1ceCF+GYA5aOmvaPq9wd4PUS8329fn2RRLGNeUkgRLnVpycjx8DsO2w== +terser@^5.16.8: + version "5.17.7" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.17.7.tgz#2a8b134826fe179b711969fd9d9a0c2479b2a8c3" + integrity sha512-/bi0Zm2C6VAexlGgLlVxA0P2lru/sdLyfCVaRMfKVo9nWxbmz7f/sD8VPybPeSUJaJcwmCJis9pBIhcVcG1QcQ== dependencies: - array-back "^1.0.3" - typical "^2.6.0" + "@jridgewell/source-map" "^0.3.3" + acorn "^8.8.2" + commander "^2.20.0" + source-map-support "~0.5.20" -test-value@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/test-value/-/test-value-3.0.0.tgz#9168c062fab11a86b8d444dd968bb4b73851ce92" - integrity sha512-sVACdAWcZkSU9x7AOmJo5TqE+GyNJknHaHsMrR6ZnhjVlVN9Yx6FjHrsKZ3BjIpPCT68zYesPWkakrNupwfOTQ== +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: - array-back "^2.0.0" - typical "^2.6.1" + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" text-extensions@^1.0.0: version "1.9.0" resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== -text-table@^0.2.0, text-table@~0.2.0: +text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== @@ -15630,18 +14452,10 @@ tfunk@^4.0.0: resolved "https://registry.yarnpkg.com/tfunk/-/tfunk-4.0.0.tgz#de9399feaf2060901d590b7faad80fcd5443077e" integrity sha512-eJQ0dGfDIzWNiFNYFVjJ+Ezl/GmwHaFTBTjrtqNPW0S7cuVDBrZrmzUz6VkMeCR4DZFqhd4YtLwsw3i2wYHswQ== dependencies: - chalk "^1.1.3" - dlv "^1.1.3" - -through2-filter@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254" - integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA== - dependencies: - through2 "~2.0.0" - xtend "~4.0.0" + chalk "^1.1.3" + dlv "^1.1.3" -through2@^2.0.0, through2@^2.0.1, through2@^2.0.3, through2@~2.0.0: +through2@^2.0.0, through2@^2.0.1: version "2.0.5" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== @@ -15661,6 +14475,11 @@ through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6, through@~2.3, t resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== +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== + time-require@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/time-require/-/time-require-0.1.2.tgz#f9e12cb370fc2605e11404582ba54ef5ca2b2d98" @@ -15671,11 +14490,6 @@ time-require@^0.1.2: pretty-ms "^0.2.1" text-table "^0.2.0" -time-stamp@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" - integrity sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw== - tiny-emitter@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" @@ -15693,18 +14507,17 @@ tmp@0.0.33, tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" -to-absolute-glob@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" - integrity sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA== +tmp@~0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" + integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== dependencies: - is-absolute "^1.0.0" - is-negated-glob "^1.0.0" + rimraf "^3.0.0" -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og== +tmpl@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== to-fast-properties@^2.0.0: version "2.0.0" @@ -15748,13 +14561,6 @@ to-regex@^3.0.1, to-regex@^3.0.2: regex-not "^1.0.2" safe-regex "^1.1.0" -to-through@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-through/-/to-through-2.0.0.tgz#fc92adaba072647bc0b67d6b03664aa195093af6" - integrity sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q== - dependencies: - through2 "^2.0.3" - toidentifier@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" @@ -15773,6 +14579,16 @@ tough-cookie@^2.3.3, tough-cookie@^2.4.3, tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" +tough-cookie@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874" + integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + tr46@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" @@ -15780,10 +14596,10 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== +tr46@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" + integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA== dependencies: punycode "^2.1.1" @@ -15802,20 +14618,6 @@ tree-kill@^1.2.1: resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== -treport@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/treport/-/treport-1.0.2.tgz#5f99e68198982984415434a2a84df2af2dd7171d" - integrity sha512-QCAbFtzIjQN+9k+alo8e6oo8j0eSLsttdahAgNLoC3U36rls8XRy/R11QOhHmPz7CDcB2ar29eLe4OFJoPnsPA== - dependencies: - cardinal "^2.1.1" - chalk "^3.0.0" - import-jsx "^3.1.0" - ink "^2.6.0" - ms "^2.1.2" - string-length "^3.1.0" - tap-parser "^10.0.1" - unicode-length "^2.0.2" - trim-newlines@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" @@ -15826,17 +14628,21 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw== - -trivial-deferred@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trivial-deferred/-/trivial-deferred-1.0.1.tgz#376d4d29d951d6368a6f7a0ae85c2f4d5e0658f3" - integrity sha512-dagAKX7vaesNNAwOc9Np9C2mJ+7YopF4lk+jE2JML9ta4kZ91Y6UruJNH65bLRYoUROD8EY+Pmi44qQWwXR7sw== - -ts-loader@^9.4.2: +ts-jest@29.1.0: + version "29.1.0" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.1.0.tgz#4a9db4104a49b76d2b368ea775b6c9535c603891" + integrity sha512-ZhNr7Z4PcYa+JjMl62ir+zPiNJfXJN6E8hSLnaUKhOgqcn8vb3e537cpkd0FuAfRK3sR1LSqM1MOhliXNgOFPA== + dependencies: + bs-logger "0.x" + fast-json-stable-stringify "2.x" + jest-util "^29.0.0" + json5 "^2.2.3" + lodash.memoize "4.x" + make-error "1.x" + semver "7.x" + yargs-parser "^21.0.1" + +ts-loader@^9.3.1, ts-loader@^9.4.2: version "9.4.2" resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.4.2.tgz#80a45eee92dd5170b900b3d00abcfa14949aeb78" integrity sha512-OmlC4WVmFv5I0PpaxYb+qGeGOdm5giHU7HwDDUjw59emP2UYMHy9fFSDcYgSNoH8sXcj4hGCSEhlDZ9ULeDraA== @@ -15846,7 +14652,7 @@ ts-loader@^9.4.2: micromatch "^4.0.0" semver "^7.3.4" -ts-node@^10.9.1: +ts-node@10.9.1, ts-node@^10.8.1, ts-node@^10.9.1: version "10.9.1" resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== @@ -15865,17 +14671,6 @@ ts-node@^10.9.1: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -ts-node@^8.5.2: - version "8.10.2" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.10.2.tgz#eee03764633b1234ddd37f8db9ec10b75ec7fb8d" - integrity sha512-ISJJGgkIpDdBhWVu3jufsWpK3Rzo7bdiIXJjQc0ynKxVOVcg2oIrf2H2cejminGrptVc6q6/uynAHNCuWGbpVA== - dependencies: - arg "^4.1.0" - diff "^4.0.1" - make-error "^1.1.1" - source-map-support "^0.5.17" - yn "3.1.1" - ts-node@^9: version "9.1.1" resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-9.1.1.tgz#51a9a450a3e959401bda5f004a72d54b936d376d" @@ -15888,6 +14683,24 @@ ts-node@^9: source-map-support "^0.5.17" yn "3.1.1" +tsconfig-paths-webpack-plugin@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.0.0.tgz#84008fc3e3e0658fdb0262758b07b4da6265ff1a" + integrity sha512-fw/7265mIWukrSHd0i+wSwx64kYUSAKPfxRDksjKIYTxSAp9W9/xcZVBF4Kl0eqQd5eBpAQ/oQrc5RyM/0c1GQ== + dependencies: + chalk "^4.1.0" + enhanced-resolve "^5.7.0" + tsconfig-paths "^4.0.0" + +tsconfig-paths@^4.0.0, tsconfig-paths@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.1.2.tgz#4819f861eef82e6da52fb4af1e8c930a39ed979a" + integrity sha512-uhxiMgnXQp1IR622dUXI+9Ehnws7i/y6xvpZB9IbUVOPy0muvdvgXeZOn88UcGPiT98Vp3rJPTa8bFoalZ3Qhw== + dependencies: + json5 "^2.2.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + tslib@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" @@ -15898,16 +14711,28 @@ tslib@2.1.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== -tslib@^1.14.1, tslib@^1.9.0: +tslib@^1.14.1, tslib@^1.8.1, tslib@^1.9.0: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2, tslib@^2.0.3: +tslib@^2: version "2.4.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz#0d0bfbaac2880b91e22df0768e55be9753a5b17e" integrity sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA== +tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" @@ -15958,6 +14783,13 @@ twing@^5.0.2: twig-lexer "^0.7.2" utf8-binary-cutter "^0.9.2" +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -15965,6 +14797,11 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -15980,17 +14817,12 @@ type-fest@^0.21.1, type-fest@^0.21.3: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -type-fest@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.4.1.tgz#8bdf77743385d8a4f13ba95f610f5ccd68c728f8" - integrity sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw== - type-fest@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== -type-fest@^0.8.0, type-fest@^0.8.1: +type-fest@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== @@ -16003,16 +14835,6 @@ type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" -type@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" - integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== - -type@^2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" - integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== - typed-array-length@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" @@ -16022,6 +14844,11 @@ typed-array-length@^1.0.4: for-each "^0.3.3" is-typed-array "^1.1.9" +typed-assert@^1.0.8: + version "1.0.9" + resolved "https://registry.yarnpkg.com/typed-assert/-/typed-assert-1.0.9.tgz#8af9d4f93432c4970ec717e3006f33f135b06213" + integrity sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg== + typedarray-to-buffer@^3.1.5, typedarray-to-buffer@~3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" @@ -16039,20 +14866,15 @@ typescript-memoize@^1.0.0-alpha.3: resolved "https://registry.yarnpkg.com/typescript-memoize/-/typescript-memoize-1.1.1.tgz#02737495d5df6ebf72c07ba0d002e8f4cf5ccfa0" integrity sha512-GQ90TcKpIH4XxYTI2F98yEQYZgjNMOGPpOgdjIBhaLaWji5HPWlRnZ4AeA1hfBxtY7bCGDJsqDDHk/KaHOl5bA== -typescript@^3.7.2: - version "3.9.10" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" - integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== - -typescript@^4.6.2: - version "4.9.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.4.tgz#a2a3d2756c079abda241d75f149df9d561091e78" - integrity sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg== +typescript@5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.4.tgz#b217fd20119bd61a94d4011274e0ab369058da3b" + integrity sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw== -typical@^2.4.2, typical@^2.6.0, typical@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/typical/-/typical-2.6.1.tgz#5c080e5d661cbbe38259d2e70a3c7253e873881d" - integrity sha512-ofhi8kjIje6npGozTip9Fr8iecmYfEbS06i0JnIg+rh51KakryWF4+jX8lLKZVhy6N+ID45WYSFCxPOdTWCzNg== +typescript@^4.6.2, typescript@^4.6.4: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== typical@^4.0.0: version "4.0.0" @@ -16064,21 +14886,11 @@ typical@^5.2.0: resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066" integrity sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg== -typical@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/typical/-/typical-6.0.1.tgz#89bd1a6aa5e5e96fa907fb6b7579223bff558a06" - integrity sha512-+g3NEp7fJLe9DPa1TArHm9QAA7YciZmWnfAqEaFrBihQ7epOv9i99rjtgb6Iz0wh3WuQDjsCTDfgRoGnmHN81A== - ua-parser-js@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.2.tgz#e2976c34dbfb30b15d2c300b2a53eac87c57a775" integrity sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg== -ua-parser-js@^0.7.30: - version "0.7.32" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.32.tgz#cd8c639cdca949e30fa68c44b7813ef13e36d211" - integrity sha512-f9BESNVhzlhEFf2CHMSj40NWOjYPl1YKYbrvIr/hFTDEmLq7SRbWvm7FcdcpCYT95zrOhC7gZSxjdnnTpBcwVw== - uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" @@ -16094,16 +14906,6 @@ uhyphen@^0.1.0: resolved "https://registry.yarnpkg.com/uhyphen/-/uhyphen-0.1.0.tgz#3cc22afa790daa802b9f6789f3583108d5b4a08c" integrity sha512-o0QVGuFg24FK765Qdd5kk0zU/U4dEsCtN/GSiwNI9i8xsSVtjIAOdTaVhLwZ1nrbWxFVMxNDDl+9fednsOMsBw== -uid-number@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - integrity sha512-c461FXIljswCuscZn67xq9PpszkPT6RjheWFQTgCyabJrTUozElanb0YEqv2UGgk247YpcJkFBuSGNvBlpXM9w== - -umask@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" - integrity sha512-lE/rxOhmiScJu9L6RTNVgB/zZbF+vGC0/p6D3xnkAePI2o0sMyFG966iR5Ki50OI/0mNi2yaRnxfLsPmEZF/JA== - unbox-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" @@ -16124,44 +14926,11 @@ underscore@1.13.0: resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.0.tgz#3ccdcbb824230fc6bf234ad0ddcd83dff4eafe5f" integrity sha512-sCs4H3pCytsb5K7i072FAEC9YlSYFIbosvM0tAKAlpSSUgD7yC1iXSEGdl5XrDKQ1YUB+p/HDzYrSG2H2Vl36g== -underscore@~1.13.2: - version "1.13.6" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.6.tgz#04786a1f589dc6c09f761fc5f45b89e935136441" - integrity sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A== - -undertaker-registry@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/undertaker-registry/-/undertaker-registry-1.0.1.tgz#5e4bda308e4a8a2ae584f9b9a4359a499825cc50" - integrity sha512-UR1khWeAjugW3548EfQmL9Z7pGMlBgXteQpr1IZeZBtnkCJQJIJ1Scj0mb9wQaPvUZ9Q17XqW6TIaPchJkyfqw== - -undertaker@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-1.3.0.tgz#363a6e541f27954d5791d6fa3c1d321666f86d18" - integrity sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg== - dependencies: - arr-flatten "^1.0.1" - arr-map "^2.0.0" - bach "^1.0.0" - collection-map "^1.0.0" - es6-weak-map "^2.0.1" - fast-levenshtein "^1.0.0" - last-run "^1.1.0" - object.defaults "^1.0.0" - object.reduce "^1.0.0" - undertaker-registry "^1.0.0" - unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== -unicode-length@^2.0.2: - version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-length/-/unicode-length-2.1.0.tgz#425202b99f21854f5ca3530cc2a08dc262ce619f" - integrity sha512-4bV582zTV9Q02RXBxSUMiuN/KHo5w4aTojuKTNT96DIKps/SIawFp7cS5Mu25VuY1AioGXrmYyzKZUzh8OqoUw== - dependencies: - punycode "^2.0.0" - unicode-match-property-ecmascript@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" @@ -16195,33 +14964,18 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" +union@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/union/-/union-0.5.0.tgz#b2c11be84f60538537b846edb9ba266ba0090075" + integrity sha512-N6uOhuW6zO95P3Mel2I2zMsbsanvvtgn6jVqJv4vbVcz/JN0OkL9suomjQGmWtxJQXOCqUJvquc1sMeNz/IwlA== + dependencies: + qs "^6.4.0" + uniq@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" integrity sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA== -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" - -unique-stream@^2.0.2: - version "2.3.1" - resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" - integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A== - dependencies: - json-stable-stringify-without-jsonify "^1.0.1" - through2-filter "^3.0.0" - unique-string@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" @@ -16239,6 +14993,11 @@ universalify@^0.1.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== + universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -16272,17 +15031,7 @@ untildify@^4.0.0: resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== -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== - -upath@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" - integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== - -update-browserslist-db@^1.0.9: +update-browserslist-db@^1.0.10, update-browserslist-db@^1.0.9: version "1.0.10" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== @@ -16332,7 +15081,7 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== -url-join@^4.0.0: +url-join@^4.0.0, url-join@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA== @@ -16344,6 +15093,14 @@ url-parse-lax@^3.0.0: dependencies: prepend-http "^2.0.0" +url-parse@^1.5.3: + version "1.5.10" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" + integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + url-slug@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/url-slug/-/url-slug-2.0.0.tgz#a789d5aed4995c0d95af33377ad1d5c68d4d7027" @@ -16375,13 +15132,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-promisify@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" - integrity sha512-K+5eQPYs14b3+E+hmE2J6gCZ4JmMl9DbYS6BeP2CHq6WMuNxErxf5B/n0fz85L8zUuoO6rIzNNmIQDu/j+1OcA== - dependencies: - object.getownpropertydescriptors "^2.0.3" - utila@~0.4: version "0.4.0" resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" @@ -16407,24 +15157,26 @@ v8-compile-cache-lib@^3.0.1: resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== -v8-compile-cache@^2.0.3: +v8-compile-cache@2.3.0, v8-compile-cache@^2.0.3: version "2.3.0" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== -v8flags@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.2.0.tgz#b243e3b4dfd731fa774e7492128109a0fe66d656" - integrity sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg== +v8-to-istanbul@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz#b6f994b0b5d4ef255e17a0d17dc444a9f5132fa4" + integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w== dependencies: - homedir-polyfill "^1.0.1" + "@jridgewell/trace-mapping" "^0.3.12" + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" valid-url@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/valid-url/-/valid-url-1.0.9.tgz#1c14479b40f1397a75782f115e4086447433a200" integrity sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA== -validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: +validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== @@ -16432,18 +15184,6 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -validate-npm-package-name@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" - integrity sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw== - dependencies: - builtins "^1.0.3" - -value-or-function@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" - integrity sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg== - vary@^1, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" @@ -16458,59 +15198,6 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -vinyl-fs@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-3.0.3.tgz#c85849405f67428feabbbd5c5dbdd64f47d31bc7" - integrity sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng== - dependencies: - fs-mkdirp-stream "^1.0.0" - glob-stream "^6.1.0" - graceful-fs "^4.0.0" - is-valid-glob "^1.0.0" - lazystream "^1.0.0" - lead "^1.0.0" - object.assign "^4.0.4" - pumpify "^1.3.5" - readable-stream "^2.3.3" - remove-bom-buffer "^3.0.0" - remove-bom-stream "^1.2.0" - resolve-options "^1.1.0" - through2 "^2.0.0" - to-through "^2.0.0" - value-or-function "^3.0.0" - vinyl "^2.0.0" - vinyl-sourcemap "^1.1.0" - -vinyl-sourcemap@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz#92a800593a38703a8cdb11d8b300ad4be63b3e16" - integrity sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA== - dependencies: - append-buffer "^1.0.2" - convert-source-map "^1.5.0" - graceful-fs "^4.1.6" - normalize-path "^2.1.1" - now-and-later "^2.0.0" - remove-bom-buffer "^3.0.0" - vinyl "^2.0.0" - -vinyl@^2.0.0: - 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" - -vlq@^0.2.1: - version "0.2.3" - resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" - integrity sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow== - void-elements@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09" @@ -16532,15 +15219,19 @@ w3c-xmlserializer@^1.0.0: webidl-conversions "^4.0.2" xml-name-validator "^3.0.0" -walk-back@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/walk-back/-/walk-back-2.0.1.tgz#554e2a9d874fac47a8cb006bf44c2f0c4998a0a4" - integrity sha512-Nb6GvBR8UWX1D+Le+xUq0+Q1kFmRBIWVrfLnQAOmcpEzA9oAxwJ9gIr36t9TWYfzvWRvuMtjHiVsJYEkXWaTAQ== - -walk-back@^4.0.0: +w3c-xmlserializer@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/walk-back/-/walk-back-4.0.0.tgz#9e4ad2bd72038f3beed2d83180f9fd40b233bfab" - integrity sha512-kudCA8PXVQfrqv2mFTG72vDBRi8BKWxGgFLwPpzHcpZnSwZk93WMwUDVcLHWNsnm+Y0AC4Vb6MUNRgaHfyV2DQ== + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" + integrity sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw== + dependencies: + xml-name-validator "^4.0.0" + +walker@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" watchpack@^2.4.0: version "2.4.0" @@ -16550,7 +15241,14 @@ watchpack@^2.4.0: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" -wcwidth@^1.0.0, wcwidth@^1.0.1: +wbuf@^1.1.0, wbuf@^1.7.3: + version "1.7.3" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== + dependencies: + minimalistic-assert "^1.0.0" + +wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== @@ -16567,10 +15265,10 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== +webidl-conversions@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" + integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== webpack-cli@^5.0.1: version "5.0.1" @@ -16591,17 +15289,52 @@ webpack-cli@^5.0.1: rechoir "^0.8.0" webpack-merge "^5.7.3" -webpack-dev-middleware@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-6.0.1.tgz#fd585127ed44dab3f253daf0d98f4d58a5088cc2" - integrity sha512-PZPZ6jFinmqVPJZbisfggDiC+2EeGZ1ZByyMP5sOFJcPPWSexalISz+cvm+j+oYPT7FIJyxT76esjnw9DhE5sw== +webpack-dev-middleware@^5.3.1: + version "5.3.3" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz#efae67c2793908e7311f1d9b06f2a08dcc97e51f" + integrity sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA== dependencies: colorette "^2.0.10" - memfs "^3.4.12" + memfs "^3.4.3" mime-types "^2.1.31" range-parser "^1.2.1" schema-utils "^4.0.0" +webpack-dev-server@^4.9.3: + version "4.11.1" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz#ae07f0d71ca0438cf88446f09029b92ce81380b5" + integrity sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw== + dependencies: + "@types/bonjour" "^3.5.9" + "@types/connect-history-api-fallback" "^1.3.5" + "@types/express" "^4.17.13" + "@types/serve-index" "^1.9.1" + "@types/serve-static" "^1.13.10" + "@types/sockjs" "^0.3.33" + "@types/ws" "^8.5.1" + ansi-html-community "^0.0.8" + bonjour-service "^1.0.11" + chokidar "^3.5.3" + colorette "^2.0.10" + compression "^1.7.4" + connect-history-api-fallback "^2.0.0" + default-gateway "^6.0.3" + express "^4.17.3" + graceful-fs "^4.2.6" + html-entities "^2.3.2" + http-proxy-middleware "^2.0.3" + ipaddr.js "^2.0.1" + open "^8.0.9" + p-retry "^4.5.0" + rimraf "^3.0.2" + schema-utils "^4.0.0" + selfsigned "^2.1.1" + serve-index "^1.9.1" + sockjs "^0.3.24" + spdy "^4.0.2" + webpack-dev-middleware "^5.3.1" + ws "^8.4.2" + webpack-hot-middleware@^2.25.3: version "2.25.3" resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.3.tgz#be343ce2848022cfd854dd82820cd730998c6794" @@ -16619,11 +15352,23 @@ webpack-merge@^5.7.3, webpack-merge@^5.8.0: clone-deep "^4.0.1" wildcard "^2.0.0" -webpack-sources@^3.2.3: +webpack-node-externals@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz#1a3407c158d547a9feb4229a9e3385b7b60c9917" + integrity sha512-LnL6Z3GGDPht/AigwRh2dvL9PQPFQ8skEpVrWZXLWBYmqcaojHNN0onvHzie6rq7EWKrrBfPYqNEzTJgiwEQDQ== + +webpack-sources@^3.0.0, webpack-sources@^3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== +webpack-subresource-integrity@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz#8b7606b033c6ccac14e684267cb7fb1f5c2a132a" + integrity sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q== + dependencies: + typed-assert "^1.0.8" + webpack@^5.75.0: version "5.75.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.75.0.tgz#1e440468647b2505860e94c9ff3e44d5b582c152" @@ -16654,6 +15399,36 @@ webpack@^5.75.0: watchpack "^2.4.0" webpack-sources "^3.2.3" +webpack@^5.80.0: + version "5.85.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.85.0.tgz#c14a6a3a91f84d67c450225661fda8da36bc7f49" + integrity sha512-7gazTiYqwo5OSqwH1tigLDL2r3qDeP2dOKYgd+LlXpsUMqDTklg6tOghexqky0/+6QY38kb/R/uRPUleuL43zg== + dependencies: + "@types/eslint-scope" "^3.7.3" + "@types/estree" "^1.0.0" + "@webassemblyjs/ast" "^1.11.5" + "@webassemblyjs/wasm-edit" "^1.11.5" + "@webassemblyjs/wasm-parser" "^1.11.5" + acorn "^8.7.1" + acorn-import-assertions "^1.9.0" + browserslist "^4.14.5" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.14.1" + es-module-lexer "^1.2.1" + eslint-scope "5.1.1" + events "^3.2.0" + glob-to-regexp "^0.4.1" + graceful-fs "^4.2.9" + json-parse-even-better-errors "^2.3.1" + loader-runner "^4.2.0" + mime-types "^2.1.27" + neo-async "^2.6.2" + schema-utils "^3.1.2" + tapable "^2.1.1" + terser-webpack-plugin "^5.3.7" + watchpack "^2.4.0" + webpack-sources "^3.2.3" + webpackbar@5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-5.0.2.tgz#d3dd466211c73852741dfc842b7556dcbc2b0570" @@ -16664,7 +15439,7 @@ webpackbar@5.0.2: pretty-time "^1.1.0" std-env "^3.0.1" -websocket-driver@>=0.5.1: +websocket-driver@>=0.5.1, websocket-driver@^0.7.4: version "0.7.4" resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== @@ -16685,16 +15460,31 @@ whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.5: dependencies: iconv-lite "0.4.24" -whatwg-fetch@>=0.10.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" - integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== +whatwg-encoding@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53" + integrity sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg== + dependencies: + iconv-lite "0.6.3" whatwg-mimetype@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== +whatwg-mimetype@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7" + integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q== + +whatwg-url@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018" + integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ== + dependencies: + tr46 "^3.0.0" + webidl-conversions "^7.0.0" + whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -16712,15 +15502,6 @@ whatwg-url@^7.0.0: tr46 "^1.0.1" webidl-conversions "^4.0.2" -whatwg-url@^8.4.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== - dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" - which-boxed-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -16732,11 +15513,6 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - integrity sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ== - which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" @@ -16754,27 +15530,20 @@ which-typed-array@^1.1.9: has-tostringtag "^1.0.0" is-typed-array "^1.1.10" -which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: +which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" -which@^2.0.1, which@^2.0.2: +which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" -wide-align@^1.1.0: - version "1.1.5" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" - integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== - dependencies: - string-width "^1.0.2 || 2 || 3 || 4" - widest-line@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" @@ -16802,7 +15571,7 @@ wolfy87-eventemitter@^5.2.9: resolved "https://registry.yarnpkg.com/wolfy87-eventemitter/-/wolfy87-eventemitter-5.2.9.tgz#e879f770b30fbb6512a8afbb330c388591099c2a" integrity sha512-P+6vtWyuDw+MB01X7UeF8TaHBvbCovf4HPEMF/SV7BdDc1SMTiBy13SRD71lQh4ExFTG1d/WNzDGDCyOKSMblw== -word-wrap@~1.2.3: +word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== @@ -16812,14 +15581,6 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== -wordwrapjs@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-3.0.0.tgz#c94c372894cadc6feb1a66bff64e1d9af92c5d1e" - integrity sha512-mO8XtqyPvykVCsrwj5MlOVWvSnCdT+C+QVbm6blradR7JExAhbkZ7hZ9A+9NUtwzSqrlUo9a67ws0EiILrvRpw== - dependencies: - reduce-flatten "^1.0.1" - typical "^2.6.1" - wordwrapjs@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-4.0.1.tgz#d9790bccfb110a0fc7836b5ebce0937b37a8b98f" @@ -16836,7 +15597,7 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" -wrap-ansi@^5.0.0, wrap-ansi@^5.1.0: +wrap-ansi@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== @@ -16868,16 +15629,7 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -write-file-atomic@^2.4.2: - version "2.4.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" - integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -write-file-atomic@^3.0.0, write-file-atomic@^3.0.1, write-file-atomic@^3.0.3: +write-file-atomic@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== @@ -16887,52 +15639,13 @@ write-file-atomic@^3.0.0, write-file-atomic@^3.0.1, write-file-atomic@^3.0.3: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -write-json-file@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" - integrity sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ== - dependencies: - detect-indent "^5.0.0" - graceful-fs "^4.1.15" - make-dir "^2.1.0" - pify "^4.0.1" - sort-keys "^2.0.0" - write-file-atomic "^2.4.2" - -write-json-file@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" - integrity sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ== - dependencies: - detect-indent "^6.0.0" - graceful-fs "^4.1.15" - is-plain-obj "^2.0.0" - make-dir "^3.0.0" - sort-keys "^4.0.0" - write-file-atomic "^3.0.0" - -write-pkg@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-4.0.0.tgz#675cc04ef6c11faacbbc7771b24c0abbf2a20039" - integrity sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA== - dependencies: - sort-keys "^2.0.0" - type-fest "^0.4.1" - write-json-file "^3.2.0" - -write@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" - integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== - dependencies: - mkdirp "^0.5.1" - -write@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" - integrity sha512-CJ17OoULEKXpA5pef3qLj5AxTJ6mSt7g84he2WIskKwqFO4T97d5V7Tadl0DYDk7qyUOQD5WlUlOMChaYrhxeA== +write-file-atomic@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" + integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== dependencies: - mkdirp "^0.5.1" + imurmurhash "^0.1.4" + signal-exit "^3.0.7" ws@^6.1.0: version "6.2.2" @@ -16941,6 +15654,16 @@ ws@^6.1.0: dependencies: async-limiter "~1.0.0" +ws@^8.11.0: + version "8.13.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" + integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== + +ws@^8.4.2: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz#485074cc392689da78e1828a9ff23585e06cddd8" + integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== + ws@~8.2.3: version "8.2.3" resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba" @@ -16956,16 +15679,16 @@ xml-name-validator@^3.0.0: resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== -xmlchars@^2.1.1: +xml-name-validator@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" + integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== + +xmlchars@^2.1.1, xmlchars@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== -xmlcreate@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/xmlcreate/-/xmlcreate-2.0.4.tgz#0c5ab0f99cdd02a81065fa9cd8f8ae87624889be" - integrity sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg== - xmlhttprequest-ssl@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz#91360c86b914e67f44dce769180027c0da618c67" @@ -16989,11 +15712,6 @@ xtend@~2.0.4: is-object "~0.1.2" object-keys "~0.2.0" -y18n@^3.2.1: - version "3.2.2" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" - integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== - "y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" @@ -17009,7 +15727,7 @@ yallist@^2.1.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== -yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1: +yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== @@ -17024,15 +15742,10 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yapool@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/yapool/-/yapool-1.0.0.tgz#f693f29a315b50d9a9da2646a7a6645c96985b6a" - integrity sha512-RONBZndo8Lo8pKPfORRxr2DIk2NZKIml654o4kaIu7RXVxQCKsAN6AqrcoZsI3h+2H5YO2mD/04Wy4LbAgd+Pg== - -yargs-parser@20.2.4: - version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" - integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== +yargs-parser@21.1.1, yargs-parser@^21.0.1, yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs-parser@^10.0.0: version "10.1.0" @@ -17049,7 +15762,7 @@ yargs-parser@^11.1.1: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^13.0.0, yargs-parser@^13.1.2: +yargs-parser@^13.1.2: version "13.1.2" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== @@ -17057,24 +15770,19 @@ yargs-parser@^13.0.0, yargs-parser@^13.1.2: camelcase "^5.0.0" decamelize "^1.2.0" +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs-parser@^21.1.1: - version "21.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" - integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== - -yargs-parser@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.1.tgz#7ede329c1d8cdbbe209bd25cdb990e9b1ebbb394" - integrity sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA== - dependencies: - camelcase "^3.0.0" - object.assign "^4.1.0" - yargs@17.1.1: version "17.1.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.1.1.tgz#c2a8091564bdb196f7c0a67c1d12e5b85b8067ba" @@ -17106,7 +15814,7 @@ yargs@^12.0.5: y18n "^3.2.1 || ^4.0.0" yargs-parser "^11.1.1" -yargs@^13.2.2, yargs@^13.3.0, yargs@^13.3.2: +yargs@^13.3.0, yargs@^13.3.2: version "13.3.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== @@ -17122,7 +15830,24 @@ yargs@^13.2.2, yargs@^13.3.0, yargs@^13.3.2: y18n "^4.0.0" yargs-parser "^13.1.2" -yargs@^16.0.0, yargs@^16.1.0, yargs@^16.2.0: +yargs@^15.0.1: + version "15.4.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yargs@^16.1.0, yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -17135,7 +15860,7 @@ yargs@^16.0.0, yargs@^16.1.0, yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^17.0.1, yargs@^17.3.1: +yargs@^17.0.0, yargs@^17.0.1, yargs@^17.3.1, yargs@^17.6.2: version "17.6.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.2.tgz#2e23f2944e976339a1ee00f18c77fedee8332541" integrity sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw== @@ -17148,25 +15873,6 @@ yargs@^17.0.1, yargs@^17.3.1: y18n "^5.0.5" yargs-parser "^21.1.1" -yargs@^7.0.2, yargs@^7.1.0: - version "7.1.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.2.tgz#63a0a5d42143879fdbb30370741374e0641d55db" - integrity sha512-ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA== - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.1" - yn@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" @@ -17177,13 +15883,6 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -yoga-layout-prebuilt@^1.9.3: - version "1.10.0" - resolved "https://registry.yarnpkg.com/yoga-layout-prebuilt/-/yoga-layout-prebuilt-1.10.0.tgz#2936fbaf4b3628ee0b3e3b1df44936d6c146faa6" - integrity sha512-YnOmtSbv4MTf7RGJMK0FvZ+KD8OEe/J5BNnR0GHhD8J/XcG/Qvxgszm0Un6FTHWW4uHlTgP0IztiXQnGyIR45g== - dependencies: - "@types/yoga-layout" "1.9.2" - zip-stream@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.1.0.tgz#51dd326571544e36aa3f756430b313576dc8fc79"