chore: improve husky and lint-staged checks (#21679)

## Description

1. Update husky, prettier and lint-staged then move them to
devDependencies
2. Configure husky and lint-staged
3. Impriove rules for the lint commands
4.  Fix errors of eslint and prettier. 
5. Remove redundant files

## Type of change


- Chore (housekeeping or task changes that don't impact user perception)


Co-authored-by: Valera Melnikov <melnikov.vv@greendatasoft.ru>
This commit is contained in:
Valera Melnikov 2023-03-23 14:32:18 +03:00 committed by GitHub
parent 8f20f0980d
commit 96c42d75d4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
42 changed files with 418 additions and 422 deletions

View File

@ -19,19 +19,20 @@
}
},
"rules": {
"@typescript-eslint/no-explicit-any": 0,
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-use-before-define": "off",
"@typescript-eslint/no-var-requires": "off",
"import/no-webpack-loader-syntax": "off",
"no-undef": "off",
"react/prop-types": "off",
"react/display-name": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"cypress/no-unnecessary-waiting": "off",
"cypress/no-assigning-return-values": "off",
"@typescript-eslint/no-unused-vars": "error",
// enforce `import type` for all type-only imports so the bundler knows to erase them
"@typescript-eslint/consistent-type-imports": "error",
"react-hooks/rules-of-hooks": "error",
"@typescript-eslint/no-use-before-define": 0,
"@typescript-eslint/no-var-requires": 0,
"import/no-webpack-loader-syntax": 0,
"no-undef": 0,
"react/prop-types": 0,
"react/display-name": 0,
"@typescript-eslint/explicit-module-boundary-types": 0,
"cypress/no-unnecessary-waiting": 0,
"cypress/no-assigning-return-values": 0,
"react/jsx-boolean-value": "error",
"react/self-closing-comp": "error",
"react/jsx-sort-props": "error",

View File

@ -1,11 +0,0 @@
[ignore]
[include]
[libs]
[lints]
[options]
[strict]

View File

@ -50,3 +50,6 @@ TODO
/nginx
/public/static/wds/
storybook-static
stats.json

4
app/client/.husky/pre-commit Executable file
View File

@ -0,0 +1,4 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
npx lint-staged --cwd app/client && git-secrets --scan --untracked && git-secrets --scan -r

View File

@ -1,5 +0,0 @@
{
"hooks": {
"pre-commit": "yarn precommit"
}
}

View File

@ -1,5 +1,8 @@
{
"src/**/*.tsx": ["npx eslint --fix", "npx prettier --write"],
"cypress/**/*.js": ["npx eslint --fix", "npx prettier --write"],
"src/**/*.ts": ["npx eslint --fix", "npx prettier --write"]
"src/**/*.{js,ts,tsx}": ["npx eslint --fix"],
"src/**/*.{js,ts,tsx,css,md,json}": ["npx prettier --write"],
"cypress/**/*.{js,ts}": ["npx eslint --fix"],
"cypress/**/*.{js,ts,json}": ["npx prettier --write"],
"packages/**/*.{js,ts,tsx}": ["npx eslint --fix"],
"packages/**/*.{js,ts,tsx,css,mdx,json}": ["npx prettier --write"]
}

View File

@ -4,6 +4,12 @@
"cypress/globals": true
},
"rules": {
"cypress/no-unnecessary-waiting": 0
"@typescript-eslint/no-array-constructor": "off",
"@typescript-eslint/no-namespace": "off",
"@typescript-eslint/no-unused-vars": "off",
"cypress/no-unnecessary-waiting": "off",
"no-console": "off",
"prefer-const": "off",
"@typescript-eslint/no-non-null-assertion": "error"
}
}

View File

@ -205,7 +205,7 @@ describe("AForce - Community Issues page validations", function () {
});
it("7. Validate Filter table", () => {
var filterTitle = new Array();
let filterTitle = new Array();
deployMode.DeployApp();
table.WaitUntilTableLoad();

View File

@ -37,7 +37,7 @@ describe("Validate basic binding of Input widget to Input widget", () => {
});
it("3. Publish widget and validate the data displayed in input widgets", function () {
var currentTime = new Date();
let currentTime = new Date();
deployMode.DeployApp(locator._widgetInputSelector("inputwidgetv2"));
cy.get(locator._widgetInputSelector("inputwidgetv2"))
.first()

View File

@ -3,8 +3,8 @@ import { ObjectsRegistry } from "../../../../support/Objects/Registry";
const {
AggregateHelper: agHelper,
ApiPage: apiPage,
JSEditor: jsEditor,
EntityExplorer: ee,
JSEditor: jsEditor,
} = ObjectsRegistry;
describe("Bug #15372 Catch block was not triggering in Safari/firefox", () => {

View File

@ -11,7 +11,7 @@ describe("Validate Airtable Ds", () => {
});
it("1. Validate List Records", () => {
var specieslist = new Array();
let specieslist = new Array();
_.dataSources.CreateQueryAfterDSSaved();
//List all records

View File

@ -1,10 +1,9 @@
import * as _ from "../../../../support/Objects/ObjectsCore";
let appName: string = "",
datasourceName: string = "GraphQL_DS",
apiName: string = "GraphQL_API_";
let tokenToAuthorizeGraphQl: string = "",
authoemail = "";
let appName = "";
let datasourceName = "GraphQL_DS";
let tokenToAuthorizeGraphQl = "";
let authoemail = "";
const GRAPHQL_QUERY = `query ($myid: Int!) {
postById(id: $myid) {

View File

@ -399,11 +399,11 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => {
}
function generateStoresSecretInfo(rowIndex: number) {
let secretInfo: string = "";
let secretInfo = "";
table
.ReadTableRowColumnData(rowIndex, 3, "v1", 200)
.then(($cellData: any) => {
var points = $cellData.match(/((.*))/).pop(); //(/(?<=\()).+?(?=\))/g)
let points = $cellData.match(/((.*))/).pop(); //(/(?<=\()).+?(?=\))/g)
let secretCode: string[] = (points as string).split(",");
secretCode[0] = secretCode[0].slice(0, 5);
secretCode[1] = secretCode[1].slice(0, 5);

View File

@ -356,8 +356,6 @@ describe("Binary Datatype tests", function () {
});
});
it("9. Validate Drop of the Newly Created - binarytype - Table from Postgres datasource", () => {});
after(
"Validate Drop of the Newly Created - binarytype - Table & Verify Deletion of all created queries",
() => {

View File

@ -362,7 +362,7 @@ export class ApiPage {
.invoke("text")
.then((text) => {
apiResp = `${text
.match(/"(.*)"/)![0]
.match(/"(.*)"/)?.[0]
.split('"')
.join("")} `;
cy.log("Key value in api response is :" + apiResp);

View File

@ -648,8 +648,8 @@ export class DataSources {
}
RunQuery({
toValidateResponse = true,
expectedStatus = true,
toValidateResponse = true,
waitTimeInterval = 500,
}: Partial<RunQueryParams> = {}) {
this.agHelper.GetNClick(this._runQueryBtn, 0, true, waitTimeInterval);

View File

@ -5,7 +5,7 @@ export class DeployMode {
private agHelper = ObjectsRegistry.AggregateHelper;
_jsonFieldName = (fieldName: string) => `//p[text()='${fieldName}']`;
_jsonFormFieldByName = (fieldName: string, input: boolean = true) =>
_jsonFormFieldByName = (fieldName: string, input = true) =>
this._jsonFieldName(fieldName) +
`/ancestor::div[@direction='column']//div[@data-testid='input-container']//${
input ? "input" : "textarea"

View File

@ -166,7 +166,7 @@ export class GitSync {
cy.wait(`@generateKey`).then((result: any) => {
generatedKey = result.response.body.data.publicKey;
generatedKey = generatedKey.slice(0, generatedKey.length - 1);
var formdata = new FormData();
let formdata = new FormData();
cy.log("generatedKey is " + generatedKey);
formdata.set("sshkey", generatedKey);
// fetch the generated key and post to the github repo
@ -229,7 +229,7 @@ export class GitSync {
}
private CreateLocalGithubRepo(repo: string) {
let remoteUrl: string = "";
let remoteUrl = "";
cy.request({
method: "GET",
url:

View File

@ -308,7 +308,7 @@ export class Table {
cy.get(this._previousPage(tableVersion)).should("have.attr", "disabled");
}
public AssertSelectedRow(rowNum: number = 0) {
public AssertSelectedRow(rowNum = 0) {
cy.xpath(this._tableSelectedRow)
.invoke("attr", "data-rowindex")
.then(($rowIndex) => {

View File

View File

@ -28,9 +28,12 @@
"preinstall": "CURRENT_SCOPE=client node ../shared/build-shared-dep.js",
"install": "node cypress/apply-patches.js",
"storybook": "yarn workspace @design-system/storybook storybook",
"lint:ci": "eslint --ext .ts,.tsx ./src && eslint --ext .js ./cypress",
"prettier:ci": "prettier --check ./src && prettier --check ./cypress",
"check-types": "yarn tsc --noEmit"
"lint:ci": "eslint --cache --ext .js,.ts,.tsx ./src && eslint --cache --ext .js,.ts ./cypress && yarn run lint:packages",
"lint:packages": "workspaces-foreach -pt yarn lint:ci",
"prettier:ci": "prettier --check ./src && prettier --check ./cypress && yarn run prettier:packages",
"prettier:packages": "workspaces-foreach -pt yarn prettier:ci",
"check-types": "yarn tsc --noEmit",
"prepare": "cd ../.. && husky install app/client/.husky"
},
"dependencies": {
"@blueprintjs/core": "^3.36.0",
@ -88,7 +91,6 @@
"graphql": "^16.3.0",
"history": "^4.10.1",
"http-proxy": "^1.18.1",
"husky": "^3.0.5",
"immer": "^9.0.6",
"instantsearch.css": "^7.4.2",
"interweave": "^12.7.2",
@ -100,7 +102,6 @@
"klona": "^2.0.5",
"libphonenumber-js": "^1.9.44",
"linkedom": "^0.14.20",
"lint-staged": "^13.0.3",
"localforage": "^1.7.3",
"lodash": "^4.17.21",
"lodash-es": "4.17.21",
@ -119,7 +120,6 @@
"papaparse": "^5.3.2",
"path-to-regexp": "^6.2.0",
"popper.js": "^1.15.0",
"prettier": "^2.8.4",
"prismjs": "^1.27.0",
"proxy-memoize": "^1.2.0",
"punycode": "^2.1.1",
@ -194,7 +194,6 @@
"yjs": "^13.5.12",
"zipcelx": "^1.6.2"
},
"browserslist": [
">0.2%",
"not dead",
@ -280,8 +279,10 @@
"eslint-plugin-react-hooks": "^2.3.0",
"eslint-plugin-sort-destructure-keys": "^1.3.5",
"factory.ts": "^0.5.1",
"husky": "^8.0.0",
"jest-canvas-mock": "^2.3.1",
"jest-styled-components": "^7.0.8",
"lint-staged": "^13.2.0",
"mocha": "^9.0.2",
"mocha-junit-reporter": "^2.0.0",
"mochawesome": "^7.1.2",
@ -290,6 +291,7 @@
"patch-package": "^6.4.7",
"plop": "^3.1.1",
"postinstall-postinstall": "^2.1.0",
"prettier": "^2.8.6",
"prop-types": "^15.8.1",
"raw-loader": "^4.0.2",
"react-is": "^16.12.0",
@ -302,12 +304,8 @@
"ts-jest-mock-import-meta": "^0.12.0",
"ts-loader": "^9.4.1",
"webpack-merge": "^5.8.0",
"workbox-webpack-plugin": "^6.5.3"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged && git-secrets --scan --untracked && git-secrets --scan -r"
}
"workbox-webpack-plugin": "^6.5.3",
"yarn-workspaces-foreach": "^0.2.0"
},
"resolutions": {
"browserslist": "4.20.3",

View File

@ -1,16 +0,0 @@
{
"extends": [
"../../.eslintrc.json",
"plugin:storybook/recommended"
],
"overrides": [
{
"files": [
"**/*.stories.*"
],
"rules": {
"import/no-anonymous-default-export": "off"
}
}
]
}

View File

@ -1,6 +1,5 @@
@import url("../../wds/src/styles/tokens/raw.css");
@import url("../../wds/src/styles/tokens/semantic.css");
@import url("../../wds/src/styles/globals.css");
html,
body,

View File

@ -4,6 +4,12 @@
"main": "src/index.ts",
"author": "Valera Melnikov <valera@appsmith.com>, Pawan Kumar <pawan@appsmith.com>",
"license": "MIT",
"scripts": {
"storybook": "start-storybook -p 6006",
"build": "build-storybook",
"lint:ci": "echo 'No lint specified'",
"prettier:ci": "echo 'No prettier specified'"
},
"devDependencies": {
"@babel/core": "^7.20.12",
"@storybook/addon-actions": "^6.5.16",
@ -24,7 +30,6 @@
"@types/react-dom": "^17.0.2",
"autoprefixer": "^9.0.0",
"babel-loader": "^8.3.0",
"eslint-plugin-storybook": "^0.6.10",
"postcss": "^8",
"re-resizable": "^6.9.9",
"storybook-addon-pseudo-states": "^1.15.2",
@ -38,9 +43,5 @@
"colorjs.io": "^0.4.3",
"react": "^17.0.2",
"react-dom": "^17.0.2"
},
"scripts": {
"storybook": "start-storybook -p 6006",
"build": "build-storybook"
}
}

View File

@ -0,0 +1,11 @@
{
"extends": ["../../.eslintrc.json", "plugin:storybook/recommended"],
"overrides": [
{
"files": ["**/*.stories.*"],
"rules": {
"import/no-anonymous-default-export": "off"
}
}
]
}

View File

@ -0,0 +1 @@
src/tokens.json

View File

@ -4,9 +4,17 @@
"main": "src/index.ts",
"author": "Valera Melnikov <valera@appsmith.com>, Pawan Kumar <pawan@appsmith.com>",
"license": "MIT",
"scripts": {
"build:tokens": "npx ts-node ./src/utils/buildTokens.ts",
"lint:ci": "eslint --cache .",
"prettier:ci": "prettier --check ."
},
"devDependencies": {
"@types/react": "^17.0.2",
"@types/react-dom": "^17.0.2"
"@types/react-dom": "^17.0.2",
"eslint": "*",
"eslint-plugin-storybook": "^0.6.10",
"prettier": "*"
},
"dependencies": {
"@capsizecss/core": "^3.1.0",
@ -14,8 +22,5 @@
"colorjs.io": "^0.4.3",
"react": "^17.0.2",
"react-dom": "^17.0.2"
},
"scripts": {
"build:tokens": "npx ts-node ./src/utils/buildTokens.ts"
}
}

View File

@ -1,39 +1,44 @@
<!-- Button.stories.mdx -->
import { Canvas, Meta, Story } from '@storybook/addon-docs';
import { Canvas, Meta, Story } from "@storybook/addon-docs";
import { Button } from './';
import { Button } from "./";
<Meta title="WDS/Button" component={Button} parameters={{
height: 32,
width: 180,
}} argTypes={{
<Meta
title="WDS/Button"
component={Button}
parameters={{
height: 32,
width: 180,
}}
argTypes={{
children: {
name: 'children',
description: 'Text shown by button',
defaultValue: 'Button',
name: "children",
description: "Text shown by button",
defaultValue: "Button",
control: {
type: 'text'
type: "text",
},
table: {
type: {
summary: 'The label contents',
detail: 'Text displayed by the Badge'
}
}
}
}} />
summary: "The label contents",
detail: "Text displayed by the Badge",
},
},
},
}}
/>
export const Template = (args, { globals: { fontFamily } }) => <Button {...args} fontFamily={fontFamily} />;
export const Template = (args, { globals: { fontFamily } }) => (
<Button {...args} fontFamily={fontFamily} />
);
# Button
A button is a clickable element that is used to trigger an action.
<Canvas>
<Story name="Default">
{Template.bind({})}
</Story>
<Story name="Default">{Template.bind({})}</Story>
</Canvas>
# Variants
@ -41,44 +46,62 @@ A button is a clickable element that is used to trigger an action.
There are 4 variants of the button component.
<Canvas>
<Story name="Filled Variant" args={{
children: 'Filled'
}}>
<Story
name="Filled Variant"
args={{
children: "Filled",
}}
>
{Template.bind({})}
</Story>
<Story name="Outline Variant" args={{
variant: "outline",
children: 'Outline'
}}>
</Story>
<Story
name="Outline Variant"
args={{
variant: "outline",
children: "Outline",
}}
>
{Template.bind({})}
</Story>
<Story name="Light Variant" args={{
variant: "light",
children: 'Light'
}}>
</Story>
<Story
name="Light Variant"
args={{
variant: "light",
children: "Light",
}}
>
{Template.bind({})}
</Story>
<Story name="Subtle Variant" args={{
variant: "subtle",
children: 'Subtle'
}}>
</Story>
<Story
name="Subtle Variant"
args={{
variant: "subtle",
children: "Subtle",
}}
>
{Template.bind({})}
</Story>
</Story>
</Canvas>
# States
<Canvas>
<Story name="Disabled State" args={{
isDisabled: true,
children: 'Disabled'
}}>
<Story
name="Disabled State"
args={{
isDisabled: true,
children: "Disabled",
}}
>
{Template.bind({})}
</Story>
<Story name="Loading State" args={{
isLoading: true,
children: 'Loading'
}}>
</Story>
<Story
name="Loading State"
args={{
isLoading: true,
children: "Loading",
}}
>
{Template.bind({})}
</Story>
</Story>
</Canvas>

View File

@ -1,9 +1,10 @@
import React, { HTMLAttributes, useMemo, forwardRef } from "react";
import type { HTMLAttributes } from "react";
import React, { useMemo, forwardRef } from "react";
import { Text } from "../Text";
import { Spinner } from "../Spinner";
import { StyledButton } from "./index.styled";
import { fontFamilyTypes } from "../../utils/typography";
import type { fontFamilyTypes } from "../../utils/typography";
// types
export enum ButtonVariant {

View File

@ -7,7 +7,7 @@ import {
darkenColor,
parseColor,
} from "../../utils/colors";
import { ButtonProps } from "./Button";
import type { ButtonProps } from "./Button";
/**
* creates locally scoped css variables to be used in variants styles

View File

@ -1,5 +1,5 @@
import React from "react";
import { ComponentMeta, ComponentStory } from "@storybook/react";
import type { ComponentMeta, ComponentStory } from "@storybook/react";
import { ButtonGroup } from "./index";
import { Button } from "../Button";

View File

@ -1,6 +1,6 @@
import styled from "styled-components";
import { ButtonGroupProps } from "./ButtonGroup";
import type { ButtonGroupProps } from "./ButtonGroup";
export const StyledContainer = styled.div<ButtonGroupProps>`
--border-width: 1px;

View File

@ -1,6 +1,6 @@
import React from "react";
import { StyledText } from "./index.styled";
import { fontFamilyTypes } from "../../utils/typography";
import type { fontFamilyTypes } from "../../utils/typography";
export type TextProps = {
children: React.ReactNode;

View File

@ -1,6 +1,6 @@
import styled, { css } from "styled-components";
import { TextProps } from "./Text";
import type { TextProps } from "./Text";
import { createTypographyStyles } from "../../utils/typography";
const shouldForwardProp = (prop: any) => {

View File

@ -1,98 +0,0 @@
{
"semantic": {
"color-bg-accent": {
"value": "#1a7f37",
"type": "color"
},
"color-bg-accent-hover": {
"value": "#278840",
"type": "color"
},
"color-bg-accent-light": {
"value": "#9af8a9",
"type": "color"
},
"color-bg-accent-active": {
"value": "#1a7f37",
"type": "color"
},
"color-bg-accent-light-active": {
"value": "#9af5a9",
"type": "color"
},
"color-bg-accent-light-hover": {
"value": "#a4ffb3",
"type": "color"
},
"color-text-accent": {
"value": "#1a7f37",
"type": "color"
},
"color-text-onaccent": {
"value": "#fff",
"type": "color"
},
"color-border-accent": {
"value": "#1a7f37",
"type": "color"
},
"color-border-onaccent": {
"value": "#006119",
"type": "color"
},
"color-border-onaccent-light": {
"value": "#eefff0",
"type": "color"
}
},
"raw": {
"0": {
"spacing0": {
"value": "0px",
"type": "sizing"
}
},
"1": {
"spacing1": {
"value": "4px",
"type": "sizing"
}
},
"2": {
"spacing2": {
"value": "8px",
"type": "sizing"
}
},
"3": {
"spacing3": {
"value": "12px",
"type": "sizing"
}
},
"4": {
"spacing4": {
"value": "16px",
"type": "sizing"
}
},
"5": {
"spacing5": {
"value": "20px",
"type": "sizing"
}
},
"6": {
"spacing6": {
"value": "24px",
"type": "sizing"
}
},
"7": {
"spacing7": {
"value": "28px",
"type": "sizing"
}
}
}
}

View File

@ -1,14 +1,10 @@
{
"extends": "../../tsconfig.json",
"include": [
"./src/**/*",
],
"include": ["./src/**/*"],
"ts-node": {
"compilerOptions": {
"module": "commonjs",
"types": [
"node",
],
"types": ["node"]
}
}
}

View File

@ -1,6 +0,0 @@
module.exports = {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
};

View File

@ -1,6 +1,5 @@
import { ENTITY_TYPE } from "design-system-old";
import { PluginType } from "entities/Action";
import type { ConfigTree, DataTree } from "entities/DataTree/dataTreeFactory";
import type { DataTree } from "entities/DataTree/dataTreeFactory";
import { createEvaluationContext } from "workers/Evaluation/evaluate";
const dataTree: DataTree = {
@ -17,21 +16,6 @@ const dataTree: DataTree = {
},
};
const configTree: ConfigTree = {
action1: {
pluginId: "",
actionId: "123",
pluginType: PluginType.API,
dynamicBindingPathList: [],
name: "action1",
bindingPaths: {},
reactivePaths: {},
ENTITY_TYPE: ENTITY_TYPE.ACTION,
dependencyMap: {},
logBlackList: {},
},
};
export const evalContext = createEvaluationContext({
dataTree,
resolvedFunctions: {},

View File

@ -1,13 +1,10 @@
import { PluginType, PaginationType } from "entities/Action";
import { PaginationType } from "entities/Action";
import type {
DataTree,
WidgetEntity,
AppsmithEntity,
} from "entities/DataTree/dataTreeFactory";
import {
EvaluationSubstitutionType,
ENTITY_TYPE,
} from "entities/DataTree/dataTreeFactory";
import { ENTITY_TYPE } from "entities/DataTree/dataTreeFactory";
export const unEvalTree = {
MainContainer: {

View File

View File

@ -2895,6 +2895,18 @@
resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz#ea89004119dc42db2e1dba0f97d553f7372f6fcb"
integrity sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==
"@eslint-community/eslint-utils@^4.2.0":
version "4.3.0"
resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.3.0.tgz#a556790523a351b4e47e9d385f47265eaaf9780a"
integrity sha512-v3oplH6FYCULtFuCeqyuTd9D2WKO937Dxdq+GmHOLL72TTRriLxz2VLlNfkZRsvj6PKnOPAtuT6dwrs/pA5DvA==
dependencies:
eslint-visitor-keys "^3.3.0"
"@eslint-community/regexpp@^4.4.0":
version "4.4.0"
resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.0.tgz#3e61c564fcd6b921cb789838631c5ee44df09403"
integrity sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==
"@eslint/eslintrc@^1.2.3":
version "1.2.3"
resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.3.tgz"
@ -2925,11 +2937,31 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
"@eslint/eslintrc@^2.0.1":
version "2.0.1"
resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.1.tgz#7888fe7ec8f21bc26d646dbd2c11cd776e21192d"
integrity sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==
dependencies:
ajv "^6.12.4"
debug "^4.3.2"
espree "^9.5.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"
"@eslint/js@8.35.0":
version "8.35.0"
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.35.0.tgz#b7569632b0b788a0ca0e438235154e45d42813a7"
integrity sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==
"@eslint/js@8.36.0":
version "8.36.0"
resolved "https://registry.npmjs.org/@eslint/js/-/js-8.36.0.tgz#9837f768c03a1e4a30bd304a64fb8844f0e72efe"
integrity sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==
"@faker-js/faker@^7.4.0":
version "7.4.0"
resolved "https://registry.yarnpkg.com/@faker-js/faker/-/faker-7.4.0.tgz#cac720d860a89d487b47e55e66a4fd114f1d3fe5"
@ -5244,6 +5276,27 @@
dependencies:
"@babel/runtime" "^7.12.5"
"@timhall/ansi-colors@^5.0.0":
version "5.0.0"
resolved "https://registry.npmjs.org/@timhall/ansi-colors/-/ansi-colors-5.0.0.tgz#b29cd77d547ef7d8263c83627615905390b456a1"
integrity sha512-5K8ifVHWALiQgxCRkjLLBmWJxS5N6TNPKfsEfnRgmZrJd6udsDRGK3PddyeLingVlXAJ4CDxz443Chj4rTG6xw==
"@timhall/cli@^0.5.0":
version "0.5.0"
resolved "https://registry.npmjs.org/@timhall/cli/-/cli-0.5.0.tgz#234d9084b6bac55d775d5a2ab974302f6ac7bbfa"
integrity sha512-iXDn342lBXo6q96PF5RTU+xKBNk8hFaI9zEWJiME2nNKKjoubBdvvVEgRSYUjavb55ihLEd95Gr3T8ZUIluWQg==
dependencies:
"@timhall/ansi-colors" "^5.0.0"
meant "^1.0.1"
mri "^1.1.4"
"@timhall/dedent@^0.8.1", "@timhall/dedent@^0.8.2":
version "0.8.2"
resolved "https://registry.npmjs.org/@timhall/dedent/-/dedent-0.8.2.tgz#8ac83963b2b836d7faa5be99794cfbe019b3cfd0"
integrity sha512-4oAHne7J/HMXGrxk+8Vbc/dq5T0kpSP3+SsiPBrQySsA4GHpgzZMZOfNby22OcaIVTw0y0RMxylVytuDbg9ceA==
dependencies:
babel-plugin-macros "^2.0.0"
"@tinymce/tinymce-react@^3.13.0":
version "3.13.0"
resolved "https://registry.npmjs.org/@tinymce/tinymce-react/-/tinymce-react-3.13.0.tgz"
@ -6979,9 +7032,9 @@ ansi-styles@^5.0.0:
integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
ansi-styles@^6.0.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.0.tgz#87313c102b8118abd57371afab34618bf7350ed3"
integrity sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==
version "6.2.1"
resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
ansi-to-html@^0.6.11:
version "0.6.15"
@ -8045,22 +8098,6 @@ call-me-maybe@^1.0.1:
resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa"
integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==
caller-callsite@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz"
dependencies:
callsites "^2.0.0"
caller-path@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz"
dependencies:
caller-callsite "^2.0.0"
callsites@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz"
callsites@^3.0.0:
version "3.1.0"
resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz"
@ -8166,6 +8203,11 @@ chainsaw@~0.1.0:
dependencies:
traverse ">=0.3.0 <0.4"
chalk@5.2.0:
version "5.2.0"
resolved "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3"
integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==
chalk@^1.1.3:
version "1.1.3"
resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz"
@ -8412,7 +8454,7 @@ cli-truncate@^2.1.0:
cli-truncate@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389"
resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389"
integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==
dependencies:
slice-ansi "^5.0.0"
@ -8558,9 +8600,9 @@ colorette@^2.0.10:
resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz"
integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==
colorette@^2.0.16, colorette@^2.0.17:
colorette@^2.0.19:
version "2.0.19"
resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798"
resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798"
integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==
colorjs.io@^0.4.3:
@ -8583,6 +8625,11 @@ commander@2.11.x:
version "2.11.0"
resolved "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz"
commander@^10.0.0:
version "10.0.0"
resolved "https://registry.npmjs.org/commander/-/commander-10.0.0.tgz#71797971162cd3cf65f0b9d24eb28f8d303acdf1"
integrity sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==
commander@^2.18.0, commander@^2.19.0, commander@^2.20.0:
version "2.20.3"
resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
@ -8616,11 +8663,6 @@ commander@^9.2.0:
resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30"
integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==
commander@^9.3.0:
version "9.3.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-9.3.0.tgz#f619114a5a2d2054e0d9ff1b31d5ccf89255e26b"
integrity sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw==
common-path-prefix@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz"
@ -8859,15 +8901,6 @@ cosmiconfig-typescript-loader@^1.0.0:
cosmiconfig "^7"
ts-node "^10.7.0"
cosmiconfig@^5.2.1:
version "5.2.1"
resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz"
dependencies:
import-fresh "^2.0.0"
is-directory "^0.3.1"
js-yaml "^3.13.1"
parse-json "^4.0.0"
cosmiconfig@^6.0.0:
version "6.0.0"
resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz"
@ -9958,7 +9991,7 @@ duplexer@^0.1.1, duplexer@^0.1.2:
eastasianwidth@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
ecc-jsbn@~0.1.1:
@ -10530,6 +10563,52 @@ eslint-webpack-plugin@^3.1.1:
normalize-path "^3.0.0"
schema-utils "^3.1.1"
eslint@*:
version "8.36.0"
resolved "https://registry.npmjs.org/eslint/-/eslint-8.36.0.tgz#1bd72202200a5492f91803b113fb8a83b11285cf"
integrity sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@eslint-community/regexpp" "^4.4.0"
"@eslint/eslintrc" "^2.0.1"
"@eslint/js" "8.36.0"
"@humanwhocodes/config-array" "^0.11.8"
"@humanwhocodes/module-importer" "^1.0.1"
"@nodelib/fs.walk" "^1.2.8"
ajv "^6.10.0"
chalk "^4.0.0"
cross-spawn "^7.0.2"
debug "^4.3.2"
doctrine "^3.0.0"
escape-string-regexp "^4.0.0"
eslint-scope "^7.1.1"
eslint-visitor-keys "^3.3.0"
espree "^9.5.0"
esquery "^1.4.2"
esutils "^2.0.2"
fast-deep-equal "^3.1.3"
file-entry-cache "^6.0.1"
find-up "^5.0.0"
glob-parent "^6.0.2"
globals "^13.19.0"
grapheme-splitter "^1.0.4"
ignore "^5.2.0"
import-fresh "^3.0.0"
imurmurhash "^0.1.4"
is-glob "^4.0.0"
is-path-inside "^3.0.3"
js-sdsl "^4.1.4"
js-yaml "^4.1.0"
json-stable-stringify-without-jsonify "^1.0.1"
levn "^0.4.1"
lodash.merge "^4.6.2"
minimatch "^3.1.2"
natural-compare "^1.4.0"
optionator "^0.9.1"
strip-ansi "^6.0.1"
strip-json-comments "^3.1.0"
text-table "^0.2.0"
eslint@^8.3.0:
version "8.15.0"
resolved "https://registry.npmjs.org/eslint/-/eslint-8.15.0.tgz"
@ -10635,6 +10714,15 @@ espree@^9.4.0:
acorn-jsx "^5.3.2"
eslint-visitor-keys "^3.3.0"
espree@^9.5.0:
version "9.5.0"
resolved "https://registry.npmjs.org/espree/-/espree-9.5.0.tgz#3646d4e3f58907464edba852fa047e6a27bdf113"
integrity sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==
dependencies:
acorn "^8.8.0"
acorn-jsx "^5.3.2"
eslint-visitor-keys "^3.3.0"
esprima@^4.0.0, esprima@^4.0.1:
version "4.0.1"
resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz"
@ -10726,7 +10814,7 @@ exec-sh@^0.3.2:
resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc"
integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w==
execa@4.1.0:
execa@4.1.0, execa@^4.0.0:
version "4.1.0"
resolved "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz"
dependencies:
@ -10767,14 +10855,14 @@ execa@^5.0.0, execa@^5.1.1:
signal-exit "^3.0.3"
strip-final-newline "^2.0.0"
execa@^6.1.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20"
integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==
execa@^7.0.0:
version "7.1.1"
resolved "https://registry.npmjs.org/execa/-/execa-7.1.1.tgz#3eb3c83d239488e7b409d48e8813b76bb55c9c43"
integrity sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==
dependencies:
cross-spawn "^7.0.3"
get-stream "^6.0.1"
human-signals "^3.0.1"
human-signals "^4.3.0"
is-stream "^3.0.0"
merge-stream "^2.0.0"
npm-run-path "^5.1.0"
@ -11222,6 +11310,14 @@ find-up@^4.0.0, find-up@^4.1.0:
locate-path "^5.0.0"
path-exists "^4.0.0"
find-yarn-workspace-root@^1.2.1:
version "1.2.1"
resolved "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-1.2.1.tgz#40eb8e6e7c2502ddfaa2577c176f221422f860db"
integrity sha512-dVtfb0WuQG+8Ag2uWkbG79hOUzEsRrhBzgfn86g2sJPkzmcpGdghbNTfUKGTxymFrY/tLIodDzLoW9nOJ4FY8Q==
dependencies:
fs-extra "^4.0.3"
micromatch "^3.1.4"
find-yarn-workspace-root@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz"
@ -11457,6 +11553,15 @@ fs-extra@^10.1.0:
jsonfile "^6.0.1"
universalify "^2.0.0"
fs-extra@^4.0.3:
version "4.0.3"
resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"
integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==
dependencies:
graceful-fs "^4.1.2"
jsonfile "^4.0.0"
universalify "^0.1.0"
fs-extra@^7.0.1:
version "7.0.1"
resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz"
@ -11674,10 +11779,6 @@ get-stdin@^5.0.1:
resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz"
integrity sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=
get-stdin@^7.0.0:
version "7.0.0"
resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz"
get-stream@^4.0.0:
version "4.1.0"
resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz"
@ -12421,26 +12522,15 @@ human-signals@^2.1.0:
resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz"
integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
human-signals@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-3.0.1.tgz#c740920859dafa50e5a3222da9d3bf4bb0e5eef5"
integrity sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==
human-signals@^4.3.0:
version "4.3.1"
resolved "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2"
integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==
husky@^3.0.5:
version "3.1.0"
resolved "https://registry.npmjs.org/husky/-/husky-3.1.0.tgz"
dependencies:
chalk "^2.4.2"
ci-info "^2.0.0"
cosmiconfig "^5.2.1"
execa "^1.0.0"
get-stdin "^7.0.0"
opencollective-postinstall "^2.0.2"
pkg-dir "^4.2.0"
please-upgrade-node "^3.2.0"
read-pkg "^5.2.0"
run-node "^1.0.0"
slash "^3.0.0"
husky@^8.0.0:
version "8.0.3"
resolved "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184"
integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==
hyphenate-style-name@^1.0.0:
version "1.0.4"
@ -12513,13 +12603,6 @@ immer@^9.0.7:
resolved "https://registry.npmjs.org/immer/-/immer-9.0.14.tgz"
integrity sha512-ubBeqQutOSLIFCUBN03jGeOS6a3DoYlSYwYJTa+gSKEZKU5redJIqkIdZ3JVv/4RZpfcXdAWH5zCNLWPRv2WDw==
import-fresh@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz"
dependencies:
caller-path "^2.0.0"
resolve-from "^3.0.0"
import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1:
version "3.2.1"
resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz"
@ -12871,10 +12954,6 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2:
is-data-descriptor "^1.0.0"
kind-of "^6.0.2"
is-directory@^0.3.1:
version "0.3.1"
resolved "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz"
is-docker@^2.0.0, is-docker@^2.1.1:
version "2.2.1"
resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz"
@ -12931,7 +13010,7 @@ is-fullwidth-code-point@^3.0.0:
is-fullwidth-code-point@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88"
resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88"
integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==
is-function@^1.0.2:
@ -13126,7 +13205,7 @@ is-stream@^2.0.0:
is-stream@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac"
resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac"
integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==
is-string@^1.0.5, is-string@^1.0.7:
@ -14045,10 +14124,6 @@ json-buffer@3.0.1:
resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
json-parse-better-errors@^1.0.1:
version "1.0.2"
resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz"
json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1:
version "2.3.1"
resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz"
@ -14285,7 +14360,12 @@ liftoff@^4.0.0:
rechoir "^0.8.0"
resolve "^1.20.0"
lilconfig@2.0.5, lilconfig@^2.0.3, lilconfig@^2.0.5:
lilconfig@2.1.0:
version "2.1.0"
resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52"
integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==
lilconfig@^2.0.3, lilconfig@^2.0.5:
version "2.0.5"
resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz"
integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==
@ -14305,24 +14385,24 @@ linkedom@^0.14.20:
htmlparser2 "^8.0.1"
uhyphen "^0.1.0"
lint-staged@^13.0.3:
version "13.0.3"
resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.0.3.tgz#d7cdf03a3830b327a2b63c6aec953d71d9dc48c6"
integrity sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug==
lint-staged@^13.2.0:
version "13.2.0"
resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.2.0.tgz#b7abaf79c91cd36d824f17b23a4ce5209206126a"
integrity sha512-GbyK5iWinax5Dfw5obm2g2ccUiZXNGtAS4mCbJ0Lv4rq6iEtfBSjOYdcbOtAIFtM114t0vdpViDDetjVTSd8Vw==
dependencies:
chalk "5.2.0"
cli-truncate "^3.1.0"
colorette "^2.0.17"
commander "^9.3.0"
commander "^10.0.0"
debug "^4.3.4"
execa "^6.1.0"
lilconfig "2.0.5"
listr2 "^4.0.5"
execa "^7.0.0"
lilconfig "2.1.0"
listr2 "^5.0.7"
micromatch "^4.0.5"
normalize-path "^3.0.0"
object-inspect "^1.12.2"
object-inspect "^1.12.3"
pidtree "^0.6.0"
string-argv "^0.3.1"
yaml "^2.1.1"
yaml "^2.2.1"
listenercount@~1.0.1:
version "1.0.1"
@ -14342,17 +14422,17 @@ listr2@^3.8.3:
through "^2.3.8"
wrap-ansi "^7.0.0"
listr2@^4.0.5:
version "4.0.5"
resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.5.tgz#9dcc50221583e8b4c71c43f9c7dfd0ef546b75d5"
integrity sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==
listr2@^5.0.7:
version "5.0.8"
resolved "https://registry.npmjs.org/listr2/-/listr2-5.0.8.tgz#a9379ffeb4bd83a68931a65fb223a11510d6ba23"
integrity sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==
dependencies:
cli-truncate "^2.1.0"
colorette "^2.0.16"
colorette "^2.0.19"
log-update "^4.0.0"
p-map "^4.0.0"
rfdc "^1.3.0"
rxjs "^7.5.5"
rxjs "^7.8.0"
through "^2.3.8"
wrap-ansi "^7.0.0"
@ -14823,6 +14903,11 @@ mdurl@^1.0.0:
resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e"
integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==
meant@^1.0.1:
version "1.0.3"
resolved "https://registry.npmjs.org/meant/-/meant-1.0.3.tgz#67769af9de1d158773e928ae82c456114903554c"
integrity sha512-88ZRGcNxAq4EH38cQ4D85PM57pikCwS8Z99EWHODxN7KBY+UuPiqzRTtZzS8KTXO/ywSWbdjjJST2Hly/EQxLw==
media-typer@0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
@ -15015,7 +15100,7 @@ mimic-fn@^3.1.0:
mimic-fn@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc"
resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc"
integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==
mimic-response@^1.0.0:
@ -15238,6 +15323,11 @@ moo-color@^1.0.2:
dependencies:
color-name "^1.1.4"
mri@^1.1.4:
version "1.2.0"
resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b"
integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==
mrmime@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27"
@ -15483,7 +15573,7 @@ npm-run-path@^4.0.0, npm-run-path@^4.0.1:
npm-run-path@^5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00"
resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00"
integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==
dependencies:
path-key "^4.0.0"
@ -15561,6 +15651,11 @@ object-inspect@^1.12.2, object-inspect@^1.9.0:
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea"
integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==
object-inspect@^1.12.3:
version "1.12.3"
resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==
object-is@^1.0.1:
version "1.1.3"
resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.3.tgz"
@ -15742,7 +15837,7 @@ onetime@^5.1.0, onetime@^5.1.2:
onetime@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4"
resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4"
integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==
dependencies:
mimic-fn "^4.0.0"
@ -15764,10 +15859,6 @@ open@^8.0.9, open@^8.4.0:
is-docker "^2.1.1"
is-wsl "^2.2.0"
opencollective-postinstall@^2.0.2:
version "2.0.3"
resolved "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz"
opener@^1.5.1, opener@^1.5.2:
version "1.5.2"
resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz"
@ -15883,7 +15974,7 @@ p-limit@^1.1.0:
dependencies:
p-try "^1.0.0"
p-limit@^2.0.0, p-limit@^2.2.0:
p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.2.2:
version "2.3.0"
resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz"
integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
@ -16031,13 +16122,6 @@ parse-json@^2.2.0:
dependencies:
error-ex "^1.2.0"
parse-json@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz"
dependencies:
error-ex "^1.3.1"
json-parse-better-errors "^1.0.1"
parse-json@^5.0.0:
version "5.1.0"
resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz"
@ -16147,7 +16231,7 @@ path-key@^3.0.0, path-key@^3.1.0:
path-key@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18"
resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18"
integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==
path-parse@^1.0.6, path-parse@^1.0.7:
@ -16230,7 +16314,7 @@ picomatch@^2.2.3, picomatch@^2.3.0, picomatch@^2.3.1:
pidtree@^0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c"
resolved "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c"
integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==
pify@^2.0.0, pify@^2.2.0, pify@^2.3.0:
@ -16304,12 +16388,6 @@ pkg-up@^3.1.0:
dependencies:
find-up "^3.0.0"
please-upgrade-node@^3.2.0:
version "3.2.0"
resolved "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz"
dependencies:
semver-compare "^1.0.0"
plist@^3.0.1:
version "3.0.5"
resolved "https://registry.npmjs.org/plist/-/plist-3.0.5.tgz"
@ -17037,6 +17115,11 @@ prettier-linter-helpers@^1.0.0:
dependencies:
fast-diff "^1.1.2"
prettier@*, prettier@^2.8.6:
version "2.8.6"
resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.6.tgz#5c174b29befd507f14b83e3c19f83fdc0e974b71"
integrity sha512-mtuzdiBbHwPEgl7NxWlqOkithPyp4VN93V7VeHVWBF+ad3I5avc0RVDT4oImXQy9H/AqxA2NSQH8pSxHW6FYbQ==
"prettier@>=2.2.1 <=2.3.0":
version "2.3.0"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18"
@ -17047,11 +17130,6 @@ prettier@^2.6.2:
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64"
integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==
prettier@^2.8.4:
version "2.8.4"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.4.tgz#34dd2595629bfbb79d344ac4a91ff948694463c3"
integrity sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==
pretty-bytes@^5.3.0:
version "5.4.1"
resolved "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.4.1.tgz"
@ -18702,10 +18780,6 @@ resolve-from@2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz"
resolve-from@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz"
resolve-from@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz"
@ -18817,7 +18891,7 @@ reusify@^1.0.4:
rfdc@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b"
resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b"
integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==
rimraf@2, rimraf@^2.6.2, rimraf@^2.6.3:
@ -18858,10 +18932,6 @@ run-async@^2.4.0:
version "2.4.1"
resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz"
run-node@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/run-node/-/run-node-1.0.0.tgz"
run-parallel@^1.1.9:
version "1.2.0"
resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz"
@ -18889,6 +18959,13 @@ rxjs@^7.2.0, rxjs@^7.5.5:
dependencies:
tslib "^2.1.0"
rxjs@^7.8.0:
version "7.8.0"
resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4"
integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==
dependencies:
tslib "^2.1.0"
safe-buffer@5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
@ -19045,10 +19122,6 @@ selfsigned@^2.0.1:
dependencies:
node-forge "^1"
semver-compare@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz"
semver-diff@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b"
@ -19342,7 +19415,7 @@ slice-ansi@^4.0.0:
slice-ansi@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a"
resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a"
integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==
dependencies:
ansi-styles "^6.0.0"
@ -19669,7 +19742,7 @@ strictdom@^1.0.1:
string-argv@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da"
resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da"
integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==
string-hash@^1.1.3:
@ -19731,7 +19804,7 @@ string-width@^4.1.0, string-width@^4.2.0:
string-width@^5.0.0:
version "5.1.2"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
dependencies:
eastasianwidth "^0.2.0"
@ -19905,7 +19978,7 @@ strip-final-newline@^2.0.0:
strip-final-newline@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd"
resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd"
integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==
strip-indent@^1.0.1:
@ -21943,6 +22016,11 @@ yaml@^2.1.1:
resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.1.1.tgz#1e06fb4ca46e60d9da07e4f786ea370ed3c3cfec"
integrity sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw==
yaml@^2.2.1:
version "2.2.1"
resolved "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz#3014bf0482dcd15147aa8e56109ce8632cd60ce4"
integrity sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==
yargs-parser@20.2.4:
version "20.2.4"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54"
@ -22020,6 +22098,30 @@ yargs@^17.2.1:
y18n "^5.0.5"
yargs-parser "^21.0.0"
yarn-workspaces-foreach@^0.2.0:
version "0.2.0"
resolved "https://registry.npmjs.org/yarn-workspaces-foreach/-/yarn-workspaces-foreach-0.2.0.tgz#df304bc0301ae5107a50bb74c50faac57e8aa3a4"
integrity sha512-cEXKw0a2U9YiiCwI41m4RCu9BwFx8XsNZ3gvUWqZQAFfRqUZ2o+VNSj8lwwf/TmwOagr8wsg0vOUXQw9Mrh6Vw==
dependencies:
"@timhall/cli" "^0.5.0"
"@timhall/dedent" "^0.8.2"
execa "^4.0.0"
find-yarn-workspace-root "^1.2.1"
mri "^1.1.4"
p-limit "^2.2.2"
yarn-workspaces-list "^0.2.0"
yarn-workspaces-list@^0.2.0:
version "0.2.0"
resolved "https://registry.npmjs.org/yarn-workspaces-list/-/yarn-workspaces-list-0.2.0.tgz#9854e9047c1e510725bf606664cd47158beafdc5"
integrity sha512-WJROw2k51FvKMfR5236gNhv+BlLHjQI1P5/2Qvu9DnMjTWeda9j+YQgKIxjkSufzu+XanwKHre8lmRDuv9hqnw==
dependencies:
"@timhall/cli" "^0.5.0"
"@timhall/dedent" "^0.8.1"
find-yarn-workspace-root "^1.2.1"
mri "^1.1.4"
toposort "^2.0.2"
yauzl@^2.10.0:
version "2.10.0"
resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz"