diff --git a/codegen-client.js b/codegen-client.js new file mode 100644 index 0000000000..5cf00e85c3 --- /dev/null +++ b/codegen-client.js @@ -0,0 +1,40 @@ +const { resolve, join, relative } = require('path'); +const { lstatSync, readdirSync } = require('fs'); + +function listLibs() { + const libs = resolve(__dirname, 'libs'); + const isDirectory = source => lstatSync(source).isDirectory(); + + return readdirSync(libs) + .map(name => join(libs, name)) + .filter(isDirectory) + .map(source => relative(libs, source)); +} + +function generateLib(lib) { + return { + output: resolve(__dirname, `libs/${lib}/src/lib/generated/graphql.ts`), + config: { + documents: `./libs/${lib}/src/lib/graphql/**/*.graphql`, + plugins: [ + 'typescript-common', + 'typescript-client', + 'typescript-apollo-angular' + ] + } + }; +} + +module.exports = { + schema: resolve(__dirname, 'server/src/schema/schema.graphql'), + overwrite: true, + generates: listLibs() + .map(generateLib) + .reduce( + (generates, lib) => ({ + ...generates, + [lib.output]: lib.config + }), + {} + ) +}; diff --git a/codegen-server.yml b/codegen-server.yml new file mode 100644 index 0000000000..e787bc18ad --- /dev/null +++ b/codegen-server.yml @@ -0,0 +1,13 @@ +overwrite: true +schema: ./server/src/schema/schema.graphql +generates: + ./server/src/graphql-types.ts: + config: + # a type of GraphQL Context + contextType: 'any' + # a type of every resolver's parent + defaultMapper: 'any' + plugins: + - typescript-common + - typescript-server + - typescript-resolvers diff --git a/libs/feature-action-bar/src/lib/generated/graphql.ts b/libs/feature-action-bar/src/lib/generated/graphql.ts index 0aa0bfb084..5d02bc35d6 100644 --- a/libs/feature-action-bar/src/lib/generated/graphql.ts +++ b/libs/feature-action-bar/src/lib/generated/graphql.ts @@ -1,19 +1,5 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } - -// ==================================================== -// END: Typescript template -// ==================================================== diff --git a/libs/feature-extensions/src/lib/generated/graphql.ts b/libs/feature-extensions/src/lib/generated/graphql.ts index 19218ee978..0c05584071 100644 --- a/libs/feature-extensions/src/lib/generated/graphql.ts +++ b/libs/feature-extensions/src/lib/generated/graphql.ts @@ -1,23 +1,9 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } -// ==================================================== -// END: Typescript template -// ==================================================== - // ==================================================== // Documents // ==================================================== @@ -31,7 +17,7 @@ export namespace NgAdd { export type Mutation = { __typename?: 'Mutation'; - ngAdd?: NgAdd | null; + ngAdd: NgAdd | null; }; export type NgAdd = { @@ -52,13 +38,13 @@ export namespace WorkspaceAndExtensionsByName { workspace: Workspace; - availableExtensions?: (AvailableExtensions | null)[] | null; + availableExtensions: (AvailableExtensions | null)[] | null; }; export type Workspace = { __typename?: 'Workspace'; - extensions?: (Extensions | null)[] | null; + extensions: (Extensions | null)[] | null; }; export type Extensions = { @@ -72,9 +58,9 @@ export namespace WorkspaceAndExtensionsByName { name: string; - description?: string | null; + description: string | null; - detailedDescription?: string | null; + detailedDescription: string | null; }; } @@ -88,13 +74,13 @@ export namespace WorkspaceAndExtensions { workspace: Workspace; - availableExtensions?: (AvailableExtensions | null)[] | null; + availableExtensions: (AvailableExtensions | null)[] | null; }; export type Workspace = { __typename?: 'Workspace'; - extensions?: (Extensions | null)[] | null; + extensions: (Extensions | null)[] | null; }; export type Extensions = { @@ -108,7 +94,7 @@ export namespace WorkspaceAndExtensions { name: string; - description?: string | null; + description: string | null; }; } @@ -117,7 +103,6 @@ export namespace WorkspaceAndExtensions { // ==================================================== import { Injectable } from '@angular/core'; - import * as Apollo from 'apollo-angular'; import gql from 'graphql-tag'; diff --git a/libs/feature-generate/src/lib/generated/graphql.ts b/libs/feature-generate/src/lib/generated/graphql.ts index 380b6859c1..6ed49c6b8b 100644 --- a/libs/feature-generate/src/lib/generated/graphql.ts +++ b/libs/feature-generate/src/lib/generated/graphql.ts @@ -1,23 +1,9 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } -// ==================================================== -// END: Typescript template -// ==================================================== - // ==================================================== // Documents // ==================================================== @@ -32,7 +18,7 @@ export namespace Generate { export type Mutation = { __typename?: 'Mutation'; - generate?: Generate | null; + generate: Generate | null; }; export type Generate = { @@ -58,13 +44,13 @@ export namespace SchematicCollectionsByName { export type Workspace = { __typename?: 'Workspace'; - schematicCollections?: (SchematicCollections | null)[] | null; + schematicCollections: (SchematicCollections | null)[] | null; }; export type SchematicCollections = { __typename?: 'SchematicCollection'; - schematics?: (Schematics | null)[] | null; + schematics: (Schematics | null)[] | null; }; export type Schematics = { @@ -74,9 +60,9 @@ export namespace SchematicCollectionsByName { name: string; - description?: string | null; + description: string | null; - schema?: (Schema | null)[] | null; + schema: (Schema | null)[] | null; }; export type Schema = { @@ -84,13 +70,13 @@ export namespace SchematicCollectionsByName { name: string; - enum?: (string | null)[] | null; + enum: (string | null)[] | null; type: string; - description?: string | null; + description: string | null; - defaultValue?: string | null; + defaultValue: string | null; required: boolean; @@ -128,9 +114,9 @@ export namespace SchematicDocs { id: string; - description?: string | null; + description: string | null; - prop?: string | null; + prop: string | null; }; } @@ -148,7 +134,7 @@ export namespace SchematicCollections { export type Workspace = { __typename?: 'Workspace'; - schematicCollections?: (SchematicCollections | null)[] | null; + schematicCollections: (SchematicCollections | null)[] | null; }; export type SchematicCollections = { @@ -156,7 +142,7 @@ export namespace SchematicCollections { name: string; - schematics?: (Schematics | null)[] | null; + schematics: (Schematics | null)[] | null; }; export type Schematics = { @@ -164,7 +150,7 @@ export namespace SchematicCollections { name: string; - description?: string | null; + description: string | null; collection: string; }; @@ -175,7 +161,6 @@ export namespace SchematicCollections { // ==================================================== import { Injectable } from '@angular/core'; - import * as Apollo from 'apollo-angular'; import gql from 'graphql-tag'; diff --git a/libs/feature-install-node-js/src/lib/generated/graphql.ts b/libs/feature-install-node-js/src/lib/generated/graphql.ts index 14368c0a02..8458337118 100644 --- a/libs/feature-install-node-js/src/lib/generated/graphql.ts +++ b/libs/feature-install-node-js/src/lib/generated/graphql.ts @@ -1,23 +1,9 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } -// ==================================================== -// END: Typescript template -// ==================================================== - // ==================================================== // Documents // ==================================================== @@ -28,21 +14,21 @@ export namespace InstallNodeJsStatus { export type Query = { __typename?: 'Query'; - installNodeJsStatus?: InstallNodeJsStatus | null; + installNodeJsStatus: InstallNodeJsStatus | null; }; export type InstallNodeJsStatus = { __typename?: 'InstallNodeJsStatus'; - downloadPercentage?: number | null; + downloadPercentage: number | null; - downloadSpeed?: number | null; + downloadSpeed: number | null; - success?: boolean | null; + success: boolean | null; - cancelled?: boolean | null; + cancelled: boolean | null; - error?: string | null; + error: string | null; }; } @@ -52,13 +38,13 @@ export namespace InstallNodeJs { export type Mutation = { __typename?: 'Mutation'; - installNodeJs?: InstallNodeJs | null; + installNodeJs: InstallNodeJs | null; }; export type InstallNodeJs = { __typename?: 'InstallNodeJsStatus'; - cancelled?: boolean | null; + cancelled: boolean | null; }; } @@ -68,7 +54,7 @@ export namespace IsNodejsInstalled { export type Query = { __typename?: 'Query'; - isNodejsInstalled?: IsNodejsInstalled | null; + isNodejsInstalled: IsNodejsInstalled | null; }; export type IsNodejsInstalled = { @@ -83,7 +69,6 @@ export namespace IsNodejsInstalled { // ==================================================== import { Injectable } from '@angular/core'; - import * as Apollo from 'apollo-angular'; import gql from 'graphql-tag'; diff --git a/libs/feature-run/src/lib/generated/graphql.ts b/libs/feature-run/src/lib/generated/graphql.ts index a6c7e528b8..49cc06ff63 100644 --- a/libs/feature-run/src/lib/generated/graphql.ts +++ b/libs/feature-run/src/lib/generated/graphql.ts @@ -1,23 +1,9 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } -// ==================================================== -// END: Typescript template -// ==================================================== - // ==================================================== // Documents // ==================================================== @@ -32,7 +18,7 @@ export namespace NpmRun { export type Mutation = { __typename?: 'Mutation'; - runNpm?: RunNpm | null; + runNpm: RunNpm | null; }; export type RunNpm = { @@ -57,7 +43,7 @@ export namespace NpmScripts { export type Workspace = { __typename?: 'Workspace'; - npmScripts?: (NpmScripts | null)[] | null; + npmScripts: (NpmScripts | null)[] | null; }; export type NpmScripts = { @@ -67,7 +53,7 @@ export namespace NpmScripts { npmClient: string; - schema?: (Schema | null)[] | null; + schema: (Schema | null)[] | null; }; export type Schema = { @@ -75,13 +61,13 @@ export namespace NpmScripts { name: string; - enum?: (string | null)[] | null; + enum: (string | null)[] | null; type: string; - description?: string | null; + description: string | null; - defaultValue?: string | null; + defaultValue: string | null; required: boolean; @@ -105,7 +91,7 @@ export namespace Projects { export type Workspace = { __typename?: 'Workspace'; - projects?: (Projects | null)[] | null; + projects: (Projects | null)[] | null; }; export type Projects = { @@ -117,7 +103,7 @@ export namespace Projects { projectType: string; - architect?: (Architect | null)[] | null; + architect: (Architect | null)[] | null; }; export type Architect = { @@ -127,9 +113,9 @@ export namespace Projects { builder: string; - configurations?: (Configurations | null)[] | null; + configurations: (Configurations | null)[] | null; - schema?: (Schema | null)[] | null; + schema: (Schema | null)[] | null; }; export type Configurations = { @@ -143,13 +129,13 @@ export namespace Projects { name: string; - enum?: (string | null)[] | null; + enum: (string | null)[] | null; type: string; - description?: string | null; + description: string | null; - defaultValue?: string | null; + defaultValue: string | null; required: boolean; @@ -166,7 +152,7 @@ export namespace RunNg { export type Mutation = { __typename?: 'Mutation'; - runNg?: RunNg | null; + runNg: RunNg | null; }; export type RunNg = { @@ -206,9 +192,9 @@ export namespace SchematicDocs { id: string; - description?: string | null; + description: string | null; - prop?: string | null; + prop: string | null; }; } @@ -226,9 +212,9 @@ export namespace WorkspaceAndProjects { export type Workspace = { __typename?: 'Workspace'; - npmScripts?: (NpmScripts | null)[] | null; + npmScripts: (NpmScripts | null)[] | null; - projects?: (Projects | null)[] | null; + projects: (Projects | null)[] | null; }; export type NpmScripts = { @@ -246,7 +232,7 @@ export namespace WorkspaceAndProjects { projectType: string; - architect?: (Architect | null)[] | null; + architect: (Architect | null)[] | null; }; export type Architect = { @@ -263,7 +249,6 @@ export namespace WorkspaceAndProjects { // ==================================================== import { Injectable } from '@angular/core'; - import * as Apollo from 'apollo-angular'; import gql from 'graphql-tag'; diff --git a/libs/feature-settings/src/lib/generated/graphql.ts b/libs/feature-settings/src/lib/generated/graphql.ts index 0aa0bfb084..5d02bc35d6 100644 --- a/libs/feature-settings/src/lib/generated/graphql.ts +++ b/libs/feature-settings/src/lib/generated/graphql.ts @@ -1,19 +1,5 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } - -// ==================================================== -// END: Typescript template -// ==================================================== diff --git a/libs/feature-workspaces/src/lib/generated/graphql.ts b/libs/feature-workspaces/src/lib/generated/graphql.ts index 5d3c700833..9b783dc2fd 100644 --- a/libs/feature-workspaces/src/lib/generated/graphql.ts +++ b/libs/feature-workspaces/src/lib/generated/graphql.ts @@ -1,23 +1,9 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } -// ==================================================== -// END: Typescript template -// ==================================================== - // ==================================================== // Documents // ==================================================== @@ -52,15 +38,15 @@ export namespace GetDirectoryPath { export type Mutation = { __typename?: 'Mutation'; - selectDirectory?: SelectDirectory | null; + selectDirectory: SelectDirectory | null; }; export type SelectDirectory = { __typename?: 'SelectDirectoryResult'; - selectedDirectoryPath?: string | null; + selectedDirectoryPath: string | null; - error?: string | null; + error: string | null; }; } @@ -74,7 +60,7 @@ export namespace NgNew { export type Mutation = { __typename?: 'Mutation'; - ngNew?: NgNew | null; + ngNew: NgNew | null; }; export type NgNew = { @@ -108,7 +94,7 @@ export namespace SchematicCollections { export type Query = { __typename?: 'Query'; - schematicCollections?: (SchematicCollections | null)[] | null; + schematicCollections: (SchematicCollections | null)[] | null; }; export type SchematicCollections = { @@ -148,9 +134,9 @@ export namespace WorkspaceDocs { id: string; - description?: string | null; + description: string | null; - prop?: string | null; + prop: string | null; }; } @@ -172,9 +158,9 @@ export namespace Workspace { path: string; - dependencies?: (Dependencies | null)[] | null; + dependencies: (Dependencies | null)[] | null; - projects?: (Projects | null)[] | null; + projects: (Projects | null)[] | null; }; export type Dependencies = { @@ -194,7 +180,7 @@ export namespace Workspace { projectType: string; - architect?: (Architect | null)[] | null; + architect: (Architect | null)[] | null; }; export type Architect = { @@ -209,7 +195,6 @@ export namespace Workspace { // ==================================================== import { Injectable } from '@angular/core'; - import * as Apollo from 'apollo-angular'; import gql from 'graphql-tag'; diff --git a/libs/schema/src/lib/generated/graphql.ts b/libs/schema/src/lib/generated/graphql.ts index 0aa0bfb084..5d02bc35d6 100644 --- a/libs/schema/src/lib/generated/graphql.ts +++ b/libs/schema/src/lib/generated/graphql.ts @@ -1,19 +1,5 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } - -// ==================================================== -// END: Typescript template -// ==================================================== diff --git a/libs/ui/src/lib/generated/graphql.ts b/libs/ui/src/lib/generated/graphql.ts index 0aa0bfb084..5d02bc35d6 100644 --- a/libs/ui/src/lib/generated/graphql.ts +++ b/libs/ui/src/lib/generated/graphql.ts @@ -1,19 +1,5 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } - -// ==================================================== -// END: Typescript template -// ==================================================== diff --git a/libs/utils/src/lib/generated/graphql.ts b/libs/utils/src/lib/generated/graphql.ts index 80bfb98421..e8f49ada6b 100644 --- a/libs/utils/src/lib/generated/graphql.ts +++ b/libs/utils/src/lib/generated/graphql.ts @@ -1,23 +1,9 @@ -/* tslint:disable */ - -// ==================================================== -// START: Typescript template -// ==================================================== - -// ==================================================== -// Enums -// ==================================================== - export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' } -// ==================================================== -// END: Typescript template -// ==================================================== - // ==================================================== // Documents // ==================================================== @@ -30,7 +16,7 @@ export namespace Commands { export type Query = { __typename?: 'Query'; - commands?: (Commands | null)[] | null; + commands: (Commands | null)[] | null; }; export type Commands = { @@ -42,7 +28,7 @@ export namespace Commands { outChunk: string; - detailedStatus?: string | null; + detailedStatus: string | null; }; } @@ -72,7 +58,7 @@ export namespace GetCommandInitial { export type Query = { __typename?: 'Query'; - commands?: (Commands | null)[] | null; + commands: (Commands | null)[] | null; }; export type Commands = { @@ -82,7 +68,7 @@ export namespace GetCommandInitial { type: string; - workspace?: string | null; + workspace: string | null; command: string; @@ -90,7 +76,7 @@ export namespace GetCommandInitial { out: string; - detailedStatus?: string | null; + detailedStatus: string | null; }; } @@ -102,7 +88,7 @@ export namespace GetCommand { export type Query = { __typename?: 'Query'; - commands?: (Commands | null)[] | null; + commands: (Commands | null)[] | null; }; export type Commands = { @@ -112,7 +98,7 @@ export namespace GetCommand { type: string; - workspace?: string | null; + workspace: string | null; command: string; @@ -120,7 +106,7 @@ export namespace GetCommand { outChunk: string; - detailedStatus?: string | null; + detailedStatus: string | null; }; } @@ -130,7 +116,7 @@ export namespace IsNodejsInstalled { export type Query = { __typename?: 'Query'; - isNodejsInstalled?: IsNodejsInstalled | null; + isNodejsInstalled: IsNodejsInstalled | null; }; export type IsNodejsInstalled = { @@ -146,7 +132,7 @@ export namespace ListAllCommands { export type Query = { __typename?: 'Query'; - commands?: (Commands | null)[] | null; + commands: (Commands | null)[] | null; }; export type Commands = { @@ -158,7 +144,7 @@ export namespace ListAllCommands { status: string; - workspace?: string | null; + workspace: string | null; command: string; }; @@ -183,7 +169,7 @@ export namespace ListFiles { exists: boolean; - files?: (Files | null)[] | null; + files: (Files | null)[] | null; }; export type Files = { @@ -203,7 +189,7 @@ export namespace OpenDoc { export type Mutation = { __typename?: 'Mutation'; - openDoc?: OpenDoc | null; + openDoc: OpenDoc | null; }; export type OpenDoc = { @@ -221,7 +207,7 @@ export namespace OpenInBrowser { export type Mutation = { __typename?: 'Mutation'; - openInBrowser?: OpenInBrowser | null; + openInBrowser: OpenInBrowser | null; }; export type OpenInBrowser = { @@ -240,7 +226,7 @@ export namespace OpenInEditor { export type Mutation = { __typename?: 'Mutation'; - openInEditor?: OpenInEditor | null; + openInEditor: OpenInEditor | null; }; export type OpenInEditor = { @@ -256,13 +242,13 @@ export namespace RemoveAllCommands { export type Mutation = { __typename?: 'Mutation'; - removeAllCommands?: RemoveAllCommands | null; + removeAllCommands: RemoveAllCommands | null; }; export type RemoveAllCommands = { __typename?: 'RemoveResult'; - result?: boolean | null; + result: boolean | null; }; } @@ -274,13 +260,13 @@ export namespace RemoveCommand { export type Mutation = { __typename?: 'Mutation'; - removeCommand?: RemoveCommand | null; + removeCommand: RemoveCommand | null; }; export type RemoveCommand = { __typename?: 'RemoveResult'; - result?: boolean | null; + result: boolean | null; }; } @@ -292,13 +278,13 @@ export namespace RestartCommand { export type Mutation = { __typename?: 'Mutation'; - restartCommand?: RestartCommand | null; + restartCommand: RestartCommand | null; }; export type RestartCommand = { __typename?: 'RemoveResult'; - result?: boolean | null; + result: boolean | null; }; } @@ -316,13 +302,13 @@ export namespace Settings { canCollectData: boolean; - installNodeManually?: boolean | null; + installNodeManually: boolean | null; - enableDetailedStatus?: boolean | null; + enableDetailedStatus: boolean | null; - channel?: string | null; + channel: string | null; - recent?: (Recent | null)[] | null; + recent: (Recent | null)[] | null; }; export type Recent = { @@ -332,7 +318,7 @@ export namespace Settings { name: string; - favorite?: boolean | null; + favorite: boolean | null; }; } @@ -344,7 +330,7 @@ export namespace ShowItemInFolder { export type Mutation = { __typename?: 'Mutation'; - showItemInFolder?: ShowItemInFolder | null; + showItemInFolder: ShowItemInFolder | null; }; export type ShowItemInFolder = { @@ -362,13 +348,13 @@ export namespace StopCommand { export type Mutation = { __typename?: 'Mutation'; - stopCommand?: StopCommand | null; + stopCommand: StopCommand | null; }; export type StopCommand = { __typename?: 'StopResult'; - result?: boolean | null; + result: boolean | null; }; } @@ -388,13 +374,13 @@ export namespace UpdateSettings { canCollectData: boolean; - installNodeManually?: boolean | null; + installNodeManually: boolean | null; - enableDetailedStatus?: boolean | null; + enableDetailedStatus: boolean | null; - channel?: string | null; + channel: string | null; - recent?: (Recent | null)[] | null; + recent: (Recent | null)[] | null; }; export type Recent = { @@ -404,7 +390,7 @@ export namespace UpdateSettings { name: string; - favorite?: boolean | null; + favorite: boolean | null; }; } @@ -413,7 +399,6 @@ export namespace UpdateSettings { // ==================================================== import { Injectable } from '@angular/core'; - import * as Apollo from 'apollo-angular'; import gql from 'graphql-tag'; diff --git a/package-scripts.js b/package-scripts.js index 5c105fea62..071e44e764 100644 --- a/package-scripts.js +++ b/package-scripts.js @@ -39,7 +39,7 @@ module.exports = { test: 'nx affected:test --base=master' }, server: { - compile: npsUtils.series.nps('server.gen-graphql-types', 'server.gen-apollo-angular', 'server.compile-only'), + compile: npsUtils.series.nps('server.gen-graphql-types', 'server.gen-apollo-angular', 'server.compile-only', 'server.move-graphql'), 'compile-only': 'tsc -p server/tsconfig.json', format: { default: npsUtils.series.nps('server.format.write'), @@ -47,8 +47,9 @@ module.exports = { check: 'prettier --list-different \"./server/**/*.ts\"' }, test: 'node ./tools/scripts/test ./server/test', - 'gen-graphql-types': 'ts-node tools/gen-graphql-types.ts', - 'gen-apollo-angular': 'ts-node tools/gen-apollo-angular.ts' + 'move-graphql': 'cp server/src/schema/schema.graphql dist/server/src/schema/schema.graphql', + 'gen-graphql-types': 'gql-gen --config codegen-server.yml', + 'gen-apollo-angular': 'gql-gen --config codegen-client.js' }, mac: { 'clean': 'rm -rf dist', diff --git a/package.json b/package.json index 2fbc9e762e..848176b4a6 100644 --- a/package.json +++ b/package.json @@ -126,9 +126,12 @@ "fix-path": "2.1.0", "get-port": "3.2.0", "graphql": "0.13.2", - "graphql-code-generator": "0.13.0", - "graphql-codegen-apollo-angular-template": "0.13.0", - "graphql-codegen-typescript-template": "0.12.6", + "graphql-code-generator": "0.14.5", + "graphql-codegen-typescript-apollo-angular": "0.14.5", + "graphql-codegen-typescript-common": "0.14.5", + "graphql-codegen-typescript-client": "0.14.5", + "graphql-codegen-typescript-resolvers": "0.14.5", + "graphql-codegen-typescript-server": "0.14.5", "graphql-tag": "2.10.0", "jasmine-core": "3.3.0", "jasmine-marbles": "0.4.0", diff --git a/server/src/graphql-types.ts b/server/src/graphql-types.ts index badfe7f6a0..19a3be068d 100644 --- a/server/src/graphql-types.ts +++ b/server/src/graphql-types.ts @@ -1,138 +1,170 @@ -/* tslint:disable */ -import { GraphQLResolveInfo } from 'graphql'; - -export type Resolver = ( - parent: Parent, - args: Args, - context: Context, - info: GraphQLResolveInfo -) => Promise | Result; +export enum FileType { + File = 'file', + Directory = 'directory', + AngularDirectory = 'angularDirectory' +} -export type SubscriptionResolver< - Result, - Parent = any, - Context = any, - Args = any -> = { - subscribe( - parent: P, - args: Args, - context: Context, - info: GraphQLResolveInfo - ): AsyncIterator; - resolve?( - parent: P, - args: Args, - context: Context, - info: GraphQLResolveInfo - ): R | Result | Promise; -}; +// ==================================================== +// Types +// ==================================================== export interface Database { settings: Settings; + schematicCollections?: (SchematicCollectionForNgNew | null)[] | null; + workspace: Workspace; + editors: EditorSupport[]; + availableExtensions?: (Extension | null)[] | null; + installNodeJsStatus?: InstallNodeJsStatus | null; + isNodejsInstalled?: IsNodeInstalledResult | null; + directory: FilesType; + commands?: (CommandResponse | null)[] | null; } export interface Settings { canCollectData: boolean; + showSupportPlugin?: boolean | null; + installNodeManually?: boolean | null; + enableDetailedStatus?: boolean | null; + channel?: string | null; + recent?: (WorkspaceDefinition | null)[] | null; } export interface WorkspaceDefinition { path: string; + name: string; + favorite?: boolean | null; } export interface SchematicCollectionForNgNew { name: string; + description: string; } export interface Workspace { name: string; + path: string; + dependencies?: (Dependencies | null)[] | null; + extensions?: (Extension | null)[] | null; + schematicCollections?: (SchematicCollection | null)[] | null; + npmScripts?: (NpmScript | null)[] | null; + projects?: (Project | null)[] | null; + docs: Docs; + completions?: CompletionsTypes | null; } export interface Dependencies { name: string; + version: string; } export interface Extension { name: string; + description?: string | null; + detailedDescription?: string | null; } export interface SchematicCollection { name: string; + schematics?: (Schematic | null)[] | null; } export interface Schematic { collection: string; + name: string; + description?: string | null; + schema?: (SchematicSchema | null)[] | null; } export interface SchematicSchema { name: string; + type: string; + description?: string | null; + defaultValue?: string | null; + required: boolean; + positional: boolean; + enum?: (string | null)[] | null; } export interface NpmScript { name: string; + npmClient: string; + schema?: (ArchitectSchema | null)[] | null; } export interface ArchitectSchema { name: string; + type: string; + description?: string | null; + defaultValue?: string | null; + required: boolean; + positional: boolean; + enum?: (string | null)[] | null; } export interface Project { name: string; + root: string; + projectType: string; + architect?: (Architect | null)[] | null; } export interface Architect { name: string; + project: string; + builder: string; + configurations?: (ArchitectConfigurations | null)[] | null; + schema?: (ArchitectSchema | null)[] | null; } @@ -142,37 +174,49 @@ export interface ArchitectConfigurations { export interface Docs { workspaceDocs: Doc[]; + schematicDocs: Doc[]; } export interface Doc { prop?: string | null; + description?: string | null; + id: string; } export interface CompletionsTypes { files?: (CompletionResultType | null)[] | null; + projects?: (CompletionResultType | null)[] | null; + localModules?: (CompletionResultType | null)[] | null; + absoluteModules?: (CompletionResultType | null)[] | null; } export interface CompletionResultType { value: string; + display?: string | null; } export interface EditorSupport { name: string; + icon: string; } export interface InstallNodeJsStatus { downloadPercentage?: number | null; + downloadSpeed?: number | null; + success?: boolean | null; + cancelled?: boolean | null; + error?: string | null; } @@ -182,42 +226,67 @@ export interface IsNodeInstalledResult { export interface FilesType { path: string; + exists: boolean; + files?: (FileListType | null)[] | null; } export interface FileListType { name: string; + type: FileType; } export interface CommandResponse { type: string; + id: string; + workspace?: string | null; + command: string; + status: string; + detailedStatus?: string | null; + outChunk: string; + out: string; } export interface Mutation { ngAdd?: CommandStarted | null; + ngNew?: CommandStarted | null; + generate?: CommandStarted | null; + runNg?: CommandStarted | null; + runNpm?: CommandStarted | null; + stopCommand?: StopResult | null; + removeCommand?: RemoveResult | null; + removeAllCommands?: RemoveResult | null; + restartCommand?: RemoveResult | null; + openInEditor?: OpenInEditor | null; + updateSettings: Settings; + installNodeJs?: InstallNodeJsStatus | null; + openInBrowser?: OpenInBrowserResult | null; + selectDirectory?: SelectDirectoryResult | null; + showItemInFolder?: ShowItemInFolderResult | null; + openDoc?: OpenDocResult | null; } @@ -243,6 +312,7 @@ export interface OpenInBrowserResult { export interface SelectDirectoryResult { selectedDirectoryPath?: string | null; + error?: string | null; } @@ -253,6 +323,11 @@ export interface ShowItemInFolderResult { export interface OpenDocResult { result: boolean; } + +// ==================================================== +// Arguments +// ==================================================== + export interface WorkspaceDatabaseArgs { path: string; } @@ -261,7 +336,9 @@ export interface AvailableExtensionsDatabaseArgs { } export interface DirectoryDatabaseArgs { path?: string | null; + onlyDirectories?: boolean | null; + showHidden?: boolean | null; } export interface CommandsDatabaseArgs { @@ -284,7 +361,9 @@ export interface ArchitectProjectArgs { } export interface SchematicDocsDocsArgs { collectionName: string; + collectionVersion?: string | null; + name: string; } export interface FilesCompletionsTypesArgs { @@ -301,25 +380,33 @@ export interface AbsoluteModulesCompletionsTypesArgs { } export interface NgAddMutationArgs { path: string; + name: string; } export interface NgNewMutationArgs { path: string; + name: string; + collection: string; } export interface GenerateMutationArgs { path: string; + genCommand?: (string | null)[] | null; + dryRun: boolean; } export interface RunNgMutationArgs { path: string; + runCommand?: (string | null)[] | null; } export interface RunNpmMutationArgs { path: string; + npmClient: string; + runCommand?: (string | null)[] | null; } export interface StopCommandMutationArgs { @@ -333,6 +420,7 @@ export interface RestartCommandMutationArgs { } export interface OpenInEditorMutationArgs { editor: string; + path: string; } export interface UpdateSettingsMutationArgs { @@ -343,7 +431,9 @@ export interface OpenInBrowserMutationArgs { } export interface SelectDirectoryMutationArgs { dialogTitle: string; + dialogButtonLabel: string; + angularWorkspace: boolean; } export interface ShowItemInFolderMutationArgs { @@ -353,72 +443,124 @@ export interface OpenDocMutationArgs { id: string; } -export enum FileType { - file = 'file', - directory = 'directory', - angularDirectory = 'angularDirectory' +import { GraphQLResolveInfo, GraphQLScalarTypeConfig } from 'graphql'; + +export type Resolver = ( + parent: Parent, + args: Args, + context: Context, + info: GraphQLResolveInfo +) => Promise | Result; + +export interface ISubscriptionResolverObject { + subscribe( + parent: P, + args: Args, + context: Context, + info: GraphQLResolveInfo + ): AsyncIterator | Promise>; + resolve?( + parent: P, + args: Args, + context: Context, + info: GraphQLResolveInfo + ): R | Result | Promise; } +export type SubscriptionResolver< + Result, + Parent = {}, + Context = {}, + Args = {} +> = + | (( + ...args: any[] + ) => ISubscriptionResolverObject) + | ISubscriptionResolverObject; + +type Maybe = T | null | undefined; + +export type TypeResolveFn = ( + parent: Parent, + context: Context, + info: GraphQLResolveInfo +) => Maybe; + +export type NextResolverFn = () => Promise; + +export type DirectiveResolverFn = ( + next: NextResolverFn, + source: any, + args: TArgs, + context: TContext, + info: GraphQLResolveInfo +) => TResult | Promise; + export namespace DatabaseResolvers { - export interface Resolvers { - settings?: SettingsResolver; + export interface Resolvers { + settings?: SettingsResolver; + schematicCollections?: SchematicCollectionsResolver< - (SchematicCollectionForNgNew | null)[] | null, - any, + (any | null)[] | null, + TypeParent, Context >; - workspace?: WorkspaceResolver; - editors?: EditorsResolver; + + workspace?: WorkspaceResolver; + + editors?: EditorsResolver; + availableExtensions?: AvailableExtensionsResolver< - (Extension | null)[] | null, - any, + (any | null)[] | null, + TypeParent, Context >; + installNodeJsStatus?: InstallNodeJsStatusResolver< - InstallNodeJsStatus | null, - any, + any | null, + TypeParent, Context >; + isNodejsInstalled?: IsNodejsInstalledResolver< - IsNodeInstalledResult | null, - any, - Context - >; - directory?: DirectoryResolver; - commands?: CommandsResolver< - (CommandResponse | null)[] | null, - any, + any | null, + TypeParent, Context >; + + directory?: DirectoryResolver; + + commands?: CommandsResolver<(any | null)[] | null, TypeParent, Context>; } - export type SettingsResolver< - R = Settings, - Parent = any, - Context = any - > = Resolver; + export type SettingsResolver = Resolver< + R, + Parent, + Context + >; export type SchematicCollectionsResolver< - R = (SchematicCollectionForNgNew | null)[] | null, - Parent = any, + R = (any | null)[] | null, + Parent = {}, Context = any > = Resolver; - export type WorkspaceResolver< - R = Workspace, - Parent = any, - Context = any - > = Resolver; + export type WorkspaceResolver = Resolver< + R, + Parent, + Context, + WorkspaceArgs + >; export interface WorkspaceArgs { path: string; } - export type EditorsResolver< - R = EditorSupport[], - Parent = any, - Context = any - > = Resolver; + export type EditorsResolver = Resolver< + R, + Parent, + Context + >; export type AvailableExtensionsResolver< - R = (Extension | null)[] | null, - Parent = any, + R = (any | null)[] | null, + Parent = {}, Context = any > = Resolver; export interface AvailableExtensionsArgs { @@ -426,29 +568,32 @@ export namespace DatabaseResolvers { } export type InstallNodeJsStatusResolver< - R = InstallNodeJsStatus | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export type IsNodejsInstalledResolver< - R = IsNodeInstalledResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; - export type DirectoryResolver< - R = FilesType, - Parent = any, - Context = any - > = Resolver; + export type DirectoryResolver = Resolver< + R, + Parent, + Context, + DirectoryArgs + >; export interface DirectoryArgs { path?: string | null; + onlyDirectories?: boolean | null; + showHidden?: boolean | null; } export type CommandsResolver< - R = (CommandResponse | null)[] | null, - Parent = any, + R = (any | null)[] | null, + Parent = {}, Context = any > = Resolver; export interface CommandsArgs { @@ -457,25 +602,30 @@ export namespace DatabaseResolvers { } export namespace SettingsResolvers { - export interface Resolvers { - canCollectData?: CanCollectDataResolver; - showSupportPlugin?: ShowSupportPluginResolver; - installNodeManually?: InstallNodeManuallyResolver< + export interface Resolvers { + canCollectData?: CanCollectDataResolver; + + showSupportPlugin?: ShowSupportPluginResolver< boolean | null, - any, + TypeParent, Context >; - enableDetailedStatus?: EnableDetailedStatusResolver< + + installNodeManually?: InstallNodeManuallyResolver< boolean | null, - any, + TypeParent, Context >; - channel?: ChannelResolver; - recent?: RecentResolver< - (WorkspaceDefinition | null)[] | null, - any, + + enableDetailedStatus?: EnableDetailedStatusResolver< + boolean | null, + TypeParent, Context >; + + channel?: ChannelResolver; + + recent?: RecentResolver<(any | null)[] | null, TypeParent, Context>; } export type CanCollectDataResolver< @@ -504,17 +654,19 @@ export namespace SettingsResolvers { Context = any > = Resolver; export type RecentResolver< - R = (WorkspaceDefinition | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; } export namespace WorkspaceDefinitionResolvers { - export interface Resolvers { - path?: PathResolver; - name?: NameResolver; - favorite?: FavoriteResolver; + export interface Resolvers { + path?: PathResolver; + + name?: NameResolver; + + favorite?: FavoriteResolver; } export type PathResolver = Resolver< @@ -535,9 +687,10 @@ export namespace WorkspaceDefinitionResolvers { } export namespace SchematicCollectionForNgNewResolvers { - export interface Resolvers { - name?: NameResolver; - description?: DescriptionResolver; + export interface Resolvers { + name?: NameResolver; + + description?: DescriptionResolver; } export type NameResolver = Resolver< @@ -553,24 +706,32 @@ export namespace SchematicCollectionForNgNewResolvers { } export namespace WorkspaceResolvers { - export interface Resolvers { - name?: NameResolver; - path?: PathResolver; + export interface Resolvers { + name?: NameResolver; + + path?: PathResolver; + dependencies?: DependenciesResolver< - (Dependencies | null)[] | null, - any, + (any | null)[] | null, + TypeParent, Context >; - extensions?: ExtensionsResolver<(Extension | null)[] | null, any, Context>; + + extensions?: ExtensionsResolver<(any | null)[] | null, TypeParent, Context>; + schematicCollections?: SchematicCollectionsResolver< - (SchematicCollection | null)[] | null, - any, + (any | null)[] | null, + TypeParent, Context >; - npmScripts?: NpmScriptsResolver<(NpmScript | null)[] | null, any, Context>; - projects?: ProjectsResolver<(Project | null)[] | null, any, Context>; - docs?: DocsResolver; - completions?: CompletionsResolver; + + npmScripts?: NpmScriptsResolver<(any | null)[] | null, TypeParent, Context>; + + projects?: ProjectsResolver<(any | null)[] | null, TypeParent, Context>; + + docs?: DocsResolver; + + completions?: CompletionsResolver; } export type NameResolver = Resolver< @@ -584,17 +745,17 @@ export namespace WorkspaceResolvers { Context >; export type DependenciesResolver< - R = (Dependencies | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; export type ExtensionsResolver< - R = (Extension | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; export type SchematicCollectionsResolver< - R = (SchematicCollection | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -603,7 +764,7 @@ export namespace WorkspaceResolvers { } export type NpmScriptsResolver< - R = (NpmScript | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -612,7 +773,7 @@ export namespace WorkspaceResolvers { } export type ProjectsResolver< - R = (Project | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -620,22 +781,23 @@ export namespace WorkspaceResolvers { name?: string | null; } - export type DocsResolver = Resolver< + export type DocsResolver = Resolver< R, Parent, Context >; export type CompletionsResolver< - R = CompletionsTypes | null, + R = any | null, Parent = any, Context = any > = Resolver; } export namespace DependenciesResolvers { - export interface Resolvers { - name?: NameResolver; - version?: VersionResolver; + export interface Resolvers { + name?: NameResolver; + + version?: VersionResolver; } export type NameResolver = Resolver< @@ -651,12 +813,14 @@ export namespace DependenciesResolvers { } export namespace ExtensionResolvers { - export interface Resolvers { - name?: NameResolver; - description?: DescriptionResolver; + export interface Resolvers { + name?: NameResolver; + + description?: DescriptionResolver; + detailedDescription?: DetailedDescriptionResolver< string | null, - any, + TypeParent, Context >; } @@ -679,9 +843,10 @@ export namespace ExtensionResolvers { } export namespace SchematicCollectionResolvers { - export interface Resolvers { - name?: NameResolver; - schematics?: SchematicsResolver<(Schematic | null)[] | null, any, Context>; + export interface Resolvers { + name?: NameResolver; + + schematics?: SchematicsResolver<(any | null)[] | null, TypeParent, Context>; } export type NameResolver = Resolver< @@ -690,7 +855,7 @@ export namespace SchematicCollectionResolvers { Context >; export type SchematicsResolver< - R = (Schematic | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -700,11 +865,14 @@ export namespace SchematicCollectionResolvers { } export namespace SchematicResolvers { - export interface Resolvers { - collection?: CollectionResolver; - name?: NameResolver; - description?: DescriptionResolver; - schema?: SchemaResolver<(SchematicSchema | null)[] | null, any, Context>; + export interface Resolvers { + collection?: CollectionResolver; + + name?: NameResolver; + + description?: DescriptionResolver; + + schema?: SchemaResolver<(any | null)[] | null, TypeParent, Context>; } export type CollectionResolver< @@ -723,21 +891,27 @@ export namespace SchematicResolvers { Context = any > = Resolver; export type SchemaResolver< - R = (SchematicSchema | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; } export namespace SchematicSchemaResolvers { - export interface Resolvers { - name?: NameResolver; - type?: TypeResolver; - description?: DescriptionResolver; - defaultValue?: DefaultValueResolver; - required?: RequiredResolver; - positional?: PositionalResolver; - enum?: EnumResolver<(string | null)[] | null, any, Context>; + export interface Resolvers { + name?: NameResolver; + + type?: TypeResolver; + + description?: DescriptionResolver; + + defaultValue?: DefaultValueResolver; + + required?: RequiredResolver; + + positional?: PositionalResolver; + + enum?: EnumResolver<(string | null)[] | null, TypeParent, Context>; } export type NameResolver = Resolver< @@ -778,10 +952,12 @@ export namespace SchematicSchemaResolvers { } export namespace NpmScriptResolvers { - export interface Resolvers { - name?: NameResolver; - npmClient?: NpmClientResolver; - schema?: SchemaResolver<(ArchitectSchema | null)[] | null, any, Context>; + export interface Resolvers { + name?: NameResolver; + + npmClient?: NpmClientResolver; + + schema?: SchemaResolver<(any | null)[] | null, TypeParent, Context>; } export type NameResolver = Resolver< @@ -795,21 +971,27 @@ export namespace NpmScriptResolvers { Context = any > = Resolver; export type SchemaResolver< - R = (ArchitectSchema | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; } export namespace ArchitectSchemaResolvers { - export interface Resolvers { - name?: NameResolver; - type?: TypeResolver; - description?: DescriptionResolver; - defaultValue?: DefaultValueResolver; - required?: RequiredResolver; - positional?: PositionalResolver; - enum?: EnumResolver<(string | null)[] | null, any, Context>; + export interface Resolvers { + name?: NameResolver; + + type?: TypeResolver; + + description?: DescriptionResolver; + + defaultValue?: DefaultValueResolver; + + required?: RequiredResolver; + + positional?: PositionalResolver; + + enum?: EnumResolver<(string | null)[] | null, TypeParent, Context>; } export type NameResolver = Resolver< @@ -850,11 +1032,14 @@ export namespace ArchitectSchemaResolvers { } export namespace ProjectResolvers { - export interface Resolvers { - name?: NameResolver; - root?: RootResolver; - projectType?: ProjectTypeResolver; - architect?: ArchitectResolver<(Architect | null)[] | null, any, Context>; + export interface Resolvers { + name?: NameResolver; + + root?: RootResolver; + + projectType?: ProjectTypeResolver; + + architect?: ArchitectResolver<(any | null)[] | null, TypeParent, Context>; } export type NameResolver = Resolver< @@ -873,7 +1058,7 @@ export namespace ProjectResolvers { Context = any > = Resolver; export type ArchitectResolver< - R = (Architect | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -883,16 +1068,20 @@ export namespace ProjectResolvers { } export namespace ArchitectResolvers { - export interface Resolvers { - name?: NameResolver; - project?: ProjectResolver; - builder?: BuilderResolver; + export interface Resolvers { + name?: NameResolver; + + project?: ProjectResolver; + + builder?: BuilderResolver; + configurations?: ConfigurationsResolver< - (ArchitectConfigurations | null)[] | null, - any, + (any | null)[] | null, + TypeParent, Context >; - schema?: SchemaResolver<(ArchitectSchema | null)[] | null, any, Context>; + + schema?: SchemaResolver<(any | null)[] | null, TypeParent, Context>; } export type NameResolver = Resolver< @@ -911,20 +1100,20 @@ export namespace ArchitectResolvers { Context = any > = Resolver; export type ConfigurationsResolver< - R = (ArchitectConfigurations | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; export type SchemaResolver< - R = (ArchitectSchema | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; } export namespace ArchitectConfigurationsResolvers { - export interface Resolvers { - name?: NameResolver; + export interface Resolvers { + name?: NameResolver; } export type NameResolver = Resolver< @@ -935,33 +1124,38 @@ export namespace ArchitectConfigurationsResolvers { } export namespace DocsResolvers { - export interface Resolvers { - workspaceDocs?: WorkspaceDocsResolver; - schematicDocs?: SchematicDocsResolver; + export interface Resolvers { + workspaceDocs?: WorkspaceDocsResolver; + + schematicDocs?: SchematicDocsResolver; } export type WorkspaceDocsResolver< - R = Doc[], + R = any[], Parent = any, Context = any > = Resolver; export type SchematicDocsResolver< - R = Doc[], + R = any[], Parent = any, Context = any > = Resolver; export interface SchematicDocsArgs { collectionName: string; + collectionVersion?: string | null; + name: string; } } export namespace DocResolvers { - export interface Resolvers { - prop?: PropResolver; - description?: DescriptionResolver; - id?: IdResolver; + export interface Resolvers { + prop?: PropResolver; + + description?: DescriptionResolver; + + id?: IdResolver; } export type PropResolver< @@ -982,27 +1176,26 @@ export namespace DocResolvers { } export namespace CompletionsTypesResolvers { - export interface Resolvers { - files?: FilesResolver<(CompletionResultType | null)[] | null, any, Context>; - projects?: ProjectsResolver< - (CompletionResultType | null)[] | null, - any, - Context - >; + export interface Resolvers { + files?: FilesResolver<(any | null)[] | null, TypeParent, Context>; + + projects?: ProjectsResolver<(any | null)[] | null, TypeParent, Context>; + localModules?: LocalModulesResolver< - (CompletionResultType | null)[] | null, - any, + (any | null)[] | null, + TypeParent, Context >; + absoluteModules?: AbsoluteModulesResolver< - (CompletionResultType | null)[] | null, - any, + (any | null)[] | null, + TypeParent, Context >; } export type FilesResolver< - R = (CompletionResultType | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -1011,7 +1204,7 @@ export namespace CompletionsTypesResolvers { } export type ProjectsResolver< - R = (CompletionResultType | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -1020,7 +1213,7 @@ export namespace CompletionsTypesResolvers { } export type LocalModulesResolver< - R = (CompletionResultType | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -1029,7 +1222,7 @@ export namespace CompletionsTypesResolvers { } export type AbsoluteModulesResolver< - R = (CompletionResultType | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; @@ -1039,9 +1232,10 @@ export namespace CompletionsTypesResolvers { } export namespace CompletionResultTypeResolvers { - export interface Resolvers { - value?: ValueResolver; - display?: DisplayResolver; + export interface Resolvers { + value?: ValueResolver; + + display?: DisplayResolver; } export type ValueResolver = Resolver< @@ -1057,9 +1251,10 @@ export namespace CompletionResultTypeResolvers { } export namespace EditorSupportResolvers { - export interface Resolvers { - name?: NameResolver; - icon?: IconResolver; + export interface Resolvers { + name?: NameResolver; + + icon?: IconResolver; } export type NameResolver = Resolver< @@ -1075,16 +1270,20 @@ export namespace EditorSupportResolvers { } export namespace InstallNodeJsStatusResolvers { - export interface Resolvers { + export interface Resolvers { downloadPercentage?: DownloadPercentageResolver< number | null, - any, + TypeParent, Context >; - downloadSpeed?: DownloadSpeedResolver; - success?: SuccessResolver; - cancelled?: CancelledResolver; - error?: ErrorResolver; + + downloadSpeed?: DownloadSpeedResolver; + + success?: SuccessResolver; + + cancelled?: CancelledResolver; + + error?: ErrorResolver; } export type DownloadPercentageResolver< @@ -1115,8 +1314,8 @@ export namespace InstallNodeJsStatusResolvers { } export namespace IsNodeInstalledResultResolvers { - export interface Resolvers { - result?: ResultResolver; + export interface Resolvers { + result?: ResultResolver; } export type ResultResolver< @@ -1127,10 +1326,12 @@ export namespace IsNodeInstalledResultResolvers { } export namespace FilesTypeResolvers { - export interface Resolvers { - path?: PathResolver; - exists?: ExistsResolver; - files?: FilesResolver<(FileListType | null)[] | null, any, Context>; + export interface Resolvers { + path?: PathResolver; + + exists?: ExistsResolver; + + files?: FilesResolver<(any | null)[] | null, TypeParent, Context>; } export type PathResolver = Resolver< @@ -1144,16 +1345,17 @@ export namespace FilesTypeResolvers { Context = any > = Resolver; export type FilesResolver< - R = (FileListType | null)[] | null, + R = (any | null)[] | null, Parent = any, Context = any > = Resolver; } export namespace FileListTypeResolvers { - export interface Resolvers { - name?: NameResolver; - type?: TypeResolver; + export interface Resolvers { + name?: NameResolver; + + type?: TypeResolver; } export type NameResolver = Resolver< @@ -1169,15 +1371,22 @@ export namespace FileListTypeResolvers { } export namespace CommandResponseResolvers { - export interface Resolvers { - type?: TypeResolver; - id?: IdResolver; - workspace?: WorkspaceResolver; - command?: CommandResolver; - status?: StatusResolver; - detailedStatus?: DetailedStatusResolver; - outChunk?: OutChunkResolver; - out?: OutResolver; + export interface Resolvers { + type?: TypeResolver; + + id?: IdResolver; + + workspace?: WorkspaceResolver; + + command?: CommandResolver; + + status?: StatusResolver; + + detailedStatus?: DetailedStatusResolver; + + outChunk?: OutChunkResolver; + + out?: OutResolver; } export type TypeResolver = Resolver< @@ -1223,101 +1432,112 @@ export namespace CommandResponseResolvers { } export namespace MutationResolvers { - export interface Resolvers { - ngAdd?: NgAddResolver; - ngNew?: NgNewResolver; - generate?: GenerateResolver; - runNg?: RunNgResolver; - runNpm?: RunNpmResolver; - stopCommand?: StopCommandResolver; - removeCommand?: RemoveCommandResolver; + export interface Resolvers { + ngAdd?: NgAddResolver; + + ngNew?: NgNewResolver; + + generate?: GenerateResolver; + + runNg?: RunNgResolver; + + runNpm?: RunNpmResolver; + + stopCommand?: StopCommandResolver; + + removeCommand?: RemoveCommandResolver; + removeAllCommands?: RemoveAllCommandsResolver< - RemoveResult | null, - any, - Context - >; - restartCommand?: RestartCommandResolver; - openInEditor?: OpenInEditorResolver; - updateSettings?: UpdateSettingsResolver; - installNodeJs?: InstallNodeJsResolver< - InstallNodeJsStatus | null, - any, - Context - >; - openInBrowser?: OpenInBrowserResolver< - OpenInBrowserResult | null, - any, - Context - >; - selectDirectory?: SelectDirectoryResolver< - SelectDirectoryResult | null, - any, + any | null, + TypeParent, Context >; + + restartCommand?: RestartCommandResolver; + + openInEditor?: OpenInEditorResolver; + + updateSettings?: UpdateSettingsResolver; + + installNodeJs?: InstallNodeJsResolver; + + openInBrowser?: OpenInBrowserResolver; + + selectDirectory?: SelectDirectoryResolver; + showItemInFolder?: ShowItemInFolderResolver< - ShowItemInFolderResult | null, - any, + any | null, + TypeParent, Context >; - openDoc?: OpenDocResolver; + + openDoc?: OpenDocResolver; } export type NgAddResolver< - R = CommandStarted | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface NgAddArgs { path: string; + name: string; } export type NgNewResolver< - R = CommandStarted | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface NgNewArgs { path: string; + name: string; + collection: string; } export type GenerateResolver< - R = CommandStarted | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface GenerateArgs { path: string; + genCommand?: (string | null)[] | null; + dryRun: boolean; } export type RunNgResolver< - R = CommandStarted | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface RunNgArgs { path: string; + runCommand?: (string | null)[] | null; } export type RunNpmResolver< - R = CommandStarted | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface RunNpmArgs { path: string; + npmClient: string; + runCommand?: (string | null)[] | null; } export type StopCommandResolver< - R = StopResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface StopCommandArgs { @@ -1325,8 +1545,8 @@ export namespace MutationResolvers { } export type RemoveCommandResolver< - R = RemoveResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface RemoveCommandArgs { @@ -1334,13 +1554,13 @@ export namespace MutationResolvers { } export type RemoveAllCommandsResolver< - R = RemoveResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export type RestartCommandResolver< - R = RemoveResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface RestartCommandArgs { @@ -1348,18 +1568,19 @@ export namespace MutationResolvers { } export type OpenInEditorResolver< - R = OpenInEditor | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface OpenInEditorArgs { editor: string; + path: string; } export type UpdateSettingsResolver< - R = Settings, - Parent = any, + R = any, + Parent = {}, Context = any > = Resolver; export interface UpdateSettingsArgs { @@ -1367,13 +1588,13 @@ export namespace MutationResolvers { } export type InstallNodeJsResolver< - R = InstallNodeJsStatus | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export type OpenInBrowserResolver< - R = OpenInBrowserResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface OpenInBrowserArgs { @@ -1381,19 +1602,21 @@ export namespace MutationResolvers { } export type SelectDirectoryResolver< - R = SelectDirectoryResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface SelectDirectoryArgs { dialogTitle: string; + dialogButtonLabel: string; + angularWorkspace: boolean; } export type ShowItemInFolderResolver< - R = ShowItemInFolderResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface ShowItemInFolderArgs { @@ -1401,8 +1624,8 @@ export namespace MutationResolvers { } export type OpenDocResolver< - R = OpenDocResult | null, - Parent = any, + R = any | null, + Parent = {}, Context = any > = Resolver; export interface OpenDocArgs { @@ -1411,8 +1634,8 @@ export namespace MutationResolvers { } export namespace CommandStartedResolvers { - export interface Resolvers { - id?: IdResolver; + export interface Resolvers { + id?: IdResolver; } export type IdResolver = Resolver< @@ -1423,8 +1646,8 @@ export namespace CommandStartedResolvers { } export namespace StopResultResolvers { - export interface Resolvers { - result?: ResultResolver; + export interface Resolvers { + result?: ResultResolver; } export type ResultResolver< @@ -1435,8 +1658,8 @@ export namespace StopResultResolvers { } export namespace RemoveResultResolvers { - export interface Resolvers { - result?: ResultResolver; + export interface Resolvers { + result?: ResultResolver; } export type ResultResolver< @@ -1447,8 +1670,8 @@ export namespace RemoveResultResolvers { } export namespace OpenInEditorResolvers { - export interface Resolvers { - response?: ResponseResolver; + export interface Resolvers { + response?: ResponseResolver; } export type ResponseResolver< @@ -1459,8 +1682,8 @@ export namespace OpenInEditorResolvers { } export namespace OpenInBrowserResultResolvers { - export interface Resolvers { - result?: ResultResolver; + export interface Resolvers { + result?: ResultResolver; } export type ResultResolver< @@ -1471,13 +1694,14 @@ export namespace OpenInBrowserResultResolvers { } export namespace SelectDirectoryResultResolvers { - export interface Resolvers { + export interface Resolvers { selectedDirectoryPath?: SelectedDirectoryPathResolver< string | null, - any, + TypeParent, Context >; - error?: ErrorResolver; + + error?: ErrorResolver; } export type SelectedDirectoryPathResolver< @@ -1493,8 +1717,8 @@ export namespace SelectDirectoryResultResolvers { } export namespace ShowItemInFolderResultResolvers { - export interface Resolvers { - result?: ResultResolver; + export interface Resolvers { + result?: ResultResolver; } export type ResultResolver< @@ -1505,8 +1729,8 @@ export namespace ShowItemInFolderResultResolvers { } export namespace OpenDocResultResolvers { - export interface Resolvers { - result?: ResultResolver; + export interface Resolvers { + result?: ResultResolver; } export type ResultResolver< @@ -1515,3 +1739,36 @@ export namespace OpenDocResultResolvers { Context = any > = Resolver; } + +/** Directs the executor to skip this field or fragment when the `if` argument is true. */ +export type SkipDirectiveResolver = DirectiveResolverFn< + Result, + SkipDirectiveArgs, + any +>; +export interface SkipDirectiveArgs { + /** Skipped when true. */ + if: boolean; +} + +/** Directs the executor to include this field or fragment only when the `if` argument is true. */ +export type IncludeDirectiveResolver = DirectiveResolverFn< + Result, + IncludeDirectiveArgs, + any +>; +export interface IncludeDirectiveArgs { + /** Included when true. */ + if: boolean; +} + +/** Marks an element of a GraphQL schema as no longer supported. */ +export type DeprecatedDirectiveResolver = DirectiveResolverFn< + Result, + DeprecatedDirectiveArgs, + any +>; +export interface DeprecatedDirectiveArgs { + /** Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted in [Markdown](https://daringfireball.net/projects/markdown/). */ + reason?: string | null; +} diff --git a/server/src/schema/index.ts b/server/src/schema/index.ts index 5fc914e779..c5e69da50d 100644 --- a/server/src/schema/index.ts +++ b/server/src/schema/index.ts @@ -1,9 +1,12 @@ import { makeExecutableSchema } from 'apollo-server-express'; import { resolvers } from './resolvers'; -import { typeDefs } from './type-defs'; +import { readFileSync } from 'fs'; +import { resolve } from 'path'; // TODO(jack): Marking this as any for now until type issues can be resolved. export const schema = makeExecutableSchema({ resolvers, - typeDefs + typeDefs: readFileSync(resolve(__dirname, './schema.graphql'), { + encoding: 'utf-8' + }) } as any); diff --git a/server/src/schema/resolvers.ts b/server/src/schema/resolvers.ts index 289a72ee61..d51097e023 100644 --- a/server/src/schema/resolvers.ts +++ b/server/src/schema/resolvers.ts @@ -1,3 +1,4 @@ +// tslint:disable:typedef import * as path from 'path'; import { shell, dialog } from 'electron'; import * as semver from 'semver'; @@ -39,25 +40,23 @@ import { cacheFiles, directoryExists, exists, - fileExistsSync, files, filterByName, findClosestNg, findExecutable, readJsonFile } from '../utils'; -import { CommandInformation } from '../api/commands'; import { mainWindow } from '..'; import { docs } from '../api/docs'; const SchematicCollection: SchematicCollectionResolvers.Resolvers = { - schematics(collection: any, args: any) { + schematics(collection, args) { return filterByName(collection.schematics, args); } }; const Architect: ArchitectResolvers.Resolvers = { - schema(a: any, _: any, context: any) { + schema(a, _, context) { if (!directoryExists(path.join(context.path, 'node_modules'))) { throw new Error(`node_modules is not found`); } @@ -66,13 +65,13 @@ const Architect: ArchitectResolvers.Resolvers = { }; const Project: ProjectResolvers.Resolvers = { - architect(project: any, args: any) { + architect(project, args) { return filterByName(project.architect, args); } }; const NpmScript: NpmScriptResolvers.Resolvers = { - schema(a: any, _: any, context: any) { + schema(a, _, context) { if (!directoryExists(path.join(context.path, 'node_modules'))) { throw new Error(`node_modules is not found`); } @@ -81,43 +80,43 @@ const NpmScript: NpmScriptResolvers.Resolvers = { }; const Workspace: WorkspaceResolvers.Resolvers = { - schematicCollections(workspace: any, args: any, context: any) { + schematicCollections(workspace, args, context) { if (!directoryExists(path.join(context.path, 'node_modules'))) { throw new Error(`node_modules is not found`); } return filterByName(readAllSchematicCollections(context.path), args); }, - npmScripts(workspace: any, args: any) { + npmScripts(workspace, args) { return filterByName(workspace.npmScripts, args); }, - projects(workspace: any, args: any) { + projects(workspace, args) { return filterByName(workspace.projects, args); }, - completions(workspace: any) { + completions(workspace) { return workspace; }, - docs(workspace: any) { + docs(workspace) { return workspace; } }; const CompletionsTypes: CompletionsTypesResolvers.Resolvers = { - files(workspace: any, args: any) { + files(workspace, args) { return completeFiles(files, workspace, args.input); }, - projects(workspace: any, args: any) { + projects(workspace, args) { return completeProjects(workspace, args.input); }, - localModules(workspace: any, args: any) { + localModules(workspace, args) { return completeLocalModules(files, workspace, args.input); }, - absoluteModules(workspace: any, args: any) { + absoluteModules(workspace, args) { return completeAbsoluteModules(files, workspace, args.input); } }; const Docs: DocsResolvers.Resolvers = { - workspaceDocs(workspace: any, args: any, context: any) { + workspaceDocs(workspace, args, context) { const deps = { ...context.packageJson.dependencies, ...context.packageJson.devDependencies @@ -125,7 +124,7 @@ const Docs: DocsResolvers.Resolvers = { return docs.workspaceDocs(deps).toPromise(); }, - schematicDocs(workspace: any, args: any, context: any) { + schematicDocs(workspace, args, context) { // TODO: vsavkin read the version from node_modules and provide here instead of null return docs.schematicDocs(args.collectionName, null, args.name).toPromise(); } @@ -166,7 +165,7 @@ const Database: DatabaseResolvers.Resolvers = { ); } }, - async workspace(_root: any, args: any, context: any) { + async workspace(_root, args, context) { try { if (!files[args.path]) { cacheFiles(args.path); @@ -196,7 +195,7 @@ const Database: DatabaseResolvers.Resolvers = { editors() { return readEditors(); }, - availableExtensions(_: any, args: any) { + availableExtensions(_, args) { try { return filterByName(availableExtensions(), args); } catch (e) { @@ -206,7 +205,7 @@ const Database: DatabaseResolvers.Resolvers = { ); } }, - installNodeJsStatus(_root: any, args: any): InstallNodeJsStatus { + installNodeJsStatus(_root): InstallNodeJsStatus { try { if (readSettings().installNodeManually || exists('node')) { return { success: true }; @@ -229,7 +228,7 @@ const Database: DatabaseResolvers.Resolvers = { ); } }, - commands(_root: any, args: any) { + commands(_root, args) { try { const settings = readSettings(); const includeDetailedStatus = settings.enableDetailedStatus; @@ -249,7 +248,7 @@ const Database: DatabaseResolvers.Resolvers = { throw new Error(`Error when reading commands. Message: "${e.message}"`); } }, - async directory(_: any, args: any) { + async directory(_, args) { try { // XXX: any? Because TS throws an error that string doesn't match Enum const v: any = await readDirectory( @@ -273,7 +272,7 @@ const Database: DatabaseResolvers.Resolvers = { }; const Mutation: MutationResolvers.Resolvers = { - async ngAdd(_root: any, args: any) { + async ngAdd(_root, args) { try { return runCommand('add', args.path, 'ng', findClosestNg(args.path), [ 'add', @@ -285,7 +284,7 @@ const Mutation: MutationResolvers.Resolvers = { throw new Error(`Error when running 'ng add'. Message: "${e.message}"`); } }, - async ngNew(_root: any, args: any) { + async ngNew(_root, args) { try { return runCommand('new', args.path, 'ng', findClosestNg(__dirname), [ 'new', @@ -299,7 +298,7 @@ const Mutation: MutationResolvers.Resolvers = { throw new Error(`Error when running 'ng new'. Message: "${e.message}"`); } }, - async generate(_root: any, args: any) { + async generate(_root, args) { try { const dryRun = args.dryRun ? ['--dry-run'] : []; return runCommand( @@ -322,7 +321,7 @@ const Mutation: MutationResolvers.Resolvers = { ); } }, - async runNg(_root: any, args: any) { + async runNg(_root, args) { try { return runCommand( 'ng', @@ -336,7 +335,7 @@ const Mutation: MutationResolvers.Resolvers = { throw new Error(`Error when running 'ng ...'. Message: "${e.message}"`); } }, - async runNpm(_root: any, args: any) { + async runNpm(_root, args) { try { return runCommand( 'npm', @@ -353,7 +352,7 @@ const Mutation: MutationResolvers.Resolvers = { async installNodeJs() { return installNodeJs(); }, - async stopCommand(_root: any, args: any) { + async stopCommand(_root, args) { try { const c = commands.findMatchingCommand(args.id, commands.recent); if (c) { @@ -367,7 +366,7 @@ const Mutation: MutationResolvers.Resolvers = { throw new Error(`Error when stopping commands. Message: "${e.message}"`); } }, - async openInBrowser(_root: any, { url }: any) { + async openInBrowser(_root, { url }) { if (url) { shell.openExternal(url); return { result: true }; @@ -375,14 +374,14 @@ const Mutation: MutationResolvers.Resolvers = { return { result: false }; } }, - async showItemInFolder(_root: any, { item }: any) { + async showItemInFolder(_root, { item }) { if (item) { return { result: shell.showItemInFolder(item) }; } else { return { result: false }; } }, - async removeCommand(_root: any, args: any) { + async removeCommand(_root, args) { try { commands.removeCommand(args.id); return { result: true }; @@ -391,7 +390,7 @@ const Mutation: MutationResolvers.Resolvers = { throw new Error(`Error when removing commands. Message: "${e.message}"`); } }, - async removeAllCommands(_root: any, args: any) { + async removeAllCommands(_root, args) { try { commands.removeAllCommands(); return { result: true }; @@ -400,7 +399,7 @@ const Mutation: MutationResolvers.Resolvers = { throw new Error(`Error when removing commands. Message: "${e.message}"`); } }, - async restartCommand(_root: any, args: any) { + async restartCommand(_root, args) { try { commands.restartCommand(args.id); return { result: true }; @@ -411,7 +410,7 @@ const Mutation: MutationResolvers.Resolvers = { ); } }, - openInEditor(_root: any, args: any) { + openInEditor(_root, args) { try { openInEditor(args.editor, args.path); return { response: 'successful' }; @@ -420,7 +419,7 @@ const Mutation: MutationResolvers.Resolvers = { throw new Error(`Error when opening an editor. Message: "${e.message}"`); } }, - selectDirectory(root: any, args: any) { + selectDirectory(root, args) { // TODO(jack): This mocked value is needed because e2e tests that bring up the dialog will block entire electron main thread. if (process.env.CI === 'true') { return { @@ -438,11 +437,11 @@ const Mutation: MutationResolvers.Resolvers = { }; } }, - updateSettings(_root: any, args: any) { + updateSettings(_root, args) { storeSettings(JSON.parse(args.data)); return readSettings(); }, - async openDoc(root: any, args: any) { + async openDoc(root, args) { const result = await docs.openDoc(args.id).toPromise(); return { result }; } diff --git a/server/src/schema/schema.graphql b/server/src/schema/schema.graphql new file mode 100644 index 0000000000..0df71eff50 --- /dev/null +++ b/server/src/schema/schema.graphql @@ -0,0 +1,256 @@ +type Architect { + name: String! + project: String! + builder: String! + configurations: [ArchitectConfigurations] + schema: [ArchitectSchema] +} + +type ArchitectConfigurations { + name: String! +} + +type ArchitectSchema { + name: String! + type: String! + description: String + defaultValue: String + required: Boolean! + positional: Boolean! + enum: [String] +} + +type CommandResponse { + type: String! + id: String! + workspace: String + command: String! + status: String! + detailedStatus: String + outChunk: String! + out: String! +} + +type CommandStarted { + id: String! +} + +type CompletionResultType { + value: String! + display: String +} + +type CompletionsTypes { + files(input: String): [CompletionResultType] + projects(input: String): [CompletionResultType] + localModules(input: String): [CompletionResultType] + absoluteModules(input: String): [CompletionResultType] +} + +type InstallNodeJsStatus { + downloadPercentage: Float + downloadSpeed: Float + success: Boolean + cancelled: Boolean + error: String +} + +type Database { + settings: Settings! + schematicCollections: [SchematicCollectionForNgNew] + workspace(path: String!): Workspace! + editors: [EditorSupport!]! + availableExtensions(name: String): [Extension] + installNodeJsStatus: InstallNodeJsStatus + isNodejsInstalled: IsNodeInstalledResult + directory( + path: String + onlyDirectories: Boolean + showHidden: Boolean + ): FilesType! + commands(id: String): [CommandResponse] +} + +type Dependencies { + name: String! + version: String! +} + +type EditorSupport { + name: String! + icon: String! +} + +type Extension { + name: String! + description: String + detailedDescription: String +} + +type FileListType { + name: String! + type: FileType! +} + +type FilesType { + path: String! + exists: Boolean! + files: [FileListType] +} + +enum FileType { + file + directory + angularDirectory +} + +type IsNodeInstalledResult { + result: Boolean! +} + +type OpenInBrowserResult { + result: Boolean! +} + +type ShowItemInFolderResult { + result: Boolean! +} + +type OpenDocResult { + result: Boolean! +} + +type Mutation { + ngAdd(path: String!, name: String!): CommandStarted + ngNew(path: String!, name: String!, collection: String!): CommandStarted + generate( + path: String! + genCommand: [String] + dryRun: Boolean! + ): CommandStarted + runNg(path: String!, runCommand: [String]): CommandStarted + runNpm( + path: String! + npmClient: String! + runCommand: [String] + ): CommandStarted + stopCommand(id: String!): StopResult + removeCommand(id: String!): RemoveResult + removeAllCommands: RemoveResult + restartCommand(id: String!): RemoveResult + openInEditor(editor: String!, path: String!): OpenInEditor + updateSettings(data: String!): Settings! + installNodeJs: InstallNodeJsStatus + openInBrowser(url: String!): OpenInBrowserResult + selectDirectory( + dialogTitle: String! + dialogButtonLabel: String! + angularWorkspace: Boolean! + ): SelectDirectoryResult + showItemInFolder(item: String!): ShowItemInFolderResult + openDoc(id: String!): OpenDocResult +} + +type SelectDirectoryResult { + selectedDirectoryPath: String + error: String +} + +type NpmScript { + name: String! + npmClient: String! + schema: [ArchitectSchema] +} + +type OpenInEditor { + response: String! +} + +type Project { + name: String! + root: String! + projectType: String! + architect(name: String): [Architect] +} + +type Schematic { + collection: String! + name: String! + description: String + schema: [SchematicSchema] +} + +type SchematicCollection { + name: String! + schematics(name: String): [Schematic] +} + +type SchematicCollectionForNgNew { + name: String! + description: String! +} + +type SchematicSchema { + name: String! + type: String! + description: String + defaultValue: String + required: Boolean! + positional: Boolean! + enum: [String] +} + +type StopResult { + result: Boolean +} + +type RemoveResult { + result: Boolean +} + +type WorkspaceDefinition { + path: String! + name: String! + favorite: Boolean +} + +type Settings { + canCollectData: Boolean! + showSupportPlugin: Boolean + installNodeManually: Boolean + enableDetailedStatus: Boolean + channel: String + recent: [WorkspaceDefinition] +} + +type Workspace { + name: String! + path: String! + dependencies: [Dependencies] + extensions: [Extension] + schematicCollections(name: String): [SchematicCollection] + npmScripts(name: String): [NpmScript] + projects(name: String): [Project] + docs: Docs! + completions: CompletionsTypes +} + +type Docs { + workspaceDocs: [Doc!]! + schematicDocs( + collectionName: String! + collectionVersion: String + name: String! + ): [Doc!]! +} + +type Doc { + prop: String + description: String + id: String! +} + +schema { + query: Database + mutation: Mutation +} diff --git a/server/src/schema/schema.ts b/server/src/schema/schema.ts deleted file mode 100644 index 26ee11e763..0000000000 --- a/server/src/schema/schema.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { buildASTSchema } from 'graphql'; -import { typeDefs } from './type-defs'; - -export const schema = buildASTSchema(typeDefs); diff --git a/server/src/schema/type-defs.ts b/server/src/schema/type-defs.ts deleted file mode 100644 index ad0923a1ba..0000000000 --- a/server/src/schema/type-defs.ts +++ /dev/null @@ -1,260 +0,0 @@ -import { gql } from 'apollo-server-express'; - -export const typeDefs = gql` - type Architect { - name: String! - project: String! - builder: String! - configurations: [ArchitectConfigurations] - schema: [ArchitectSchema] - } - - type ArchitectConfigurations { - name: String! - } - - type ArchitectSchema { - name: String! - type: String! - description: String - defaultValue: String - required: Boolean! - positional: Boolean! - enum: [String] - } - - type CommandResponse { - type: String! - id: String! - workspace: String - command: String! - status: String! - detailedStatus: String - outChunk: String! - out: String! - } - - type CommandStarted { - id: String! - } - - type CompletionResultType { - value: String! - display: String - } - - type CompletionsTypes { - files(input: String): [CompletionResultType] - projects(input: String): [CompletionResultType] - localModules(input: String): [CompletionResultType] - absoluteModules(input: String): [CompletionResultType] - } - - type InstallNodeJsStatus { - downloadPercentage: Float - downloadSpeed: Float - success: Boolean - cancelled: Boolean - error: String - } - - type Database { - settings: Settings! - schematicCollections: [SchematicCollectionForNgNew] - workspace(path: String!): Workspace! - editors: [EditorSupport!]! - availableExtensions(name: String): [Extension] - installNodeJsStatus: InstallNodeJsStatus - isNodejsInstalled: IsNodeInstalledResult - directory( - path: String - onlyDirectories: Boolean - showHidden: Boolean - ): FilesType! - commands(id: String): [CommandResponse] - } - - type Dependencies { - name: String! - version: String! - } - - type EditorSupport { - name: String! - icon: String! - } - - type Extension { - name: String! - description: String - detailedDescription: String - } - - type FileListType { - name: String! - type: FileType! - } - - type FilesType { - path: String! - exists: Boolean! - files: [FileListType] - } - - enum FileType { - file - directory - angularDirectory - } - - type IsNodeInstalledResult { - result: Boolean! - } - - type OpenInBrowserResult { - result: Boolean! - } - - type ShowItemInFolderResult { - result: Boolean! - } - - type OpenDocResult { - result: Boolean! - } - - type Mutation { - ngAdd(path: String!, name: String!): CommandStarted - ngNew(path: String!, name: String!, collection: String!): CommandStarted - generate( - path: String! - genCommand: [String] - dryRun: Boolean! - ): CommandStarted - runNg(path: String!, runCommand: [String]): CommandStarted - runNpm( - path: String! - npmClient: String! - runCommand: [String] - ): CommandStarted - stopCommand(id: String!): StopResult - removeCommand(id: String!): RemoveResult - removeAllCommands: RemoveResult - restartCommand(id: String!): RemoveResult - openInEditor(editor: String!, path: String!): OpenInEditor - updateSettings(data: String!): Settings! - installNodeJs: InstallNodeJsStatus - openInBrowser(url: String!): OpenInBrowserResult - selectDirectory( - dialogTitle: String! - dialogButtonLabel: String! - angularWorkspace: Boolean! - ): SelectDirectoryResult - showItemInFolder(item: String!): ShowItemInFolderResult - openDoc(id: String!): OpenDocResult - } - - type SelectDirectoryResult { - selectedDirectoryPath: String - error: String - } - - type NpmScript { - name: String! - npmClient: String! - schema: [ArchitectSchema] - } - - type OpenInEditor { - response: String! - } - - type Project { - name: String! - root: String! - projectType: String! - architect(name: String): [Architect] - } - - type Schematic { - collection: String! - name: String! - description: String - schema: [SchematicSchema] - } - - type SchematicCollection { - name: String! - schematics(name: String): [Schematic] - } - - type SchematicCollectionForNgNew { - name: String! - description: String! - } - - type SchematicSchema { - name: String! - type: String! - description: String - defaultValue: String - required: Boolean! - positional: Boolean! - enum: [String] - } - - type StopResult { - result: Boolean - } - - type RemoveResult { - result: Boolean - } - - type WorkspaceDefinition { - path: String! - name: String! - favorite: Boolean - } - - type Settings { - canCollectData: Boolean! - showSupportPlugin: Boolean - installNodeManually: Boolean - enableDetailedStatus: Boolean - channel: String - recent: [WorkspaceDefinition] - } - - type Workspace { - name: String! - path: String! - dependencies: [Dependencies] - extensions: [Extension] - schematicCollections(name: String): [SchematicCollection] - npmScripts(name: String): [NpmScript] - projects(name: String): [Project] - docs: Docs! - completions: CompletionsTypes - } - - type Docs { - workspaceDocs: [Doc!]! - schematicDocs( - collectionName: String! - collectionVersion: String - name: String! - ): [Doc!]! - } - - type Doc { - prop: String - description: String - id: String! - } - - schema { - query: Database - mutation: Mutation - } -`; diff --git a/tools/gen-apollo-angular.ts b/tools/gen-apollo-angular.ts deleted file mode 100644 index 4c4560932d..0000000000 --- a/tools/gen-apollo-angular.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { generate } from 'graphql-code-generator'; -import { resolve, join, relative } from 'path'; -import { lstatSync, readdirSync } from 'fs'; - -function listLibs() { - const libs = resolve(__dirname, '../libs'); - const isDirectory = (source: string) => lstatSync(source).isDirectory(); - - return readdirSync(libs) - .map(name => join(libs, name)) - .filter(isDirectory) - .map(source => relative(libs, source)); -} - -function generateForLib(lib: string) { - return generate( - { - require: ['ts-node/register/transpile-only'], - schema: resolve(__dirname, '../server/src/schema/schema.ts'), - skipSchema: true, - template: 'graphql-codegen-apollo-angular-template', - out: resolve(__dirname, `../libs/${lib}/src/lib/generated/graphql.ts`), - overwrite: true, - args: [`libs/${lib}/src/lib/graphql/**/*.graphql`] - }, - true - ); -} - -async function run() { - const libs = listLibs(); - - try { - await Promise.all(libs.map(generateForLib)); - process.exit(0); - } catch (e) { - console.error(e); - process.exit(1); - } -} -run(); diff --git a/tools/gen-graphql-types.ts b/tools/gen-graphql-types.ts deleted file mode 100644 index f367984230..0000000000 --- a/tools/gen-graphql-types.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { generate } from 'graphql-code-generator'; -import { resolve } from 'path'; - -generate( - { - require: ['ts-node/register/transpile-only'], - schema: resolve(__dirname, '../server/src/schema/schema.ts'), - template: 'graphql-codegen-typescript-template', - out: resolve(__dirname, '../server/src/graphql-types.ts'), - overwrite: true - }, - true -) - .then(_ => { - process.exit(0); - }) - .catch(e => { - console.log(e); - process.exit(1); - }); diff --git a/yarn.lock b/yarn.lock index 90fee068c5..fce1656241 100644 --- a/yarn.lock +++ b/yarn.lock @@ -298,6 +298,26 @@ dependencies: "@babel/highlight" "^7.0.0" +"@babel/core@^7.1.6": + version "7.1.6" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.6.tgz#3733cbee4317429bc87c62b29cf8587dba7baeb3" + integrity sha512-Hz6PJT6e44iUNpAn8AoyAs6B3bl60g7MJQaI0rZEar6ECzh6+srYO1xlIdssio34mPaUtAb1y+XlkkSJzok3yw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.1.6" + "@babel/helpers" "^7.1.5" + "@babel/parser" "^7.1.6" + "@babel/template" "^7.1.2" + "@babel/traverse" "^7.1.6" + "@babel/types" "^7.1.6" + convert-source-map "^1.1.0" + debug "^4.1.0" + json5 "^2.1.0" + lodash "^4.17.10" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + "@babel/generator@^7.0.0", "@babel/generator@^7.1.6": version "7.1.6" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.1.6.tgz#001303cf87a5b9d093494a4bf251d7b5d03d3999" @@ -325,6 +345,35 @@ dependencies: "@babel/types" "^7.0.0" +"@babel/helper-member-expression-to-functions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" + integrity sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-optimise-call-expression@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" + integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-plugin-utils@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" + integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== + +"@babel/helper-replace-supers@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz#5fc31de522ec0ef0899dc9b3e7cf6a5dd655f362" + integrity sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + "@babel/helper-split-export-declaration@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" @@ -332,6 +381,25 @@ dependencies: "@babel/types" "^7.0.0" +"@babel/helper-wrap-function@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.1.0.tgz#8cf54e9190706067f016af8f75cb3df829cc8c66" + integrity sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helpers@^7.1.5": + version "7.1.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.1.5.tgz#68bfc1895d685f2b8f1995e788dbfe1f6ccb1996" + integrity sha512-2jkcdL02ywNBry1YNFAH/fViq4fXG0vdckHqeJk+75fpQ2OH+Az6076tX/M0835zA45E0Cqa6pV5Kiv9YOqjEg== + dependencies: + "@babel/template" "^7.1.2" + "@babel/traverse" "^7.1.5" + "@babel/types" "^7.1.5" + "@babel/highlight@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" @@ -346,6 +414,260 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.6.tgz#16e97aca1ec1062324a01c5a6a7d0df8dd189854" integrity sha512-dWP6LJm9nKT6ALaa+bnL247GHHMWir3vSlZ2+IHgHgktZQx0L3Uvq2uAWcuzIe+fujRsYWBW2q622C5UvGK9iQ== +"@babel/plugin-proposal-class-properties@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz#9af01856b1241db60ec8838d84691aa0bd1e8df4" + integrity sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + "@babel/plugin-syntax-class-properties" "^7.0.0" + +"@babel/plugin-proposal-decorators@^7.0.0": + version "7.1.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.1.6.tgz#460c31edbd01953efe45d491583b3ec31661d689" + integrity sha512-U42f8KhUbtlhUDyV/wK4Rq/wWh8vWyttYABckG/v0vVnMPvayOewZC/83CbVdmyP+UhEqI368FEQ7hHMfhBpQA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/plugin-syntax-decorators" "^7.1.0" + +"@babel/plugin-proposal-do-expressions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-do-expressions/-/plugin-proposal-do-expressions-7.0.0.tgz#4fe2f29c56a4b18d292caab0dfcb8119c89cc8d8" + integrity sha512-fIXsLAsQ5gVhQF44wZ9Yc3EBxaCHzeNjd8z9ivEzKOQyv5VoU1YJQ3AZa0VJgQMX5k/cbXJpNwp2mtg7iSdiGg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-do-expressions" "^7.0.0" + +"@babel/plugin-proposal-export-default-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.0.0.tgz#a057bbfd4649facfe39f33a537e18554bdd2b5da" + integrity sha512-cWhkx6SyjZ4caFOanoPmDNgQCuYYTmou4QXy886JsyLTw/vhWQbop2gLKsWyyswrJkKTB7fSNxVYbP/oEsoySA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-export-default-from" "^7.0.0" + +"@babel/plugin-proposal-export-namespace-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.0.0.tgz#ce847cc62c3626547107a1b835592b8ee494af51" + integrity sha512-UZuK8lkobh3570vCu0sxDQn+ZlCV6CVLlXe+nNohvPr6/zI5I+j4Ir2fTTCG0ayBQanym0N+29K5+v4c8SATaQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-export-namespace-from" "^7.0.0" + +"@babel/plugin-proposal-function-bind@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-function-bind/-/plugin-proposal-function-bind-7.0.0.tgz#030bb3dd7affb5a0df8326cdd3e9f6776e95a225" + integrity sha512-CNLspFXoquetQqPTFRedMvF7VYpsY2IecFu7Gcb86w+70lXojIKHhX1QFt5dhyk5n4MsjKrdXlGipbCFqD0Xeg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-function-bind" "^7.0.0" + +"@babel/plugin-proposal-function-sent@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-function-sent/-/plugin-proposal-function-sent-7.1.0.tgz#1c4eb7748812c89b772a2d699cf6a9c074f3e166" + integrity sha512-yciM4dketj0pjd1enirzfVWclzSCzjOljHx8E4DJUBq/q65CuaKsX2zhpdImzcn6TtFupzdcuchbqN00IEKDAA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-wrap-function" "^7.1.0" + "@babel/plugin-syntax-function-sent" "^7.0.0" + +"@babel/plugin-proposal-json-strings@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.0.0.tgz#3b4d7b5cf51e1f2e70f52351d28d44fc2970d01e" + integrity sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-json-strings" "^7.0.0" + +"@babel/plugin-proposal-logical-assignment-operators@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.0.0.tgz#f2a290bcb266e8c9ddae08c6bae5ad3df57c362d" + integrity sha512-06osaVN0bKEIXvzScf6qPpbDUEP4sixqVdjwpSPPwEtMyDC+x8PDvcJCww6p6TDOTIHnuUx2Afmguf/RypKDIw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-logical-assignment-operators" "^7.0.0" + +"@babel/plugin-proposal-nullish-coalescing-operator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.0.0.tgz#b72ec31adf612d062dc0348316246127a451e45f" + integrity sha512-QIN3UFo1ul4ruAsjIqK43PeXedo1qY74zeGrODJl1KfCGeMc6qJC4rb5Ylml/smzxibqsDeVZGH+TmWHCldRQQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" + +"@babel/plugin-proposal-numeric-separator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.0.0.tgz#08aa02ce62481a84bfd0d9ce7a718adaaaa773dd" + integrity sha512-m4iDNpbBv2rTxxgViAeaqLOStc2wrlVAC5ifp6pjBPG29F56LdlPgf5CQYzj99y3kYeKqsyf/dcMx/r+QfwMZg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-numeric-separator" "^7.0.0" + +"@babel/plugin-proposal-optional-chaining@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.0.0.tgz#3d344d4152253379b8758e7d041148e8787c4a9d" + integrity sha512-7x8HLa71OzNiofbQUVakS0Kmg++6a+cXNfS7QKHbbv03SuSaumJyaWsfNgw+T7aqrJlqurYpZqrkPgXu0iZK0w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-chaining" "^7.0.0" + +"@babel/plugin-proposal-pipeline-operator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-pipeline-operator/-/plugin-proposal-pipeline-operator-7.0.0.tgz#ab60169a5c4a598292de59a14f9810d4e47b00b8" + integrity sha512-MN189PDyTMoor/YFh9dk6HpSZLMGHCXRdAhgmzshwcalbgYh5Mkn7Ib17lOo6fmLwHdyQ4GR4yagizfeR2LwQQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-pipeline-operator" "^7.0.0" + +"@babel/plugin-proposal-throw-expressions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-throw-expressions/-/plugin-proposal-throw-expressions-7.0.0.tgz#fd44563c742c5e0df764b1a41ab86b22dde5a5b7" + integrity sha512-CA2EUiwnbXrsdV4hy3jYghm91WaL7zL7xYfu628dyItRr6gylbRxshghGEK/Hhm//rR58N3PBmEeuYqSW57IUQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-throw-expressions" "^7.0.0" + +"@babel/plugin-syntax-class-properties@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0.tgz#e051af5d300cbfbcec4a7476e37a803489881634" + integrity sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-decorators@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.1.0.tgz#2fa7c1a7905a299c9853ebcef340306675f9cbdc" + integrity sha512-uQvRSbgQ0nQg3jsmIixXXDCgSpkBolJ9X7NYThMKCcjvE8dN2uWJUzTUNNAeuKOjARTd+wUQV0ztXpgunZYKzQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-do-expressions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-do-expressions/-/plugin-syntax-do-expressions-7.0.0.tgz#069119d1d2fd2c13a3203b172619af5f95b6f696" + integrity sha512-ZN5MO2WuYfznTK0/TRlF9qG+pBGV/bY5CRO9/a00XEGvaU31JAewRbYaZrySDw6kwSdtPG76yk9jZdPrEC3jWg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-dynamic-import@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0.tgz#6dfb7d8b6c3be14ce952962f658f3b7eb54c33ee" + integrity sha512-Gt9xNyRrCHCiyX/ZxDGOcBnlJl0I3IWicpZRC4CdC0P5a/I07Ya2OAMEBU+J7GmRFVmIetqEYRko6QYRuKOESw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-export-default-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.0.0.tgz#084b639bce3d42f3c5bf3f68ccb42220bb2d729d" + integrity sha512-HNnjg/fFFbnuLAqr/Ocp1Y3GB4AjmXcu1xxn3ql3bS2kGrB/qi+Povshb8i3hOkE5jNozzh8r/0/lq1w8oOWbQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-export-namespace-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.0.0.tgz#17a7389a1d2571ac4d9b77ea2defa74a930edf5d" + integrity sha512-l314XT1eMa0MWboSmG4BdKukHfSpSpQRenUoZmEpL6hqc5nc1/ddpLETjPB77gZE1dZ9qxy5D3U3UUjjcX2d4g== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-function-bind@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-function-bind/-/plugin-syntax-function-bind-7.0.0.tgz#04ad5fac3f68460ef028b1d92abc09781f2e7478" + integrity sha512-dGxXCBMhRgdoJdTDouuC5sTRqZihfm4bKTWCJOXpTknZnmb1AozdvoNQA8V1WCccwk0IGKr0LaCbsQDQNp48JA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-function-sent@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-function-sent/-/plugin-syntax-function-sent-7.0.0.tgz#583f904c86019dbbf486170e79e2d8f2d373f543" + integrity sha512-j+D8C+clbieA+1UFlRzMkVozWNLB94TCJsUUE7OCyKBRM329ZZXnFPjgm0em5ddLsKV9DNpdtaOZsNZ1J7gHyA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-import-meta@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.0.0.tgz#ca946b73216c29c39a55ef2d739097fee8a85d69" + integrity sha512-FEoGvhXVAiWzpDjyZIlBGzKyNk/lnRPy7aPke3PjVkiAY0QFsvFfkjUg5diRwVfowBA8SJqvFt0ZoXNSjl70hQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-json-strings@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.0.0.tgz#0d259a68090e15b383ce3710e01d5b23f3770cbd" + integrity sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-logical-assignment-operators@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.0.0.tgz#8c567dcc4caea33d2743307758684656184d20cc" + integrity sha512-eOcVPYWpdReMfxHZIBRjC5wlB8iU7kM6eQyst0kK6SwUPmpYNKyB4rJdf0HTeUEOSRqdlH6uMiLAzReA0qDGLQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.0.0.tgz#b60931d5a15da82625fff6657c39419969598743" + integrity sha512-oAJmMsAvTSIk9y0sZdU2S/nY44PEUuHN7EzNDMgbuR4e/OwyfR9lSmoBJBZ2lslFZIqhksrTt4i+av7uKfNYDw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-numeric-separator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.0.0.tgz#9594c7ce6ce8089a14d732cb9f6b1eeb047413ba" + integrity sha512-t9RMUPWsFXVeUZxEOhIDkVqYLi1sWOTjxFBAp8wJtaARilvkGlEQvSObd2W5YKicDktINI9XmdV0sB2FZaLOpw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-optional-chaining@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.0.0.tgz#1e6ecba124310b5d3a8fc1e00d50b1c4c2e05e68" + integrity sha512-QXedQsZf8yua1nNrXSePT0TsGSQH9A1iK08m9dhCMdZeJaaxYcQfXdgHWVV6Cp7WE/afPVvSKIsAHK5wP+yxDA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-pipeline-operator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-pipeline-operator/-/plugin-syntax-pipeline-operator-7.0.0.tgz#29106ddb293898192780ff48159c77e6f20c1768" + integrity sha512-McK1JV4klGq2r0UZ1SLE2u+u37ElArBcPMGl6JizdgEXD3ttp0dpOB5ZpqpeRHkIgnl46th64UHrFDteQ4P5aw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-throw-expressions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-throw-expressions/-/plugin-syntax-throw-expressions-7.0.0.tgz#c0764da188afd99828ffdf78085c5f3c40bb661e" + integrity sha512-/5uORdWlPta/ALhI5zKtm0Y9vAYOa7HJMML0OnCGk9XZA4hpGjb0Xjt/OVDCJVawC/4FrlAGCHOaj9BtWeVDvg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-typescript@^7.0.0": + version "7.1.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.1.5.tgz#956a1f43dec8a9d6b36221f5c865335555fdcb98" + integrity sha512-VqK5DFcS6/T8mT5CcJv1BwZLYFxkHiGZmP7Hs87F53lSToE/qfL7TpPrqFSaKyZi9w7Z/b/tmOGZZDupcJjFvw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-typescript@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.1.0.tgz#81e7b4be90e7317cbd04bf1163ebf06b2adee60b" + integrity sha512-TOTtVeT+fekAesiCHnPz+PSkYSdOSLyLn42DI45nxg6iCdlQY6LIj/tYqpMB0y+YicoTUiYiXqF8rG6SKfhw6Q== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-typescript" "^7.0.0" + +"@babel/preset-typescript@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.1.0.tgz#49ad6e2084ff0bfb5f1f7fb3b5e76c434d442c7f" + integrity sha512-LYveByuF9AOM8WrsNne5+N79k1YxjNB6gmpCQsnuSBAcV8QUeB+ZUxQzL7Rz7HksPbahymKkq2qBR+o36ggFZA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-typescript" "^7.1.0" + "@babel/runtime-corejs2@^7.0.0-rc.1": version "7.1.5" resolved "https://registry.yarnpkg.com/@babel/runtime-corejs2/-/runtime-corejs2-7.1.5.tgz#ec8341c9aec71d1139c985327314739d66b204a0" @@ -354,7 +676,7 @@ core-js "^2.5.7" regenerator-runtime "^0.12.0" -"@babel/template@^7.0.0", "@babel/template@^7.1.0": +"@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.1.2": version "7.1.2" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.1.2.tgz#090484a574fef5a2d2d7726a674eceda5c5b5644" integrity sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag== @@ -363,7 +685,7 @@ "@babel/parser" "^7.1.2" "@babel/types" "^7.1.2" -"@babel/traverse@^7.0.0": +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.1.6": version "7.1.6" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.1.6.tgz#c8db9963ab4ce5b894222435482bd8ea854b7b5c" integrity sha512-CXedit6GpISz3sC2k2FsGCUpOhUqKdyL0lqNrImQojagnUMXf8hex4AxYFRuMkNGcvJX5QAFGzB5WJQmSv8SiQ== @@ -387,6 +709,15 @@ lodash "^4.17.10" to-fast-properties "^2.0.0" +"@babel/types@^7.1.5": + version "7.1.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.1.5.tgz#12fe64e91a431234b7017b4227a78cc0eec4e081" + integrity sha512-sJeqa/d9eM/bax8Ivg+fXF7FpN3E/ZmTrWbkk6r+g7biVYfALMnLin4dKijsaqEhpd2xvOGfQTkQkD31YCVV4A== + dependencies: + esutils "^2.0.2" + lodash "^4.17.10" + to-fast-properties "^2.0.0" + "@cypress/listr-verbose-renderer@0.4.1": version "0.4.1" resolved "https://registry.yarnpkg.com/@cypress/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#a77492f4b11dcc7c446a34b3e28721afd33c642a" @@ -405,25 +736,15 @@ debug "^3.1.0" lodash.once "^4.1.1" -"@graphql-modules/epoxy@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@graphql-modules/epoxy/-/epoxy-0.1.9.tgz#291879d517ba4473ea334edbb137a2cc6aed384c" - integrity sha512-xWDhwe0ADZvAs6JhvpCHH0jf6YmjEmYshRI/VB6sHE54RGB9GOHqKAqWL/vcbzMrFI2cr40Qqoy7qqaEAh6Ifw== +"@graphql-modules/epoxy@0.2.14": + version "0.2.14" + resolved "https://registry.yarnpkg.com/@graphql-modules/epoxy/-/epoxy-0.2.14.tgz#f8068a2cc2445988fa6f0994de1c6d1c79ef2974" + integrity sha512-ONXynaT1fWiMWCnpyVNMiSGddd/YqAQ0TFaonuvmfjxu2z9+QwGRyPVk7XNFWl7Lt1cXoaYBMB73fSzFPRkiPQ== dependencies: - "@graphql-modules/logger" "0.1.9" "@types/deepmerge" "2.1.0" deepmerge "2.2.1" - graphql-tools "4.0.2" - tslib "1.9.3" - -"@graphql-modules/logger@0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@graphql-modules/logger/-/logger-0.1.9.tgz#768186df12ad488623ef7231d1bf096fe1610b76" - integrity sha512-nmxHyJkb2OUA3s7Za1McljkxxdLUb8c9h2mcEHWCsjVjE92XnzPJEIr2Ab7xzRWa+/q9w8nGAYph3eZDXwFgwA== - dependencies: - moment "2.22.2" + graphql-tools "4.0.3" tslib "1.9.3" - winston "3.1.0" "@graphql-modules/logger@^0.2.0": version "0.2.3" @@ -557,6 +878,13 @@ resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA= +"@samverschueren/stream-to-observable@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" + integrity sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg== + dependencies: + any-observable "^0.3.0" + "@schematics/angular@7.0.6": version "7.0.6" resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-7.0.6.tgz#1173c201d118cf38d1afdb382e9a916e4b540a17" @@ -604,10 +932,10 @@ resolved "https://registry.yarnpkg.com/@types/babel-types/-/babel-types-7.0.4.tgz#bfd5b0d0d1ba13e351dff65b6e52783b816826c8" integrity sha512-WiZhq3SVJHFRgRYLXvpf65XnV6ipVHhnNaNvE8yCimejrGglkg38kEj0JcizqwSHxmPSjcTlig/6JouxLGEhGw== -"@types/babylon@6.16.3": - version "6.16.3" - resolved "https://registry.yarnpkg.com/@types/babylon/-/babylon-6.16.3.tgz#c2937813a89fcb5e79a00062fc4a8b143e7237bb" - integrity sha512-lyJ8sW1PbY3uwuvpOBZ9zMYKshMnQpXmeDHh8dj9j2nJm/xrW0FgB5gLSYOArj5X0IfaXnmhFoJnhS4KbqIMug== +"@types/babylon@6.16.4": + version "6.16.4" + resolved "https://registry.yarnpkg.com/@types/babylon/-/babylon-6.16.4.tgz#d3df72518b34a6a015d0dc58745cd238b5bb8ad2" + integrity sha512-8dZMcGPno3g7pJ/d0AyJERo+lXh9i1JhDuCUs+4lNIN9eUe5Yh6UCLrpgSEi05Ve2JMLauL2aozdvKwNL0px1Q== dependencies: "@types/babel-types" "*" @@ -699,11 +1027,6 @@ resolved "https://registry.yarnpkg.com/@types/graphql/-/graphql-0.13.4.tgz#55ae9c29f0fd6b85ee536f5c72b4769d5c5e06b1" integrity sha512-B4yel4ro2nTb3v0pYO8vO6SjgvFJSrwUY+IO6TUSLdOSB+gQFslylrhRCHxvXMIhxB71mv5PEE9dAX+24S8sew== -"@types/handlebars@4.0.39": - version "4.0.39" - resolved "https://registry.yarnpkg.com/@types/handlebars/-/handlebars-4.0.39.tgz#961fb54db68030890942e6aeffe9f93a957807bd" - integrity sha512-vjaS7Q0dVqFp85QhyPSZqDKnTTCemcSHNHFvDdalO1s0Ifz5KuE64jQD5xoUkfdWwF4WpqdJEl7LsWH8rzhKJA== - "@types/is-glob@4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/is-glob/-/is-glob-4.0.0.tgz#fb8a2bff539025d4dcd6d5efe7689e03341b876d" @@ -778,10 +1101,10 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-6.14.2.tgz#40b3dbb1221c7d66802cbcc32fe3b85e54569c77" integrity sha512-JWB3xaVfsfnFY8Ofc9rTB/op0fqqTSqy4vBcVk1LuRJvta7KTX+D//fCkiTMeLGhdr2EbFZzQjC97gvmPilk9Q== -"@types/prettier@1.13.2": - version "1.13.2" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.13.2.tgz#ffe96278e712a8d4e467e367a338b05e22872646" - integrity sha512-k6MCN8WuDiCj6O+UJsVMbrreZxkbrhQbO02oDj6yuRu8UAkp0MDdEcDKif8/gBKuJbT84kkO+VHQAqXkumEklg== +"@types/prettier@1.15.2": + version "1.15.2" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.15.2.tgz#91594ea7cb6f3b1f7ea69f32621246654c7cc231" + integrity sha512-XIB0ZCaFZmWUHAa9dBqP5UKXXHwuukmVlP+XcyU94dui2k+l2lG+CHAbt2ffenHPUqoIs5Beh8Pdf2YEq/CZ7A== "@types/q@^0.0.32": version "0.0.32" @@ -1215,6 +1538,11 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +any-observable@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" + integrity sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog== + any-shell-escape@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/any-shell-escape/-/any-shell-escape-0.1.1.tgz#d55ab972244c71a9a5e1ab0879f30bf110806959" @@ -2739,7 +3067,7 @@ cli-cursor@^1.0.2: dependencies: restore-cursor "^1.0.1" -cli-cursor@^2.1.0: +cli-cursor@^2.0.0, cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= @@ -2751,11 +3079,6 @@ cli-spinners@^0.1.2: resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" integrity sha1-u3ZNiOGF+54eaiofGXcjGPYF4xw= -cli-spinners@^1.1.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-1.3.1.tgz#002c1990912d0d59580c93bd36c056de99e4259a" - integrity sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg== - cli-truncate@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" @@ -2797,11 +3120,6 @@ clone-deep@^2.0.1: kind-of "^6.0.0" shallow-clone "^1.0.0" -clone@^1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= - clone@^2.1.1, clone@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" @@ -3111,7 +3429,7 @@ content-type@^1.0.4, content-type@~1.0.4: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== -convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.5.1: +convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.5.1: version "1.6.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== @@ -3711,13 +4029,6 @@ default-shell@^1.0.0: resolved "https://registry.yarnpkg.com/default-shell/-/default-shell-1.0.1.tgz#752304bddc6174f49eb29cb988feea0b8813c8bc" integrity sha1-dSMEvdxhdPSespy5iP7qC4gTyLw= -defaults@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" - integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= - dependencies: - clone "^1.0.2" - define-properties@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" @@ -3787,7 +4098,7 @@ depd@~1.1.2: resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= -dependency-graph@^0.7.2, dependency-graph@~0.7.2: +dependency-graph@0.7.2, dependency-graph@^0.7.2: version "0.7.2" resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.7.2.tgz#91db9de6eb72699209d88aea4c1fd5221cac1c49" integrity sha512-KqtH4/EZdtdfWX0p6MGP9jljvxSY6msy/pRUD4jgNwVpv3v1QmNLlsB3LDSSUg79BRVSn7jI1QPRtArGABovAQ== @@ -5458,15 +5769,15 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== -graphql-code-generator@0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/graphql-code-generator/-/graphql-code-generator-0.13.0.tgz#fd71fe9cd913f5ca14eedd7ce39c4e2ff6053ee1" - integrity sha512-SM+K58Cg6jGL9pzOGWgRUJD4swQ+iOWEy/pyQ9BJxjv3d+eIV9uYwFwZ+flstRTvnu3spenTbjRE/mnw3jxHTQ== +graphql-code-generator@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-code-generator/-/graphql-code-generator-0.14.5.tgz#b7efc118cec681aa73acefb62fd5dfd0a57b09b6" + integrity sha512-b6mogzzrJkXxh/pZ6E3GV7C2xbP1Rg3fIgo2cbmRI/9wXOhq8YPWCSNoNBMV+1FAjEvg2b1njPIC/jrUszOzDQ== dependencies: - "@graphql-modules/epoxy" "0.1.9" - "@types/babylon" "6.16.3" + "@graphql-modules/epoxy" "0.2.14" + "@types/babylon" "6.16.4" "@types/is-glob" "4.0.0" - "@types/prettier" "1.13.2" + "@types/prettier" "1.15.2" "@types/valid-url" "1.0.2" babel-types "7.0.0-beta.3" babylon "7.0.0-beta.47" @@ -5474,61 +5785,86 @@ graphql-code-generator@0.13.0: commander "2.19.0" fb-watchman "2.0.0" glob "7.1.3" - graphql-codegen-compiler "0.13.0" - graphql-codegen-core "0.13.0" + graphql-codegen-core "0.14.5" graphql-config "2.2.1" graphql-import "0.7.1" + graphql-tag-pluck "0.2.4" + indent-string "3.2.0" is-glob "4.0.0" is-valid-path "0.1.1" + js-yaml "3.12.0" + json-to-pretty-yaml "1.2.2" + listr "0.14.3" + log-update "2.3.0" mkdirp "0.5.1" - ora "3.0.0" pify "4.0.1" - prettier "1.14.3" + prettier "1.15.2" request "2.88.0" valid-url "1.0.9" -graphql-codegen-apollo-angular-template@0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/graphql-codegen-apollo-angular-template/-/graphql-codegen-apollo-angular-template-0.13.0.tgz#455b03f3396ce98658119335d0fd331badb4a20a" - integrity sha512-qMkc+YU5kzPdLf7v6MlBzSV4a2q2HgLNlloWykdE71qWDZP9Bsxvrk/JgdIhMhHal8PUYlP9XlaodmnyVTrczA== - dependencies: - dependency-graph "~0.7.2" - graphql-codegen-typescript-template "0.13.0" - -graphql-codegen-compiler@0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/graphql-codegen-compiler/-/graphql-codegen-compiler-0.13.0.tgz#5d7787849ce5b109f2ca7af681f428a1633c6b39" - integrity sha512-e6EjF1OXyUZ+8uiMK17NKoVYmiSJgw61EpYK9uLJAQlOcCeLPskSxRSNQU8mtAiveAE1tMSXt9BfXrleQbDPqA== - dependencies: - "@types/handlebars" "4.0.39" - change-case "3.0.2" - common-tags "1.8.0" - graphql-codegen-core "0.13.0" - handlebars "4.0.12" - moment "2.22.2" - -graphql-codegen-core@0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/graphql-codegen-core/-/graphql-codegen-core-0.13.0.tgz#c288b2e263ea73724215c10712116f05c7ce02cd" - integrity sha512-oM67vJvlt/azkbD4uy177duDuQkdpN9/PUOIcvvyGzjnsPkU7kB9uQ/vFK/+WwmxtYPzvm07PUnH2OkCssJtsQ== +graphql-codegen-core@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-codegen-core/-/graphql-codegen-core-0.14.5.tgz#e4bdcd996c1bc90c674145a2c69dc4d9d2df2d8d" + integrity sha512-8jNaoHkGVavnThszlLf1qF0gJYvicUGvH9615F9gbxNR9opzDUJiKFB8thsrUddpfIGUb0jYDsWkgpPGNG2Gjg== dependencies: chalk "2.4.1" change-case "3.0.2" common-tags "1.8.0" graphql-tag "2.10.0" graphql-tools "4.0.3" - ts-log "2.1.3" + ts-log "2.1.4" winston "3.1.0" -graphql-codegen-typescript-template@0.12.6: - version "0.12.6" - resolved "https://registry.yarnpkg.com/graphql-codegen-typescript-template/-/graphql-codegen-typescript-template-0.12.6.tgz#3120089a7aea93373261377b0e0f89792c8bb5ad" - integrity sha512-Qn0EvuFwOmUy4drNEugczNdSmpNtFjJ3oJAdvLW1nnM54GNMlm+9LJLmZfifjG1uB4nvKORV9+v3dY2fKrxaKQ== +graphql-codegen-plugin-helpers@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-codegen-plugin-helpers/-/graphql-codegen-plugin-helpers-0.14.5.tgz#15e2c802d7bc5550107bf81ad2f8f8dd04da772f" + integrity sha512-8oAvNil0C+QN9bNTmAMp8Uy0hdzKWcaKmND6PbGNpfg/CSXELq70z2wbipvDRFFm9U5TTadRdHySSEYKDJSPag== + dependencies: + graphql-codegen-core "0.14.5" + import-from "2.1.0" -graphql-codegen-typescript-template@0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/graphql-codegen-typescript-template/-/graphql-codegen-typescript-template-0.13.0.tgz#41398687cbf279f1d97d8cfb8aa7c412bf0e7192" - integrity sha512-EYLd4v8toD+dpWHJsJliViaE52novhF9zbayFmY8IgLeHmYPVk2TfyS6CVvHmCoa0HTxOawvTY8a7UIgtnpw2w== +graphql-codegen-typescript-apollo-angular@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-codegen-typescript-apollo-angular/-/graphql-codegen-typescript-apollo-angular-0.14.5.tgz#8a55516521f32cdd6b83e4a63d243620908b4fdd" + integrity sha512-U2vojC7/J3lSsrMQyzMeDOnvd77RkJXqwsUgrCXvJPzVOKIF0hVO8JpnGyaEUZFRbeOuDlHUsPyODteunwGkzw== + dependencies: + dependency-graph "0.7.2" + graphql-codegen-plugin-helpers "0.14.5" + graphql-codegen-typescript-common "0.14.5" + +graphql-codegen-typescript-client@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-codegen-typescript-client/-/graphql-codegen-typescript-client-0.14.5.tgz#f709c5087c7e68ae5da95deee3922730b883bc02" + integrity sha512-LSygK0temRrXFQyK7y+/JcBj3PPnJ7IbtLs6O0EkxIJauJYVOLKX9uDEVz2gkV46Ku4iK4UlnXYZdRk9Fv87WA== + dependencies: + graphql-codegen-core "0.14.5" + graphql-codegen-plugin-helpers "0.14.5" + graphql-codegen-typescript-common "0.14.5" + +graphql-codegen-typescript-common@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-codegen-typescript-common/-/graphql-codegen-typescript-common-0.14.5.tgz#26259820cf9429c817b061ab0ab4bc09c5b95549" + integrity sha512-EGfAI7kKpr7Fa2iuPYjVm/HlSynaVqbwjn1zu7ma5upY9f3PCsVySaFY/BJtqqnGjaB8vad6y8PlOWQ0tc2Spw== + dependencies: + change-case "3.0.2" + common-tags "1.8.0" + graphql-codegen-core "0.14.5" + graphql-codegen-plugin-helpers "0.14.5" + +graphql-codegen-typescript-resolvers@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-codegen-typescript-resolvers/-/graphql-codegen-typescript-resolvers-0.14.5.tgz#17331d4fcace768fa893b86eacf176f0ff6d1b33" + integrity sha512-OP9D1MLvGJ6wibymECoebkV8VJA6U3ucJIyg1ELBPEALY/3xRtp4C++/XQ7+S1QHIDQ3BxHcOqKV9PDE7eDXcg== + dependencies: + graphql-codegen-plugin-helpers "0.14.5" + graphql-codegen-typescript-common "0.14.5" + +graphql-codegen-typescript-server@0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/graphql-codegen-typescript-server/-/graphql-codegen-typescript-server-0.14.5.tgz#9c4877175f1a68a1558faee854555b235ab71ed1" + integrity sha512-caIx4eHqfCyU34LlfrYvA120rU5PCE0uZQ3sZLIddfEYXs8/UXaFMUMkSowumdaEWGiuNnJ9auB+HHGZSILK3Q== + dependencies: + graphql-codegen-typescript-common "0.14.5" graphql-config@2.2.1: version "2.2.1" @@ -5570,22 +5906,37 @@ graphql-subscriptions@^1.0.0: dependencies: iterall "^1.2.1" +graphql-tag-pluck@0.2.4: + version "0.2.4" + resolved "https://registry.yarnpkg.com/graphql-tag-pluck/-/graphql-tag-pluck-0.2.4.tgz#8d446d95d064cb2467c7c09f9da599ad211fa770" + integrity sha512-/EkxFiwP5Ue5nLZdWBZovwUY8OuVes0c+Or/I+Xw5Gb6K9S7JwdNPhZAzeOy26Ths3QEWD021+A7wpNyTq4UOA== + dependencies: + "@babel/core" "^7.1.6" + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-decorators" "^7.0.0" + "@babel/plugin-proposal-do-expressions" "^7.0.0" + "@babel/plugin-proposal-export-default-from" "^7.0.0" + "@babel/plugin-proposal-export-namespace-from" "^7.0.0" + "@babel/plugin-proposal-function-bind" "^7.0.0" + "@babel/plugin-proposal-function-sent" "^7.0.0" + "@babel/plugin-proposal-json-strings" "^7.0.0" + "@babel/plugin-proposal-logical-assignment-operators" "^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-numeric-separator" "^7.0.0" + "@babel/plugin-proposal-optional-chaining" "^7.0.0" + "@babel/plugin-proposal-pipeline-operator" "^7.0.0" + "@babel/plugin-proposal-throw-expressions" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.0.0" + "@babel/plugin-syntax-import-meta" "^7.0.0" + "@babel/preset-typescript" "^7.1.0" + lodash.mergewith "^4.6.1" + source-map-support "0.5.0" + graphql-tag@2.10.0, graphql-tag@^2.9.2: version "2.10.0" resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.10.0.tgz#87da024be863e357551b2b8700e496ee2d4353ae" integrity sha512-9FD6cw976TLLf9WYIUPCaaTpniawIjHWZSwIRZSjrfufJamcXbVVYfN2TWvJYbw0Xf2JjYbl1/f2+wDnBVw3/w== -graphql-tools@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/graphql-tools/-/graphql-tools-4.0.2.tgz#9da22974cc6bf6524ed4f4af35556fd15aa6516d" - integrity sha512-GijRFaHmSbyVphtTb23wd6wxXNkct9usiXHl2v4cOFNdUWe3Qz7VqoNyOwINlff2nf01xO+lCkhVlay0svJqfQ== - dependencies: - apollo-link "^1.2.3" - apollo-utilities "^1.0.1" - deprecated-decorator "^0.1.6" - iterall "^1.1.3" - uuid "^3.1.0" - graphql-tools@4.0.3, graphql-tools@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/graphql-tools/-/graphql-tools-4.0.3.tgz#23b5cb52c519212b1b2e4630a361464396ad264b" @@ -5621,7 +5972,7 @@ handle-thing@^1.2.5: resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= -handlebars@4.0.12, handlebars@^4.0.1, handlebars@^4.0.11, handlebars@^4.0.3: +handlebars@^4.0.1, handlebars@^4.0.11, handlebars@^4.0.3: version "4.0.12" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.12.tgz#2c15c8a96d46da5e266700518ba8cb8d919d5bc5" integrity sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA== @@ -5938,7 +6289,7 @@ import-cwd@^2.0.0: dependencies: import-from "^2.1.0" -import-from@^2.1.0: +import-from@2.1.0, import-from@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" integrity sha1-M1238qev/VOqpHHUuAId7ja387E= @@ -5981,6 +6332,11 @@ in-publish@^2.0.0: resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" integrity sha1-4g/146KvwmkDILbcVSaCqcf631E= +indent-string@3.2.0, indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= + indent-string@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" @@ -5988,11 +6344,6 @@ indent-string@^2.1.0: dependencies: repeating "^2.0.0" -indent-string@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" - integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= - indexof@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" @@ -6360,6 +6711,13 @@ is-object@^1.0.1: resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= +is-observable@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-1.1.0.tgz#b3e986c8f44de950867cab5403f5a3465005975e" + integrity sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA== + dependencies: + symbol-observable "^1.1.0" + is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" @@ -7063,7 +7421,7 @@ js-tokens@^3.0.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= -js-yaml@3.x, js-yaml@^3.10.0, js-yaml@^3.12.0, js-yaml@^3.7.0, js-yaml@^3.9.0: +js-yaml@3.12.0, js-yaml@3.x, js-yaml@^3.10.0, js-yaml@^3.12.0, js-yaml@^3.7.0, js-yaml@^3.9.0: version "3.12.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A== @@ -7155,6 +7513,14 @@ json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= +json-to-pretty-yaml@1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/json-to-pretty-yaml/-/json-to-pretty-yaml-1.2.2.tgz#f4cd0bd0a5e8fe1df25aaf5ba118b099fd992d5b" + integrity sha1-9M0L0KXo/h3yWq9boRiwmf2ZLVs= + dependencies: + remedial "^1.0.7" + remove-trailing-spaces "^1.0.6" + json3@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" @@ -7469,6 +7835,20 @@ listr-update-renderer@^0.2.0: log-update "^1.0.2" strip-ansi "^3.0.1" +listr-update-renderer@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz#4ea8368548a7b8aecb7e06d8c95cb45ae2ede6a2" + integrity sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA== + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + elegant-spinner "^1.0.1" + figures "^1.7.0" + indent-string "^3.0.0" + log-symbols "^1.0.2" + log-update "^2.3.0" + strip-ansi "^3.0.1" + listr-verbose-renderer@^0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35" @@ -7479,6 +7859,16 @@ listr-verbose-renderer@^0.4.0: date-fns "^1.27.2" figures "^1.7.0" +listr-verbose-renderer@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz#f1132167535ea4c1261102b9f28dac7cba1e03db" + integrity sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw== + dependencies: + chalk "^2.4.1" + cli-cursor "^2.1.0" + date-fns "^1.27.2" + figures "^2.0.0" + listr@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/listr/-/listr-0.12.0.tgz#6bce2c0f5603fa49580ea17cd6a00cc0e5fa451a" @@ -7501,6 +7891,21 @@ listr@0.12.0: stream-to-observable "^0.1.0" strip-ansi "^3.0.1" +listr@0.14.3: + version "0.14.3" + resolved "https://registry.yarnpkg.com/listr/-/listr-0.14.3.tgz#2fea909604e434be464c50bddba0d496928fa586" + integrity sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA== + dependencies: + "@samverschueren/stream-to-observable" "^0.3.0" + is-observable "^1.1.0" + is-promise "^2.1.0" + is-stream "^1.1.0" + listr-silent-renderer "^1.1.1" + listr-update-renderer "^0.5.0" + listr-verbose-renderer "^0.5.0" + p-map "^2.0.0" + rxjs "^6.3.3" + load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -7587,7 +7992,7 @@ lodash.isequal@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= -lodash.mergewith@^4.6.0: +lodash.mergewith@^4.6.0, lodash.mergewith@^4.6.1: version "4.6.1" resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927" integrity sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ== @@ -7617,7 +8022,7 @@ lodash@^4.0.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.10, lodash@^4.17.4, resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== -log-symbols@2.2.0, log-symbols@^2.2.0: +log-symbols@2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== @@ -7631,6 +8036,15 @@ log-symbols@^1.0.2: dependencies: chalk "^1.0.0" +log-update@2.3.0, log-update@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-2.3.0.tgz#88328fd7d1ce7938b29283746f0b1bc126b24708" + integrity sha1-iDKP19HOeTiykoN0bwsbwSayRwg= + dependencies: + ansi-escapes "^3.0.0" + cli-cursor "^2.0.0" + wrap-ansi "^3.0.1" + log-update@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" @@ -8089,11 +8503,6 @@ mksnapshot@^0.3.0: fs-extra "0.26.7" request "^2.79.0" -moment@2.22.2: - version "2.22.2" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.22.2.tgz#3c257f9839fc0e93ff53149632239eb90783ff66" - integrity sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y= - move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -8813,18 +9222,6 @@ optionator@^0.8.1: type-check "~0.3.2" wordwrap "~1.0.0" -ora@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ora/-/ora-3.0.0.tgz#8179e3525b9aafd99242d63cc206fd64732741d0" - integrity sha512-LBS97LFe2RV6GJmXBi6OKcETKyklHNMV0xw7BtsVn2MlsgsydyZetSCbCANr+PFLmDyv4KV88nn0eCKza665Mg== - dependencies: - chalk "^2.3.1" - cli-cursor "^2.1.0" - cli-spinners "^1.1.0" - log-symbols "^2.2.0" - strip-ansi "^4.0.0" - wcwidth "^1.0.1" - ora@^0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" @@ -8938,6 +9335,11 @@ p-map@^1.1.1: resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== +p-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.0.0.tgz#be18c5a5adeb8e156460651421aceca56c213a50" + integrity sha512-GO107XdrSUmtHxVoi60qc9tUl/KkNKm+X2CF4P9amalpGxv5YqVPJNfSb0wcA+syCopkZvYYIzW8OVTQW59x/w== + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -9403,11 +9805,6 @@ preserve@^0.2.0: resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= -prettier@1.14.3: - version "1.14.3" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.14.3.tgz#90238dd4c0684b7edce5f83b0fb7328e48bd0895" - integrity sha512-qZDVnCrnpsRJJq5nSsiHCE3BYMED2OtsI+cmzIzF1QIfqm5ALf8tEJcO27zV1gKNKRPdhjO0dNWnrzssDQ1tFg== - prettier@1.15.2: version "1.15.2" resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.15.2.tgz#d31abe22afa4351efa14c7f8b94b58bb7452205e" @@ -9973,11 +10370,21 @@ regjsparser@^0.1.4: dependencies: jsesc "~0.5.0" +remedial@^1.0.7: + version "1.0.8" + resolved "https://registry.yarnpkg.com/remedial/-/remedial-1.0.8.tgz#a5e4fd52a0e4956adbaf62da63a5a46a78c578a0" + integrity sha512-/62tYiOe6DzS5BqVsNpH/nkGlX45C/Sp6V+NtiN6JQNS1Viay7cWkazmRkrQrdFj2eshDe96SIQNIoMxqhzBOg== + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= +remove-trailing-spaces@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/remove-trailing-spaces/-/remove-trailing-spaces-1.0.6.tgz#4255277eac5359a505cadd064d360603678a0b29" + integrity sha1-QlUnfqxTWaUFyt0GTTYGA2eKCyk= + repeat-element@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" @@ -10259,7 +10666,7 @@ rxjs-compat@6.3.3: resolved "https://registry.yarnpkg.com/rxjs-compat/-/rxjs-compat-6.3.3.tgz#2ab3b9ac0dac0c073749d55fef9c03ea1df2045c" integrity sha512-caGN7ixiabHpOofginKEquuHk7GgaCrC7UpUQ9ZqGp80tMc68msadOeP/2AKy2R4YJsT1+TX5GZCtxO82qWkyA== -rxjs@6.3.3, rxjs@^6.0.0, rxjs@^6.1.0: +rxjs@6.3.3, rxjs@^6.0.0, rxjs@^6.1.0, rxjs@^6.3.3: version "6.3.3" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55" integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw== @@ -10807,6 +11214,13 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" +source-map-support@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.0.tgz#2018a7ad2bdf8faf2691e5fddab26bed5a2bacab" + integrity sha512-vUoN3I7fHQe0R/SJLKRdKYuEdRGogsviXFkHHo17AWaTGv17VLnxw+CFXvqy+y4ORZ3doWLQcxRYfwKrsd/H7Q== + dependencies: + source-map "^0.6.0" + source-map-support@0.5.9, source-map-support@^0.5.5, source-map-support@^0.5.6, source-map-support@^0.5.9, source-map-support@~0.5.6: version "0.5.9" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" @@ -11311,7 +11725,7 @@ symbol-observable@1.0.1: resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" integrity sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ= -symbol-observable@1.2.0, symbol-observable@^1.0.2, symbol-observable@^1.0.4: +symbol-observable@1.2.0, symbol-observable@^1.0.2, symbol-observable@^1.0.4, symbol-observable@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== @@ -11695,10 +12109,10 @@ ts-jest@23.10.5: semver "^5.5" yargs-parser "10.x" -ts-log@2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ts-log/-/ts-log-2.1.3.tgz#9e30aca1baffe7693a2e4142b8f07ecb01cb8340" - integrity sha512-VIk9+hzE80UjhJcSANst8LGRBpfNh32y9d3LVDMtEqcEb1x0hB71IO0aObNcLJ5VpK5tKeF9uI4pwEco03SkwA== +ts-log@2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/ts-log/-/ts-log-2.1.4.tgz#063c5ad1cbab5d49d258d18015963489fb6fb59a" + integrity sha512-P1EJSoyV+N3bR/IWFeAqXzKPZwHpnLY6j7j58mAvewHRipo+BQM2Y1f9Y9BjEQznKwgqqZm7H8iuixmssU7tYQ== ts-node@7.0.1: version "7.0.1" @@ -12137,13 +12551,6 @@ wbuf@^1.1.0, wbuf@^1.7.2: dependencies: minimalistic-assert "^1.0.0" -wcwidth@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" - integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= - dependencies: - defaults "^1.0.3" - webdriver-js-extender@2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz#57d7a93c00db4cc8d556e4d3db4b5db0a80c3bb7" @@ -12446,6 +12853,14 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" +wrap-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz#288a04d87eda5c286e060dfe8f135ce8d007f8ba" + integrity sha1-KIoE2H7aXChuBg3+jxNc6NAH+Lo= + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"