diff --git a/.eslintrc.js b/.eslintrc.js index 8d25986257..05446606df 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,10 +1,10 @@ module.exports = { extends: [ - 'plugin:shopify/typescript', - 'plugin:shopify/typescript-type-checking', - 'plugin:shopify/react', - 'plugin:shopify/jest', - 'plugin:shopify/prettier', + 'plugin:@shopify/typescript', + 'plugin:@shopify/typescript-type-checking', + 'plugin:@shopify/react', + 'plugin:@shopify/jest', + 'plugin:@shopify/prettier', ], parserOptions: { project: [ @@ -23,8 +23,8 @@ module.exports = { 'callback-return': 'off', 'func-style': 'off', 'react/display-name': 'off', - 'shopify/restrict-full-import': ['error', 'lodash'], - 'shopify/jsx-no-hardcoded-content': 'off', + '@shopify/restrict-full-import': ['error', 'lodash'], + '@shopify/jsx-no-hardcoded-content': 'off', // reports false positives with React's useRef hook 'require-atomic-updates': 'off', '@typescript-eslint/no-unnecessary-type-arguments': 'off', diff --git a/package.json b/package.json index 7dde519322..1224a7b5cd 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "@apollo/react-hooks": "^3.1.3", "@babel/core": "^7.5.5", "@shopify/app-bridge": "^0.7.3", + "@shopify/eslint-plugin": "^36.0.2", "@shopify/tophat": "^0.0.3", "@types/enzyme": "^3.1.10", "@types/enzyme-adapter-react-16": "^1.0.3", @@ -57,8 +58,7 @@ "element-closest": "^3.0.1", "enzyme": "^3.10.0", "enzyme-adapter-react-16": "^1.14.0", - "eslint": "^6.5.1", - "eslint-plugin-shopify": "^32.0.0", + "eslint": "^6.8.0", "faker": "^4.1.0", "fs-extra": "^8.1.0", "full-icu": "^1.3.0", @@ -73,7 +73,7 @@ "jest-transform-graphql": "^2.1.0", "lerna": "^2.9.0", "plop": "^2.0.0", - "prettier": "~1.17.1", + "prettier": "~2.0.4", "puppeteer": "^1.20.0", "react": "16.12.0", "react-dom": "16.12.0", diff --git a/packages/ast-utilities/src/javascript/index.ts b/packages/ast-utilities/src/javascript/index.ts index 87ab4f86b7..50bde69cfe 100644 --- a/packages/ast-utilities/src/javascript/index.ts +++ b/packages/ast-utilities/src/javascript/index.ts @@ -4,9 +4,7 @@ export {default as addImportStatement} from './addImportStatement'; export {default as addComponentProps} from './addComponentProps'; export {default as replaceJsxBody} from './replaceJsxBody'; export {default as replaceStrings} from './replaceStrings'; -export { - default as addVariableDeclaratorProps, -} from './addVariableDeclaratorProps'; +export {default as addVariableDeclaratorProps} from './addVariableDeclaratorProps'; export {transform, transformSync} from './transform'; export {parse, parseSync} from './parse'; export {compose, astFrom} from './utilities'; diff --git a/packages/ast-utilities/src/javascript/replaceStrings/tests/replaceStrings.test.ts b/packages/ast-utilities/src/javascript/replaceStrings/tests/replaceStrings.test.ts index 214428b04e..8833495394 100644 --- a/packages/ast-utilities/src/javascript/replaceStrings/tests/replaceStrings.test.ts +++ b/packages/ast-utilities/src/javascript/replaceStrings/tests/replaceStrings.test.ts @@ -20,7 +20,10 @@ describe('replaceStrings', () => { const result = await transform( initial, - replaceStrings([['foo', 'baz'], ['bar', 'qux']]), + replaceStrings([ + ['foo', 'baz'], + ['bar', 'qux'], + ]), ); const expected = ` diff --git a/packages/ast-utilities/src/javascript/utilities/index.ts b/packages/ast-utilities/src/javascript/utilities/index.ts index 053dde5dd7..54eba5026e 100644 --- a/packages/ast-utilities/src/javascript/utilities/index.ts +++ b/packages/ast-utilities/src/javascript/utilities/index.ts @@ -20,7 +20,7 @@ export function compose(...visitors: any[]) { return [ (function combinedVisitor() { - return function() { + return function () { return { visitor, }; diff --git a/packages/ast-utilities/src/markdown/transforms/addReleaseToChangelog/addReleaseToChangelog.ts b/packages/ast-utilities/src/markdown/transforms/addReleaseToChangelog/addReleaseToChangelog.ts index c49dd6f0d8..79976db321 100644 --- a/packages/ast-utilities/src/markdown/transforms/addReleaseToChangelog/addReleaseToChangelog.ts +++ b/packages/ast-utilities/src/markdown/transforms/addReleaseToChangelog/addReleaseToChangelog.ts @@ -21,11 +21,7 @@ export default function addReleaseToChangelog({version, date, notes}: Options) { [build('text', {value: `${version} - ${date}`})], ); - const notesNode = notes - ? unified() - .use(parse) - .parse(notes) - : null; + const notesNode = notes ? unified().use(parse).parse(notes) : null; function transformer(tree) { tree.children = flatten( diff --git a/packages/decorators/src/memoize.ts b/packages/decorators/src/memoize.ts index 637d575689..9214ce5c54 100644 --- a/packages/decorators/src/memoize.ts +++ b/packages/decorators/src/memoize.ts @@ -3,7 +3,7 @@ import {memoize as memoizeEnhancer} from '@shopify/function-enhancers'; export default function memoize any>( resolver?: (...args: Parameters) => any, ): MethodDecorator { - return function( + return function ( _target: object, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor, diff --git a/packages/graphql-testing/src/graphql-controller.ts b/packages/graphql-testing/src/graphql-controller.ts index 9a649fafd5..373a2e4ead 100644 --- a/packages/graphql-testing/src/graphql-controller.ts +++ b/packages/graphql-testing/src/graphql-controller.ts @@ -94,7 +94,8 @@ export class GraphQL { function defaultGraphQLMock({operationName}: GraphQLRequest) { return new Error( - `Can’t perform GraphQL operation '${operationName || - ''}' because no mocks were set.`, + `Can’t perform GraphQL operation '${ + operationName || '' + }' because no mocks were set.`, ); } diff --git a/packages/graphql-testing/src/matchers/operations.ts b/packages/graphql-testing/src/matchers/operations.ts index 7449d865f7..1fa0665f67 100644 --- a/packages/graphql-testing/src/matchers/operations.ts +++ b/packages/graphql-testing/src/matchers/operations.ts @@ -57,14 +57,16 @@ export function toHavePerformedGraphQLOperation( foundByVariables.length === 1 ? 'operation was' : 'operations were' } found.\n` : () => - `${`${matcherHint('.toHavePerformedGraphQLOperation')}\n\n` + + `${ + `${matcherHint('.toHavePerformedGraphQLOperation')}\n\n` + `Expected to have performed GraphQL ${type}:\n ${expectedColor( name, )}\n${ variables ? `With props matching:\n ${printExpected(variables)}\n` : '' - }`}${ + }` + }${ foundByVariables.length === 0 ? `But no matching operations were found.\n` : `But the ${ diff --git a/packages/jest-dom-mocks/src/test/animation-frame.test.ts b/packages/jest-dom-mocks/src/test/animation-frame.test.ts index 139ca23cda..b47c9be786 100644 --- a/packages/jest-dom-mocks/src/test/animation-frame.test.ts +++ b/packages/jest-dom-mocks/src/test/animation-frame.test.ts @@ -16,7 +16,9 @@ describe('AnimationFrame', () => { expect(() => { animationFrame.mock(); - }).toThrow(); + }).toThrow( + 'The animation frame is already mocked, but you tried to mock it again.', + ); }); }); @@ -34,7 +36,9 @@ describe('AnimationFrame', () => { expect(() => { animationFrame.restore(); - }).toThrow(); + }).toThrow( + 'The animation frame is already real, but you tried to restore it again.', + ); }); }); }); diff --git a/packages/jest-dom-mocks/src/test/clock.test.ts b/packages/jest-dom-mocks/src/test/clock.test.ts index ea975288f2..7d42a2b390 100644 --- a/packages/jest-dom-mocks/src/test/clock.test.ts +++ b/packages/jest-dom-mocks/src/test/clock.test.ts @@ -16,7 +16,9 @@ describe('Clock', () => { expect(() => { clock.mock(); - }).toThrow(); + }).toThrow( + 'The clock is already mocked, but you tried to mock it again.', + ); }); }); @@ -34,7 +36,9 @@ describe('Clock', () => { expect(() => { clock.restore(); - }).toThrow(); + }).toThrow( + 'The clock is already real, but you tried to restore it again.', + ); }); }); }); diff --git a/packages/jest-dom-mocks/src/test/connection.test.ts b/packages/jest-dom-mocks/src/test/connection.test.ts index 89e162d2b4..e2cb1a3902 100644 --- a/packages/jest-dom-mocks/src/test/connection.test.ts +++ b/packages/jest-dom-mocks/src/test/connection.test.ts @@ -15,7 +15,9 @@ describe('Connection', () => { expect(() => { connection.mock(); - }).toThrow(); + }).toThrow( + 'You tried to mock navigator.connection when it was already mocked.', + ); }); it('delegates stubbed options to navigator.connection', () => { @@ -47,7 +49,9 @@ describe('Connection', () => { expect(() => { connection.restore(); - }).toThrow(); + }).toThrow( + 'You tried to restore navigator.connection when it was already restored.', + ); }); }); }); diff --git a/packages/jest-dom-mocks/src/test/location.test.ts b/packages/jest-dom-mocks/src/test/location.test.ts index 4a6ce57f36..bfad46e40e 100644 --- a/packages/jest-dom-mocks/src/test/location.test.ts +++ b/packages/jest-dom-mocks/src/test/location.test.ts @@ -16,7 +16,9 @@ describe('Location', () => { expect(() => { location.mock(); - }).toThrow(); + }).toThrow( + 'You tried to mock window.location when it was already mocked.', + ); }); }); @@ -34,7 +36,9 @@ describe('Location', () => { expect(() => { location.restore(); - }).toThrow(); + }).toThrow( + 'You tried to restore window.location when it was already restored.', + ); }); }); }); diff --git a/packages/jest-dom-mocks/src/test/match-media.test.ts b/packages/jest-dom-mocks/src/test/match-media.test.ts index 8c0c199216..ffb9f6218f 100644 --- a/packages/jest-dom-mocks/src/test/match-media.test.ts +++ b/packages/jest-dom-mocks/src/test/match-media.test.ts @@ -16,7 +16,9 @@ describe('MatchMedia', () => { expect(() => { matchMedia.mock(); - }).toThrow(); + }).toThrow( + 'You tried to mock window.matchMedia when it was already mocked.', + ); }); }); @@ -34,7 +36,9 @@ describe('MatchMedia', () => { expect(() => { matchMedia.restore(); - }).toThrow(); + }).toThrow( + 'You tried to restore window.matchMedia when it was already restored.', + ); }); }); }); diff --git a/packages/jest-dom-mocks/src/test/timer.test.ts b/packages/jest-dom-mocks/src/test/timer.test.ts index acea40dcd9..f8588910a7 100644 --- a/packages/jest-dom-mocks/src/test/timer.test.ts +++ b/packages/jest-dom-mocks/src/test/timer.test.ts @@ -16,7 +16,9 @@ describe('Timer', () => { expect(() => { timer.mock(); - }).toThrow(); + }).toThrow( + 'The Timer is already mocked, but you tried to mock it again.', + ); }); }); @@ -34,7 +36,9 @@ describe('Timer', () => { expect(() => { timer.restore(); - }).toThrow(); + }).toThrow( + 'The Timer is already real, but you tried to restore it again.', + ); }); }); }); diff --git a/packages/jest-dom-mocks/src/test/user-timing.test.ts b/packages/jest-dom-mocks/src/test/user-timing.test.ts index da6afba302..9b05f63414 100644 --- a/packages/jest-dom-mocks/src/test/user-timing.test.ts +++ b/packages/jest-dom-mocks/src/test/user-timing.test.ts @@ -15,7 +15,9 @@ describe('UserTiming', () => { expect(() => { userTiming.mock(); - }).toThrow(); + }).toThrow( + 'You tried to mock window.performance.timing when it was already mocked.', + ); }); it('delegates stubbed options to window.performance.timing', () => { @@ -47,7 +49,9 @@ describe('UserTiming', () => { expect(() => { userTiming.restore(); - }).toThrow(); + }).toThrow( + 'You tried to restore window.performance.timing when it was already restored.', + ); }); }); }); diff --git a/packages/jest-mock-apollo/src/graphqlClient.ts b/packages/jest-mock-apollo/src/graphqlClient.ts index f24368f409..c57b9d8e38 100644 --- a/packages/jest-mock-apollo/src/graphqlClient.ts +++ b/packages/jest-mock-apollo/src/graphqlClient.ts @@ -24,8 +24,9 @@ export type MockGraphQLClient = ApolloClient & { function defaultGraphQLMock({operationName}: GraphQLRequest) { return new Error( - `Can’t perform GraphQL operation '${operationName || - ''}' because no mocks were set.`, + `Can’t perform GraphQL operation '${ + operationName || '' + }' because no mocks were set.`, ); } @@ -62,7 +63,10 @@ export default function configureClient({ }), ); const observer = forward(operation); - observer.subscribe(next => resolver(next), err => resolver(err)); + observer.subscribe( + next => resolver(next), + err => resolver(err), + ); return observer; }); diff --git a/packages/koa-performance/src/middleware.ts b/packages/koa-performance/src/middleware.ts index 338e125886..6a333fa612 100644 --- a/packages/koa-performance/src/middleware.ts +++ b/packages/koa-performance/src/middleware.ts @@ -165,9 +165,9 @@ export function clientPerformanceMetrics({ if (getAdditionalNavigationMetrics) { metrics.push( - ...getAdditionalNavigationMetrics(navigation).map( - ({name, value}) => ({name, value, tags: navigationTags}), - ), + ...getAdditionalNavigationMetrics( + navigation, + ).map(({name, value}) => ({name, value, tags: navigationTags})), ); } } diff --git a/packages/koa-performance/src/test/middleware.test.ts b/packages/koa-performance/src/test/middleware.test.ts index 4fd3271df2..0615a1b090 100644 --- a/packages/koa-performance/src/test/middleware.test.ts +++ b/packages/koa-performance/src/test/middleware.test.ts @@ -535,7 +535,7 @@ type DeepPartial = { ? T[K] : T[K] extends object ? DeepPartial - : T[K] + : T[K]; }; function createBody({ diff --git a/packages/koa-shopify-webhooks/src/test/receive.test.ts b/packages/koa-shopify-webhooks/src/test/receive.test.ts index def208497b..1bf54daa84 100644 --- a/packages/koa-shopify-webhooks/src/test/receive.test.ts +++ b/packages/koa-shopify-webhooks/src/test/receive.test.ts @@ -201,9 +201,7 @@ function headers({ } function hmac(secret: string, body: string) { - return createHmac('sha256', secret) - .update(body, 'utf8') - .digest('base64'); + return createHmac('sha256', secret).update(body, 'utf8').digest('base64'); } async function noop() {} diff --git a/packages/koa-shopify-webhooks/src/test/register.test.ts b/packages/koa-shopify-webhooks/src/test/register.test.ts index e053fdf83e..94bf5d6596 100644 --- a/packages/koa-shopify-webhooks/src/test/register.test.ts +++ b/packages/koa-shopify-webhooks/src/test/register.test.ts @@ -33,9 +33,7 @@ describe('registerWebhook', () => { const webhookQuery = ` mutation webhookSubscriptionCreate { - webhookSubscriptionCreate(topic: ${ - webhook.topic - }, webhookSubscription: {callbackUrl: "${webhook.address}"}) { + webhookSubscriptionCreate(topic: ${webhook.topic}, webhookSubscription: {callbackUrl: "${webhook.address}"}) { userErrors { field message diff --git a/packages/network/src/network.ts b/packages/network/src/network.ts index 5a0a8fc65a..4e650eb305 100644 --- a/packages/network/src/network.ts +++ b/packages/network/src/network.ts @@ -173,6 +173,4 @@ export enum CacheControl { MaxAge = 'max-age', } -export const noCache = `${CacheControl.NoCache},${CacheControl.NoStore},${ - CacheControl.MustRevalidate -},${CacheControl.MaxAge}=0`; +export const noCache = `${CacheControl.NoCache},${CacheControl.NoStore},${CacheControl.MustRevalidate},${CacheControl.MaxAge}=0`; diff --git a/packages/performance/src/test/navigation.test.ts b/packages/performance/src/test/navigation.test.ts index e5c4d39fca..0f1f929b39 100644 --- a/packages/performance/src/test/navigation.test.ts +++ b/packages/performance/src/test/navigation.test.ts @@ -315,7 +315,7 @@ function createGenericEvent(event: Partial = {}): CustomEvent { } type DeepPartial = { - [K in keyof T]?: T[K] extends object ? DeepPartial : T[K] + [K in keyof T]?: T[K] extends object ? DeepPartial : T[K]; }; function createScriptDownloadEvent( diff --git a/packages/performance/src/types.ts b/packages/performance/src/types.ts index 42ca8385e2..6fa1386996 100644 --- a/packages/performance/src/types.ts +++ b/packages/performance/src/types.ts @@ -7,7 +7,7 @@ export enum EventType { Load = 'load', LongTask = 'longtask', Usable = 'usable', - // eslint-disable-next-line shopify/typescript/prefer-pascal-case-enums + // eslint-disable-next-line @shopify/typescript/prefer-pascal-case-enums GraphQL = 'graphql', ScriptDownload = 'script', StyleDownload = 'style', diff --git a/packages/react-app-bridge-universal-provider/src/test/AppBridgeUniversalProvider.test.tsx b/packages/react-app-bridge-universal-provider/src/test/AppBridgeUniversalProvider.test.tsx index a3a59ebb90..4713a19838 100644 --- a/packages/react-app-bridge-universal-provider/src/test/AppBridgeUniversalProvider.test.tsx +++ b/packages/react-app-bridge-universal-provider/src/test/AppBridgeUniversalProvider.test.tsx @@ -18,10 +18,9 @@ describe('', () => { , ); - expect(appBridgeUniversalProvider).toContainReactComponent( - AppBridgeProvider, - {config}, - ); + expect( + appBridgeUniversalProvider, + ).toContainReactComponent(AppBridgeProvider, {config}); }); it('renders an AppBridgeProvider with config from the serializer', async () => { @@ -47,10 +46,9 @@ describe('', () => { , ); - expect(appBridgeUniversalProvider).toContainReactComponent( - AppBridgeProvider, - {config}, - ); + expect( + appBridgeUniversalProvider, + ).toContainReactComponent(AppBridgeProvider, {config}); }); it('renders an AppBridgeProvider with value from server when value are provided on both server and client', async () => { diff --git a/packages/react-async/src/PrefetchRoute.tsx b/packages/react-async/src/PrefetchRoute.tsx index 1ec249e93a..49514f55a6 100644 --- a/packages/react-async/src/PrefetchRoute.tsx +++ b/packages/react-async/src/PrefetchRoute.tsx @@ -35,7 +35,7 @@ export function PrefetchRoute(props: Omit) { return ( {manager => ( - + )} ); diff --git a/packages/react-compose/src/test/compose.test.tsx b/packages/react-compose/src/test/compose.test.tsx index cab8719824..5255a83cf0 100644 --- a/packages/react-compose/src/test/compose.test.tsx +++ b/packages/react-compose/src/test/compose.test.tsx @@ -115,7 +115,7 @@ interface Props { type ComposedProps = FooProps & BarProps & Props; class ClassicalComponent extends React.Component { - // eslint-disable-next-line shopify/react-prefer-private-members + // eslint-disable-next-line @shopify/react-prefer-private-members static someStatic = 'some static'; render() { diff --git a/packages/react-cookie/src/hooks.ts b/packages/react-cookie/src/hooks.ts index a1a2d8f701..83fa76723d 100644 --- a/packages/react-cookie/src/hooks.ts +++ b/packages/react-cookie/src/hooks.ts @@ -13,7 +13,7 @@ export function useCookie( key: string, ): [ string | undefined, - (value?: string, options?: CookieSerializeOptions) => void + (value?: string, options?: CookieSerializeOptions) => void, ] { const manager = useContext(CookieContext); diff --git a/packages/react-form-state/src/FormState.ts b/packages/react-form-state/src/FormState.ts index bc3fe82cf7..38bc031cce 100644 --- a/packages/react-form-state/src/FormState.ts +++ b/packages/react-form-state/src/FormState.ts @@ -29,7 +29,7 @@ interface SubmitHandler { export type Validator = MaybeArray>; export type ValidatorDictionary = { - [FieldPath in keyof FieldMap]: Validator + [FieldPath in keyof FieldMap]: Validator; }; export interface FormData { @@ -138,14 +138,14 @@ export default class FormState< }); } - // eslint-disable-next-line shopify/react-prefer-private-members + // eslint-disable-next-line @shopify/react-prefer-private-members public validateForm() { return new Promise(resolve => { this.setState(runAllValidators, () => resolve()); }); } - // eslint-disable-next-line shopify/react-prefer-private-members + // eslint-disable-next-line @shopify/react-prefer-private-members public reset = () => { return new Promise(resolve => { this.setState( diff --git a/packages/react-form-state/src/components/tests/List.test.tsx b/packages/react-form-state/src/components/tests/List.test.tsx index 9575213f03..8ee25d3167 100644 --- a/packages/react-form-state/src/components/tests/List.test.tsx +++ b/packages/react-form-state/src/components/tests/List.test.tsx @@ -2,7 +2,7 @@ import React from 'react'; import faker from 'faker'; import {mount} from '@shopify/react-testing'; -// eslint-disable-next-line shopify/strict-component-boundaries +// eslint-disable-next-line @shopify/strict-component-boundaries import {Input} from '../../tests/components'; import {lastCallArgs} from '../../tests/utilities'; import FormState, {arrayUtils} from '../..'; diff --git a/packages/react-form-state/src/components/tests/Nested.test.tsx b/packages/react-form-state/src/components/tests/Nested.test.tsx index 68d97e3351..220049cf47 100644 --- a/packages/react-form-state/src/components/tests/Nested.test.tsx +++ b/packages/react-form-state/src/components/tests/Nested.test.tsx @@ -2,7 +2,7 @@ import React from 'react'; import faker from 'faker'; import {mount} from '@shopify/react-testing'; -// eslint-disable-next-line shopify/strict-component-boundaries +// eslint-disable-next-line @shopify/strict-component-boundaries import {Input} from '../../tests/components'; import {lastCallArgs} from '../../tests/utilities'; import FormState from '../..'; diff --git a/packages/react-form-state/src/types.ts b/packages/react-form-state/src/types.ts index 3db5460bd2..ceaf342816 100644 --- a/packages/react-form-state/src/types.ts +++ b/packages/react-form-state/src/types.ts @@ -17,7 +17,7 @@ export interface FieldDescriptor extends FieldState { } export type FieldDescriptors = { - [FieldPath in keyof Fields]: FieldDescriptor + [FieldPath in keyof Fields]: FieldDescriptor; }; export interface ValueMapper { @@ -25,5 +25,5 @@ export interface ValueMapper { } export type FieldStates = { - [FieldPath in keyof Fields]: FieldState + [FieldPath in keyof Fields]: FieldState; }; diff --git a/packages/react-form/src/hooks/list/list.ts b/packages/react-form/src/hooks/list/list.ts index 42663fdb5b..6f2752239f 100755 --- a/packages/react-form/src/hooks/list/list.ts +++ b/packages/react-form/src/hooks/list/list.ts @@ -180,7 +180,9 @@ export function useList( return runValidation( error => - dispatch(updateErrorAction({target, error: error || ''})), + dispatch( + updateErrorAction({target, error: error || ''}), + ), {value, siblings, listItem: item}, validates, ); diff --git a/packages/react-form/src/types.ts b/packages/react-form/src/types.ts index e0d2ac52b9..c288759d11 100755 --- a/packages/react-form/src/types.ts +++ b/packages/react-form/src/types.ts @@ -23,7 +23,7 @@ export type NormalizedValidationDictionary = { [Key in keyof ListItem]: Validator< ListItem[Key], ListValidationContext - >[] + >[]; }; export type ValidationDictionary< @@ -40,7 +40,7 @@ export interface FieldState { } export type FieldStates = { - [Key in keyof Record]: FieldState + [Key in keyof Record]: FieldState; }; export interface Field { @@ -58,7 +58,7 @@ export interface Field { } export type FieldDictionary = { - [Key in keyof Record]: Field + [Key in keyof Record]: Field; }; export interface Form { @@ -113,5 +113,5 @@ type FieldProp> = T extends Field export type FormMapping> = { [Key in keyof Bag]: Bag[Key] extends any[] ? {[Index in keyof Bag[Key]]: FieldProp} - : FieldProp + : FieldProp; }; diff --git a/packages/react-graphql-universal-provider/src/GraphQLUniversalProvider.tsx b/packages/react-graphql-universal-provider/src/GraphQLUniversalProvider.tsx index 061a2123d5..1fe069779d 100644 --- a/packages/react-graphql-universal-provider/src/GraphQLUniversalProvider.tsx +++ b/packages/react-graphql-universal-provider/src/GraphQLUniversalProvider.tsx @@ -20,7 +20,7 @@ export function GraphQLUniversalProvider({ const [client, ssrLink] = useLazyRef< [ import('apollo-client').ApolloClient, - ReturnType + ReturnType, ] >(() => { const clientOptions = createClientOptions(); diff --git a/packages/react-graphql-universal-provider/src/test/GraphQLUniversalProvider.test.tsx b/packages/react-graphql-universal-provider/src/test/GraphQLUniversalProvider.test.tsx index 4653496b2b..5950211cb2 100644 --- a/packages/react-graphql-universal-provider/src/test/GraphQLUniversalProvider.test.tsx +++ b/packages/react-graphql-universal-provider/src/test/GraphQLUniversalProvider.test.tsx @@ -50,9 +50,7 @@ describe('', () => { clientOptions} /> ); - const client = mount(graphQLProvider) - .find(ApolloProvider)! - .prop('client'); + const client = mount(graphQLProvider).find(ApolloProvider)!.prop('client'); // Simulated server render await extract(graphQLProvider, { diff --git a/packages/react-hydrate/src/test/e2e.test.tsx b/packages/react-hydrate/src/test/e2e.test.tsx index b491861625..b6171a3bae 100644 --- a/packages/react-hydrate/src/test/e2e.test.tsx +++ b/packages/react-hydrate/src/test/e2e.test.tsx @@ -56,7 +56,7 @@ describe('react-hydrate', () => { it('uses different IDs for multiple hydrator components', () => { const [hydratorOne, hydratorTwo] = mount( - // eslint-disable-next-line shopify/jsx-prefer-fragment-wrappers + // eslint-disable-next-line @shopify/jsx-prefer-fragment-wrappers
{random.words()} {random.words()} diff --git a/packages/react-i18n/src/babel-plugin/index.ts b/packages/react-i18n/src/babel-plugin/index.ts index 5f30e0e155..a4c96ee3a8 100644 --- a/packages/react-i18n/src/babel-plugin/index.ts +++ b/packages/react-i18n/src/babel-plugin/index.ts @@ -57,9 +57,7 @@ export default function injectWithI18nArguments({ if (referencePathsToRewrite.length > 1) { throw new Error( - `You attempted to use ${bindingName} ${ - referencePathsToRewrite.length - } times in a single file. This is not supported by the Babel plugin that automatically inserts translations.`, + `You attempted to use ${bindingName} ${referencePathsToRewrite.length} times in a single file. This is not supported by the Babel plugin that automatically inserts translations.`, ); } @@ -203,9 +201,7 @@ function getTranslationFilePaths( // based on postcss-modules implementation // see https://github.com/css-modules/postcss-modules/blob/60920a97b165885683c41655e4ca594d15ec2aa0/src/generateScopedName.js function generateID(filename: string) { - const hash = stringHash(filename) - .toString(36) - .substr(0, 5); + const hash = stringHash(filename).toString(36).substr(0, 5); const extension = path.extname(filename); const legible = path.basename(filename, extension); return `${legible}_${hash}`; diff --git a/packages/react-i18n/src/babel-plugin/shared.ts b/packages/react-i18n/src/babel-plugin/shared.ts index ec68ed6acd..9ae4aca005 100644 --- a/packages/react-i18n/src/babel-plugin/shared.ts +++ b/packages/react-i18n/src/babel-plugin/shared.ts @@ -36,16 +36,13 @@ export function findTranslationBuckets(rootDir) { .split('\n') .sort(); - return files.reduce( - (acc, translationPath) => { - const translationsDir = path.dirname(translationPath); - if (!acc[translationsDir]) { - acc[translationsDir] = []; - } + return files.reduce((acc, translationPath) => { + const translationsDir = path.dirname(translationPath); + if (!acc[translationsDir]) { + acc[translationsDir] = []; + } - acc[translationsDir].push(translationPath); - return acc; - }, - {} as {[key: string]: string[]}, - ); + acc[translationsDir].push(translationPath); + return acc; + }, {} as {[key: string]: string[]}); } diff --git a/packages/react-i18n/src/decorator.tsx b/packages/react-i18n/src/decorator.tsx index 7a3e1743fe..95fb5ae11f 100644 --- a/packages/react-i18n/src/decorator.tsx +++ b/packages/react-i18n/src/decorator.tsx @@ -20,7 +20,7 @@ export function withI18n(i18nOptions?: RegisterOptions) { return ( - + ); } diff --git a/packages/react-i18n/src/test/i18n.test.ts b/packages/react-i18n/src/test/i18n.test.ts index c6868de9f7..4cbc39aba9 100644 --- a/packages/react-i18n/src/test/i18n.test.ts +++ b/packages/react-i18n/src/test/i18n.test.ts @@ -889,7 +889,7 @@ describe('I18n', () => { expect(i18n.unformatCurrency('.12', 'USD')).toBe('0.12'); }); - it('handles value starting with ', () => { + it('handles value starting with', () => { getCurrencySymbol.mockReturnValue(mockSymbolResult); const i18n = new I18n(defaultTranslations, defaultDetails); diff --git a/packages/react-i18n/src/test/utilities.test.tsx b/packages/react-i18n/src/test/utilities.test.tsx index 35c8a01fef..dfd4a7ed81 100644 --- a/packages/react-i18n/src/test/utilities.test.tsx +++ b/packages/react-i18n/src/test/utilities.test.tsx @@ -111,7 +111,7 @@ describe('getTranslationTree()', () => { it('throws a MissingTranslationError when no translation is found', () => { expect(() => getTranslationTree('foo.bar.baz', {foo: {bar: 'one'}}, locale), - ).toThrow(); + ).toThrow('Missing translation for key: foo.bar.baz in locale: en-us'); }); }); diff --git a/packages/react-network/src/test/server.test.ts b/packages/react-network/src/test/server.test.ts index b2b55fe51a..40a710db28 100644 --- a/packages/react-network/src/test/server.test.ts +++ b/packages/react-network/src/test/server.test.ts @@ -101,11 +101,7 @@ describe('server', () => { expect(spy).toHaveBeenCalledWith( Header.ContentSecurityPolicy, - `${CspDirective.DefaultSrc} ${SpecialSource.Self}; ${ - CspDirective.StyleSrc - } ${SpecialSource.Self} ${SpecialSource.Blob}; ${ - CspDirective.BlockAllMixedContent - }`, + `${CspDirective.DefaultSrc} ${SpecialSource.Self}; ${CspDirective.StyleSrc} ${SpecialSource.Self} ${SpecialSource.Blob}; ${CspDirective.BlockAllMixedContent}`, ); }); }); diff --git a/packages/react-server/src/render/render.tsx b/packages/react-server/src/render/render.tsx index 3c37c4d20a..cd68ad9c9b 100644 --- a/packages/react-server/src/render/render.tsx +++ b/packages/react-server/src/render/render.tsx @@ -125,8 +125,9 @@ export function createRender(render: RenderFunction, options: Options = {}) { ctx.set(Header.ContentType, 'text/html'); ctx.body = response; } catch (error) { - const errorMessage = `React server-side rendering error:\n${error.stack || - error.message}`; + const errorMessage = `React server-side rendering error:\n${ + error.stack || error.message + }`; logger.log(errorMessage); ctx.status = StatusCode.InternalServerError; diff --git a/packages/react-server/src/render/test/render.test.tsx b/packages/react-server/src/render/test/render.test.tsx index b2f15e7d28..5cdc3df41b 100644 --- a/packages/react-server/src/render/test/render.test.tsx +++ b/packages/react-server/src/render/test/render.test.tsx @@ -86,7 +86,7 @@ describe('createRender', () => { const error = new Error( 'Look, it broken. This is some meaningful error messsage.', ); - const BrokenApp = function() { + const BrokenApp = function () { throw error; }; diff --git a/packages/react-testing/src/TestWrapper.tsx b/packages/react-testing/src/TestWrapper.tsx index 3c2c1e204f..f39f14e1fd 100644 --- a/packages/react-testing/src/TestWrapper.tsx +++ b/packages/react-testing/src/TestWrapper.tsx @@ -15,7 +15,7 @@ export class TestWrapper extends React.Component< > { state: State = {}; - // eslint-disable-next-line shopify/react-prefer-private-members + // eslint-disable-next-line @shopify/react-prefer-private-members setProps(props: Partial) { this.setState({props}); } diff --git a/packages/react-testing/src/matchers/components.ts b/packages/react-testing/src/matchers/components.ts index 8aa0f1aaec..c51a85ba76 100644 --- a/packages/react-testing/src/matchers/components.ts +++ b/packages/react-testing/src/matchers/components.ts @@ -57,11 +57,13 @@ export function toContainReactComponent< foundByProps.length === 1 ? 'elements were' : 'element was' } found.\n` : () => - `${`${matcherHint('.toContainReactComponent')}\n\n` + + `${ + `${matcherHint('.toContainReactComponent')}\n\n` + `Expected the React element:\n ${receivedColor(node.toString())}\n` + `To contain component:\n ${expectedColor(printType(type))}\n${ props ? `With props matching:\n ${printExpected(props)}\n` : '' - }`}${ + }` + }${ foundByType.length === 0 ? `But no matching ${printType(type)} elements were found.\n` : `But the ${ diff --git a/packages/react-testing/src/matchers/context.ts b/packages/react-testing/src/matchers/context.ts index 6ff03e3108..1f7c27104c 100644 --- a/packages/react-testing/src/matchers/context.ts +++ b/packages/react-testing/src/matchers/context.ts @@ -44,13 +44,15 @@ export function toProvideReactContext( foundByValue.length === 1 ? 's were' : ' was' } found.\n` : () => - `${`${matcherHint('.toProvideReactContext')}\n\n` + + `${ + `${matcherHint('.toProvideReactContext')}\n\n` + `Expected the React element:\n ${receivedColor(node.toString())}\n` + `To contain context provider:\n ${expectedColor( printType(Context.Provider), )}\n${ value ? `With value matching:\n ${printExpected(value)}\n` : '' - }`}${ + }` + }${ foundByType.length === 0 ? `But no matching ${printType(Context.Provider)}s were found.\n` : `But the ${ diff --git a/packages/react-testing/src/toReactString.ts b/packages/react-testing/src/toReactString.ts index e973e2cf1d..30e71b2167 100644 --- a/packages/react-testing/src/toReactString.ts +++ b/packages/react-testing/src/toReactString.ts @@ -24,24 +24,21 @@ export function toReactString( ? key !== 'children' : !/^(children|className)$|^(aria|data)-/.test(key), ) - .reduce( - (list, key) => { - if (!key) { - return list; - } + .reduce((list, key) => { + if (!key) { + return list; + } - const value = node.props[key]; + const value = node.props[key]; - if (value === undefined && !options.allProps) { - return list; - } + if (value === undefined && !options.allProps) { + return list; + } - list.push(toPropString(key, value, options.verbosity)); + list.push(toPropString(key, value, options.verbosity)); - return list; - }, - [] as string[], - ); + return list; + }, [] as string[]); const hasChildren = node.children.length > 0 && !['svg'].includes(name); const open = `${indent}<${name}${ props.length > 0 ? ` ${props.join(' ')}` : '' diff --git a/packages/react-testing/src/types.ts b/packages/react-testing/src/types.ts index 77dbfd1568..a7799ef046 100644 --- a/packages/react-testing/src/types.ts +++ b/packages/react-testing/src/types.ts @@ -12,9 +12,9 @@ export type PropsFor< : never; export type FunctionKeys = { - [K in keyof T]-?: NonNullable extends ((...args: any[]) => any) + [K in keyof T]-?: NonNullable extends (...args: any[]) => any ? K - : never + : never; }[keyof T]; interface DeepPartialArray extends Array> {} diff --git a/packages/rpc/src/strategies/channel.ts b/packages/rpc/src/strategies/channel.ts index db3259c8cf..a42d8ce603 100644 --- a/packages/rpc/src/strategies/channel.ts +++ b/packages/rpc/src/strategies/channel.ts @@ -127,7 +127,7 @@ export function createChannelFunctionStrategy({ const retainers = new Set(retainedBy); - const proxy = new Proxy(function() {}, { + const proxy = new Proxy(function () {}, { get(target, prop, receiver) { if (prop === 'apply' || prop === 'bind') { return receiver; diff --git a/packages/rpc/src/strategies/messenger.ts b/packages/rpc/src/strategies/messenger.ts index ece3f57d26..f2cfecaef3 100644 --- a/packages/rpc/src/strategies/messenger.ts +++ b/packages/rpc/src/strategies/messenger.ts @@ -135,7 +135,7 @@ export function createMessengerFunctionStrategy({ const retainers = new Set(retainedBy); - const proxy = new Proxy(function() {}, { + const proxy = new Proxy(function () {}, { get(target, prop, receiver) { if (prop === 'apply' || prop === 'bind') { return receiver; diff --git a/packages/statsd/src/client.ts b/packages/statsd/src/client.ts index 6540153ceb..9656072c6e 100644 --- a/packages/statsd/src/client.ts +++ b/packages/statsd/src/client.ts @@ -32,8 +32,9 @@ export class StatsDClient { ? options.errorHandler : (error: Error) => { this.logger.log( - `Error occurred in the StatsD client:\n${error.stack || - error.message}`, + `Error occurred in the StatsD client:\n${ + error.stack || error.message + }`, ); }, }; diff --git a/packages/useful-types/src/types.ts b/packages/useful-types/src/types.ts index 698f1db8e1..3d87c4697a 100644 --- a/packages/useful-types/src/types.ts +++ b/packages/useful-types/src/types.ts @@ -20,7 +20,7 @@ export type DeepPartial = { ? DeepPartial[] : T[P] extends ReadonlyArray ? ReadonlyArray> - : DeepPartial + : DeepPartial; }; export type IfEmptyObject = keyof Obj extends { @@ -44,11 +44,11 @@ export type IfAllNullableKeys = NonNullableKeys< : Else; export type NonOptionalKeys = { - [K in keyof T]-?: undefined extends T[K] ? never : K + [K in keyof T]-?: undefined extends T[K] ? never : K; }[keyof T]; export type NonNullableKeys = { - [K in keyof T]-?: null extends T[K] ? never : K + [K in keyof T]-?: null extends T[K] ? never : K; }[keyof T]; export type NoInfer = {[K in keyof T]: T[K]} & T; diff --git a/packages/web-worker/src/webpack-parts/loader.ts b/packages/web-worker/src/webpack-parts/loader.ts index e53d0ee657..15c94c1fdd 100644 --- a/packages/web-worker/src/webpack-parts/loader.ts +++ b/packages/web-worker/src/webpack-parts/loader.ts @@ -67,8 +67,9 @@ export function pitch( } const workerOptions = { - filename: addWorkerSubExtension(compiler.options.output! - .filename as string), + filename: addWorkerSubExtension( + compiler.options.output!.filename as string, + ), chunkFilename: addWorkerSubExtension( compiler.options.output!.chunkFilename!, ), diff --git a/packages/with-env/src/index.ts b/packages/with-env/src/index.ts index 70b86dfe79..2b9c3f947a 100644 --- a/packages/with-env/src/index.ts +++ b/packages/with-env/src/index.ts @@ -3,18 +3,15 @@ interface EnvBackup { } function getEnvValues(envVars: string[]): EnvBackup { - return envVars.reduce( - (acc, key) => { - acc[key] = { - // only care for keys that already have an entry in `process.env` - // as they would otherwise end up as `{KEY: "undefined"}` inside `process.env` - isSet: key in process.env, - value: process.env[key], - }; - return acc; - }, - {} as EnvBackup, - ); + return envVars.reduce((acc, key) => { + acc[key] = { + // only care for keys that already have an entry in `process.env` + // as they would otherwise end up as `{KEY: "undefined"}` inside `process.env` + isSet: key in process.env, + value: process.env[key], + }; + return acc; + }, {} as EnvBackup); } function resetEnv(oldEnv: EnvBackup) { diff --git a/test/consistent-changelogs.test.ts b/test/consistent-changelogs.test.ts index 79dc45ade9..593fd319ab 100644 --- a/test/consistent-changelogs.test.ts +++ b/test/consistent-changelogs.test.ts @@ -15,7 +15,7 @@ and adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).`; readChangelogs().forEach(({packageChangelogPath, packageChangelog}) => { describe(`changelog consistency for ${packageChangelogPath}`, () => { - it('begins with the "Keep a Changelog" intro section ', () => { + it('begins with the "Keep a Changelog" intro section', () => { const actualIntro = packageChangelog.substring(0, CHANGELOG_INTRO.length); expect(actualIntro).toBe(CHANGELOG_INTRO); diff --git a/test/consistent-package-json.test.ts b/test/consistent-package-json.test.ts index 7d577efdef..f9c52f5322 100644 --- a/test/consistent-package-json.test.ts +++ b/test/consistent-package-json.test.ts @@ -46,7 +46,7 @@ const IGNORE_PACKAGES = ['tslib', '@types/']; packages.forEach( ({packageName, packageJSONPath, packageJSON, expectedPackageJSON}) => { describe(`${packageName}`, () => { - // eslint-disable-next-line jest/valid-describe + // eslint-disable-next-line jest/valid-title describe(packageJSONPath, () => { it('specifies Shopify as author', () => { expect(packageJSON.author).toBe(expectedPackageJSON.author); diff --git a/yarn.lock b/yarn.lock index a326f2dff0..c8f07d93ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -882,13 +882,20 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-typescript" "^7.6.0" -"@babel/runtime@^7.1.2", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.5": +"@babel/runtime@^7.1.2", "@babel/runtime@^7.4.0": version "7.6.3" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.3.tgz#935122c74c73d2240cafd32ddb5fc2a6cd35cf1f" integrity sha512-kq6anf9JGjW8Nt5rYfEuGRaEAaH1mkv3Bbu6rYvLOpPh/RusSJXuKPEAoZ7L7gybZkchE8+NV5g9vKF4AGAtsA== dependencies: regenerator-runtime "^0.13.2" +"@babel/runtime@^7.4.5": + version "7.9.2" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.2.tgz#d90df0583a3a252f09aaa619665367bae518db06" + integrity sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q== + dependencies: + regenerator-runtime "^0.13.4" + "@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.6.0", "@babel/template@^7.7.4", "@babel/template@^7.8.3", "@babel/template@^7.8.6": version "7.8.6" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" @@ -1237,6 +1244,35 @@ resolved "https://registry.yarnpkg.com/@shopify/app-bridge/-/app-bridge-1.8.0.tgz#c11bda4d7db5310d04080e604a40a017948dd547" integrity sha512-YCxcXJ5l3tQ7U74QnNLTHP9MplIG9DtiPZj1MSlbfu6Th/+txhvZPViJlti8sFcAISW+n5Noh6u6hL4yz107xQ== +"@shopify/eslint-plugin@^36.0.2": + version "36.0.2" + resolved "https://registry.yarnpkg.com/@shopify/eslint-plugin/-/eslint-plugin-36.0.2.tgz#1717ffcb608759be557a8c78245d495c6b0728e1" + integrity sha512-poDtXvk0yJliNlhDQnrNENYKAzxkLN+a4reX3gJ5OCh1g3GA4kN3cCC9Zl2TX2TYpfHKN2cBkIxw5n+AlhGagA== + dependencies: + "@typescript-eslint/eslint-plugin" "^2.25.0" + "@typescript-eslint/parser" "^2.25.0" + babel-eslint "10.0.3" + change-case "^4.0.1" + common-tags "^1.8.0" + eslint-config-prettier "6.7.0" + eslint-module-utils "2.5.0" + eslint-plugin-babel "5.3.0" + eslint-plugin-eslint-comments "3.1.2" + eslint-plugin-graphql "3.1.0" + eslint-plugin-import "2.19.1" + eslint-plugin-jest "23.7.0" + eslint-plugin-jsx-a11y "6.2.3" + eslint-plugin-node "10.0.0" + eslint-plugin-prettier "3.1.2" + eslint-plugin-promise "4.2.1" + eslint-plugin-react "7.17.0" + eslint-plugin-react-hooks "2.3.0" + eslint-plugin-sort-class-members "1.6.0" + eslint-plugin-typescript "0.14.0" + merge "1.2.1" + pkg-dir "4.2.0" + pluralize "^8.0.0" + "@shopify/javascript-utilities@^2.4.0": version "2.4.1" resolved "https://registry.yarnpkg.com/@shopify/javascript-utilities/-/javascript-utilities-2.4.1.tgz#99e1994381fc33a2609f7792b6812feee32362fa" @@ -1505,9 +1541,9 @@ pretty-format "^25.2.1" "@types/json-schema@^7.0.3": - version "7.0.3" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.3.tgz#bdfd69d61e464dcc81b25159c270d75a73c1a636" - integrity sha512-Il2DtDVRGDcqjDtE+rF8iqg1CArehSK84HZJCT7AMITlyXRBpuPhqGLDQMowraqqu1coEaimg4ZOqggt6L6L+A== + version "7.0.4" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.4.tgz#38fd73ddfd9b55abb1e1b2ed578cb55bd7b7d339" + integrity sha512-8+KAKzEvSUdeo+kmqnKrqgeE+LcA0tjYWFY7RPProVYwnqDjukzO+3b6dLD56rYX5TdWejnEOLJYOIeh4CXKuA== "@types/keygrip@*": version "1.0.2" @@ -1799,62 +1835,46 @@ resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.0.tgz#8b63ab7f1aa5321248aad5ac890a485656dcea4d" integrity sha512-te5lMAWii1uEJ4FwLjzdlbw3+n0FZNOvFXHxQDKeT0dilh7HOzdMzV2TrJVUzq8ep7J4Na8OUYPRLSQkJHAlrg== -"@typescript-eslint/eslint-plugin@^2.5.0": - version "2.6.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.6.1.tgz#e34972a24f8aba0861f9ccf7130acd74fd11e079" - integrity sha512-Z0rddsGqioKbvqfohg7BwkFC3PuNLsB+GE9QkFza7tiDzuHoy0y823Y+oGNDzxNZrYyLjqkZtCTl4vCqOmEN4g== +"@typescript-eslint/eslint-plugin@^2.25.0": + version "2.28.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.28.0.tgz#4431bc6d3af41903e5255770703d4e55a0ccbdec" + integrity sha512-w0Ugcq2iatloEabQP56BRWJowliXUP5Wv6f9fKzjJmDW81hOTBxRoJ4LoEOxRpz9gcY51Libytd2ba3yLmSOfg== dependencies: - "@typescript-eslint/experimental-utils" "2.6.1" - eslint-utils "^1.4.2" + "@typescript-eslint/experimental-utils" "2.28.0" functional-red-black-tree "^1.0.1" - regexpp "^2.0.1" + regexpp "^3.0.0" tsutils "^3.17.1" -"@typescript-eslint/experimental-utils@2.6.1": - version "2.6.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.6.1.tgz#eddaca17a399ebf93a8628923233b4f93793acfd" - integrity sha512-EVrrUhl5yBt7fC7c62lWmriq4MIc49zpN3JmrKqfiFXPXCM5ErfEcZYfKOhZXkW6MBjFcJ5kGZqu1b+lyyExUw== +"@typescript-eslint/experimental-utils@2.28.0", "@typescript-eslint/experimental-utils@^2.5.0": + version "2.28.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.28.0.tgz#1fd0961cd8ef6522687b4c562647da6e71f8833d" + integrity sha512-4SL9OWjvFbHumM/Zh/ZeEjUFxrYKtdCi7At4GyKTbQlrj1HcphIDXlje4Uu4cY+qzszR5NdVin4CCm6AXCjd6w== dependencies: "@types/json-schema" "^7.0.3" - "@typescript-eslint/typescript-estree" "2.6.1" + "@typescript-eslint/typescript-estree" "2.28.0" eslint-scope "^5.0.0" + eslint-utils "^2.0.0" -"@typescript-eslint/experimental-utils@^1.13.0": - version "1.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-1.13.0.tgz#b08c60d780c0067de2fb44b04b432f540138301e" - integrity sha512-zmpS6SyqG4ZF64ffaJ6uah6tWWWgZ8m+c54XXgwFtUv0jNz8aJAVx8chMCvnk7yl6xwn8d+d96+tWp7fXzTuDg== - dependencies: - "@types/json-schema" "^7.0.3" - "@typescript-eslint/typescript-estree" "1.13.0" - eslint-scope "^4.0.0" - -"@typescript-eslint/parser@^2.5.0": - version "2.6.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.6.1.tgz#3c00116baa0d696bc334ca18ac5286b34793993c" - integrity sha512-PDPkUkZ4c7yA+FWqigjwf3ngPUgoLaGjMlFh6TRtbjhqxFBnkElDfckSjm98q9cMr4xRzZ15VrS/xKm6QHYf0w== +"@typescript-eslint/parser@^2.25.0": + version "2.28.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.28.0.tgz#bb761286efd2b0714761cab9d0ee5847cf080385" + integrity sha512-RqPybRDquui9d+K86lL7iPqH6Dfp9461oyqvlXMNtap+PyqYbkY5dB7LawQjDzot99fqzvS0ZLZdfe+1Bt3Jgw== dependencies: "@types/eslint-visitor-keys" "^1.0.0" - "@typescript-eslint/experimental-utils" "2.6.1" - "@typescript-eslint/typescript-estree" "2.6.1" + "@typescript-eslint/experimental-utils" "2.28.0" + "@typescript-eslint/typescript-estree" "2.28.0" eslint-visitor-keys "^1.1.0" -"@typescript-eslint/typescript-estree@1.13.0": - version "1.13.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-1.13.0.tgz#8140f17d0f60c03619798f1d628b8434913dc32e" - integrity sha512-b5rCmd2e6DCC6tCTN9GSUAuxdYwCM/k/2wdjHGrIRGPSJotWMCe/dGpi66u42bhuh8q3QBzqM4TMA1GUUCJvdw== - dependencies: - lodash.unescape "4.0.1" - semver "5.5.0" - -"@typescript-eslint/typescript-estree@2.6.1": - version "2.6.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.6.1.tgz#fb363dd4ca23384745c5ea4b7f4c867432b00d31" - integrity sha512-+sTnssW6bcbDZKE8Ce7VV6LdzkQz2Bxk7jzk1J8H1rovoTxnm6iXvYIyncvNsaB/kBCOM63j/LNJfm27bNdUoA== +"@typescript-eslint/typescript-estree@2.28.0": + version "2.28.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.28.0.tgz#d34949099ff81092c36dc275b6a1ea580729ba00" + integrity sha512-HDr8MP9wfwkiuqzRVkuM3BeDrOC4cKbO5a6BymZBHUt5y/2pL0BXD6I/C/ceq2IZoHWhcASk+5/zo+dwgu9V8Q== dependencies: debug "^4.1.1" - glob "^7.1.4" + eslint-visitor-keys "^1.1.0" + glob "^7.1.6" is-glob "^4.0.1" - lodash.unescape "4.0.1" + lodash "^4.17.15" semver "^6.3.0" tsutils "^3.17.1" @@ -2068,10 +2088,10 @@ acorn-globals@^4.1.0, acorn-globals@^4.3.2: acorn "^6.0.1" acorn-walk "^6.0.1" -acorn-jsx@^5.0.2: - version "5.1.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.1.0.tgz#294adb71b57398b0680015f0a38c563ee1db5384" - integrity sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw== +acorn-jsx@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" + integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== acorn-walk@^6.0.1: version "6.2.0" @@ -2088,7 +2108,7 @@ acorn@^6.0.1, acorn@^6.2.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e" integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== -acorn@^7.0.0, acorn@^7.1.0: +acorn@^7.1.0, acorn@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.1.tgz#e35668de0b402f359de515c5482a1ab9f89a69bf" integrity sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg== @@ -2466,12 +2486,13 @@ array-ify@^1.0.0: integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= array-includes@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" - integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0= + version "3.1.1" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348" + integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ== dependencies: - define-properties "^1.1.2" - es-abstract "^1.7.0" + define-properties "^1.1.3" + es-abstract "^1.17.0" + is-string "^1.0.5" array-slice@^1.0.0: version "1.1.0" @@ -2617,11 +2638,9 @@ aws4@^1.8.0: integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== axobject-query@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9" - integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww== - dependencies: - ast-types-flow "0.0.7" + version "2.1.2" + resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.1.2.tgz#2bdffc0371e643e5f03ba99065d5179b9ca79799" + integrity sha512-ICt34ZmrVt8UQnvPl6TVyDTkmhXmAyAT4Jh5ugfGUX4MOrZ+U/ZY6/sdylRw3qGNr9Ub5AJsaHeDMzNLehRdOQ== babel-eslint@10.0.3: version "10.0.3" @@ -3101,6 +3120,14 @@ camel-case@^3.0.0: no-case "^2.2.0" upper-case "^1.1.1" +camel-case@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" + integrity sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q== + dependencies: + pascal-case "^3.1.1" + tslib "^1.10.0" + camelcase-keys@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" @@ -3148,6 +3175,15 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000999.tgz#427253a69ad7bea4aa8d8345687b8eec51ca0e43" integrity sha512-1CUyKyecPeksKwXZvYw0tEoaMCo/RwBlXmEtN5vVnabvO0KPd9RQLcaAuR9/1F+KDMv6esmOFWlsXuzDk+8rxg== +capital-case@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.3.tgz#339bd77e8fab6cf75111d4fca509b3edf7c117c8" + integrity sha512-OlUSJpUr7SY0uZFOxcwnDOU7/MpHlKTZx2mqnDYQFrDudXLFm0JJ9wr/l4csB+rh2Ug0OPuoSO53PqiZBqno9A== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + upper-case-first "^2.0.1" + capture-exit@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" @@ -3222,6 +3258,24 @@ change-case@^3.0.1, change-case@^3.1.0: upper-case "^1.1.1" upper-case-first "^1.1.0" +change-case@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.1.tgz#d5005709275952e7963fed7b91e4f9fdb6180afa" + integrity sha512-qRlUWn/hXnX1R1LBDF/RelJLiqNjKjUqlmuBVSEIyye8kq49CXqkZWKmi8XeUAdDXWFOcGLUMZ+aHn3Q5lzUXw== + dependencies: + camel-case "^4.1.1" + capital-case "^1.0.3" + constant-case "^3.0.3" + dot-case "^3.0.3" + header-case "^2.0.3" + no-case "^3.0.3" + param-case "^3.0.3" + pascal-case "^3.1.1" + path-case "^3.0.3" + sentence-case "^3.0.3" + snake-case "^3.0.3" + tslib "^1.10.0" + character-entities-html4@^1.0.0: version "1.1.3" resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.3.tgz#5ce6e01618e47048ac22f34f7f39db5c6fd679ef" @@ -3340,6 +3394,13 @@ cli-cursor@^2.1.0: 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.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.2.0.tgz#e8b988d9206c692302d8ee834e7a85c0144d8f77" @@ -3549,6 +3610,15 @@ constant-case@^2.0.0: snake-case "^2.1.0" upper-case "^1.1.1" +constant-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.3.tgz#ac910a99caf3926ac5112f352e3af599d8c5fc0a" + integrity sha512-FXtsSnnrFYpzDmvwDGQW+l8XK3GV1coLyBN0eBz16ZUzGaZcT2ANVCJmLeuw2GQgxKHQIe9e0w2dzkSfaRlUmA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + upper-case "^2.0.1" + constants-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" @@ -3986,9 +4056,9 @@ cyclist@^1.0.1: integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= damerau-levenshtein@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz#780cf7144eb2e8dbd1c3bb83ae31100ccc31a414" - integrity sha512-CBCRqFnpu715iPmw1KrdOrzRqbdFwQTwAWyyyYS42+iAgHCuXZ+/TdMgQkUENPomxEz9z1BEzuQU2Xw0kUuAgA== + version "1.0.6" + resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz#143c1641cb3d85c60c32329e26899adea8701791" + integrity sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug== dargs@^4.0.1: version "4.1.0" @@ -4023,7 +4093,7 @@ 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.2.0, debug@^2.3.3, debug@^2.6.1, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.1, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -4329,6 +4399,14 @@ dot-case@^2.1.0: dependencies: no-case "^2.2.0" +dot-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa" + integrity sha512-7hwEmg6RiSQfm/GwPL4AAWXKy3YNNZA3oFv2Pdiey0mwkRCPZ9x6SZbkLcn8Ma5PYeVokzoD4Twv2n7LKp5WeA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + dot-prop@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" @@ -4546,7 +4624,7 @@ error-inject@^1.0.0: resolved "https://registry.yarnpkg.com/error-inject/-/error-inject-1.0.0.tgz#e2b3d91b54aed672f309d950d154850fa11d4f37" integrity sha1-4rPZG1Su1nLzCdlQ0VSFD6EdTzc= -es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.5.1, es-abstract@^1.7.0: +es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.5.1: version "1.15.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.15.0.tgz#8884928ec7e40a79e3c9bc812d37d10c8b24cc57" integrity sha512-bhkEqWJ2t2lMeaJDuk7okMkJWI/yqgH/EoGwpcvv0XW9RWQsRspI4wt6xuyuvMvvQE3gg/D9HXppgk21w78GyQ== @@ -4562,6 +4640,23 @@ es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.5. string.prototype.trimleft "^2.1.0" string.prototype.trimright "^2.1.0" +es-abstract@^1.17.0, es-abstract@^1.17.5: + version "1.17.5" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz#d8c9d1d66c8981fb9200e2251d799eee92774ae9" + integrity sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg== + dependencies: + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.1.5" + is-regex "^1.0.5" + object-inspect "^1.7.0" + object-keys "^1.1.1" + object.assign "^4.1.0" + string.prototype.trimleft "^2.1.1" + string.prototype.trimright "^2.1.1" + es-to-primitive@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" @@ -4571,6 +4666,15 @@ es-to-primitive@^1.2.0: is-date-object "^1.0.1" is-symbol "^1.0.2" +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" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + es6-promise@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" @@ -4610,27 +4714,35 @@ escodegen@^1.11.1, escodegen@^1.9.1: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.4.0.tgz#0a04f147e31d33c6c161b2dd0971418ac52d0477" - integrity sha512-YrKucoFdc7SEko5Sxe4r6ixqXPDP1tunGw91POeZTTRKItf/AMFYt/YLEQtZMkR2LVpAVhcAcZgcWpm1oGPW7w== +eslint-config-prettier@6.7.0: + version "6.7.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.7.0.tgz#9a876952e12df2b284adbd3440994bf1f39dfbb9" + integrity sha512-FamQVKM3jjUVwhG4hEMnbtsq7xOIDm+SY5iBPfR8gKsJoAB2IQnNF+bk1+8Fy44Nq7PPJaLvkRxILYdJWoguKQ== dependencies: get-stdin "^6.0.0" eslint-import-resolver-node@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" - integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== + version "0.3.3" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz#dbaa52b6b2816b50bc6711af75422de808e98404" + integrity sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg== dependencies: debug "^2.6.9" - resolve "^1.5.0" + resolve "^1.13.1" -eslint-module-utils@2.4.1, eslint-module-utils@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz#7b4675875bf96b0dbf1b21977456e5bb1f5e018c" - integrity sha512-H6DOj+ejw7Tesdgbfs4jeS4YMFrT8uI8xwd1gtQqXssaR0EQ26L+2O/w6wkYFy2MymON0fTwHmXBvvfLNZVZEw== +eslint-module-utils@2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.5.0.tgz#cdf0b40d623032274ccd2abd7e64c4e524d6e19c" + integrity sha512-kCo8pZaNz2dsAW7nCUjuVoI11EBXXpIzfNxmaoLhXoRDOnqXLC4iSGVRdZPhOitfbdEfMEfKOiENaK6wDPZEGw== + dependencies: + debug "^2.6.9" + pkg-dir "^2.0.0" + +eslint-module-utils@^2.4.1: + version "2.6.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6" + integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== dependencies: - debug "^2.6.8" + debug "^2.6.9" pkg-dir "^2.0.0" eslint-plugin-babel@5.3.0: @@ -4656,6 +4768,11 @@ eslint-plugin-eslint-comments@3.1.2: escape-string-regexp "^1.0.5" ignore "^5.0.5" +eslint-plugin-eslint-plugin@^2.1.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-plugin/-/eslint-plugin-eslint-plugin-2.2.1.tgz#9d567f2bb6891935d5d3e741f66c9ac42dc688fd" + integrity sha512-nvmoefIqdFX+skyCt/dN9HaeSNyL8A9UvEtCqCFfJBjKpAR0uRL3SGPLlvDsnfXWtN72G/viowvpA33VjQkGCg== + eslint-plugin-graphql@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/eslint-plugin-graphql/-/eslint-plugin-graphql-3.1.0.tgz#ccf0d3c61961f6307170ac565c1fb0902dd4f11f" @@ -4664,29 +4781,30 @@ eslint-plugin-graphql@3.1.0: graphql-config "^2.0.1" lodash "^4.11.1" -eslint-plugin-import@2.18.2: - version "2.18.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz#02f1180b90b077b33d447a17a2326ceb400aceb6" - integrity sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ== +eslint-plugin-import@2.19.1: + version "2.19.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.19.1.tgz#5654e10b7839d064dd0d46cd1b88ec2133a11448" + integrity sha512-x68131aKoCZlCae7rDXKSAQmbT5DQuManyXo2sK6fJJ0aK5CWAkv6A6HJZGgqC8IhjQxYPgo6/IY4Oz8AFsbBw== dependencies: array-includes "^3.0.3" + array.prototype.flat "^1.2.1" contains-path "^0.1.0" debug "^2.6.9" doctrine "1.5.0" eslint-import-resolver-node "^0.3.2" - eslint-module-utils "^2.4.0" + eslint-module-utils "^2.4.1" has "^1.0.3" minimatch "^3.0.4" object.values "^1.1.0" read-pkg-up "^2.0.0" - resolve "^1.11.0" + resolve "^1.12.0" -eslint-plugin-jest@22.20.0: - version "22.20.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.20.0.tgz#a3c3615c516fcbd20d50dbf395ea37361bd9e3b2" - integrity sha512-UwHGXaYprxwd84Wer8H7jZS+5C3LeEaU8VD7NqORY6NmPJrs+9Ugbq3wyjqO3vWtSsDaLar2sqEB8COmOZA4zw== +eslint-plugin-jest@23.7.0: + version "23.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.7.0.tgz#84d5603b6e745b59898cb6750df6a44782a39b04" + integrity sha512-zkiyGlvJeHNjAEz8FaIxTXNblJJ/zj3waNbYbgflK7K6uy0cpE5zJBt/JpJtOBGM/UGkC6BqsQ4n0y7kQ2HA8w== dependencies: - "@typescript-eslint/experimental-utils" "^1.13.0" + "@typescript-eslint/experimental-utils" "^2.5.0" eslint-plugin-jsx-a11y@6.2.3: version "6.2.3" @@ -4715,10 +4833,10 @@ eslint-plugin-node@10.0.0: resolve "^1.10.1" semver "^6.1.0" -eslint-plugin-prettier@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.1.tgz#507b8562410d02a03f0ddc949c616f877852f2ba" - integrity sha512-A+TZuHZ0KU0cnn56/9mfR7/KjUJ9QNVXUhwvRFSR7PGPe0zQR6PTkmyqg1AtUUEOzTqeRsUwyKFh0oVZKVCrtA== +eslint-plugin-prettier@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz#432e5a667666ab84ce72f945c72f77d996a5c9ba" + integrity sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA== dependencies: prettier-linter-helpers "^1.0.0" @@ -4727,54 +4845,26 @@ eslint-plugin-promise@4.2.1: resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz#845fd8b2260ad8f82564c1222fce44ad71d9418a" integrity sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw== -eslint-plugin-react-hooks@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-2.2.0.tgz#078264e9e388da6929ace09d6abe92c85963aff4" - integrity sha512-jSlnBjV2cmyIeL555H/FbvuSbQ1AtpHjLMHuPrQnt1eVA6lX8yufdygh7AArI2m8ct7ChHGx2uOaCuxq2MUn6g== +eslint-plugin-react-hooks@2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-2.3.0.tgz#53e073961f1f5ccf8dd19558036c1fac8c29d99a" + integrity sha512-gLKCa52G4ee7uXzdLiorca7JIQZPPXRAQDXV83J4bUEeUuc5pIEyZYAZ45Xnxe5IuupxEqHS+hUhSLIimK1EMw== -eslint-plugin-react@7.16.0: - version "7.16.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz#9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09" - integrity sha512-GacBAATewhhptbK3/vTP09CbFrgUJmBSaaRcWdbQLFvUZy9yVcQxigBNHGPU/KE2AyHpzj3AWXpxoMTsIDiHug== +eslint-plugin-react@7.17.0: + version "7.17.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.17.0.tgz#a31b3e134b76046abe3cd278e7482bd35a1d12d7" + integrity sha512-ODB7yg6lxhBVMeiH1c7E95FLD4E/TwmFjltiU+ethv7KPdCwgiFuOZg9zNRHyufStTDLl/dEFqI2Q1VPmCd78A== dependencies: array-includes "^3.0.3" doctrine "^2.1.0" + eslint-plugin-eslint-plugin "^2.1.0" has "^1.0.3" - jsx-ast-utils "^2.2.1" + jsx-ast-utils "^2.2.3" object.entries "^1.1.0" - object.fromentries "^2.0.0" + object.fromentries "^2.0.1" object.values "^1.1.0" prop-types "^15.7.2" - resolve "^1.12.0" - -eslint-plugin-shopify@^32.0.0: - version "32.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-shopify/-/eslint-plugin-shopify-32.0.0.tgz#39922fbe712906a6b1a4e23c44827523dd7baf7f" - integrity sha512-lwKMsWcg7RHxvt/FgWGfeefj3JfodvsCbKP2FzF3Zrr0aS4fr2tsw0h88sW2Lx9c0VWVf5kN/fy2xtBia6zjIQ== - dependencies: - "@typescript-eslint/eslint-plugin" "^2.5.0" - "@typescript-eslint/parser" "^2.5.0" - babel-eslint "10.0.3" - common-tags "^1.8.0" - eslint-config-prettier "6.4.0" - eslint-module-utils "2.4.1" - eslint-plugin-babel "5.3.0" - eslint-plugin-eslint-comments "3.1.2" - eslint-plugin-graphql "3.1.0" - eslint-plugin-import "2.18.2" - eslint-plugin-jest "22.20.0" - eslint-plugin-jsx-a11y "6.2.3" - eslint-plugin-node "10.0.0" - eslint-plugin-prettier "3.1.1" - eslint-plugin-promise "4.2.1" - eslint-plugin-react "7.16.0" - eslint-plugin-react-hooks "2.2.0" - eslint-plugin-sort-class-members "1.6.0" - eslint-plugin-typescript "0.14.0" - merge "1.2.1" - pascal-case "^2.0.1" - pkg-dir "4.2.0" - pluralize "^8.0.0" + resolve "^1.13.1" eslint-plugin-sort-class-members@1.6.0: version "1.6.0" @@ -4793,7 +4883,7 @@ eslint-rule-composer@^0.3.0: resolved "https://registry.yarnpkg.com/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz#79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9" integrity sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg== -eslint-scope@^4.0.0, eslint-scope@^4.0.3: +eslint-scope@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== @@ -4809,22 +4899,29 @@ eslint-scope@^5.0.0: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-utils@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab" - integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q== +eslint-utils@^1.4.2, 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== dependencies: - eslint-visitor-keys "^1.0.0" + eslint-visitor-keys "^1.1.0" + +eslint-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.0.0.tgz#7be1cc70f27a72a76cd14aa698bcabed6890e1cd" + integrity sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA== + dependencies: + eslint-visitor-keys "^1.1.0" eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== -eslint@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.5.1.tgz#828e4c469697d43bb586144be152198b91e96ed6" - integrity sha512-32h99BoLYStT1iq1v2P9uwpyznQ4M2jRiFB6acitKz52Gqn+vPaMDUTB1bYi1WN4Nquj2w+t+bimYUG83DC55A== +eslint@^6.8.0: + version "6.8.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz#62262d6729739f9275723824302fb227c8c93ffb" + integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== dependencies: "@babel/code-frame" "^7.0.0" ajv "^6.10.0" @@ -4833,19 +4930,19 @@ eslint@^6.5.1: debug "^4.0.1" doctrine "^3.0.0" eslint-scope "^5.0.0" - eslint-utils "^1.4.2" + eslint-utils "^1.4.3" eslint-visitor-keys "^1.1.0" - espree "^6.1.1" + espree "^6.1.2" esquery "^1.0.1" esutils "^2.0.2" file-entry-cache "^5.0.1" functional-red-black-tree "^1.0.1" glob-parent "^5.0.0" - globals "^11.7.0" + globals "^12.1.0" ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^6.4.1" + inquirer "^7.0.0" is-glob "^4.0.0" js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" @@ -4854,7 +4951,7 @@ eslint@^6.5.1: minimatch "^3.0.4" mkdirp "^0.5.1" natural-compare "^1.4.0" - optionator "^0.8.2" + optionator "^0.8.3" progress "^2.0.0" regexpp "^2.0.1" semver "^6.1.2" @@ -4864,13 +4961,13 @@ eslint@^6.5.1: text-table "^0.2.0" v8-compile-cache "^2.0.3" -espree@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.1.1.tgz#7f80e5f7257fc47db450022d723e356daeb1e5de" - integrity sha512-EYbr8XZUhWbYCqQRW0duU5LxzL5bETN6AjKBGy1302qqzPaCH10QbRg3Wvco79Z8x9WbiE8HYB4e75xl6qUYvQ== +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== dependencies: - acorn "^7.0.0" - acorn-jsx "^5.0.2" + acorn "^7.1.1" + acorn-jsx "^5.2.0" eslint-visitor-keys "^1.1.0" esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: @@ -5121,7 +5218,7 @@ fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= -fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.4: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.4, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -5174,6 +5271,13 @@ figures@^2.0.0: dependencies: escape-string-regexp "^1.0.5" +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@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" @@ -5641,11 +5745,18 @@ global@^4.3.0: min-document "^2.19.0" process "^0.11.10" -globals@^11.1.0, globals@^11.7.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== + dependencies: + type-fest "^0.8.1" + globby@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -5694,9 +5805,9 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6 integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== graphql-config@^2.0.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/graphql-config/-/graphql-config-2.2.1.tgz#5fd0ec77ac7428ca5fb2026cf131be10151a0cb2" - integrity sha512-U8+1IAhw9m6WkZRRcyj8ZarK96R6lQBQ0an4lp76Ps9FyhOXENC5YQOxOFGm5CxPrX2rD0g3Je4zG5xdNJjwzQ== + version "2.2.2" + resolved "https://registry.yarnpkg.com/graphql-config/-/graphql-config-2.2.2.tgz#a4b577826bba9b83e7b0f6cd617be43ca67da045" + integrity sha512-mtv1ejPyyR2mJUUZNhljggU+B/Xl8tJJWf+h145hB+1Y48acSghFalhNtXfPBcYl2tJzpb+lGxfj3O7OjaiMgw== dependencies: graphql-import "^0.7.1" graphql-request "^1.5.0" @@ -5802,6 +5913,11 @@ has-symbols@^1.0.0: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= +has-symbols@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" + integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== + has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" @@ -5869,6 +5985,14 @@ header-case@^1.0.0: no-case "^2.2.0" upper-case "^1.1.3" +header-case@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.3.tgz#8a7407d16edfd5c970f8ebb116e6383f855b5a72" + integrity sha512-LChe/V32mnUQnTwTxd3aAlNMk8ia9tjCDb/LjYtoMrdAPApxLB+azejUk5ERZIZdIqvinwv6BAUuFXH/tQPdZA== + dependencies: + capital-case "^1.0.3" + tslib "^1.10.0" + history@^3.0.0: version "3.3.0" resolved "https://registry.yarnpkg.com/history/-/history-3.3.0.tgz#fcedcce8f12975371545d735461033579a6dae9c" @@ -6149,7 +6273,7 @@ inquirer@^3.2.2: strip-ansi "^4.0.0" through "^2.3.6" -inquirer@^6.2.1, inquirer@^6.3.1, inquirer@^6.4.1: +inquirer@^6.2.1, inquirer@^6.3.1: version "6.5.2" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== @@ -6168,6 +6292,25 @@ inquirer@^6.2.1, inquirer@^6.3.1, inquirer@^6.4.1: strip-ansi "^5.1.0" through "^2.3.6" +inquirer@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.1.0.tgz#1298a01859883e17c7264b82870ae1034f92dd29" + integrity sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg== + dependencies: + ansi-escapes "^4.2.1" + chalk "^3.0.0" + cli-cursor "^3.1.0" + cli-width "^2.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.15" + mute-stream "0.0.8" + run-async "^2.4.0" + rxjs "^6.5.3" + string-width "^4.1.0" + strip-ansi "^6.0.0" + through "^2.3.6" + interpret@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" @@ -6274,6 +6417,11 @@ is-callable@^1.1.4: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== +is-callable@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz#f7e46b596890456db74e7f6e976cb3273d06faab" + integrity sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q== + is-ci@^1.0.10: version "1.2.1" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" @@ -6487,6 +6635,13 @@ is-regex@^1.0.4: dependencies: has "^1.0.1" +is-regex@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae" + integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ== + dependencies: + has "^1.0.3" + is-relative@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" @@ -6514,6 +6669,11 @@ is-string@^1.0.4: resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64" integrity sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ= +is-string@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" + integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== + is-subset@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6" @@ -7313,10 +7473,10 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" -jsx-ast-utils@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz#4d4973ebf8b9d2837ee91a8208cc66f3a2776cfb" - integrity sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ== +jsx-ast-utils@^2.2.1, jsx-ast-utils@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz#8a9364e402448a3ce7f14d357738310d9248054f" + integrity sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA== dependencies: array-includes "^3.0.3" object.assign "^4.1.0" @@ -7733,11 +7893,6 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" -lodash.unescape@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.unescape/-/lodash.unescape-4.0.1.tgz#bf2249886ce514cda112fae9218cdc065211fc9c" - integrity sha1-vyJJiGzlFM2hEvrpIYzcBlIR/Jw= - lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" @@ -7799,6 +7954,13 @@ lower-case@^1.1.0, lower-case@^1.1.1, lower-case@^1.1.2: resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= +lower-case@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" + integrity sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ== + dependencies: + tslib "^1.10.0" + lowercase-keys@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" @@ -8238,6 +8400,11 @@ mute-stream@0.0.7: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= +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== + mz@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" @@ -8316,6 +8483,14 @@ no-case@^2.2.0, no-case@^2.3.2: dependencies: lower-case "^1.1.1" +no-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" + integrity sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw== + dependencies: + lower-case "^2.0.1" + tslib "^1.10.0" + node-fetch@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.1.2.tgz#ab884e8e7e57e38a944753cec706f788d1768bb5" @@ -8558,6 +8733,11 @@ object-inspect@^1.6.0: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== +object-inspect@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" + integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== + object-is@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6" @@ -8605,7 +8785,7 @@ object.entries@^1.0.4, object.entries@^1.1.0: function-bind "^1.1.1" has "^1.0.3" -object.fromentries@^2.0.0, object.fromentries@^2.0.1: +object.fromentries@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.1.tgz#050f077855c7af8ae6649f45c80b16ee2d31e704" integrity sha512-PUQv8Hbg3j2QX0IQYv3iAGCbGcu4yY4KQ92/dhA4sFSixBmSmp13UpDLs6jGK8rBtbmhNNIK99LD2k293jpiGA== @@ -8696,7 +8876,7 @@ optimist@^0.6.1: minimist "~0.0.1" wordwrap "~0.0.2" -optionator@^0.8.1, optionator@^0.8.2: +optionator@^0.8.1: version "0.8.2" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= @@ -8708,6 +8888,18 @@ optionator@^0.8.1, optionator@^0.8.2: type-check "~0.3.2" wordwrap "~1.0.0" +optionator@^0.8.3: + version "0.8.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + ora@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" @@ -8848,6 +9040,14 @@ param-case@^2.1.0: dependencies: no-case "^2.2.0" +param-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.3.tgz#4be41f8399eff621c56eebb829a5e451d9801238" + integrity sha512-VWBVyimc1+QrzappRs7waeN2YmoZFCGXWASRYX1/rGHtXqEcrGEIDm+jqIwFa2fRXNgQEwrxaYuIrX0WcAguTA== + dependencies: + dot-case "^3.0.3" + tslib "^1.10.0" + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -8940,7 +9140,7 @@ parseurl@^1.3.2, parseurl@^1.3.3: resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -pascal-case@^2.0.0, pascal-case@^2.0.1: +pascal-case@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-2.0.1.tgz#2d578d3455f660da65eca18ef95b4e0de912761e" integrity sha1-LVeNNFX2YNpl7KGO+VtODekSdh4= @@ -8948,6 +9148,14 @@ pascal-case@^2.0.0, pascal-case@^2.0.1: camel-case "^3.0.0" upper-case-first "^1.1.0" +pascal-case@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" + integrity sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" @@ -8965,6 +9173,14 @@ path-case@^2.1.0: dependencies: no-case "^2.2.0" +path-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.3.tgz#d48119aed52c4712e036ca40c6b15984f909554f" + integrity sha512-UMFU6UETFpCNWbIWNczshPrnK/7JAXBP2NYw80ojElbQ2+JYxdqWDBkvvqM93u4u6oLmuJ/tPOf2tM8KtXv4eg== + dependencies: + dot-case "^3.0.3" + tslib "^1.10.0" + path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" @@ -9185,10 +9401,10 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@~1.17.1: - version "1.17.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.17.1.tgz#ed64b4e93e370cb8a25b9ef7fef3e4fd1c0995db" - integrity sha512-TzGRNvuUSmPgwivDqkZ9tM/qTGW9hqDKWOE9YHiyQdixlKbv7kvEqsmDPrcHJTKwthU774TQwZXVtaQ/mMsvjg== +prettier@~2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.4.tgz#2d1bae173e355996ee355ec9830a7a1ee05457ef" + integrity sha512-SVJIQ51spzFDvh4fIbCLvciiDMCrRhlN3mbZvv/+ycjvmF5E73bKdGfU8QDLNmjYJf+lsGnDBC4UUnvTe5OO0w== pretty-format@^25.2.1, pretty-format@^25.3.0: version "25.3.0" @@ -9758,6 +9974,11 @@ regenerator-runtime@^0.13.2: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== +regenerator-runtime@^0.13.4: + version "0.13.5" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697" + integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== + regenerator-transform@^0.14.0: version "0.14.1" resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.1.tgz#3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb" @@ -9779,9 +10000,9 @@ regexpp@^2.0.1: integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== regexpp@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.0.0.tgz#dd63982ee3300e67b41c1956f850aa680d9d330e" - integrity sha512-Z+hNr7RAVWxznLPuA7DIh8UNX1j9CDrUQxskw9IrBE1Dxue2lyXT+shqEIeLUjrokxIP8CMy1WkjgG3rTsd5/g== + version "3.1.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" + integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== regexpu-core@^4.6.0: version "4.6.0" @@ -10005,13 +10226,20 @@ resolve@1.1.7: resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= -resolve@1.x, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.15.1, resolve@^1.3.2, resolve@^1.5.0: +resolve@1.x, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.15.1, resolve@^1.3.2: version "1.15.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w== dependencies: path-parse "^1.0.6" +resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1: + version "1.16.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.16.0.tgz#063dc704fa3413e13ac1d0d1756a7cbfe95dd1a7" + integrity sha512-LarL/PIKJvc09k1jaeT4kQb/8/7P+qV4qSnN2K80AES+OHdfZELAKVOBjxsvtToT/uLOfFbvYvKfZmV8cee7nA== + dependencies: + path-parse "^1.0.6" + restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" @@ -10020,6 +10248,14 @@ restore-cursor@^2.0.0: onetime "^2.0.0" signal-exit "^3.0.2" +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== + dependencies: + onetime "^5.1.0" + signal-exit "^3.0.2" + ret@~0.1.10: version "0.1.15" resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" @@ -10074,6 +10310,13 @@ run-async@^2.2.0: dependencies: is-promise "^2.1.0" +run-async@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.0.tgz#e59054a5b86876cfae07f431d18cbaddc594f1e8" + integrity sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg== + dependencies: + is-promise "^2.1.0" + run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" @@ -10100,6 +10343,13 @@ rxjs@^6.4.0: dependencies: tslib "^1.9.0" +rxjs@^6.5.3: + version "6.5.5" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" + integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== + dependencies: + tslib "^1.9.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" @@ -10194,11 +10444,6 @@ schema-utils@^1.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" - integrity sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA== - semver@6.x, semver@^6.0.0, semver@^6.1.0, semver@^6.1.2, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" @@ -10212,6 +10457,15 @@ sentence-case@^2.1.0: no-case "^2.2.0" upper-case-first "^1.1.2" +sentence-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.3.tgz#47576e4adff7abf42c63c815b0543c9d2f85a930" + integrity sha512-ZPr4dgTcNkEfcGOMFQyDdJrTU9uQO1nb1cjf+nuzb6FxgMDgKddZOM29qEsB7jvsZSMruLRcL2KfM4ypKpa0LA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + upper-case-first "^2.0.1" + serialize-javascript@^1.7.0: version "1.9.1" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb" @@ -10335,6 +10589,14 @@ snake-case@^2.1.0: dependencies: no-case "^2.2.0" +snake-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.3.tgz#c598b822ab443fcbb145ae8a82c5e43526d5bbee" + integrity sha512-WM1sIXEO+rsAHBKjGf/6R1HBBcgbncKS08d2Aqec/mrDSpU80SiOU41hO7ny6DToHSyrlwTYzQBIK1FPSx4Y3Q== + dependencies: + dot-case "^3.0.3" + tslib "^1.10.0" + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -10617,6 +10879,14 @@ string.prototype.trim@^1.1.2: es-abstract "^1.13.0" function-bind "^1.1.1" +string.prototype.trimend@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" + integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.5" + string.prototype.trimleft@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" @@ -10625,6 +10895,15 @@ string.prototype.trimleft@^2.1.0: define-properties "^1.1.3" function-bind "^1.1.1" +string.prototype.trimleft@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz#4408aa2e5d6ddd0c9a80739b087fbc067c03b3cc" + integrity sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.5" + string.prototype.trimstart "^1.0.0" + string.prototype.trimright@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" @@ -10633,6 +10912,23 @@ string.prototype.trimright@^2.1.0: define-properties "^1.1.3" function-bind "^1.1.1" +string.prototype.trimright@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz#c76f1cef30f21bbad8afeb8db1511496cfb0f2a3" + integrity sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.5" + string.prototype.trimend "^1.0.0" + +string.prototype.trimstart@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" + integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.5" + string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -11160,11 +11456,16 @@ ts-node@^8: source-map-support "^0.5.6" yn "^3.0.0" -tslib@^1, tslib@^1.10.0, tslib@^1.7.1, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: +tslib@^1, tslib@^1.10.0, tslib@^1.7.1, tslib@^1.9.0, tslib@^1.9.3: version "1.10.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== +tslib@^1.8.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" + integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== + tsscmp@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" @@ -11216,6 +11517,11 @@ type-fest@^0.3.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== +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== + type-is@^1.6.16, type-is@^1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -11400,11 +11706,25 @@ upper-case-first@^1.1.0, upper-case-first@^1.1.2: dependencies: upper-case "^1.1.1" +upper-case-first@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.1.tgz#32ab436747d891cc20ab1e43d601cb4d0a7fbf4a" + integrity sha512-105J8XqQ+9RxW3l9gHZtgve5oaiR9TIwvmZAMAIZWRHe00T21cdvewKORTlOJf/zXW6VukuTshM+HXZNWz7N5w== + dependencies: + tslib "^1.10.0" + upper-case@^1.0.3, upper-case@^1.1.0, upper-case@^1.1.1, upper-case@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= +upper-case@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.1.tgz#6214d05e235dc817822464ccbae85822b3d8665f" + integrity sha512-laAsbea9SY5osxrv7S99vH9xAaJKrw5Qpdh4ENRLcaxipjKsiaBwiAsxfa8X5mObKNTQPsupSq0J/VIxsSJe3A== + dependencies: + tslib "^1.10.0" + uri-js@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" @@ -11783,6 +12103,11 @@ winston@^2.3.1: isstream "0.1.x" stack-trace "0.0.x" +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== + wordwrap@~0.0.2: version "0.0.3" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"