diff --git a/.prettierignore b/.prettierignore index ee4804524f..420af653d9 100644 --- a/.prettierignore +++ b/.prettierignore @@ -3,7 +3,11 @@ tmp /build node_modules /package.json -packages/schematics/src/collection/**/files/**/*.json +packages/workspace/src/schematics/**/files/**/*.json +packages/web/src/schematics/**/files/**/*.json +packages/node/src/schematics/**/files/**/*.json +packages/express/src/schematics/**/files/**/*.json +packages/nest/src/schematics/**/files/**/*.json packages/react/src/schematics/**/files/**/*.json packages/jest/src/schematics/**/files/**/*.json /.vscode diff --git a/e2e/schematics/affected.test.ts b/e2e/schematics/affected.test.ts index e31a07f88f..5a2ce6c450 100644 --- a/e2e/schematics/affected.test.ts +++ b/e2e/schematics/affected.test.ts @@ -10,7 +10,7 @@ import { } from '../utils'; describe('Affected', () => { - it('should print, build, and test affected apps', () => { + fit('should print, build, and test affected apps', () => { ensureProject(); const myapp = uniq('myapp'); const myapp2 = uniq('myapp2'); diff --git a/e2e/schematics/downgrade-module.test.ts b/e2e/schematics/downgrade-module.test.ts index c4de8c15cf..a38047dba2 100644 --- a/e2e/schematics/downgrade-module.test.ts +++ b/e2e/schematics/downgrade-module.test.ts @@ -1,4 +1,10 @@ -import { ensureProject, runCLI, uniq, updateFile } from '../utils'; +import { + ensureProject, + patchKarmaToWorkOnWSL, + runCLI, + uniq, + updateFile +} from '../utils'; describe('DowngradeModule', () => { it('should generate a downgradeModule setup', async () => { @@ -6,6 +12,7 @@ describe('DowngradeModule', () => { const myapp = uniq('myapp'); runCLI(`generate @nrwl/angular:app ${myapp} --unit-test-runner=karma`); + patchKarmaToWorkOnWSL(); updateFile( `apps/${myapp}/src/legacy.js`, diff --git a/e2e/schematics/jest.test.ts b/e2e/schematics/jest.test.ts index 13b28e43e1..2da45dd676 100644 --- a/e2e/schematics/jest.test.ts +++ b/e2e/schematics/jest.test.ts @@ -9,10 +9,10 @@ describe('Jest', () => { runCLI(`generate @nrwl/angular:lib ${mylib} --unit-test-runner jest`); await Promise.all([ - runCLIAsync(`generate service test --project ${myapp}`), - runCLIAsync(`generate component test --project ${myapp}`), - runCLIAsync(`generate service test --project ${mylib}`), - runCLIAsync(`generate component test --project ${mylib}`) + runCLIAsync(`generate @nrwl/angular:service test --project ${myapp}`), + runCLIAsync(`generate @nrwl/angular:component test --project ${myapp}`), + runCLIAsync(`generate @nrwl/angular:service test --project ${mylib}`), + runCLIAsync(`generate @nrwl/angular:component test --project ${mylib}`) ]); const appResult = await runCLIAsync(`test ${myapp}`); expect(appResult.stderr).toContain('Test Suites: 3 passed, 3 total'); diff --git a/e2e/schematics/karma.test.ts b/e2e/schematics/karma.test.ts index e7b43fa38d..d818410e51 100644 --- a/e2e/schematics/karma.test.ts +++ b/e2e/schematics/karma.test.ts @@ -1,14 +1,21 @@ -import { runCLI, runCLIAsync, ensureProject, uniq } from '../utils'; +import { + runCLI, + runCLIAsync, + ensureProject, + uniq, + patchKarmaToWorkOnWSL +} from '../utils'; describe('Karma', () => { it('should be able to generate a testable library using karma', async done => { ensureProject(); const mylib = uniq('mylib'); runCLI(`generate @nrwl/angular:lib ${mylib} --unit-test-runner karma`); + patchKarmaToWorkOnWSL(); await Promise.all([ - runCLIAsync(`generate service test --project ${mylib}`), - runCLIAsync(`generate component test --project ${mylib}`) + runCLIAsync(`generate @nrwl/angular:service test --project ${mylib}`), + runCLIAsync(`generate @nrwl/angular:component test --project ${mylib}`) ]); const karmaResult = await runCLIAsync(`test ${mylib}`); expect(karmaResult.stdout).toContain('3 SUCCESS'); @@ -19,10 +26,11 @@ describe('Karma', () => { ensureProject(); const myapp = uniq('myapp'); runCLI(`generate @nrwl/angular:app ${myapp} --unit-test-runner karma`); + patchKarmaToWorkOnWSL(); await Promise.all([ - runCLIAsync(`generate service test --project ${myapp}`), - runCLIAsync(`generate component test --project ${myapp}`) + runCLIAsync(`generate @nrwl/angular:service test --project ${myapp}`), + runCLIAsync(`generate @nrwl/angular:component test --project ${myapp}`) ]); const karmaResult = await runCLIAsync(`test ${myapp}`); expect(karmaResult.stdout).toContain('5 SUCCESS'); diff --git a/e2e/schematics/ng-add.test.ts b/e2e/schematics/ng-add.test.ts index 5a4b658365..dce00490b0 100644 --- a/e2e/schematics/ng-add.test.ts +++ b/e2e/schematics/ng-add.test.ts @@ -13,7 +13,7 @@ import { } from '../utils'; if (!runsInWSL()) { - describe('Nrwl Convert to Nx Workspace', () => { + xdescribe('Nrwl Convert to Nx Workspace', () => { beforeEach(cleanup); afterAll(cleanup); @@ -25,7 +25,7 @@ if (!runsInWSL()) { packageJson.description = 'some description'; updateFile('package.json', JSON.stringify(packageJson, null, 2)); // confirm that @nrwl and @ngrx dependencies do not exist yet - expect(packageJson.devDependencies['@nrwl/schematics']).not.toBeDefined(); + expect(packageJson.devDependencies['@nrwl/workspace']).not.toBeDefined(); expect(packageJson.dependencies['@nrwl/nx']).not.toBeDefined(); expect(packageJson.dependencies['@ngrx/store']).not.toBeDefined(); expect(packageJson.dependencies['@ngrx/effects']).not.toBeDefined(); @@ -52,7 +52,7 @@ if (!runsInWSL()) { updateFile('angular.json', JSON.stringify(angularCLIJson, null, 2)); // run the command - runCLI('add @nrwl/schematics --npmScope projscope'); + runCLI('add @nrwl/workspace --npmScope projscope'); // check that prettier config exits and that files have been moved! checkFilesExist( @@ -90,14 +90,14 @@ if (!runsInWSL()) { format: './node_modules/.bin/nx format:write', 'format:write': './node_modules/.bin/nx format:write', 'format:check': './node_modules/.bin/nx format:check', - update: 'ng update @nrwl/schematics', + update: 'ng update @nrwl/workspace', 'update:check': 'ng update', 'dep-graph': './node_modules/.bin/nx dep-graph', 'workspace-schematic': './node_modules/.bin/nx workspace-schematic', help: './node_modules/.bin/nx help' }); expect( - updatedPackageJson.devDependencies['@nrwl/schematics'] + updatedPackageJson.devDependencies['@nrwl/workspace'] ).toBeDefined(); expect(updatedPackageJson.devDependencies['@angular/cli']).toBeDefined(); @@ -258,7 +258,7 @@ if (!runsInWSL()) { // update package.json const existingPackageJson = readJson('package.json'); existingPackageJson.devDependencies[ - '@nrwl/schematics' + '@nrwl/workspace' ] = schematicsVersion; existingPackageJson.dependencies['@nrwl/nx'] = nxVersion; existingPackageJson.dependencies['@ngrx/store'] = ngrxVersion; @@ -274,10 +274,10 @@ if (!runsInWSL()) { }) ); // run the command - runCLI('add @nrwl/schematics --npmScope projscope --skip-install'); + runCLI('add @nrwl/workspace --npmScope projscope --skip-install'); // check that dependencies and devDependencies remained the same const packageJson = readJson('package.json'); - expect(packageJson.devDependencies['@nrwl/schematics']).toEqual( + expect(packageJson.devDependencies['@nrwl/workspace']).toEqual( schematicsVersion ); expect(packageJson.dependencies['@nrwl/nx']).toEqual(nxVersion); @@ -306,8 +306,8 @@ if (!runsInWSL()) { // Add Universal runCLI('generate universal --client-project proj'); - // Add @nrwl/schematics - runCLI('add @nrwl/schematics --npmScope projscope'); + // Add @nrwl/workspace + runCLI('add @nrwl/workspace --npmScope projscope'); checkFilesExist('apps/proj/tsconfig.server.json'); @@ -366,7 +366,7 @@ if (!runsInWSL()) { runCLI('add @ngrx/effects'); // Add Nx - runCLI('add @nrwl/schematics'); + runCLI('add @nrwl/workspace'); }); it('should handle workspaces with no e2e project', async () => { @@ -379,9 +379,9 @@ if (!runsInWSL()) { delete existingAngularJson.projects['proj-e2e']; updateFile('angular.json', JSON.stringify(existingAngularJson, null, 2)); - // Add @nrwl/schematics + // Add @nrwl/workspace const result = await runCLIAsync( - 'add @nrwl/schematics --npmScope projscope --skip-install' + 'add @nrwl/workspace --npmScope projscope --skip-install' ); checkFilesExist( @@ -406,8 +406,8 @@ if (!runsInWSL()) { ].architect.lint.options.tsConfig = ['e2e/tsconfig.e2e.json']; updateFile('angular.json', JSON.stringify(existingAngularJson, null, 2)); - // Add @nrwl/schematics - runCLI('add @nrwl/schematics --npmScope projscope --skip-install'); + // Add @nrwl/workspace + runCLI('add @nrwl/workspace --npmScope projscope --skip-install'); const updatedAngularCLIJson = readJson('angular.json'); @@ -429,7 +429,7 @@ if (!runsInWSL()) { // Only remove e2e directory runCommand('mv e2e e2e-bak'); try { - runCLI('add @nrwl/schematics --npmScope projscope --skip-install'); + runCLI('add @nrwl/workspace --npmScope projscope --skip-install'); fail('Did not handle not having a e2e directory'); } catch (e) { expect(e.stderr.toString()).toContain( @@ -443,7 +443,7 @@ if (!runsInWSL()) { // Remove package.json runCommand('mv package.json package.json.bak'); try { - runCLI('add @nrwl/schematics --npmScope projscope --skip-install'); + runCLI('add @nrwl/workspace --npmScope projscope --skip-install'); fail('Did not handle not having a package.json'); } catch (e) { expect(e.stderr.toString()).toContain( @@ -457,7 +457,7 @@ if (!runsInWSL()) { // Remove src runCommand('mv src src-bak'); try { - runCLI('add @nrwl/schematics --npmScope projscope --skip-install'); + runCLI('add @nrwl/workspace --npmScope projscope --skip-install'); fail('Did not handle not having a src directory'); } catch (e) { expect(e.stderr.toString()).toContain('Path: src does not exist'); diff --git a/e2e/schematics/ng-new.test.ts b/e2e/schematics/ng-new.test.ts index d54127a35a..d7657b0fe0 100644 --- a/e2e/schematics/ng-new.test.ts +++ b/e2e/schematics/ng-new.test.ts @@ -9,7 +9,7 @@ import { uniq, updateFile } from '../utils'; -import { toClassName } from '@nrwl/schematics/src/utils/name-utils'; +import { toClassName } from '@nrwl/workspace'; describe('Nrwl Workspace', () => { beforeEach(() => { diff --git a/e2e/schematics/ngrx.test.ts b/e2e/schematics/ngrx.test.ts index 8106d42e09..62b5b0cfaf 100644 --- a/e2e/schematics/ngrx.test.ts +++ b/e2e/schematics/ngrx.test.ts @@ -1,5 +1,4 @@ import { - newApp, runCLI, expectTestsPass, runCLIAsync, diff --git a/e2e/schematics/node.test.ts b/e2e/schematics/node.test.ts index 08ac136979..5f38cf4872 100644 --- a/e2e/schematics/node.test.ts +++ b/e2e/schematics/node.test.ts @@ -87,7 +87,7 @@ describe('Node Applications', () => { const config = readJson('angular.json'); config.projects[nodeapp].architect.waitAndPrint = { - builder: '@nrwl/builders:run-commands', + builder: '@nrwl/workspace:run-commands', options: { commands: [ { diff --git a/e2e/schematics/react.test.ts b/e2e/schematics/react.test.ts index 3d2fb1068a..7e25c049c6 100644 --- a/e2e/schematics/react.test.ts +++ b/e2e/schematics/react.test.ts @@ -9,7 +9,7 @@ import { renameFile, readJson } from '../utils'; -import { serializeJson } from '@nrwl/schematics/src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; describe('React Applications', () => { it('should be able to generate a react app + lib', async () => { diff --git a/e2e/schematics/upgrade-module.test.ts b/e2e/schematics/upgrade-module.test.ts index 7e4f88c63c..e24067e16c 100644 --- a/e2e/schematics/upgrade-module.test.ts +++ b/e2e/schematics/upgrade-module.test.ts @@ -1,10 +1,7 @@ import { ensureProject, - expectTestsPass, - newApp, - newProject, + patchKarmaToWorkOnWSL, runCLI, - runCLIAsync, uniq, updateFile } from '../utils'; @@ -14,6 +11,7 @@ describe('Upgrade', () => { ensureProject(); const myapp = uniq('myapp'); runCLI(`generate @nrwl/angular:app ${myapp} --unit-test-runner=karma`); + patchKarmaToWorkOnWSL(); updateFile( `apps/${myapp}/src/legacy.js`, diff --git a/e2e/schematics/web.test.ts b/e2e/schematics/web.test.ts index aa68fc0bf7..1c229eb591 100644 --- a/e2e/schematics/web.test.ts +++ b/e2e/schematics/web.test.ts @@ -11,7 +11,6 @@ describe('Web Components Applications', () => { ensureProject(); const appName = uniq('app'); - runCLI(`add @nrwl/web`); runCLI(`generate @nrwl/web:app ${appName} --no-interactive`); const lintResults = runCLI(`lint ${appName}`); diff --git a/e2e/utils.ts b/e2e/utils.ts index 52d78a5bea..3dd9e53098 100644 --- a/e2e/utils.ts +++ b/e2e/utils.ts @@ -10,20 +10,39 @@ export function uniq(prefix: string) { } export function runNgNew(command?: string, silent?: boolean): string { - const buffer = execSync( - `../node_modules/.bin/ng new proj --no-interactive ${command}`, + const gen = execSync( + `../node_modules/.bin/ng new proj --no-interactive --skip-install ${command}`, { cwd: `./tmp`, ...(silent ? { stdio: ['ignore', 'ignore', 'ignore'] } : {}) } ); - return buffer ? buffer.toString() : null; + + const p = readFileSync('./tmp/proj/package.json').toString(); + const workspacePath = path.join(getCwd(), 'build', 'packages', 'workspace'); + const angularPath = path.join(getCwd(), 'build', 'packages', 'angular'); + writeFileSync( + './tmp/proj/package.json', + p + .replace( + '"@nrwl/workspace": "*"', + `"@nrwl/workspace": "file:${workspacePath}"` + ) + .replace('"@nrwl/angular": "*"', `"@nrwl/angular": "file:${angularPath}"`) + ); + const install = execSync('yarn install', { + cwd: './tmp/proj', + ...(silent ? { stdio: ['ignore', 'ignore', 'ignore'] } : {}) + }); + return silent + ? null + : `${gen ? gen.toString() : ''}${install ? install.toString() : ''}`; } export function newProject(): void { cleanup(); if (!directoryExists('./tmp/proj_backup')) { - runNgNew('--collection=@nrwl/schematics --npmScope=proj', true); + runNgNew('--collection=@nrwl/workspace --npmScope=proj', true); copyMissingPackages(); runCLI('add @nrwl/jest'); runCLI('add @nrwl/cypress'); @@ -195,18 +214,6 @@ export function expectTestsPass(v: { stdout: string; stderr: string }) { expect(v.stderr).not.toContain('fail'); } -export function newApp(name: string): string { - const r = runCLI(`generate app --no-interactive ${name}`); - patchKarmaToWorkOnWSL(); - return r; -} - -export function newLib(name: string): string { - const r = runCLI(`generate lib --no-interactive ${name}`); - patchKarmaToWorkOnWSL(); - return r; -} - export function runCommand(command: string): string { try { return execSync(command, { diff --git a/package.json b/package.json index b90389f87e..82ba673871 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ "jest": "^24.1.0", "jest-jasmine2": "^24.1.0", "jest-preset-angular": "7.0.0", - "karma": "~2.0.0", + "karma": "~4.0.0", "karma-chrome-launcher": "~2.2.0", "karma-coverage-istanbul-reporter": "~2.0.1", "karma-jasmine": "~1.1.1", diff --git a/packages/angular/package.json b/packages/angular/package.json index 8fd2a484d0..e18081c23a 100644 --- a/packages/angular/package.json +++ b/packages/angular/package.json @@ -28,7 +28,7 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*" + "@nrwl/workspace": "*" }, "dependencies": { "@angular-devkit/core": "~7.3.1", diff --git a/packages/angular/src/schematics/application/application.spec.ts b/packages/angular/src/schematics/application/application.spec.ts index 72ea3d8163..e7373ceb15 100644 --- a/packages/angular/src/schematics/application/application.spec.ts +++ b/packages/angular/src/schematics/application/application.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { getFileContent } from '@schematics/angular/utility/test'; import * as stripJsonComments from 'strip-json-comments'; -import { readJsonInTree, updateJsonInTree, NxJson } from '@nrwl/schematics'; +import { readJsonInTree, updateJsonInTree, NxJson } from '@nrwl/workspace'; import { runSchematic, callRule } from '../../utils/testing'; describe('app', () => { @@ -303,7 +303,7 @@ describe('app', () => { const angularJson = readJsonInTree(result, 'angular.json'); expect(angularJson.projects['my-app'].schematics).toEqual({ - '@nrwl/schematics:component': { + '@nrwl/workspace:component': { style: 'scss' } }); diff --git a/packages/angular/src/schematics/application/application.ts b/packages/angular/src/schematics/application/application.ts index d4861cd8fe..1f37276724 100644 --- a/packages/angular/src/schematics/application/application.ts +++ b/packages/angular/src/schematics/application/application.ts @@ -15,23 +15,23 @@ import { import { Schema } from './schema'; import * as ts from 'typescript'; import { insertImport } from '@schematics/angular/utility/ast-utils'; -import { updateJsonInTree, readJsonInTree } from '@nrwl/schematics'; +import { updateJsonInTree, readJsonInTree } from '@nrwl/workspace'; import { addImportToModule, addImportToTestBed, getDecoratorPropertyValueNode, insert, replaceNodeValue -} from '@nrwl/schematics/src/utils/ast-utils'; -import { toFileName } from '@nrwl/schematics/src/utils/name-utils'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; +} from '@nrwl/workspace'; +import { toFileName } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; import { getNpmScope, getWorkspacePath, replaceAppNameWithPath, angularSchematicNames -} from '@nrwl/schematics/src/utils/cli-config-utils'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +} from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; import { join, normalize } from '@angular-devkit/core'; import { addE2eTestRunner, addUnitTestRunner } from '../ng-add/ng-add'; @@ -213,7 +213,7 @@ function updateProject(options: NormalizedSchema): Rule { angularSchematicNames.forEach(type => { const schematic = `@schematics/angular:${type}`; if (schematic in fixedProject.schematics) { - fixedProject.schematics[`@nrwl/schematics:${type}`] = + fixedProject.schematics[`@nrwl/workspace:${type}`] = fixedProject.schematics[schematic]; delete fixedProject.schematics[schematic]; } diff --git a/packages/angular/src/schematics/downgrade-module/downgrade-module.spec.ts b/packages/angular/src/schematics/downgrade-module/downgrade-module.spec.ts index f5b78266c5..3032179e4e 100644 --- a/packages/angular/src/schematics/downgrade-module/downgrade-module.spec.ts +++ b/packages/angular/src/schematics/downgrade-module/downgrade-module.spec.ts @@ -1,10 +1,10 @@ import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; import * as path from 'path'; import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createApp, createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createApp, createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; import { getFileContent } from '@schematics/angular/utility/test'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('downgrade-module', () => { let appTree: Tree; diff --git a/packages/angular/src/schematics/downgrade-module/downgrade-module.ts b/packages/angular/src/schematics/downgrade-module/downgrade-module.ts index 4abf888067..fb555b3158 100644 --- a/packages/angular/src/schematics/downgrade-module/downgrade-module.ts +++ b/packages/angular/src/schematics/downgrade-module/downgrade-module.ts @@ -5,9 +5,9 @@ import { insert, readBootstrapInfo, removeFromNgModule -} from '@nrwl/schematics/src/utils/ast-utils'; +} from '@nrwl/workspace'; import { Schema } from './schema'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +import { formatFiles } from '@nrwl/workspace'; import { addUpgradeToPackageJson } from '../../utils/upgrade'; function updateMain(angularJsImport: string, options: Schema): Rule { diff --git a/packages/angular/src/schematics/karma-project/karma-project.spec.ts b/packages/angular/src/schematics/karma-project/karma-project.spec.ts index 122bf88c5e..d236998867 100644 --- a/packages/angular/src/schematics/karma-project/karma-project.spec.ts +++ b/packages/angular/src/schematics/karma-project/karma-project.spec.ts @@ -1,7 +1,7 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; -import { readJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; +import { readJsonInTree } from '@nrwl/workspace'; describe('karmaProject', () => { let appTree: Tree; diff --git a/packages/angular/src/schematics/karma-project/karma-project.ts b/packages/angular/src/schematics/karma-project/karma-project.ts index 0ec9579baa..35d6c6c236 100644 --- a/packages/angular/src/schematics/karma-project/karma-project.ts +++ b/packages/angular/src/schematics/karma-project/karma-project.ts @@ -14,9 +14,9 @@ import { readJsonInTree, updateJsonInTree, offsetFromRoot -} from '@nrwl/schematics'; +} from '@nrwl/workspace'; import { join, normalize } from '@angular-devkit/core'; -import { getProjectConfig } from '@nrwl/schematics/src/utils/ast-utils'; +import { getProjectConfig } from '@nrwl/workspace'; export interface KarmaProjectSchema { project: string; diff --git a/packages/angular/src/schematics/karma/karma.spec.ts b/packages/angular/src/schematics/karma/karma.spec.ts index 543bf43cb6..14497e1974 100644 --- a/packages/angular/src/schematics/karma/karma.spec.ts +++ b/packages/angular/src/schematics/karma/karma.spec.ts @@ -1,6 +1,6 @@ -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { Tree } from '@angular-devkit/schematics'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; import { runSchematic } from '../../utils/testing'; describe('karma', () => { diff --git a/packages/angular/src/schematics/karma/karma.ts b/packages/angular/src/schematics/karma/karma.ts index 0cd8f2c60f..dac93860f2 100644 --- a/packages/angular/src/schematics/karma/karma.ts +++ b/packages/angular/src/schematics/karma/karma.ts @@ -1,5 +1,5 @@ import { Tree, noop, chain, mergeWith, url } from '@angular-devkit/schematics'; -import { readJsonInTree, addDepsToPackageJson } from '@nrwl/schematics'; +import { readJsonInTree, addDepsToPackageJson } from '@nrwl/workspace'; import { jasmineMarblesVersion } from '../../utils/versions'; export default function() { @@ -13,15 +13,15 @@ export default function() { addDepsToPackageJson( {}, { - karma: '~3.0.0', + karma: '~4.0.0', 'karma-chrome-launcher': '~2.2.0', 'karma-coverage-istanbul-reporter': '~2.0.1', - 'karma-jasmine': '~1.1.0', + 'karma-jasmine': '~1.1.2', 'karma-jasmine-html-reporter': '^0.2.2', 'jasmine-core': '~2.99.1', 'jasmine-spec-reporter': '~4.2.1', 'jasmine-marbles': jasmineMarblesVersion, - '@types/jasmine': '~2.8.6' + '@types/jasmine': '~2.8.8' } ) ]); diff --git a/packages/angular/src/schematics/library/library.spec.ts b/packages/angular/src/schematics/library/library.spec.ts index fdd83a3d51..3d6366f014 100644 --- a/packages/angular/src/schematics/library/library.spec.ts +++ b/packages/angular/src/schematics/library/library.spec.ts @@ -1,9 +1,9 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createApp, createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createApp, createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; import { getFileContent } from '@schematics/angular/utility/test'; import * as stripJsonComments from 'strip-json-comments'; -import { NxJson, readJsonInTree } from '@nrwl/schematics'; +import { NxJson, readJsonInTree } from '@nrwl/workspace'; import { UnitTestTree } from '@angular-devkit/schematics/testing'; describe('lib', () => { @@ -721,7 +721,7 @@ describe('lib', () => { const angularJson = readJsonInTree(result, 'angular.json'); expect(angularJson.projects['my-lib'].schematics).toEqual({ - '@nrwl/schematics:component': { + '@nrwl/workspace:component': { styleext: 'scss' } }); diff --git a/packages/angular/src/schematics/library/library.ts b/packages/angular/src/schematics/library/library.ts index f036ffb783..7495e93285 100644 --- a/packages/angular/src/schematics/library/library.ts +++ b/packages/angular/src/schematics/library/library.ts @@ -24,25 +24,21 @@ import { updateJsonInTree, readJsonInTree, offsetFromRoot -} from '@nrwl/schematics'; +} from '@nrwl/workspace'; import { addGlobal, addImportToModule, addIncludeToTsConfig, addRoute, insert -} from '@nrwl/schematics/src/utils/ast-utils'; -import { - toClassName, - toFileName, - toPropertyName -} from '@nrwl/schematics/src/utils/name-utils'; +} from '@nrwl/workspace'; +import { toClassName, toFileName, toPropertyName } from '@nrwl/workspace'; import { getNpmScope, getWorkspacePath, replaceAppNameWithPath -} from '@nrwl/schematics/src/utils/cli-config-utils'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +} from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; import { addUnitTestRunner } from '../ng-add/ng-add'; interface NormalizedSchema extends Schema { @@ -329,7 +325,7 @@ function updateProject(options: NormalizedSchema): Rule { if (options.style !== 'css') { fixedProject.schematics = { ...fixedProject.schematics, - '@nrwl/schematics:component': { + '@nrwl/workspace:component': { styleext: options.style } }; diff --git a/packages/angular/src/schematics/ng-add/ng-add.spec.ts b/packages/angular/src/schematics/ng-add/ng-add.spec.ts index 591dd743a8..034ed7d00e 100644 --- a/packages/angular/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/angular/src/schematics/ng-add/ng-add.spec.ts @@ -1,7 +1,7 @@ import { Tree } from '@angular-devkit/schematics'; import { runSchematic } from '../../utils/testing'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; -import { readJsonInTree } from '@nrwl/schematics'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; +import { readJsonInTree } from '@nrwl/workspace'; describe('ng-add', () => { let appTree: Tree; diff --git a/packages/angular/src/schematics/ng-add/ng-add.ts b/packages/angular/src/schematics/ng-add/ng-add.ts index cc81fd9de9..aa473c4374 100755 --- a/packages/angular/src/schematics/ng-add/ng-add.ts +++ b/packages/angular/src/schematics/ng-add/ng-add.ts @@ -10,7 +10,7 @@ import { readJsonInTree, addDepsToPackageJson, updateJsonInTree -} from '@nrwl/schematics'; +} from '@nrwl/workspace'; import { angularVersion, angularDevkitVersion, diff --git a/packages/angular/src/schematics/ng-add/schema.json b/packages/angular/src/schematics/ng-add/schema.json index ec1fa43fad..abb22552fa 100644 --- a/packages/angular/src/schematics/ng-add/schema.json +++ b/packages/angular/src/schematics/ng-add/schema.json @@ -47,7 +47,7 @@ }, "skipInstall": { "type": "boolean", - "description": "Skip installing after adding @nrwl/schematics", + "description": "Skip installing after adding @nrwl/workspace", "default": false } } diff --git a/packages/angular/src/schematics/ngrx/ngrx.spec.ts b/packages/angular/src/schematics/ngrx/ngrx.spec.ts index a3ffe16fb0..a33de071d8 100644 --- a/packages/angular/src/schematics/ngrx/ngrx.spec.ts +++ b/packages/angular/src/schematics/ngrx/ngrx.spec.ts @@ -1,20 +1,16 @@ import { UnitTestTree } from '@angular-devkit/schematics/testing'; import { Tree, VirtualTree } from '@angular-devkit/schematics'; import { getFileContent } from '@schematics/angular/utility/test'; -import { readJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; +import { readJsonInTree } from '@nrwl/workspace'; -import { findModuleParent } from '@nrwl/schematics/src/utils/name-utils'; -import { - AppConfig, - getLibConfig, - getAppConfig -} from '@nrwl/schematics/src/utils/testing-utils'; +import { findModuleParent } from '@nrwl/workspace'; +import { AppConfig, getLibConfig, getAppConfig } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; import { createApp, createLib, createEmptyWorkspace -} from '@nrwl/schematics/testing'; +} from '@nrwl/workspace/testing'; describe('ngrx', () => { let appTree: Tree; diff --git a/packages/angular/src/schematics/ngrx/ngrx.ts b/packages/angular/src/schematics/ngrx/ngrx.ts index 369548814d..2d73c82b2e 100644 --- a/packages/angular/src/schematics/ngrx/ngrx.ts +++ b/packages/angular/src/schematics/ngrx/ngrx.ts @@ -15,7 +15,7 @@ import { import { Schema } from './schema'; import * as path from 'path'; -import { names, toFileName } from '@nrwl/schematics/src/utils/name-utils'; +import { names, toFileName } from '@nrwl/workspace'; import { addImportsToModule, @@ -23,7 +23,7 @@ import { addExportsToBarrel, RequestContext } from './rules'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +import { formatFiles } from '@nrwl/workspace'; import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks'; /** diff --git a/packages/angular/src/schematics/ngrx/rules/add-exports-barrel.ts b/packages/angular/src/schematics/ngrx/rules/add-exports-barrel.ts index 4527d48ea9..dd9f252ad6 100644 --- a/packages/angular/src/schematics/ngrx/rules/add-exports-barrel.ts +++ b/packages/angular/src/schematics/ngrx/rules/add-exports-barrel.ts @@ -2,8 +2,8 @@ import * as ts from 'typescript'; import * as path from 'path'; import { Rule, Tree } from '@angular-devkit/schematics'; -import { names } from '@nrwl/schematics/src/utils/name-utils'; -import { insert, addGlobal } from '@nrwl/schematics/src/utils/ast-utils'; +import { names } from '@nrwl/workspace'; +import { insert, addGlobal } from '@nrwl/workspace'; import { Schema } from '../schema'; /** diff --git a/packages/angular/src/schematics/ngrx/rules/add-imports-to-module.ts b/packages/angular/src/schematics/ngrx/rules/add-imports-to-module.ts index 521dff0126..3db7c7c5c5 100644 --- a/packages/angular/src/schematics/ngrx/rules/add-imports-to-module.ts +++ b/packages/angular/src/schematics/ngrx/rules/add-imports-to-module.ts @@ -2,16 +2,12 @@ import { Rule, Tree } from '@angular-devkit/schematics'; import { Change } from '@schematics/angular/utility/change'; import { insertImport } from '@schematics/angular/utility/ast-utils'; import * as ts from 'typescript'; -import { - toClassName, - toFileName, - toPropertyName -} from '@nrwl/schematics/src/utils/name-utils'; +import { toClassName, toFileName, toPropertyName } from '@nrwl/workspace'; import { insert, addImportToModule, addProviderToModule -} from '@nrwl/schematics/src/utils/ast-utils'; +} from '@nrwl/workspace'; import { RequestContext } from './request-context'; export function addImportsToModule(context: RequestContext): Rule { diff --git a/packages/angular/src/schematics/ngrx/rules/add-ngrx-to-package-json.ts b/packages/angular/src/schematics/ngrx/rules/add-ngrx-to-package-json.ts index 1c81799b7b..e04f8e810b 100644 --- a/packages/angular/src/schematics/ngrx/rules/add-ngrx-to-package-json.ts +++ b/packages/angular/src/schematics/ngrx/rules/add-ngrx-to-package-json.ts @@ -1,5 +1,5 @@ import { Rule } from '@angular-devkit/schematics'; -import { addDepsToPackageJson } from '@nrwl/schematics'; +import { addDepsToPackageJson } from '@nrwl/workspace'; import { ngrxVersion, ngrxStoreFreezeVersion, diff --git a/packages/angular/src/schematics/ngrx/rules/request-context.ts b/packages/angular/src/schematics/ngrx/rules/request-context.ts index a1ed0fca5c..dce79c0ac6 100644 --- a/packages/angular/src/schematics/ngrx/rules/request-context.ts +++ b/packages/angular/src/schematics/ngrx/rules/request-context.ts @@ -2,7 +2,7 @@ import * as path from 'path'; import { Tree } from '@angular-devkit/schematics'; import { Schema } from '../schema'; -import * as stringUtils from '@nrwl/schematics/src/utils/strings'; +import { stringUtils } from '@nrwl/workspace'; /** * Schematic request context diff --git a/packages/angular/src/schematics/upgrade-module/upgrade-module.spec.ts b/packages/angular/src/schematics/upgrade-module/upgrade-module.spec.ts index 32f775b43d..d0185b7eda 100644 --- a/packages/angular/src/schematics/upgrade-module/upgrade-module.spec.ts +++ b/packages/angular/src/schematics/upgrade-module/upgrade-module.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createApp, createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createApp, createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; import { getFileContent } from '@schematics/angular/utility/test'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('upgrade-module', () => { let appTree: Tree; diff --git a/packages/angular/src/schematics/upgrade-module/upgrade-module.ts b/packages/angular/src/schematics/upgrade-module/upgrade-module.ts index f98cffd80f..6ba4688fd5 100644 --- a/packages/angular/src/schematics/upgrade-module/upgrade-module.ts +++ b/packages/angular/src/schematics/upgrade-module/upgrade-module.ts @@ -12,11 +12,7 @@ import { url } from '@angular-devkit/schematics'; -import { - names, - toClassName, - toFileName -} from '@nrwl/schematics/src/utils/name-utils'; +import { names, toClassName, toFileName } from '@nrwl/workspace'; import * as path from 'path'; import { addDeclarationToModule, @@ -28,11 +24,11 @@ import { insert, readBootstrapInfo, removeFromNgModule -} from '@nrwl/schematics/src/utils/ast-utils'; +} from '@nrwl/workspace'; import { insertImport } from '@schematics/angular/utility/ast-utils'; import { Schema } from './schema'; import { addUpgradeToPackageJson } from '../../utils/upgrade'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +import { formatFiles } from '@nrwl/workspace'; function addImportsToModule(options: Schema): Rule { return (host: Tree) => { diff --git a/packages/angular/src/utils/upgrade.ts b/packages/angular/src/utils/upgrade.ts index cb63be7491..f66bebe24d 100644 --- a/packages/angular/src/utils/upgrade.ts +++ b/packages/angular/src/utils/upgrade.ts @@ -1,6 +1,6 @@ import { Rule } from '@angular-devkit/schematics'; import { angularJsVersion } from './versions'; -import { updateJsonInTree } from '@nrwl/schematics'; +import { updateJsonInTree } from '@nrwl/workspace'; export function addUpgradeToPackageJson(): Rule { return updateJsonInTree('package.json', packageJson => { diff --git a/packages/builders/index.ts b/packages/builders/index.ts index 1d1107d1ad..e69de29bb2 100644 --- a/packages/builders/index.ts +++ b/packages/builders/index.ts @@ -1,7 +0,0 @@ -export { BuildBuilderOptions, OptimizationOptions } from './src/utils/types'; -export { readTsConfig } from './src/utils/typescript'; -export { - getBaseWebpackPartial, - OUT_FILENAME -} from './src/utils/webpack/config'; -export { normalizeBuildOptions } from './src/utils/normalize'; diff --git a/packages/builders/package.json b/packages/builders/package.json index d14dd253d4..e90c071405 100644 --- a/packages/builders/package.json +++ b/packages/builders/package.json @@ -1,7 +1,7 @@ { "name": "@nrwl/builders", "version": "0.0.1", - "description": "Angular CLI power-ups for modern Web development: Builders", + "description": "Deprecated package. Use @nrwl/workspace, @nrwl/web, @nrwl/node, @nrwl/jest, @nrwl/cypress instead.", "repository": { "type": "git", "url": "git+https://github.com/nrwl/nx.git" diff --git a/packages/create-nx-workspace/bin/create-nx-workspace.ts b/packages/create-nx-workspace/bin/create-nx-workspace.ts index 84095d4938..9b825b4355 100644 --- a/packages/create-nx-workspace/bin/create-nx-workspace.ts +++ b/packages/create-nx-workspace/bin/create-nx-workspace.ts @@ -29,7 +29,7 @@ if (parsedArgs.help) { const nxTool = { name: 'Schematics', - packageName: '@nrwl/schematics' + packageName: '@nrwl/workspace' }; let useYarn = true; diff --git a/packages/cypress/package.json b/packages/cypress/package.json index e0bdc3271f..05f314601f 100644 --- a/packages/cypress/package.json +++ b/packages/cypress/package.json @@ -30,13 +30,9 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*" + "@nrwl/workspace": "*" }, "dependencies": { - "@angular-devkit/architect": "~0.13.1", - "@angular-devkit/core": "~7.3.1", - "@angular-devkit/schematics": "~7.3.1", - "tree-kill": "1.2.1", - "rxjs": "6.3.3" + "tree-kill": "1.2.1" } } diff --git a/packages/cypress/src/builders/cypress/cypress.builder.spec.ts b/packages/cypress/src/builders/cypress/cypress.builder.spec.ts index 56324c4489..3504900ac3 100644 --- a/packages/cypress/src/builders/cypress/cypress.builder.spec.ts +++ b/packages/cypress/src/builders/cypress/cypress.builder.spec.ts @@ -49,7 +49,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: cypressBuilderOptions }) .subscribe(() => { @@ -78,7 +78,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: cypressBuilderOptions }) .subscribe(() => { @@ -107,7 +107,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: Object.assign(cypressBuilderOptions, { headless: false }) }) .subscribe(() => { @@ -135,7 +135,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: Object.assign(cypressBuilderOptions, { baseUrl: 'http://my-distant-host.com' }) @@ -164,7 +164,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: Object.assign(cypressBuilderOptions, { browser: 'chrome' }) @@ -193,7 +193,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: { cypressConfig: 'apps/my-app-e2e/cypress.json', tsConfig: 'apps/my-app-e2e/tsconfig.json', @@ -236,7 +236,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: { cypressConfig: 'apps/my-app-e2e/cypress.json', tsConfig: 'apps/my-app-e2e/tsconfig.e2e.json', @@ -278,7 +278,7 @@ describe('Cypress builder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:cypress', + builder: 'CYPRESSBUILDER', options: { cypressConfig: 'apps/my-app-e2e/cypress.json', tsConfig: 'apps/my-app-e2e/tsconfig.e2e.json', diff --git a/packages/cypress/src/builders/cypress/cypress.builder.ts b/packages/cypress/src/builders/cypress/cypress.builder.ts index 453a3d34e6..93d3f3fea2 100644 --- a/packages/cypress/src/builders/cypress/cypress.builder.ts +++ b/packages/cypress/src/builders/cypress/cypress.builder.ts @@ -46,7 +46,7 @@ try { "projectType": "application", "architect": { "e2e": { - "builder": "@nrwl/builders:cypress", + "builder": "@nrwl/cypress:cypress", "options": { "cypressConfig": "apps/my-app-e2e/cypress.json", "tsConfig": "apps/my-app-e2e/tsconfig.json", diff --git a/packages/cypress/src/schematics/cypress-project/cypress-project.spec.ts b/packages/cypress/src/schematics/cypress-project/cypress-project.spec.ts index e078672f3c..810f5ae3aa 100644 --- a/packages/cypress/src/schematics/cypress-project/cypress-project.spec.ts +++ b/packages/cypress/src/schematics/cypress-project/cypress-project.spec.ts @@ -1,7 +1,7 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; -import { readJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; +import { readJsonInTree } from '@nrwl/workspace'; describe('schematic:cypress-project', () => { let appTree: Tree; diff --git a/packages/cypress/src/schematics/cypress-project/cypress-project.ts b/packages/cypress/src/schematics/cypress-project/cypress-project.ts index d75d8f15a9..811bcc0a16 100644 --- a/packages/cypress/src/schematics/cypress-project/cypress-project.ts +++ b/packages/cypress/src/schematics/cypress-project/cypress-project.ts @@ -9,9 +9,9 @@ import { } from '@angular-devkit/schematics'; import { join, normalize } from '@angular-devkit/core'; // app -import { updateJsonInTree, NxJson } from '@nrwl/schematics'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; -import { toFileName } from '@nrwl/schematics/src/utils/name-utils'; +import { updateJsonInTree, NxJson } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; +import { toFileName } from '@nrwl/workspace'; import { Schema } from './schema'; export interface CypressProjectSchema extends Schema { diff --git a/packages/cypress/src/schematics/ng-add/ng-add.spec.ts b/packages/cypress/src/schematics/ng-add/ng-add.spec.ts index 8cbea6799b..56936c0c98 100644 --- a/packages/cypress/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/cypress/src/schematics/ng-add/ng-add.spec.ts @@ -1,7 +1,7 @@ import { Tree } from '@angular-devkit/schematics'; -import { readJsonInTree } from '@nrwl/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { readJsonInTree } from '@nrwl/workspace'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; diff --git a/packages/cypress/src/schematics/ng-add/ng-add.ts b/packages/cypress/src/schematics/ng-add/ng-add.ts index 06d9147835..cb98f8badc 100644 --- a/packages/cypress/src/schematics/ng-add/ng-add.ts +++ b/packages/cypress/src/schematics/ng-add/ng-add.ts @@ -2,11 +2,8 @@ import { Rule, Tree, noop, chain } from '@angular-devkit/schematics'; import { Schema } from './schema'; import { cypressVersion, nxVersion } from '../../utils/versions'; -import { readJsonInTree } from '@nrwl/schematics'; -import { - addDepsToPackageJson, - updateJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; +import { readJsonInTree } from '@nrwl/workspace'; +import { addDepsToPackageJson, updateJsonInTree } from '@nrwl/workspace'; function checkDependenciesInstalled(): Rule { return (host: Tree): Rule => { diff --git a/packages/express/package.json b/packages/express/package.json index b0730412ef..048d9b3597 100644 --- a/packages/express/package.json +++ b/packages/express/package.json @@ -30,12 +30,9 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*", - "@nrwl/builders": "*" + "@nrwl/workspace": "*" }, "dependencies": { - "@angular-devkit/core": "~7.3.1", - "@angular-devkit/schematics": "~7.3.1", "@nrwl/node": "*", "@nrwl/jest": "*" } diff --git a/packages/express/src/schematics/application/application.spec.ts b/packages/express/src/schematics/application/application.spec.ts index eeb64e8ebf..4b1bcea98b 100644 --- a/packages/express/src/schematics/application/application.spec.ts +++ b/packages/express/src/schematics/application/application.spec.ts @@ -1,7 +1,7 @@ import { Tree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('app', () => { let appTree: Tree; diff --git a/packages/express/src/schematics/application/application.ts b/packages/express/src/schematics/application/application.ts index be33240bbb..ce62e273a9 100644 --- a/packages/express/src/schematics/application/application.ts +++ b/packages/express/src/schematics/application/application.ts @@ -12,8 +12,8 @@ import { } from '@angular-devkit/schematics'; import { join, normalize, Path } from '@angular-devkit/core'; import { Schema } from './schema'; -import { updateJsonInTree } from '@nrwl/schematics'; -import { toFileName } from '@nrwl/schematics/src/utils/name-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; +import { toFileName } from '@nrwl/workspace'; interface NormalizedSchema extends Schema { appProjectRoot: Path; diff --git a/packages/express/src/schematics/ng-add/ng-add.spec.ts b/packages/express/src/schematics/ng-add/ng-add.spec.ts index c325718e00..a60658603a 100644 --- a/packages/express/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/express/src/schematics/ng-add/ng-add.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; import { join } from 'path'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('ng-add', () => { let tree: Tree; diff --git a/packages/express/src/schematics/ng-add/ng-add.ts b/packages/express/src/schematics/ng-add/ng-add.ts index 9526a1369d..104a210475 100644 --- a/packages/express/src/schematics/ng-add/ng-add.ts +++ b/packages/express/src/schematics/ng-add/ng-add.ts @@ -1,8 +1,5 @@ import { Rule, chain, externalSchematic } from '@angular-devkit/schematics'; -import { - addDepsToPackageJson, - updateJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; +import { addDepsToPackageJson, updateJsonInTree } from '@nrwl/workspace'; import { expressTypingsVersion, expressVersion, diff --git a/packages/jest/package.json b/packages/jest/package.json index 00bd610835..b87215ebb5 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -30,12 +30,6 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*" - }, - "dependencies": { - "@angular-devkit/architect": "~0.13.1", - "@angular-devkit/core": "~7.3.1", - "@angular-devkit/schematics": "~7.3.1", - "rxjs": "6.3.3" + "@nrwl/workspace": "*" } } diff --git a/packages/jest/src/builders/jest/jest.builder.spec.ts b/packages/jest/src/builders/jest/jest.builder.spec.ts index 88d0a82ffe..c2b70a5324 100644 --- a/packages/jest/src/builders/jest/jest.builder.spec.ts +++ b/packages/jest/src/builders/jest/jest.builder.spec.ts @@ -170,7 +170,7 @@ describe('Jest Builder', () => { builder .run({ root, - builder: '@nrwl/builders:jest', + builder: 'JEST_BUILDER', projectType: 'application', options: { jestConfig: './jest.config.js', diff --git a/packages/jest/src/schematics/jest-project/jest-project.spec.ts b/packages/jest/src/schematics/jest-project/jest-project.spec.ts index 00fc32eab3..da89f5c838 100644 --- a/packages/jest/src/schematics/jest-project/jest-project.spec.ts +++ b/packages/jest/src/schematics/jest-project/jest-project.spec.ts @@ -1,6 +1,6 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; -import { readJsonInTree, updateJsonInTree } from '@nrwl/schematics'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; +import { readJsonInTree, updateJsonInTree } from '@nrwl/workspace'; import { runSchematic, callRule } from '../../utils/testing'; describe('jestProject', () => { diff --git a/packages/jest/src/schematics/jest-project/jest-project.ts b/packages/jest/src/schematics/jest-project/jest-project.ts index a7c5fc0829..5c143372dc 100644 --- a/packages/jest/src/schematics/jest-project/jest-project.ts +++ b/packages/jest/src/schematics/jest-project/jest-project.ts @@ -11,12 +11,9 @@ import { noop, filter } from '@angular-devkit/schematics'; -import { readJsonInTree, updateJsonInTree } from '@nrwl/schematics'; -import { - getProjectConfig, - addDepsToPackageJson -} from '@nrwl/schematics/src/utils/ast-utils'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; +import { readJsonInTree, updateJsonInTree } from '@nrwl/workspace'; +import { getProjectConfig, addDepsToPackageJson } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; import { join, normalize } from '@angular-devkit/core'; export interface JestProjectSchema { diff --git a/packages/jest/src/schematics/ng-add/ng-add.spec.ts b/packages/jest/src/schematics/ng-add/ng-add.spec.ts index dcc4cf2c59..ace8732460 100644 --- a/packages/jest/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/jest/src/schematics/ng-add/ng-add.spec.ts @@ -1,6 +1,6 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; -import { readJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; +import { readJsonInTree } from '@nrwl/workspace'; import { runSchematic } from '../../utils/testing'; describe('jest', () => { diff --git a/packages/jest/src/schematics/ng-add/ng-add.ts b/packages/jest/src/schematics/ng-add/ng-add.ts index 34e7b17854..2ce473a74d 100644 --- a/packages/jest/src/schematics/ng-add/ng-add.ts +++ b/packages/jest/src/schematics/ng-add/ng-add.ts @@ -1,8 +1,5 @@ import { mergeWith, chain, url } from '@angular-devkit/schematics'; -import { - addDepsToPackageJson, - updateJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; +import { addDepsToPackageJson, updateJsonInTree } from '@nrwl/workspace'; import { jestVersion, jestTypesVersion, diff --git a/packages/nest/package.json b/packages/nest/package.json index 569f3a329f..044f5f6ae2 100644 --- a/packages/nest/package.json +++ b/packages/nest/package.json @@ -29,12 +29,9 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*", - "@nrwl/builders": "*" + "@nrwl/workspace": "*" }, "dependencies": { - "@angular-devkit/core": "~7.3.1", - "@angular-devkit/schematics": "~7.3.1", "@nrwl/node": "*", "@nrwl/jest": "*" } diff --git a/packages/nest/src/schematics/application/application.spec.ts b/packages/nest/src/schematics/application/application.spec.ts index a1a9a66b5c..fe169a3c8b 100644 --- a/packages/nest/src/schematics/application/application.spec.ts +++ b/packages/nest/src/schematics/application/application.spec.ts @@ -1,5 +1,5 @@ import { Tree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; describe('app', () => { diff --git a/packages/nest/src/schematics/application/application.ts b/packages/nest/src/schematics/application/application.ts index 91d927b30c..743c57dd08 100644 --- a/packages/nest/src/schematics/application/application.ts +++ b/packages/nest/src/schematics/application/application.ts @@ -12,7 +12,7 @@ import { } from '@angular-devkit/schematics'; import { join, normalize, Path } from '@angular-devkit/core'; import { Schema } from './schema'; -import { toFileName } from '@nrwl/schematics/src/utils/name-utils'; +import { toFileName } from '@nrwl/workspace'; interface NormalizedSchema extends Schema { appProjectRoot: Path; diff --git a/packages/nest/src/schematics/ng-add/ng-add.spec.ts b/packages/nest/src/schematics/ng-add/ng-add.spec.ts index 3db55ab7f9..c144473f2a 100644 --- a/packages/nest/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/nest/src/schematics/ng-add/ng-add.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; import { join } from 'path'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('ng-add', () => { let tree: Tree; diff --git a/packages/nest/src/schematics/ng-add/ng-add.ts b/packages/nest/src/schematics/ng-add/ng-add.ts index 5253b2fef0..8fb1a4bec0 100644 --- a/packages/nest/src/schematics/ng-add/ng-add.ts +++ b/packages/nest/src/schematics/ng-add/ng-add.ts @@ -1,8 +1,5 @@ import { Rule, chain, externalSchematic } from '@angular-devkit/schematics'; -import { - addDepsToPackageJson, - updateJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; +import { addDepsToPackageJson, updateJsonInTree } from '@nrwl/workspace'; import { nestJsSchematicsVersion, nestJsVersion, diff --git a/packages/node/package.json b/packages/node/package.json index f07ed64ce4..416cdff8ed 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -29,12 +29,9 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*", - "@nrwl/builders": "*" + "@nrwl/workspace": "*" }, "dependencies": { - "@angular-devkit/core": "~7.3.1", - "@angular-devkit/schematics": "~7.3.1", "@nrwl/jest": "*" } } diff --git a/packages/node/src/builders/build/build.builder.spec.ts b/packages/node/src/builders/build/build.builder.spec.ts index f7abce3179..4ae9a569fd 100644 --- a/packages/node/src/builders/build/build.builder.spec.ts +++ b/packages/node/src/builders/build/build.builder.spec.ts @@ -58,7 +58,7 @@ describe('NodeBuildBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-build', + builder: '@nrwl/node:build', options: testOptions }); @@ -79,7 +79,7 @@ describe('NodeBuildBuilder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-build', + builder: '@nrwl/node:build', options: testOptions }) .toPromise(); @@ -110,7 +110,7 @@ describe('NodeBuildBuilder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-build', + builder: '@nrwl/node:build', options: { ...testOptions, statsJson: true @@ -156,7 +156,7 @@ describe('NodeBuildBuilder', () => { root: normalize('/root'), sourceRoot: join(normalize('/root'), 'apps/nodeapp'), projectType: 'application', - builder: '@nrwl/builders:node-build', + builder: '@nrwl/node:build', options: { ...testOptions, webpackConfig: 'apps/nodeapp/webpack.config.js' diff --git a/packages/node/src/builders/build/build.builder.ts b/packages/node/src/builders/build/build.builder.ts index 023e76a0a2..5130af0e45 100644 --- a/packages/node/src/builders/build/build.builder.ts +++ b/packages/node/src/builders/build/build.builder.ts @@ -11,12 +11,12 @@ import { Observable } from 'rxjs'; import { writeFileSync } from 'fs'; import { resolve } from 'path'; import { map } from 'rxjs/operators'; -import { getNodeWebpackConfig } from '../../../../node/src/utils/node.config'; +import { getNodeWebpackConfig } from '../../utils/node.config'; import { BuildBuilderOptions, normalizeBuildOptions, OUT_FILENAME -} from '@nrwl/builders'; +} from '@nrwl/workspace'; try { require('dotenv').config(); diff --git a/packages/node/src/builders/execute/execute.builder.spec.ts b/packages/node/src/builders/execute/execute.builder.spec.ts index 42ed9de085..b503ebc1e6 100644 --- a/packages/node/src/builders/execute/execute.builder.spec.ts +++ b/packages/node/src/builders/execute/execute.builder.spec.ts @@ -88,7 +88,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: testOptions }) ).toBeObservable( @@ -124,7 +124,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, inspect: InspectType.Inspect @@ -154,7 +154,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, inspect: InspectType.InspectBrk @@ -186,7 +186,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, host: '0.0.0.0' @@ -218,7 +218,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, port: 1234 @@ -252,7 +252,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: testOptions }) ).toBeObservable( @@ -279,7 +279,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: testOptions }) ).toBeObservable( @@ -302,7 +302,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, inspect: false, @@ -339,7 +339,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, inspect: false, @@ -392,7 +392,7 @@ describe('NodeExecuteBuilder', () => { builder.run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, waitUntilTargets: ['project1:target1', 'project2:target2'] @@ -426,7 +426,7 @@ describe('NodeExecuteBuilder', () => { .run({ root: normalize('/root'), projectType: 'application', - builder: '@nrwl/builders:node-execute', + builder: '@nrwl/node:execute', options: { ...testOptions, waitUntilTargets: ['project1:target1', 'project2:target2'] diff --git a/packages/node/src/schematics/application/application.spec.ts b/packages/node/src/schematics/application/application.spec.ts index 6d1c4bc30d..f88d33873c 100644 --- a/packages/node/src/schematics/application/application.spec.ts +++ b/packages/node/src/schematics/application/application.spec.ts @@ -1,9 +1,9 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; import { getFileContent } from '@schematics/angular/utility/test'; import * as stripJsonComments from 'strip-json-comments'; -import { createApp, createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createApp, createEmptyWorkspace } from '@nrwl/workspace/testing'; import { runSchematic } from '../../utils/testing'; -import { NxJson, readJsonInTree } from '@nrwl/schematics'; +import { NxJson, readJsonInTree } from '@nrwl/workspace'; describe('app', () => { let appTree: Tree; diff --git a/packages/node/src/schematics/application/application.ts b/packages/node/src/schematics/application/application.ts index 907b33a07e..78bc4342a1 100644 --- a/packages/node/src/schematics/application/application.ts +++ b/packages/node/src/schematics/application/application.ts @@ -13,10 +13,10 @@ import { } from '@angular-devkit/schematics'; import { join, normalize, Path } from '@angular-devkit/core'; import { Schema } from './schema'; -import { updateJsonInTree } from '@nrwl/schematics'; -import { toFileName } from '@nrwl/schematics/src/utils/name-utils'; -import { getProjectConfig } from '@nrwl/schematics/src/utils/ast-utils'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; +import { updateJsonInTree } from '@nrwl/workspace'; +import { toFileName } from '@nrwl/workspace'; +import { getProjectConfig } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; interface NormalizedSchema extends Schema { appProjectRoot: Path; diff --git a/packages/node/src/schematics/ng-add/ng-add.spec.ts b/packages/node/src/schematics/ng-add/ng-add.spec.ts index d9823d8581..21d5556703 100644 --- a/packages/node/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/node/src/schematics/ng-add/ng-add.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; import { join } from 'path'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('ng-add', () => { let tree: Tree; diff --git a/packages/node/src/schematics/ng-add/ng-add.ts b/packages/node/src/schematics/ng-add/ng-add.ts index b4145ff787..5c95e1c44f 100644 --- a/packages/node/src/schematics/ng-add/ng-add.ts +++ b/packages/node/src/schematics/ng-add/ng-add.ts @@ -1,8 +1,5 @@ import { Rule, chain } from '@angular-devkit/schematics'; -import { - addDepsToPackageJson, - updateJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; +import { addDepsToPackageJson, updateJsonInTree } from '@nrwl/workspace'; import { nxVersion } from '../../utils/versions'; function addDependencies(): Rule { diff --git a/packages/node/src/utils/node.config.ts b/packages/node/src/utils/node.config.ts index c1f0c67dce..b612ba788f 100644 --- a/packages/node/src/utils/node.config.ts +++ b/packages/node/src/utils/node.config.ts @@ -2,7 +2,7 @@ import { Configuration, BannerPlugin } from 'webpack'; import * as mergeWebpack from 'webpack-merge'; import * as nodeExternals from 'webpack-node-externals'; -import { getBaseWebpackPartial } from '@nrwl/builders/src/utils/webpack/config'; +import { getBaseWebpackPartial } from '@nrwl/workspace'; import { BuildNodeBuilderOptions } from '../builders/build/build.builder'; function getNodePartial(options: BuildNodeBuilderOptions) { diff --git a/packages/nx/package.json b/packages/nx/package.json index 11d10eccc5..b4f7d623bb 100644 --- a/packages/nx/package.json +++ b/packages/nx/package.json @@ -7,7 +7,7 @@ "module": "esm5/nrwl-nx.js", "es2015": "esm2015/nrwl-nx.js", "peerDependencies": { - "jasmine-marbles": "0.4.0" + "jasmine-marbles": "*" }, "author": "Victor Savkin", "license": "MIT" diff --git a/packages/react/package.json b/packages/react/package.json index 160b537bf6..813e0663b2 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -28,11 +28,9 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*" + "@nrwl/workspace": "*" }, "dependencies": { - "@angular-devkit/core": "~7.3.1", - "@angular-devkit/schematics": "~7.3.1", "@nrwl/cypress": "*", "@nrwl/jest": "*", "@nrwl/web": "*" diff --git a/packages/react/src/schematics/application/application.spec.ts b/packages/react/src/schematics/application/application.spec.ts index 1ca483374c..bf5692da4c 100644 --- a/packages/react/src/schematics/application/application.spec.ts +++ b/packages/react/src/schematics/application/application.spec.ts @@ -1,7 +1,7 @@ import { Tree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import * as stripJsonComments from 'strip-json-comments'; -import { readJsonInTree, NxJson } from '@nrwl/schematics'; +import { readJsonInTree, NxJson } from '@nrwl/workspace'; import { runSchematic } from '../../utils/testing'; describe('app', () => { diff --git a/packages/react/src/schematics/application/application.ts b/packages/react/src/schematics/application/application.ts index 9ef37cb064..65658fa191 100644 --- a/packages/react/src/schematics/application/application.ts +++ b/packages/react/src/schematics/application/application.ts @@ -14,11 +14,11 @@ import { filter } from '@angular-devkit/schematics'; import { Schema } from './schema'; -import { updateJsonInTree, NxJson } from '@nrwl/schematics'; -import { toFileName, names } from '@nrwl/schematics/src/utils/name-utils'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; -import { getNpmScope } from '@nrwl/schematics/src/utils/cli-config-utils'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +import { updateJsonInTree, NxJson } from '@nrwl/workspace'; +import { toFileName, names } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; +import { getNpmScope } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; interface NormalizedSchema extends Schema { projectName: string; diff --git a/packages/react/src/schematics/library/library.spec.ts b/packages/react/src/schematics/library/library.spec.ts index cf53aafe44..29d274edb3 100644 --- a/packages/react/src/schematics/library/library.spec.ts +++ b/packages/react/src/schematics/library/library.spec.ts @@ -1,7 +1,7 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; -import { readJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; -import { NxJson } from '@nrwl/schematics/src/command-line/shared'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; +import { readJsonInTree } from '@nrwl/workspace'; +import { NxJson } from '@nrwl/workspace'; import { runSchematic } from '../../utils/testing'; describe('lib', () => { diff --git a/packages/react/src/schematics/library/library.ts b/packages/react/src/schematics/library/library.ts index 0553a1ccf4..d45661bcec 100644 --- a/packages/react/src/schematics/library/library.ts +++ b/packages/react/src/schematics/library/library.ts @@ -13,15 +13,12 @@ import { } from '@angular-devkit/schematics'; import { Schema } from './schema'; -import { NxJson } from '@nrwl/schematics'; -import { - updateJsonInTree, - readJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; -import { toFileName, names } from '@nrwl/schematics/src/utils/name-utils'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +import { NxJson } from '@nrwl/workspace'; +import { updateJsonInTree, readJsonInTree } from '@nrwl/workspace'; +import { toFileName, names } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; import { join, normalize } from 'path'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; +import { offsetFromRoot } from '@nrwl/workspace'; export interface NormalizedSchema extends Schema { name: string; diff --git a/packages/react/src/schematics/ng-add/ng-add.spec.ts b/packages/react/src/schematics/ng-add/ng-add.spec.ts index 152675cb32..67a7a6e386 100644 --- a/packages/react/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/react/src/schematics/ng-add/ng-add.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; import { join } from 'path'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('ng-add', () => { let tree: Tree; diff --git a/packages/react/src/schematics/ng-add/ng-add.ts b/packages/react/src/schematics/ng-add/ng-add.ts index 75a815a48b..501349e593 100644 --- a/packages/react/src/schematics/ng-add/ng-add.ts +++ b/packages/react/src/schematics/ng-add/ng-add.ts @@ -9,7 +9,7 @@ import { addDepsToPackageJson, updateJsonInTree, readJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; +} from '@nrwl/workspace'; import { frameworkVersion, typesVersion, diff --git a/packages/schematics/index.ts b/packages/schematics/index.ts index 6b00fc2f07..e69de29bb2 100644 --- a/packages/schematics/index.ts +++ b/packages/schematics/index.ts @@ -1,7 +0,0 @@ -export { NxJson } from './src/command-line/shared'; -export { - readJsonInTree, - updateJsonInTree, - addDepsToPackageJson -} from './src/utils/ast-utils'; -export { offsetFromRoot } from './src/utils/common'; diff --git a/packages/schematics/migrations/legacy-migrations/20171129-change-schema.ts b/packages/schematics/migrations/legacy-migrations/20171129-change-schema.ts index 2350d0178c..ed3458f836 100644 --- a/packages/schematics/migrations/legacy-migrations/20171129-change-schema.ts +++ b/packages/schematics/migrations/legacy-migrations/20171129-change-schema.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Update the schema file to point to the nrwl schema.', diff --git a/packages/schematics/migrations/legacy-migrations/20171202-change-schema.ts b/packages/schematics/migrations/legacy-migrations/20171202-change-schema.ts index a788bfb3c5..1f668791af 100644 --- a/packages/schematics/migrations/legacy-migrations/20171202-change-schema.ts +++ b/packages/schematics/migrations/legacy-migrations/20171202-change-schema.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: diff --git a/packages/schematics/migrations/legacy-migrations/20171205-remove-npmscope-from-tslintjson.ts b/packages/schematics/migrations/legacy-migrations/20171205-remove-npmscope-from-tslintjson.ts index 6111f8c370..4796c436af 100644 --- a/packages/schematics/migrations/legacy-migrations/20171205-remove-npmscope-from-tslintjson.ts +++ b/packages/schematics/migrations/legacy-migrations/20171205-remove-npmscope-from-tslintjson.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Remove npmScope from tslint.json', diff --git a/packages/schematics/migrations/legacy-migrations/20171211-create-tsconfigapp-per-app.ts b/packages/schematics/migrations/legacy-migrations/20171211-create-tsconfigapp-per-app.ts index c39fc7ace6..a625bf083d 100644 --- a/packages/schematics/migrations/legacy-migrations/20171211-create-tsconfigapp-per-app.ts +++ b/packages/schematics/migrations/legacy-migrations/20171211-create-tsconfigapp-per-app.ts @@ -1,6 +1,6 @@ -import { readCliConfigFile, updateJsonFile } from '../../src/utils/fileutils'; +import { readCliConfigFile, updateJsonFile } from '@nrwl/workspace'; import { writeFileSync, unlinkSync } from 'fs'; -import { offsetFromRoot } from '../../src/utils/common'; +import { offsetFromRoot } from '@nrwl/workspace'; import * as path from 'path'; export default { diff --git a/packages/schematics/migrations/legacy-migrations/20171213-update-tsconfig-spec-to-exclude-e2e.ts b/packages/schematics/migrations/legacy-migrations/20171213-update-tsconfig-spec-to-exclude-e2e.ts index 22fa7637f9..de1dd6f413 100644 --- a/packages/schematics/migrations/legacy-migrations/20171213-update-tsconfig-spec-to-exclude-e2e.ts +++ b/packages/schematics/migrations/legacy-migrations/20171213-update-tsconfig-spec-to-exclude-e2e.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Update tsconfig.spec.json to exclude e2e specs', diff --git a/packages/schematics/migrations/legacy-migrations/20171219-add-affected-commands.ts b/packages/schematics/migrations/legacy-migrations/20171219-add-affected-commands.ts index 23214f9d31..89d1209843 100644 --- a/packages/schematics/migrations/legacy-migrations/20171219-add-affected-commands.ts +++ b/packages/schematics/migrations/legacy-migrations/20171219-add-affected-commands.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: diff --git a/packages/schematics/migrations/legacy-migrations/20180103-update-command-line-scripts.ts b/packages/schematics/migrations/legacy-migrations/20180103-update-command-line-scripts.ts index 3feef291d8..2b7325431b 100644 --- a/packages/schematics/migrations/legacy-migrations/20180103-update-command-line-scripts.ts +++ b/packages/schematics/migrations/legacy-migrations/20180103-update-command-line-scripts.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add format:write and format:check to npm scripts', diff --git a/packages/schematics/migrations/legacy-migrations/20180116-update-command-line-scripts-to-use-nx-command.ts b/packages/schematics/migrations/legacy-migrations/20180116-update-command-line-scripts-to-use-nx-command.ts index fb7395d3d1..61cfae5533 100644 --- a/packages/schematics/migrations/legacy-migrations/20180116-update-command-line-scripts-to-use-nx-command.ts +++ b/packages/schematics/migrations/legacy-migrations/20180116-update-command-line-scripts-to-use-nx-command.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Update npm scripts to use the nx command', diff --git a/packages/schematics/migrations/legacy-migrations/20180120-update-prettier.ts b/packages/schematics/migrations/legacy-migrations/20180120-update-prettier.ts index bf578d5260..2fef12d7c5 100644 --- a/packages/schematics/migrations/legacy-migrations/20180120-update-prettier.ts +++ b/packages/schematics/migrations/legacy-migrations/20180120-update-prettier.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Update the version of prettier', diff --git a/packages/schematics/migrations/legacy-migrations/20180121-update-angular.ts b/packages/schematics/migrations/legacy-migrations/20180121-update-angular.ts index c9f7297d0e..fa0538b0e8 100644 --- a/packages/schematics/migrations/legacy-migrations/20180121-update-angular.ts +++ b/packages/schematics/migrations/legacy-migrations/20180121-update-angular.ts @@ -1,4 +1,4 @@ -import { copyFile, updateJsonFile } from '../../src/utils/fileutils'; +import { copyFile, updateJsonFile } from '@nrwl/workspace'; import * as path from 'path'; export default { diff --git a/packages/schematics/migrations/legacy-migrations/20180122-add-angular-devkit-core.ts b/packages/schematics/migrations/legacy-migrations/20180122-add-angular-devkit-core.ts index 4268b014f3..3b6bb0e2a6 100644 --- a/packages/schematics/migrations/legacy-migrations/20180122-add-angular-devkit-core.ts +++ b/packages/schematics/migrations/legacy-migrations/20180122-add-angular-devkit-core.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add @angular-devkit/core as a dev dependency', diff --git a/packages/schematics/migrations/legacy-migrations/20180130-add-migration-check-and-skip.ts b/packages/schematics/migrations/legacy-migrations/20180130-add-migration-check-and-skip.ts index 5c0b422c8f..421df968d0 100644 --- a/packages/schematics/migrations/legacy-migrations/20180130-add-migration-check-and-skip.ts +++ b/packages/schematics/migrations/legacy-migrations/20180130-add-migration-check-and-skip.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add nx-migrate:check and nx-migrate:skip to npm scripts', diff --git a/packages/schematics/migrations/legacy-migrations/20180130-add-postinstall.ts b/packages/schematics/migrations/legacy-migrations/20180130-add-postinstall.ts index f67be35672..cfcb0fbb0c 100644 --- a/packages/schematics/migrations/legacy-migrations/20180130-add-postinstall.ts +++ b/packages/schematics/migrations/legacy-migrations/20180130-add-postinstall.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add postinstall script to run nx-migrate:check', diff --git a/packages/schematics/migrations/legacy-migrations/20180130-angular-devkit-schematics.ts b/packages/schematics/migrations/legacy-migrations/20180130-angular-devkit-schematics.ts index 076a54b124..325ce7b2f6 100644 --- a/packages/schematics/migrations/legacy-migrations/20180130-angular-devkit-schematics.ts +++ b/packages/schematics/migrations/legacy-migrations/20180130-angular-devkit-schematics.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add @angular-devkit/schematics as a dev dependency', diff --git a/packages/schematics/migrations/legacy-migrations/20180225-switch-to-cli17.ts b/packages/schematics/migrations/legacy-migrations/20180225-switch-to-cli17.ts index fef367515a..1ef78de0aa 100644 --- a/packages/schematics/migrations/legacy-migrations/20180225-switch-to-cli17.ts +++ b/packages/schematics/migrations/legacy-migrations/20180225-switch-to-cli17.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; import { unlinkSync } from 'fs'; export default { diff --git a/packages/schematics/migrations/legacy-migrations/20180227-cleanup-scripts.ts b/packages/schematics/migrations/legacy-migrations/20180227-cleanup-scripts.ts index c3e331404d..b5a1d468ad 100644 --- a/packages/schematics/migrations/legacy-migrations/20180227-cleanup-scripts.ts +++ b/packages/schematics/migrations/legacy-migrations/20180227-cleanup-scripts.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add update, update:skip, update:check scripts', diff --git a/packages/schematics/migrations/legacy-migrations/20180309-create-or-update-prettierrc-file.ts b/packages/schematics/migrations/legacy-migrations/20180309-create-or-update-prettierrc-file.ts index 5b833da349..92d39fcaa2 100644 --- a/packages/schematics/migrations/legacy-migrations/20180309-create-or-update-prettierrc-file.ts +++ b/packages/schematics/migrations/legacy-migrations/20180309-create-or-update-prettierrc-file.ts @@ -1,11 +1,11 @@ import { writeFileSync, unlinkSync } from 'fs'; import { join } from 'path'; -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; import { ExistingPrettierConfig, resolveUserExistingPrettierConfig -} from '../../src/utils/common'; +} from '@nrwl/workspace'; export default { description: 'Create or update prettier configuration', diff --git a/packages/schematics/migrations/legacy-migrations/20180313-add-tags.ts b/packages/schematics/migrations/legacy-migrations/20180313-add-tags.ts index f123cb8c6d..8668a7f56e 100644 --- a/packages/schematics/migrations/legacy-migrations/20180313-add-tags.ts +++ b/packages/schematics/migrations/legacy-migrations/20180313-add-tags.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add tags to all app and libs', diff --git a/packages/schematics/migrations/legacy-migrations/20180328-add-nx-lint.ts b/packages/schematics/migrations/legacy-migrations/20180328-add-nx-lint.ts index 03df00b42d..85b87d608e 100644 --- a/packages/schematics/migrations/legacy-migrations/20180328-add-nx-lint.ts +++ b/packages/schematics/migrations/legacy-migrations/20180328-add-nx-lint.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Run lint checks ensuring the integrity of the workspace', diff --git a/packages/schematics/migrations/legacy-migrations/20180404-adding-dep-graph.ts b/packages/schematics/migrations/legacy-migrations/20180404-adding-dep-graph.ts index d0316b7b5e..feee47fb19 100644 --- a/packages/schematics/migrations/legacy-migrations/20180404-adding-dep-graph.ts +++ b/packages/schematics/migrations/legacy-migrations/20180404-adding-dep-graph.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Update npm scripts to use the nx command', diff --git a/packages/schematics/migrations/legacy-migrations/20180405-add-workspace-schematic-command.ts b/packages/schematics/migrations/legacy-migrations/20180405-add-workspace-schematic-command.ts index 5224ca9832..66e0fddc7d 100644 --- a/packages/schematics/migrations/legacy-migrations/20180405-add-workspace-schematic-command.ts +++ b/packages/schematics/migrations/legacy-migrations/20180405-add-workspace-schematic-command.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Add a command to generate workspace-specific schematics', diff --git a/packages/schematics/migrations/legacy-migrations/20180412-nx-update-scripts.ts b/packages/schematics/migrations/legacy-migrations/20180412-nx-update-scripts.ts index 194f3b5762..38e7e6bafa 100644 --- a/packages/schematics/migrations/legacy-migrations/20180412-nx-update-scripts.ts +++ b/packages/schematics/migrations/legacy-migrations/20180412-nx-update-scripts.ts @@ -1,4 +1,4 @@ -import { updateJsonFile } from '../../src/utils/fileutils'; +import { updateJsonFile } from '@nrwl/workspace'; export default { description: 'Update script to use an updated way of invoking Nx commands', diff --git a/packages/schematics/migrations/legacy-migrations/20180507-create-nx-json.ts b/packages/schematics/migrations/legacy-migrations/20180507-create-nx-json.ts index 4d6c5ce282..3879150681 100644 --- a/packages/schematics/migrations/legacy-migrations/20180507-create-nx-json.ts +++ b/packages/schematics/migrations/legacy-migrations/20180507-create-nx-json.ts @@ -1,5 +1,5 @@ import { existsSync, writeFileSync } from 'fs'; -import { readJsonFile, serializeJson } from '../../src/utils/fileutils'; +import { readJsonFile, serializeJson } from '@nrwl/workspace'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; export default { diff --git a/packages/schematics/migrations/legacy-migrations/20180515-switch-to-nx6.ts b/packages/schematics/migrations/legacy-migrations/20180515-switch-to-nx6.ts index 2c77ed198e..03d511e373 100644 --- a/packages/schematics/migrations/legacy-migrations/20180515-switch-to-nx6.ts +++ b/packages/schematics/migrations/legacy-migrations/20180515-switch-to-nx6.ts @@ -1,5 +1,5 @@ import { existsSync } from 'fs'; -import { readJsonFile, updateJsonFile } from '../../src/utils/fileutils'; +import { readJsonFile, updateJsonFile } from '@nrwl/workspace'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; import { execSync } from 'child_process'; import { join } from 'path'; diff --git a/packages/schematics/migrations/update-6-0-0/update-6-0-0.ts b/packages/schematics/migrations/update-6-0-0/update-6-0-0.ts index 78c30ac73e..4d31812621 100644 --- a/packages/schematics/migrations/update-6-0-0/update-6-0-0.ts +++ b/packages/schematics/migrations/update-6-0-0/update-6-0-0.ts @@ -11,12 +11,12 @@ import { createOrUpdate, readJsonInTree, updateJsonInTree -} from '../../src/utils/ast-utils'; -import { serializeJson, renameSync } from '../../src/utils/fileutils'; -import { parseTarget, serializeTarget } from '../../src/utils/cli-config-utils'; -import { offsetFromRoot } from '../../src/utils/common'; -import { formatFiles } from '../../src/utils/rules/format-files'; -import { NxJson } from '../../src/command-line/shared'; +} from '@nrwl/workspace'; +import { serializeJson, renameSync } from '@nrwl/workspace'; +import { parseTarget, serializeTarget } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; +import { NxJson } from '@nrwl/workspace'; function createKarma(host: Tree, project: any) { const offset = offsetFromRoot(project.root); diff --git a/packages/schematics/migrations/update-6-0-5/update-6-0-5.ts b/packages/schematics/migrations/update-6-0-5/update-6-0-5.ts index 01c9bb3731..93492f553e 100644 --- a/packages/schematics/migrations/update-6-0-5/update-6-0-5.ts +++ b/packages/schematics/migrations/update-6-0-5/update-6-0-5.ts @@ -4,7 +4,7 @@ import { SchematicContext, chain } from '@angular-devkit/schematics'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; export default function(): Rule { return updateJsonInTree('package.json', packageJson => { diff --git a/packages/schematics/migrations/update-6-1-0/update-6-1-0.ts b/packages/schematics/migrations/update-6-1-0/update-6-1-0.ts index fe236efbae..34047c2f27 100644 --- a/packages/schematics/migrations/update-6-1-0/update-6-1-0.ts +++ b/packages/schematics/migrations/update-6-1-0/update-6-1-0.ts @@ -4,9 +4,9 @@ import { SchematicContext, chain } from '@angular-devkit/schematics'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; -import { NxJson } from '../../src/command-line/shared'; +import { NxJson } from '@nrwl/workspace'; function displayInformation(host: Tree, context: SchematicContext) { context.logger.info(stripIndents` diff --git a/packages/schematics/migrations/update-6-2-0/update-6-2-0.spec.ts b/packages/schematics/migrations/update-6-2-0/update-6-2-0.spec.ts index 086150cb0a..1b9551488a 100644 --- a/packages/schematics/migrations/update-6-2-0/update-6-2-0.spec.ts +++ b/packages/schematics/migrations/update-6-2-0/update-6-2-0.spec.ts @@ -1,6 +1,6 @@ import { Tree } from '@angular-devkit/schematics'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import { serializeJson } from '../../src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; import * as path from 'path'; diff --git a/packages/schematics/migrations/update-6-2-0/update-6-2-0.ts b/packages/schematics/migrations/update-6-2-0/update-6-2-0.ts index 01a5e48750..5bfb8ecc13 100644 --- a/packages/schematics/migrations/update-6-2-0/update-6-2-0.ts +++ b/packages/schematics/migrations/update-6-2-0/update-6-2-0.ts @@ -8,7 +8,7 @@ import { url } from '@angular-devkit/schematics'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks'; function displayInformation(_, context: SchematicContext) { diff --git a/packages/schematics/migrations/update-6-3-2/update-6-3-2.spec.ts b/packages/schematics/migrations/update-6-3-2/update-6-3-2.spec.ts index 9168717ac7..d8cc87cf85 100644 --- a/packages/schematics/migrations/update-6-3-2/update-6-3-2.spec.ts +++ b/packages/schematics/migrations/update-6-3-2/update-6-3-2.spec.ts @@ -1,6 +1,6 @@ import { Tree } from '@angular-devkit/schematics'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import { serializeJson } from '../../src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; import * as path from 'path'; diff --git a/packages/schematics/migrations/update-6-3-2/update-6-3-2.ts b/packages/schematics/migrations/update-6-3-2/update-6-3-2.ts index 58f072702c..457fd02a8d 100644 --- a/packages/schematics/migrations/update-6-3-2/update-6-3-2.ts +++ b/packages/schematics/migrations/update-6-3-2/update-6-3-2.ts @@ -1,6 +1,6 @@ import { Rule, Tree, SchematicContext } from '@angular-devkit/schematics'; import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; export default function(): Rule { return (host: Tree, context: SchematicContext) => { diff --git a/packages/schematics/migrations/update-6-4-0/update-6-4-0.spec.ts b/packages/schematics/migrations/update-6-4-0/update-6-4-0.spec.ts index 11fe4b2fe9..afe0590468 100644 --- a/packages/schematics/migrations/update-6-4-0/update-6-4-0.spec.ts +++ b/packages/schematics/migrations/update-6-4-0/update-6-4-0.spec.ts @@ -1,6 +1,6 @@ import { Tree } from '@angular-devkit/schematics'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import { serializeJson } from '../../src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; import * as path from 'path'; diff --git a/packages/schematics/migrations/update-6-4-0/update-6-4-0.ts b/packages/schematics/migrations/update-6-4-0/update-6-4-0.ts index 88d303c7b7..d4529b5646 100644 --- a/packages/schematics/migrations/update-6-4-0/update-6-4-0.ts +++ b/packages/schematics/migrations/update-6-4-0/update-6-4-0.ts @@ -1,5 +1,5 @@ import { Rule, SchematicContext, chain } from '@angular-devkit/schematics'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks'; function updateDependencies() { diff --git a/packages/schematics/migrations/update-7-0-0/update-7-0-0.spec.ts b/packages/schematics/migrations/update-7-0-0/update-7-0-0.spec.ts index d7544529e9..962f3ef081 100644 --- a/packages/schematics/migrations/update-7-0-0/update-7-0-0.spec.ts +++ b/packages/schematics/migrations/update-7-0-0/update-7-0-0.spec.ts @@ -1,9 +1,9 @@ import { Tree } from '@angular-devkit/schematics'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import { serializeJson } from '../../src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; import * as path from 'path'; -import { updateJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; describe('Update 7.0.0', () => { let initialTree: Tree; diff --git a/packages/schematics/migrations/update-7-0-0/update-7-0-0.ts b/packages/schematics/migrations/update-7-0-0/update-7-0-0.ts index 2cf9a506d0..960c8dd146 100644 --- a/packages/schematics/migrations/update-7-0-0/update-7-0-0.ts +++ b/packages/schematics/migrations/update-7-0-0/update-7-0-0.ts @@ -1,5 +1,5 @@ import { Rule, externalSchematic, chain } from '@angular-devkit/schematics'; -import { updateJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; export default function(): Rule { return chain([ diff --git a/packages/schematics/migrations/update-7-1-0/update-7-1-0.spec.ts b/packages/schematics/migrations/update-7-1-0/update-7-1-0.spec.ts index 95be6d59bc..8b7e4d0858 100644 --- a/packages/schematics/migrations/update-7-1-0/update-7-1-0.spec.ts +++ b/packages/schematics/migrations/update-7-1-0/update-7-1-0.spec.ts @@ -1,6 +1,6 @@ import { Tree } from '@angular-devkit/schematics'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import { serializeJson } from '../../src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; import * as path from 'path'; diff --git a/packages/schematics/migrations/update-7-1-0/update-7-1-0.ts b/packages/schematics/migrations/update-7-1-0/update-7-1-0.ts index a014100045..986731ccb0 100644 --- a/packages/schematics/migrations/update-7-1-0/update-7-1-0.ts +++ b/packages/schematics/migrations/update-7-1-0/update-7-1-0.ts @@ -4,7 +4,7 @@ import { SchematicContext, Tree } from '@angular-devkit/schematics'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; function displayInformation(host: Tree, context: SchematicContext) { diff --git a/packages/schematics/migrations/update-7-2-0/update-7-2-0.spec.ts b/packages/schematics/migrations/update-7-2-0/update-7-2-0.spec.ts index 4ab250482f..00a22ab5fb 100644 --- a/packages/schematics/migrations/update-7-2-0/update-7-2-0.spec.ts +++ b/packages/schematics/migrations/update-7-2-0/update-7-2-0.spec.ts @@ -1,9 +1,9 @@ import { Tree } from '@angular-devkit/schematics'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import { serializeJson } from '../../src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; import * as path from 'path'; -import { readJsonInTree, updateJsonInTree } from '../../src/utils/ast-utils'; +import { readJsonInTree, updateJsonInTree } from '@nrwl/workspace'; describe('Update 7.2.0', () => { let initialTree: Tree; diff --git a/packages/schematics/migrations/update-7-2-0/update-7-2-0.ts b/packages/schematics/migrations/update-7-2-0/update-7-2-0.ts index e4f28bd715..abc82a3ecc 100644 --- a/packages/schematics/migrations/update-7-2-0/update-7-2-0.ts +++ b/packages/schematics/migrations/update-7-2-0/update-7-2-0.ts @@ -10,9 +10,9 @@ import { normalize, join, Path, dirname } from '@angular-devkit/core'; import { relative } from 'path'; -import { updateJsonInTree, readJsonInTree } from '../../src/utils/ast-utils'; -import { getWorkspacePath } from '../../src/utils/cli-config-utils'; -import { offsetFromRoot } from '../../src/utils/common'; +import { updateJsonInTree, readJsonInTree } from '@nrwl/workspace'; +import { getWorkspacePath } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; function getBuilders(project: any): string[] { diff --git a/packages/schematics/migrations/update-7-5-0/update-7-5-0.spec.ts b/packages/schematics/migrations/update-7-5-0/update-7-5-0.spec.ts index 5cee9ba17f..a2573e1301 100644 --- a/packages/schematics/migrations/update-7-5-0/update-7-5-0.spec.ts +++ b/packages/schematics/migrations/update-7-5-0/update-7-5-0.spec.ts @@ -3,8 +3,8 @@ import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; import * as path from 'path'; -import { serializeJson } from '../../src/utils/fileutils'; -import { readJsonInTree } from '../../src/utils/ast-utils'; +import { serializeJson } from '@nrwl/workspace'; +import { readJsonInTree } from '@nrwl/workspace'; describe('Update 7.5.0', () => { let initialTree: Tree; diff --git a/packages/schematics/migrations/update-7-5-0/update-7-5-0.ts b/packages/schematics/migrations/update-7-5-0/update-7-5-0.ts index e132a555c8..4e25389b4c 100644 --- a/packages/schematics/migrations/update-7-5-0/update-7-5-0.ts +++ b/packages/schematics/migrations/update-7-5-0/update-7-5-0.ts @@ -1,6 +1,6 @@ import { Rule, chain, externalSchematic } from '@angular-devkit/schematics'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; const updateAngularCLI = externalSchematic('@schematics/update', 'update', { packages: ['@angular/cli'], diff --git a/packages/schematics/migrations/update-7-6-0/update-7-6-0.spec.ts b/packages/schematics/migrations/update-7-6-0/update-7-6-0.spec.ts index 61e99bb5ce..55c9079d5e 100644 --- a/packages/schematics/migrations/update-7-6-0/update-7-6-0.spec.ts +++ b/packages/schematics/migrations/update-7-6-0/update-7-6-0.spec.ts @@ -6,8 +6,8 @@ import { import { join } from 'path'; -import { serializeJson } from '../../src/utils/fileutils'; -import { readJsonInTree, updateJsonInTree } from '../../src/utils/ast-utils'; +import { serializeJson } from '@nrwl/workspace'; +import { readJsonInTree, updateJsonInTree } from '@nrwl/workspace'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; const effectContents = ` diff --git a/packages/schematics/migrations/update-7-6-0/update-7-6-0.ts b/packages/schematics/migrations/update-7-6-0/update-7-6-0.ts index 91ca1580eb..74370324c7 100644 --- a/packages/schematics/migrations/update-7-6-0/update-7-6-0.ts +++ b/packages/schematics/migrations/update-7-6-0/update-7-6-0.ts @@ -11,12 +11,8 @@ import { getSourceNodes } from '@schematics/angular/utility/ast-utils'; import * as ts from 'typescript'; -import { - updateJsonInTree, - readJsonInTree, - insert -} from '../../src/utils/ast-utils'; -import { formatFiles } from '../../src/utils/rules/format-files'; +import { updateJsonInTree, readJsonInTree, insert } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; const addExtensionRecommendations = updateJsonInTree( '.vscode/extensions.json', diff --git a/packages/schematics/migrations/update-7-7-0/update-7-7-0.spec.ts b/packages/schematics/migrations/update-7-7-0/update-7-7-0.spec.ts index 45ef2fccf1..0dec3033c6 100644 --- a/packages/schematics/migrations/update-7-7-0/update-7-7-0.spec.ts +++ b/packages/schematics/migrations/update-7-7-0/update-7-7-0.spec.ts @@ -5,8 +5,8 @@ import { } from '@angular-devkit/schematics/testing'; import { join } from 'path'; -import { readJsonInTree } from '../../src/utils/ast-utils'; -import { serializeJson } from '../../src/utils/fileutils'; +import { readJsonInTree } from '@nrwl/workspace'; +import { serializeJson } from '@nrwl/workspace'; describe('Update 7.7.0', () => { let initialTree: Tree; diff --git a/packages/schematics/migrations/update-7-7-0/update-7-7-0.ts b/packages/schematics/migrations/update-7-7-0/update-7-7-0.ts index 707c2ef581..bb192b52b3 100644 --- a/packages/schematics/migrations/update-7-7-0/update-7-7-0.ts +++ b/packages/schematics/migrations/update-7-7-0/update-7-7-0.ts @@ -1,8 +1,8 @@ import { chain, Rule, Tree } from '@angular-devkit/schematics'; -import { updateJsonInTree, insert } from '../../src/utils/ast-utils'; -import { formatFiles } from '../../src/utils/rules/format-files'; -import { Framework } from '../../src/utils/frameworks'; +import { updateJsonInTree, insert } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; +import { Framework } from '@nrwl/workspace'; import * as ts from 'typescript'; import { getSourceNodes } from '@schematics/angular/utility/ast-utils'; diff --git a/packages/schematics/migrations/update-7-8-1/update-7-8-1.spec.ts b/packages/schematics/migrations/update-7-8-1/update-7-8-1.spec.ts index 15190123f9..28e8c20343 100644 --- a/packages/schematics/migrations/update-7-8-1/update-7-8-1.spec.ts +++ b/packages/schematics/migrations/update-7-8-1/update-7-8-1.spec.ts @@ -1,6 +1,6 @@ import { Tree } from '@angular-devkit/schematics'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import { serializeJson } from '../../src/utils/fileutils'; +import { serializeJson } from '@nrwl/workspace'; import * as path from 'path'; diff --git a/packages/schematics/migrations/update-7-8-1/update-7-8-1.ts b/packages/schematics/migrations/update-7-8-1/update-7-8-1.ts index 7bd87454cb..8f97ddf93d 100644 --- a/packages/schematics/migrations/update-7-8-1/update-7-8-1.ts +++ b/packages/schematics/migrations/update-7-8-1/update-7-8-1.ts @@ -4,7 +4,7 @@ import { SchematicContext, Tree } from '@angular-devkit/schematics'; -import { updateJsonInTree } from '../../src/utils/ast-utils'; +import { updateJsonInTree } from '@nrwl/workspace'; import { stripIndents } from '@angular-devkit/core/src/utils/literals'; function displayInformation(host: Tree, context: SchematicContext) { diff --git a/packages/schematics/package.json b/packages/schematics/package.json index b51c1121c5..a3bf3046f4 100644 --- a/packages/schematics/package.json +++ b/packages/schematics/package.json @@ -14,10 +14,6 @@ "Schematics", "Angular CLI" ], - "bin": { - "create-nx-workspace": "./bin/create-nx-workspace.js", - "nx": "./src/command-line/nx.js" - }, "main": "index.js", "types": "index.d.js", "author": "Victor Savkin", @@ -38,7 +34,6 @@ "migrations": "./migrations/migrations.json" }, "dependencies": { - "@nrwl/react": "*", "app-root-path": "^2.0.1", "cosmiconfig": "4.0.0", "fs-extra": "6.0.0", diff --git a/packages/schematics/src/collection.json b/packages/schematics/src/collection.json index 27fb2f246f..810c35df2b 100644 --- a/packages/schematics/src/collection.json +++ b/packages/schematics/src/collection.json @@ -2,38 +2,5 @@ "name": "nx", "version": "0.1", "extends": "@schematics/angular", - "schematics": { - "ng-add": { - "factory": "./collection/ng-add", - "schema": "./collection/ng-add/schema.json", - "description": "Convert an existing CLI project into an Nx Workspace", - "hidden": true - }, - - "ng-new": { - "factory": "./collection/ng-new", - "schema": "./collection/ng-new/schema.json", - "description": "Create a workspace" - }, - - "workspace": { - "factory": "./collection/workspace", - "schema": "./collection/workspace/schema.json", - "description": "Create an empty workspace", - "hidden": true - }, - - "library": { - "factory": "./collection/library/library", - "schema": "./collection/library/schema.json", - "aliases": ["lib"], - "description": "Create a Typescript library" - }, - - "workspace-schematic": { - "factory": "./collection/workspace-schematic", - "schema": "./collection/workspace-schematic/schema.json", - "description": "Generates a custom schematic" - } - } + "schematics": {} } diff --git a/packages/schematics/src/collection/ng-add/ng-add.spec.ts b/packages/schematics/src/collection/ng-add/ng-add.spec.ts deleted file mode 100644 index f7a7f46664..0000000000 --- a/packages/schematics/src/collection/ng-add/ng-add.spec.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import * as path from 'path'; -import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { schematicRunner } from '@nrwl/schematics/src/utils/testing-utils'; - -describe('workspace', () => { - let appTree: Tree; - - beforeEach(() => { - appTree = new VirtualTree(); - }); - - it('should error if no package.json is present', () => { - expect(() => { - schematicRunner.runSchematic('ng-add', { name: 'myApp' }, appTree); - }).toThrow('Cannot find package.json'); - }); - - it('should error if no e2e/protractor.conf.js is present', () => { - expect(() => { - appTree.create('/package.json', JSON.stringify({})); - appTree.create( - '/angular.json', - JSON.stringify({ - projects: { - proj1: { - architect: {} - }, - 'proj1-e2e': { - architect: { - e2e: { - options: { - protractorConfig: 'e2e/protractor.conf.js' - } - } - } - } - } - }) - ); - schematicRunner.runSchematic('ng-add', { name: 'proj1' }, appTree); - }).toThrow( - 'An e2e project was specified but e2e/protractor.conf.js could not be found.' - ); - }); - - it('should error if no angular.json is present', () => { - expect(() => { - appTree.create('/package.json', JSON.stringify({})); - appTree.create('/e2e/protractor.conf.js', ''); - schematicRunner.runSchematic('ng-add', { name: 'myApp' }, appTree); - }).toThrow('Cannot find angular.json'); - }); - - it('should error if the angular.json specifies more than one app', () => { - appTree.create('/package.json', JSON.stringify({})); - appTree.create('/e2e/protractor.conf.js', ''); - appTree.create( - '/angular.json', - JSON.stringify({ - projects: { - proj1: {}, - 'proj1-e2e': {}, - proj2: {}, - 'proj2-e2e': {} - } - }) - ); - expect(() => { - schematicRunner.runSchematic('ng-add', { name: 'myApp' }, appTree); - }).toThrow('Can only convert projects with one app'); - }); -}); diff --git a/packages/schematics/src/collection/ng-new/index.ts b/packages/schematics/src/collection/ng-new/index.ts deleted file mode 100644 index f62f3984d8..0000000000 --- a/packages/schematics/src/collection/ng-new/index.ts +++ /dev/null @@ -1,278 +0,0 @@ -import { - chain, - move, - noop, - Rule, - schematic, - SchematicContext, - Tree, - externalSchematic -} from '@angular-devkit/schematics'; -import { Schema } from './schema'; -import { - addImportToModule, - insert, - updateJsonInTree -} from '../../utils/ast-utils'; -import * as ts from 'typescript'; -import { insertImport } from '@schematics/angular/utility/ast-utils'; -import { - NodePackageInstallTask, - RepositoryInitializerTask -} from '@angular-devkit/schematics/tasks'; -import { Framework } from '../../utils/frameworks'; -import { formatFiles } from '../../utils/rules/format-files'; -import { toFileName } from '../../utils/name-utils'; - -export default function(options: Schema): Rule { - options = normalizeOptions(options); - - const workspaceOpts = { ...options, preset: undefined }; - return (host: Tree, context: SchematicContext) => { - return chain([ - schematic('workspace', workspaceOpts), - createPreset(options), - move('/', options.directory), - addTasks(options), - formatFiles() - ])(Tree.empty(), context); - }; -} - -function createPreset(options: Schema): Rule { - if (options.preset === 'empty') { - return noop(); - } else if (options.preset === 'angular') { - return chain([ - externalSchematic( - '@nrwl/angular', - 'application', - { - name: options.name, - style: options.style - }, - { interactive: false } - ), - setDefaultAppFramework(Framework.Angular) - ]); - } else if (options.preset === 'react') { - return chain([ - externalSchematic( - '@nrwl/react', - 'application', - { - name: options.name, - style: options.style - }, - { interactive: false } - ), - setDefaultAppFramework(Framework.React) - ]); - } else if (options.preset === 'web-components') { - return chain([ - externalSchematic( - '@nrwl/web', - 'application', - { - name: options.name, - style: options.style - }, - { interactive: false } - ), - setDefaultAppFramework(Framework.WebComponents) - ]); - } else { - return chain([ - externalSchematic( - '@nrwl/angular', - 'application', - { name: options.name, style: options.style }, - { interactive: false } - ), - externalSchematic( - '@nrwl/nest', - 'application', - { - name: 'api', - frontendProject: options.name - }, - { interactive: false } - ), - schematic('library', { name: 'api-interface' }, { interactive: false }), - setDefaultAppFramework(Framework.Angular), - connectFrontendAndApi(options) - ]); - } -} - -function connectFrontendAndApi(options: Schema) { - return (host: Tree) => { - host.create( - 'libs/api-interface/src/lib/interfaces.ts', - `export interface Message { message: string }` - ); - host.overwrite( - 'libs/api-interface/src/index.ts', - `export * from './lib/interfaces';` - ); - - const modulePath = `apps/${options.name}/src/app/app.module.ts`; - const moduleFile = ts.createSourceFile( - modulePath, - host.read(modulePath).toString(), - ts.ScriptTarget.Latest, - true - ); - insert(host, modulePath, [ - insertImport( - moduleFile, - modulePath, - 'HttpClientModule', - `@angular/common/http` - ), - ...addImportToModule( - moduleFile, - `@angular/common/http`, - `HttpClientModule` - ) - ]); - - const scope = options.npmScope ? options.npmScope : options.name; - const style = options.style ? options.style : 'css'; - host.overwrite( - `apps/${options.name}/src/app/app.component.ts`, - `import { Component } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { Message } from '@${scope}/api-interface'; - -@Component({ - selector: '${scope}-root', - templateUrl: './app.component.html', - styleUrls: ['./app.component.${style}'] -}) -export class AppComponent { - hello$ = this.http.get('/api/hello') - constructor(private http: HttpClient) {} -} - ` - ); - - host.overwrite( - `apps/${options.name}/src/app/app.component.spec.ts`, - `import { Component } from '@angular/core'; -import { TestBed, async } from '@angular/core/testing'; -import { HttpClientModule } from '@angular/common/http'; -import { AppComponent } from './app.component'; - -describe('AppComponent', () => { - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [AppComponent], - imports: [HttpClientModule] - }).compileComponents(); - })); - - it('should create the app', () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.debugElement.componentInstance; - expect(app).toBeTruthy(); - }); -}); - ` - ); - - host.overwrite( - `apps/${options.name}/src/app/app.component.html`, - `
-

Welcome to ${options.name}!

- -
-
Message: {{ (hello$|async)|json }}
- ` - ); - - host.overwrite( - `apps/api/src/app/app.controller.ts`, - `import { Controller, Get } from '@nestjs/common'; - -import { Message } from '@${scope}/api-interface'; - -import { AppService } from './app.service'; - -@Controller() -export class AppController { - constructor(private readonly appService: AppService) {} - - @Get('hello') - getData(): Message { - return this.appService.getData(); - } -} - ` - ); - - host.overwrite( - `apps/api/src/app/app.service.ts`, - `import { Injectable } from '@nestjs/common'; -import { Message } from '@${scope}/api-interface'; - -@Injectable() -export class AppService { - getData(): Message { - return { message: 'Welcome to api!' }; - } -} - ` - ); - }; -} - -function addTasks(options: Schema) { - return (host: Tree, context: SchematicContext) => { - let packageTask; - if (!options.skipInstall) { - packageTask = context.addTask( - new NodePackageInstallTask(options.directory) - ); - } - if (!options.skipGit) { - const commit = - typeof options.commit == 'object' - ? options.commit - : !!options.commit - ? {} - : false; - context.addTask( - new RepositoryInitializerTask(options.directory, commit), - packageTask ? [packageTask] : [] - ); - } - }; -} - -function setDefaultAppFramework(framework: Framework) { - return updateJsonInTree('angular.json', json => { - if (!json.schematics) { - json.schematics = {}; - } - if (!json.schematics['@nrwl/schematics:application']) { - json.schematics['@nrwl/schematics:application'] = {}; - } - if (!json.schematics['@nrwl/schematics:application'].framework) { - json.schematics['@nrwl/schematics:application'].framework = framework; - } - return json; - }); -} - -function normalizeOptions(options: Schema): Schema { - options.name = toFileName(options.name); - if (!options.directory) { - options.directory = options.name; - } - - return options; -} diff --git a/packages/schematics/src/collection/ng-new/ng-new.spec.ts b/packages/schematics/src/collection/ng-new/ng-new.spec.ts deleted file mode 100644 index 0b9200f795..0000000000 --- a/packages/schematics/src/collection/ng-new/ng-new.spec.ts +++ /dev/null @@ -1,107 +0,0 @@ -import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import * as path from 'path'; -import { Tree } from '@angular-devkit/schematics'; -import { Framework } from '../../utils/frameworks'; - -describe('ng-new', () => { - const schematicRunner = new SchematicTestRunner( - '@nrwl/schematics', - path.join(__dirname, '../../collection.json') - ); - - let projectTree: Tree; - - beforeEach(() => { - projectTree = Tree.empty(); - }); - - it('should create files (preset = angular)', async () => { - const tree = await schematicRunner - .runSchematicAsync( - 'ng-new', - { name: 'proj', preset: 'angular' }, - projectTree - ) - .toPromise(); - expect(tree.exists('/proj/apps/proj/src/app/app.component.ts')).toBe(true); - - expect( - JSON.parse(tree.readContent('/proj/angular.json')).schematics[ - '@nrwl/schematics:application' - ].framework - ).toBe(Framework.Angular); - }); - - it('should create files (preset = react)', async () => { - const tree = await schematicRunner - .runSchematicAsync( - 'ng-new', - { name: 'proj', preset: 'react' }, - projectTree - ) - .toPromise(); - expect(tree.exists('/proj/apps/proj/src/main.tsx')).toBe(true); - expect( - JSON.parse(tree.readContent('/proj/angular.json')).schematics[ - '@nrwl/schematics:application' - ].framework - ).toBe(Framework.React); - }); - - it('should create files (preset = web-components)', async () => { - const tree = await schematicRunner - .runSchematicAsync( - 'ng-new', - { name: 'proj', preset: 'web-components' }, - projectTree - ) - .toPromise(); - expect(tree.exists('/proj/apps/proj/src/main.ts')).toBe(true); - expect( - JSON.parse(tree.readContent('/proj/angular.json')).schematics[ - '@nrwl/schematics:application' - ].framework - ).toBe(Framework.WebComponents); - }); - - describe('--preset full-stack', () => { - it('should create files', async () => { - const tree = await schematicRunner - .runSchematicAsync( - 'ng-new', - { name: 'proj', preset: 'full-stack' }, - projectTree - ) - .toPromise(); - expect(tree.exists('/proj/apps/proj/src/app/app.component.ts')).toBe( - true - ); - expect(tree.exists('/proj/apps/api/src/app/app.controller.ts')).toBe( - true - ); - expect( - tree.exists('/proj/libs/api-interface/src/lib/interfaces.ts') - ).toBe(true); - }); - - it('should work with unnormalized names', async () => { - const tree = await schematicRunner - .runSchematicAsync( - 'ng-new', - { name: 'myProj', preset: 'full-stack' }, - projectTree - ) - .toPromise(); - - expect( - tree.exists('/my-proj/apps/my-proj/src/app/app.component.ts') - ).toBe(true); - expect(tree.exists('/my-proj/apps/api/src/app/app.controller.ts')).toBe( - true - ); - expect( - tree.exists('/my-proj/libs/api-interface/src/lib/interfaces.ts') - ).toBe(true); - }); - }); -}); diff --git a/packages/schematics/src/lib-versions.ts b/packages/schematics/src/lib-versions.ts deleted file mode 100644 index ef6ab74734..0000000000 --- a/packages/schematics/src/lib-versions.ts +++ /dev/null @@ -1,15 +0,0 @@ -export const nxVersion = '*'; -export const angularCliVersion = '7.3.1'; -export const schematicsVersion = '*'; -export const latestMigration = '20180507-create-nx-json'; -export const prettierVersion = '1.16.4'; -export const typescriptVersion = '3.2.2'; - -export const libVersions = { - nxVersion, - angularCliVersion, - schematicsVersion, - prettierVersion, - latestMigration, - typescriptVersion -}; diff --git a/packages/schematics/src/migrator/migrator.ts b/packages/schematics/src/migrator/migrator.ts index 4817d39a59..5be556b8d5 100644 --- a/packages/schematics/src/migrator/migrator.ts +++ b/packages/schematics/src/migrator/migrator.ts @@ -1,7 +1,7 @@ import * as fs from 'fs'; import * as path from 'path'; -import { updateJsonFile, readCliConfigFile } from '../utils/fileutils'; +import { updateJsonFile, readCliConfigFile } from '@nrwl/workspace'; type Migration = { description: string; run(): void }; type MigrationName = { name: string; migration: Migration }; diff --git a/packages/schematics/testing.ts b/packages/schematics/testing.ts index 8bf8e97cee..e69de29bb2 100644 --- a/packages/schematics/testing.ts +++ b/packages/schematics/testing.ts @@ -1,5 +0,0 @@ -export { - createEmptyWorkspace, - createApp, - createLib -} from './src/utils/testing-utils'; diff --git a/packages/web/package.json b/packages/web/package.json index 4907199341..b6ea70ecfc 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -29,14 +29,9 @@ "migrations": "./migrations.json" }, "peerDependencies": { - "@nrwl/schematics": "*", - "@nrwl/builders": "*" + "@nrwl/workspace": "*" }, "dependencies": { - "@angular-devkit/architect": "~0.13.1", - "@angular-devkit/core": "~7.3.1", - "@angular-devkit/schematics": "~7.3.1", - "@angular-devkit/build-angular": "~0.13.1", "@nrwl/cypress": "*", "@nrwl/jest": "*" } diff --git a/packages/web/src/builders/build/build.builder.spec.ts b/packages/web/src/builders/build/build.builder.spec.ts index 79f64dbb36..190f925013 100644 --- a/packages/web/src/builders/build/build.builder.spec.ts +++ b/packages/web/src/builders/build/build.builder.spec.ts @@ -62,7 +62,7 @@ describe('WebBuildBuilder', () => { root: normalize(__dirname), sourceRoot: join(normalize(__dirname), 'apps/webapp'), projectType: 'application', - builder: '@nrwl/builders:node-build', + builder: '@nrwl/node:build', options: testOptions }); @@ -81,7 +81,7 @@ describe('WebBuildBuilder', () => { root: normalize(__dirname), sourceRoot: join(normalize(__dirname), 'apps/webapp'), projectType: 'application', - builder: '@nrwl/builders:node-build', + builder: '@nrwl/node:build', options: testOptions }) .toPromise(); diff --git a/packages/web/src/builders/build/build.builder.ts b/packages/web/src/builders/build/build.builder.ts index 1080a35c85..fa05ed14cf 100644 --- a/packages/web/src/builders/build/build.builder.ts +++ b/packages/web/src/builders/build/build.builder.ts @@ -15,7 +15,7 @@ import { StylePreprocessorOptions, Budget } from '@angular-devkit/build-angular'; -import { BuildBuilderOptions } from '@nrwl/builders'; +import { BuildBuilderOptions } from '@nrwl/workspace'; import { normalizeWebBuildOptions } from '../../utils/normalize'; import { getWebConfig } from '../../utils/web.config'; diff --git a/packages/web/src/schematics/application/application.spec.ts b/packages/web/src/schematics/application/application.spec.ts index bd53f2462a..0ef528932e 100644 --- a/packages/web/src/schematics/application/application.spec.ts +++ b/packages/web/src/schematics/application/application.spec.ts @@ -1,7 +1,7 @@ import { Tree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import * as stripJsonComments from 'strip-json-comments'; -import { readJsonInTree, NxJson } from '@nrwl/schematics'; +import { readJsonInTree, NxJson } from '@nrwl/workspace'; import { runSchematic } from '../../utils/testing'; describe('app', () => { diff --git a/packages/web/src/schematics/application/application.ts b/packages/web/src/schematics/application/application.ts index 8e268bd0dd..56f5cbebf0 100644 --- a/packages/web/src/schematics/application/application.ts +++ b/packages/web/src/schematics/application/application.ts @@ -14,11 +14,11 @@ import { filter } from '@angular-devkit/schematics'; import { Schema } from './schema'; -import { updateJsonInTree, NxJson } from '@nrwl/schematics'; -import { toFileName, names } from '@nrwl/schematics/src/utils/name-utils'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; -import { getNpmScope } from '@nrwl/schematics/src/utils/cli-config-utils'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +import { updateJsonInTree, NxJson } from '@nrwl/workspace'; +import { toFileName, names } from '@nrwl/workspace'; +import { offsetFromRoot } from '@nrwl/workspace'; +import { getNpmScope } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; interface NormalizedSchema extends Schema { projectName: string; diff --git a/packages/web/src/schematics/ng-add/ng-add.spec.ts b/packages/web/src/schematics/ng-add/ng-add.spec.ts index e6d9d88c4b..1aab616b86 100644 --- a/packages/web/src/schematics/ng-add/ng-add.spec.ts +++ b/packages/web/src/schematics/ng-add/ng-add.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; import { join } from 'path'; -import { readJsonInTree } from '@nrwl/schematics'; +import { readJsonInTree } from '@nrwl/workspace'; describe('ng-add', () => { let tree: Tree; diff --git a/packages/web/src/schematics/ng-add/ng-add.ts b/packages/web/src/schematics/ng-add/ng-add.ts index a5cce4810e..fd351dabfc 100644 --- a/packages/web/src/schematics/ng-add/ng-add.ts +++ b/packages/web/src/schematics/ng-add/ng-add.ts @@ -5,8 +5,8 @@ import { noop, Tree } from '@angular-devkit/schematics'; -import { updateJsonInTree, readJsonInTree } from '@nrwl/schematics'; -import { addDepsToPackageJson } from '@nrwl/schematics/src/utils/ast-utils'; +import { updateJsonInTree, readJsonInTree } from '@nrwl/workspace'; +import { addDepsToPackageJson } from '@nrwl/workspace'; import { nxVersion, documentRegisterElementVersion diff --git a/packages/web/src/utils/devserver.config.ts b/packages/web/src/utils/devserver.config.ts index ba4236f057..dd41937705 100644 --- a/packages/web/src/utils/devserver.config.ts +++ b/packages/web/src/utils/devserver.config.ts @@ -11,7 +11,7 @@ import { Logger } from '@angular-devkit/core/src/logger'; import { WebBuildBuilderOptions } from '../builders/build/build.builder'; import { WebDevServerOptions } from '../builders/dev-server/dev-server.builder'; import { buildServePath } from './serve-path'; -import { OptimizationOptions } from '@nrwl/builders'; +import { OptimizationOptions } from '@nrwl/workspace'; export function getDevServerConfig( buildOptions: WebBuildBuilderOptions, diff --git a/packages/web/src/utils/normalize.ts b/packages/web/src/utils/normalize.ts index 01c5151670..1518a103f1 100644 --- a/packages/web/src/utils/normalize.ts +++ b/packages/web/src/utils/normalize.ts @@ -2,7 +2,7 @@ import { Path } from '@angular-devkit/core'; import { resolve } from 'path'; import { BuildOptions } from '@angular-devkit/build-angular/src/angular-cli-files/models/build-options'; import { NormalizedBrowserBuilderSchema } from '@angular-devkit/build-angular'; -import { normalizeBuildOptions } from '@nrwl/builders'; +import { normalizeBuildOptions } from '@nrwl/workspace'; import { WebBuildBuilderOptions } from '../builders/build/build.builder'; export function normalizeWebBuildOptions( diff --git a/packages/web/src/utils/web.config.ts b/packages/web/src/utils/web.config.ts index 6ff29f0a12..e940f094e4 100644 --- a/packages/web/src/utils/web.config.ts +++ b/packages/web/src/utils/web.config.ts @@ -15,7 +15,7 @@ import { import typescript = require('typescript'); import { WebBuildBuilderOptions } from '../builders/build/build.builder'; import { convertBuildOptions } from './normalize'; -import { getBaseWebpackPartial, readTsConfig } from '@nrwl/builders'; +import { getBaseWebpackPartial, readTsConfig } from '@nrwl/workspace'; export function getWebConfig(options: WebBuildBuilderOptions, logger: Logger) { const tsConfig = readTsConfig(options.tsConfig); diff --git a/packages/schematics/bin/create-nx-workspace.ts b/packages/workspace/bin/create-nx-workspace.ts similarity index 97% rename from packages/schematics/bin/create-nx-workspace.ts rename to packages/workspace/bin/create-nx-workspace.ts index 84095d4938..9869ee9d00 100644 --- a/packages/schematics/bin/create-nx-workspace.ts +++ b/packages/workspace/bin/create-nx-workspace.ts @@ -28,8 +28,8 @@ if (parsedArgs.help) { } const nxTool = { - name: 'Schematics', - packageName: '@nrwl/schematics' + name: 'Nx Workspace', + packageName: '@nrwl/workspace' }; let useYarn = true; diff --git a/packages/builders/src/builders.json b/packages/workspace/builders.json similarity index 55% rename from packages/builders/src/builders.json rename to packages/workspace/builders.json index 76a7000e8e..a7b82d2066 100644 --- a/packages/builders/src/builders.json +++ b/packages/workspace/builders.json @@ -2,8 +2,8 @@ "$schema": "@angular-devkit/architect/src/builders-schema.json", "builders": { "run-commands": { - "class": "./run-commands/run-commands.builder", - "schema": "./run-commands/schema.json", + "class": "./src/builders/run-commands/run-commands.builder", + "schema": "./src/builders/run-commands/schema.json", "description": "Run commands" } } diff --git a/packages/workspace/collection.json b/packages/workspace/collection.json new file mode 100644 index 0000000000..acc57360af --- /dev/null +++ b/packages/workspace/collection.json @@ -0,0 +1,38 @@ +{ + "name": "nx/workspace", + "version": "0.1", + "schematics": { + "workspace": { + "factory": "./src/schematics/workspace/workspace", + "schema": "./src/schematics/workspace/schema.json", + "description": "Create an empty workspace", + "hidden": true + }, + + "ng-add": { + "factory": "./src/schematics/ng-add/ng-add", + "schema": "./src/schematics/ng-add/schema.json", + "description": "Convert an existing CLI project into an Nx Workspace", + "hidden": true + }, + + "ng-new": { + "factory": "./src/schematics/ng-new/ng-new", + "schema": "./src/schematics/ng-new/schema.json", + "description": "Create a workspace" + }, + + "library": { + "factory": "./src/schematics/library/library", + "schema": "./src/schematics/library/schema.json", + "aliases": ["lib"], + "description": "Create a library" + }, + + "workspace-schematic": { + "factory": "./src/schematics/workspace-schematic/workspace-schematic", + "schema": "./src/schematics/workspace-schematic/schema.json", + "description": "Generates a workspace schematic" + } + } +} diff --git a/packages/workspace/index.ts b/packages/workspace/index.ts new file mode 100644 index 0000000000..8beb22c7ee --- /dev/null +++ b/packages/workspace/index.ts @@ -0,0 +1,70 @@ +export { BuildBuilderOptions, OptimizationOptions } from './src/utils/types'; +export { readTsConfig } from './src/utils/typescript'; +export { + getBaseWebpackPartial, + OUT_FILENAME +} from './src/utils/webpack/config'; +export { normalizeBuildOptions } from './src/utils/normalize'; +export { + toPropertyName, + toClassName, + toFileName, + names, + findModuleParent +} from './src/utils/name-utils'; +export { + serializeJson, + renameSync, + updateJsonFile, + readJsonFile, + readCliConfigFile, + copyFile +} from './src/utils/fileutils'; +export { + offsetFromRoot, + ExistingPrettierConfig, + resolveUserExistingPrettierConfig +} from './src/utils/common'; +export { commandsObject } from './src/command-line/nx-commands'; +export { readAngularJson, readNxJson, NxJson } from './src/command-line/shared'; +export { + readJsonInTree, + updateJsonInTree, + addImportToModule, + addImportToTestBed, + getDecoratorPropertyValueNode, + insert, + replaceNodeValue, + addDepsToPackageJson, + addEntryComponents, + addMethod, + readBootstrapInfo, + removeFromNgModule, + addRoute, + addIncludeToTsConfig, + addGlobal, + getProjectConfig, + addProviderToModule, + addDeclarationToModule, + addParameterToConstructor, + getBootstrapComponent, + createOrUpdate +} from './src/utils/ast-utils'; + +export { + getNpmScope, + getWorkspacePath, + replaceAppNameWithPath, + angularSchematicNames, + editTarget, + parseTarget, + serializeTarget +} from './src/utils/cli-config-utils'; + +export { formatFiles } from './src/utils/rules/format-files'; +export { deleteFile } from './src/utils/rules/deleteFile'; +export { updateKarmaConf } from './src/utils/rules/update-karma-conf'; +export { Framework } from './src/utils/frameworks'; +import * as strings from './src/utils/strings'; + +export const stringUtils = strings; diff --git a/packages/workspace/migrations.json b/packages/workspace/migrations.json new file mode 100644 index 0000000000..63001b4458 --- /dev/null +++ b/packages/workspace/migrations.json @@ -0,0 +1,3 @@ +{ + "schematics": {} +} diff --git a/packages/workspace/package.json b/packages/workspace/package.json new file mode 100644 index 0000000000..dd871b8d9c --- /dev/null +++ b/packages/workspace/package.json @@ -0,0 +1,54 @@ +{ + "name": "@nrwl/workspace", + "version": "0.0.1", + "description": "Power-ups for Angular CLI", + "repository": { + "type": "git", + "url": "git+https://github.com/nrwl/nx.git" + }, + "keywords": [ + "Workspace", + "Monorepo", + "Schematics", + "Nx", + "Angular CLI" + ], + "main": "index.js", + "types": "index.d.ts", + "author": "Victor Savkin", + "license": "MIT", + "bugs": { + "url": "https://github.com/nrwl/nx/issues" + }, + "bin": { + "create-nx-workspace": "./bin/create-nx-workspace.js", + "nx": "./src/command-line/nx.js" + }, + "homepage": "https://nx.dev", + "schematics": "./collection.json", + "builders": "./builders.json", + "ng-update": { + "requirements": {}, + "migrations": "./migrations.json" + }, + "dependencies": { + "@angular-devkit/core": "~7.3.1", + "@angular-devkit/schematics": "~7.3.1", + "@angular-devkit/build-angular": "~0.13.8", + "app-root-path": "^2.0.1", + "cosmiconfig": "4.0.0", + "fs-extra": "6.0.0", + "graphviz": "0.0.8", + "ignore": "5.0.4", + "npm-run-all": "4.1.5", + "opn": "^5.3.0", + "rxjs": "6.3.3", + "semver": "5.4.1", + "strip-json-comments": "2.0.1", + "tmp": "0.0.33", + "viz.js": "^1.8.1", + "yargs-parser": "10.0.0", + "yargs": "^11.0.0", + "prettier": "1.16.4" + } +} diff --git a/packages/builders/src/run-commands/run-commands.builder.spec.ts b/packages/workspace/src/builders/run-commands/run-commands.builder.spec.ts similarity index 100% rename from packages/builders/src/run-commands/run-commands.builder.spec.ts rename to packages/workspace/src/builders/run-commands/run-commands.builder.spec.ts diff --git a/packages/builders/src/run-commands/run-commands.builder.ts b/packages/workspace/src/builders/run-commands/run-commands.builder.ts similarity index 100% rename from packages/builders/src/run-commands/run-commands.builder.ts rename to packages/workspace/src/builders/run-commands/run-commands.builder.ts diff --git a/packages/builders/src/run-commands/schema.json b/packages/workspace/src/builders/run-commands/schema.json similarity index 100% rename from packages/builders/src/run-commands/schema.json rename to packages/workspace/src/builders/run-commands/schema.json diff --git a/packages/schematics/src/command-line/affected-apps.spec.ts b/packages/workspace/src/command-line/affected-apps.spec.ts similarity index 100% rename from packages/schematics/src/command-line/affected-apps.spec.ts rename to packages/workspace/src/command-line/affected-apps.spec.ts diff --git a/packages/schematics/src/command-line/affected-apps.ts b/packages/workspace/src/command-line/affected-apps.ts similarity index 100% rename from packages/schematics/src/command-line/affected-apps.ts rename to packages/workspace/src/command-line/affected-apps.ts diff --git a/packages/schematics/src/command-line/affected.ts b/packages/workspace/src/command-line/affected.ts similarity index 100% rename from packages/schematics/src/command-line/affected.ts rename to packages/workspace/src/command-line/affected.ts diff --git a/packages/schematics/src/command-line/dep-graph.spec.ts b/packages/workspace/src/command-line/dep-graph.spec.ts similarity index 100% rename from packages/schematics/src/command-line/dep-graph.spec.ts rename to packages/workspace/src/command-line/dep-graph.spec.ts diff --git a/packages/schematics/src/command-line/dep-graph.ts b/packages/workspace/src/command-line/dep-graph.ts similarity index 100% rename from packages/schematics/src/command-line/dep-graph.ts rename to packages/workspace/src/command-line/dep-graph.ts diff --git a/packages/schematics/src/command-line/deps-calculator.spec.ts b/packages/workspace/src/command-line/deps-calculator.spec.ts similarity index 100% rename from packages/schematics/src/command-line/deps-calculator.spec.ts rename to packages/workspace/src/command-line/deps-calculator.spec.ts diff --git a/packages/schematics/src/command-line/deps-calculator.ts b/packages/workspace/src/command-line/deps-calculator.ts similarity index 100% rename from packages/schematics/src/command-line/deps-calculator.ts rename to packages/workspace/src/command-line/deps-calculator.ts diff --git a/packages/schematics/src/command-line/format.ts b/packages/workspace/src/command-line/format.ts similarity index 100% rename from packages/schematics/src/command-line/format.ts rename to packages/workspace/src/command-line/format.ts diff --git a/packages/schematics/src/command-line/lint.ts b/packages/workspace/src/command-line/lint.ts similarity index 100% rename from packages/schematics/src/command-line/lint.ts rename to packages/workspace/src/command-line/lint.ts diff --git a/packages/schematics/src/command-line/nx-commands.ts b/packages/workspace/src/command-line/nx-commands.ts similarity index 100% rename from packages/schematics/src/command-line/nx-commands.ts rename to packages/workspace/src/command-line/nx-commands.ts diff --git a/packages/schematics/src/command-line/nx-migrate.ts b/packages/workspace/src/command-line/nx-migrate.ts similarity index 100% rename from packages/schematics/src/command-line/nx-migrate.ts rename to packages/workspace/src/command-line/nx-migrate.ts diff --git a/packages/schematics/src/command-line/nx.ts b/packages/workspace/src/command-line/nx.ts similarity index 79% rename from packages/schematics/src/command-line/nx.ts rename to packages/workspace/src/command-line/nx.ts index 4c9ef2a207..6744a0dda2 100644 --- a/packages/schematics/src/command-line/nx.ts +++ b/packages/workspace/src/command-line/nx.ts @@ -1,5 +1,5 @@ #!/usr/bin/env node -import { commandsObject } from '@nrwl/schematics/src/command-line/nx-commands'; +import { commandsObject } from '@nrwl/workspace'; export interface GlobalNxArgs { help?: boolean; diff --git a/packages/schematics/src/command-line/shared.spec.ts b/packages/workspace/src/command-line/shared.spec.ts similarity index 100% rename from packages/schematics/src/command-line/shared.spec.ts rename to packages/workspace/src/command-line/shared.spec.ts diff --git a/packages/schematics/src/command-line/shared.ts b/packages/workspace/src/command-line/shared.ts similarity index 100% rename from packages/schematics/src/command-line/shared.ts rename to packages/workspace/src/command-line/shared.ts diff --git a/packages/schematics/src/command-line/touched.spec.ts b/packages/workspace/src/command-line/touched.spec.ts similarity index 100% rename from packages/schematics/src/command-line/touched.spec.ts rename to packages/workspace/src/command-line/touched.spec.ts diff --git a/packages/schematics/src/command-line/touched.ts b/packages/workspace/src/command-line/touched.ts similarity index 100% rename from packages/schematics/src/command-line/touched.ts rename to packages/workspace/src/command-line/touched.ts diff --git a/packages/schematics/src/command-line/update.ts b/packages/workspace/src/command-line/update.ts similarity index 98% rename from packages/schematics/src/command-line/update.ts rename to packages/workspace/src/command-line/update.ts index d3dead4606..dbaca34a9d 100644 --- a/packages/schematics/src/command-line/update.ts +++ b/packages/workspace/src/command-line/update.ts @@ -57,7 +57,7 @@ function calculateMigrationsToRun( if (latestMigration === 'ANGULAR CLI 6') { console.error(stripIndents` Nx update is now deprecated. - Please use "ng update @nrwl/schematics" instead. + Please use "ng update @nrwl/workspace" instead. `); process.exit(1); } diff --git a/packages/schematics/src/command-line/workspace-integrity-checks.spec.ts b/packages/workspace/src/command-line/workspace-integrity-checks.spec.ts similarity index 90% rename from packages/schematics/src/command-line/workspace-integrity-checks.spec.ts rename to packages/workspace/src/command-line/workspace-integrity-checks.spec.ts index 1f83fc489b..17843d5434 100644 --- a/packages/schematics/src/command-line/workspace-integrity-checks.spec.ts +++ b/packages/workspace/src/command-line/workspace-integrity-checks.spec.ts @@ -7,7 +7,7 @@ describe('WorkspaceIntegrityChecks', () => { '@nrwl/nx': '1.2.3' }, devDependencies: { - '@nrwl/schematics': '1.2.3' + '@nrwl/workspace': '1.2.3' } }; @@ -100,24 +100,24 @@ describe('WorkspaceIntegrityChecks', () => { }); describe('package.json is consistent', () => { - it('should not error when @nrwl/nx and @nrwl/schematics are in sync', () => { + it('should not error when @nrwl/nx and @nrwl/workspace are in sync', () => { const c = new WorkspaceIntegrityChecks([], [], packageJson); expect(c.run().length).toEqual(0); }); - it('should error when @nrwl/nx and @nrwl/schematics are not in sync', () => { + it('should error when @nrwl/nx and @nrwl/workspace are not in sync', () => { const c = new WorkspaceIntegrityChecks([], [], { dependencies: { '@nrwl/nx': '1.2.3' }, devDependencies: { - '@nrwl/schematics': '4.5.6' + '@nrwl/workspace': '4.5.6' } }); const errors = c.run(); expect(errors.length).toEqual(1); expect(errors[0].errors[0]).toEqual( - `The versions of the @nrwl/nx and @nrwl/schematics packages must be the same.` + `The versions of the @nrwl/nx and @nrwl/workspace packages must be the same.` ); }); }); diff --git a/packages/schematics/src/command-line/workspace-integrity-checks.ts b/packages/workspace/src/command-line/workspace-integrity-checks.ts similarity index 92% rename from packages/schematics/src/command-line/workspace-integrity-checks.ts rename to packages/workspace/src/command-line/workspace-integrity-checks.ts index 078517391d..156e44501d 100644 --- a/packages/schematics/src/command-line/workspace-integrity-checks.ts +++ b/packages/workspace/src/command-line/workspace-integrity-checks.ts @@ -22,13 +22,13 @@ export class WorkspaceIntegrityChecks { private packageJsonConsistencyCheck(): ErrorGroup[] { const nx = this.packageJson.dependencies['@nrwl/nx']; - const schematics = this.packageJson.devDependencies['@nrwl/schematics']; + const schematics = this.packageJson.devDependencies['@nrwl/workspace']; if (schematics && nx && nx !== schematics) { return [ { header: 'The package.json is inconsistent', errors: [ - 'The versions of the @nrwl/nx and @nrwl/schematics packages must be the same.' + 'The versions of the @nrwl/nx and @nrwl/workspace packages must be the same.' ] } ]; diff --git a/packages/schematics/src/command-line/workspace-results.spec.ts b/packages/workspace/src/command-line/workspace-results.spec.ts similarity index 100% rename from packages/schematics/src/command-line/workspace-results.spec.ts rename to packages/workspace/src/command-line/workspace-results.spec.ts diff --git a/packages/schematics/src/command-line/workspace-results.ts b/packages/workspace/src/command-line/workspace-results.ts similarity index 100% rename from packages/schematics/src/command-line/workspace-results.ts rename to packages/workspace/src/command-line/workspace-results.ts diff --git a/packages/schematics/src/command-line/workspace-schematic.ts b/packages/workspace/src/command-line/workspace-schematic.ts similarity index 100% rename from packages/schematics/src/command-line/workspace-schematic.ts rename to packages/workspace/src/command-line/workspace-schematic.ts diff --git a/packages/schematics/src/collection/library/files/lib/README.md b/packages/workspace/src/schematics/library/files/lib/README.md similarity index 100% rename from packages/schematics/src/collection/library/files/lib/README.md rename to packages/workspace/src/schematics/library/files/lib/README.md diff --git a/packages/schematics/src/collection/library/files/lib/src/index.ts__tmpl__ b/packages/workspace/src/schematics/library/files/lib/src/index.ts__tmpl__ similarity index 100% rename from packages/schematics/src/collection/library/files/lib/src/index.ts__tmpl__ rename to packages/workspace/src/schematics/library/files/lib/src/index.ts__tmpl__ diff --git a/packages/schematics/src/collection/library/files/lib/src/lib/__fileName__.ts__tmpl__ b/packages/workspace/src/schematics/library/files/lib/src/lib/__fileName__.ts__tmpl__ similarity index 100% rename from packages/schematics/src/collection/library/files/lib/src/lib/__fileName__.ts__tmpl__ rename to packages/workspace/src/schematics/library/files/lib/src/lib/__fileName__.ts__tmpl__ diff --git a/packages/schematics/src/collection/library/files/lib/tsconfig.json b/packages/workspace/src/schematics/library/files/lib/tsconfig.json similarity index 100% rename from packages/schematics/src/collection/library/files/lib/tsconfig.json rename to packages/workspace/src/schematics/library/files/lib/tsconfig.json diff --git a/packages/schematics/src/collection/library/files/lib/tsconfig.lib.json b/packages/workspace/src/schematics/library/files/lib/tsconfig.lib.json similarity index 100% rename from packages/schematics/src/collection/library/files/lib/tsconfig.lib.json rename to packages/workspace/src/schematics/library/files/lib/tsconfig.lib.json diff --git a/packages/schematics/src/collection/library/files/lib/tslint.json b/packages/workspace/src/schematics/library/files/lib/tslint.json similarity index 100% rename from packages/schematics/src/collection/library/files/lib/tslint.json rename to packages/workspace/src/schematics/library/files/lib/tslint.json diff --git a/packages/schematics/src/collection/library/library.spec.ts b/packages/workspace/src/schematics/library/library.spec.ts similarity index 96% rename from packages/schematics/src/collection/library/library.spec.ts rename to packages/workspace/src/schematics/library/library.spec.ts index 485e59b41b..883458f718 100644 --- a/packages/schematics/src/collection/library/library.spec.ts +++ b/packages/workspace/src/schematics/library/library.spec.ts @@ -1,8 +1,8 @@ import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace } from '@nrwl/schematics/testing'; -import { readJsonInTree } from '@nrwl/schematics/src/utils/ast-utils'; -import { NxJson } from '@nrwl/schematics/src/command-line/shared'; -import { runSchematic } from '../../utils/testing-utils'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; +import { readJsonInTree } from '@nrwl/workspace'; +import { NxJson } from '@nrwl/workspace'; +import { runSchematic } from '../../utils/testing'; describe('lib', () => { let appTree: Tree; diff --git a/packages/schematics/src/collection/library/library.ts b/packages/workspace/src/schematics/library/library.ts similarity index 90% rename from packages/schematics/src/collection/library/library.ts rename to packages/workspace/src/schematics/library/library.ts index 0553a1ccf4..efdfdc4c7f 100644 --- a/packages/schematics/src/collection/library/library.ts +++ b/packages/workspace/src/schematics/library/library.ts @@ -13,15 +13,12 @@ import { } from '@angular-devkit/schematics'; import { Schema } from './schema'; -import { NxJson } from '@nrwl/schematics'; -import { - updateJsonInTree, - readJsonInTree -} from '@nrwl/schematics/src/utils/ast-utils'; -import { toFileName, names } from '@nrwl/schematics/src/utils/name-utils'; -import { formatFiles } from '@nrwl/schematics/src/utils/rules/format-files'; +import { NxJson } from '@nrwl/workspace'; +import { updateJsonInTree, readJsonInTree } from '@nrwl/workspace'; +import { toFileName, names } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; import { join, normalize } from 'path'; -import { offsetFromRoot } from '@nrwl/schematics/src/utils/common'; +import { offsetFromRoot } from '@nrwl/workspace'; export interface NormalizedSchema extends Schema { name: string; @@ -94,7 +91,6 @@ function updateNxJson(options: NormalizedSchema): Rule { export default function(schema: Schema): Rule { return (host: Tree, context: SchematicContext) => { const options = normalizeOptions(schema); - return chain([ createFiles(options), !options.skipTsConfig ? updateTsConfig(options) : noop(), diff --git a/packages/schematics/src/collection/library/schema.d.ts b/packages/workspace/src/schematics/library/schema.d.ts similarity index 100% rename from packages/schematics/src/collection/library/schema.d.ts rename to packages/workspace/src/schematics/library/schema.d.ts diff --git a/packages/schematics/src/collection/library/schema.json b/packages/workspace/src/schematics/library/schema.json similarity index 100% rename from packages/schematics/src/collection/library/schema.json rename to packages/workspace/src/schematics/library/schema.json diff --git a/packages/schematics/src/collection/ng-add/files/.prettierignore b/packages/workspace/src/schematics/ng-add/files/.prettierignore similarity index 100% rename from packages/schematics/src/collection/ng-add/files/.prettierignore rename to packages/workspace/src/schematics/ng-add/files/.prettierignore diff --git a/packages/schematics/src/collection/ng-add/files/karma.conf.js b/packages/workspace/src/schematics/ng-add/files/karma.conf.js similarity index 100% rename from packages/schematics/src/collection/ng-add/files/karma.conf.js rename to packages/workspace/src/schematics/ng-add/files/karma.conf.js diff --git a/packages/schematics/src/collection/ng-add/files/tools/schematics/.gitkeep b/packages/workspace/src/schematics/ng-add/files/tools/schematics/.gitkeep similarity index 100% rename from packages/schematics/src/collection/ng-add/files/tools/schematics/.gitkeep rename to packages/workspace/src/schematics/ng-add/files/tools/schematics/.gitkeep diff --git a/packages/schematics/src/collection/ng-add/files/tools/tsconfig.tools.json b/packages/workspace/src/schematics/ng-add/files/tools/tsconfig.tools.json similarity index 100% rename from packages/schematics/src/collection/ng-add/files/tools/tsconfig.tools.json rename to packages/workspace/src/schematics/ng-add/files/tools/tsconfig.tools.json diff --git a/packages/workspace/src/schematics/ng-add/ng-add.spec.ts b/packages/workspace/src/schematics/ng-add/ng-add.spec.ts new file mode 100644 index 0000000000..b3592fe5e6 --- /dev/null +++ b/packages/workspace/src/schematics/ng-add/ng-add.spec.ts @@ -0,0 +1,81 @@ +import { Tree, VirtualTree } from '@angular-devkit/schematics'; +import { runSchematic } from '../../utils/testing'; + +describe('workspace', () => { + let appTree: Tree; + + beforeEach(() => { + appTree = new VirtualTree(); + }); + + it('should error if no package.json is present', async () => { + try { + await runSchematic('ng-add', { name: 'myApp' }, appTree); + fail('should throw'); + } catch (e) { + expect(e.message).toContain('Cannot find package.json'); + } + }); + + it('should error if no e2e/protractor.conf.js is present', async () => { + appTree.create('/package.json', JSON.stringify({})); + appTree.create( + '/angular.json', + JSON.stringify({ + projects: { + proj1: { + architect: {} + }, + 'proj1-e2e': { + architect: { + e2e: { + options: { + protractorConfig: 'e2e/protractor.conf.js' + } + } + } + } + } + }) + ); + + try { + await runSchematic('ng-add', { name: 'proj1' }, appTree); + } catch (e) { + expect(e.message).toContain( + 'An e2e project was specified but e2e/protractor.conf.js could not be found.' + ); + } + }); + + it('should error if no angular.json is present', async () => { + try { + appTree.create('/package.json', JSON.stringify({})); + appTree.create('/e2e/protractor.conf.js', ''); + await runSchematic('ng-add', { name: 'myApp' }, appTree); + } catch (e) { + expect(e.message).toContain('Cannot find angular.json'); + } + }); + + it('should error if the angular.json specifies more than one app', async () => { + appTree.create('/package.json', JSON.stringify({})); + appTree.create('/e2e/protractor.conf.js', ''); + appTree.create( + '/angular.json', + JSON.stringify({ + projects: { + proj1: {}, + 'proj1-e2e': {}, + proj2: {}, + 'proj2-e2e': {} + } + }) + ); + try { + await runSchematic('ng-add', { name: 'myApp' }, appTree); + } catch (e) { + expect(e.message).toContain('Can only convert projects with one app'); + } + }); +}); diff --git a/packages/schematics/src/collection/ng-add/index.ts b/packages/workspace/src/schematics/ng-add/ng-add.ts similarity index 85% rename from packages/schematics/src/collection/ng-add/index.ts rename to packages/workspace/src/schematics/ng-add/ng-add.ts index 50580aceff..e1f227597b 100755 --- a/packages/schematics/src/collection/ng-add/index.ts +++ b/packages/workspace/src/schematics/ng-add/ng-add.ts @@ -12,26 +12,29 @@ import { Schema } from './schema'; import * as path from 'path'; import { join } from 'path'; import { + nxVersion, angularCliVersion, prettierVersion, - schematicsVersion -} from '../../lib-versions'; + jasmineMarblesVersion +} from '../../utils/versions'; +import * as fs from 'fs'; +import * as ts from 'typescript'; +import { from } from 'rxjs'; +import { tap, mapTo, concatMap } from 'rxjs/operators'; +import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks'; +import { getAppModulePath } from '@schematics/angular/utility/ng-ast-utils'; +import { insertImport } from '@schematics/angular/utility/ast-utils'; +import { InsertChange } from '@schematics/angular/utility/change'; +import { readJsonInTree, updateJsonInTree } from '@nrwl/workspace'; +import { editTarget } from '@nrwl/workspace'; +import { renameSync, serializeJson, updateJsonFile } from '@nrwl/workspace'; import { offsetFromRoot, - resolveUserExistingPrettierConfig, - DEFAULT_NRWL_PRETTIER_CONFIG -} from '../../utils/common'; -import { - updateJsonFile, - serializeJson, - renameSync -} from '../../utils/fileutils'; -import { toFileName } from '../../utils/name-utils'; -import { updateJsonInTree, readJsonInTree } from '../../utils/ast-utils'; -import { editTarget } from '../../utils/cli-config-utils'; -import { from } from 'rxjs'; -import { tap, mapTo } from 'rxjs/operators'; -import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks'; + resolveUserExistingPrettierConfig +} from '@nrwl/workspace'; +import { addImportToModule } from '@nrwl/workspace'; +import { toFileName } from '@nrwl/workspace'; +import { DEFAULT_NRWL_PRETTIER_CONFIG } from '../workspace/workspace'; function updatePackageJson() { return updateJsonInTree('package.json', packageJson => { @@ -49,7 +52,7 @@ function updatePackageJson() { format: './node_modules/.bin/nx format:write', 'format:write': './node_modules/.bin/nx format:write', 'format:check': './node_modules/.bin/nx format:check', - update: 'ng update @nrwl/schematics', + update: 'ng update @nrwl/workspace', 'update:check': 'ng update', lint: './node_modules/.bin/nx lint && ng lint', 'dep-graph': './node_modules/.bin/nx dep-graph', @@ -60,16 +63,18 @@ function updatePackageJson() { if (!packageJson.dependencies) { packageJson.dependencies = {}; } - if (packageJson.dependencies['@nrwl/schematics']) { - delete packageJson.dependencies['@nrwl/schematics']; + if (packageJson.dependencies['@nrwl/angular']) { + delete packageJson.dependencies['@nrwl/angular']; } - if (!packageJson.devDependencies['@nrwl/schematics']) { - packageJson.devDependencies['@nrwl/schematics'] = schematicsVersion; + if (!packageJson.devDependencies['@nrwl/angular']) { + packageJson.devDependencies['@nrwl/angular'] = nxVersion; } if (!packageJson.devDependencies['@angular/cli']) { packageJson.devDependencies['@angular/cli'] = angularCliVersion; } - packageJson.devDependencies['karma'] = '~2.0.0'; + if (!packageJson.devDependencies['jasmine-marbles']) { + packageJson.devDependencies['jasmine-marbles'] = jasmineMarblesVersion; + } if (!packageJson.devDependencies['prettier']) { packageJson.devDependencies['prettier'] = prettierVersion; } @@ -88,7 +93,7 @@ function updateAngularCLIJson(options: Schema): Rule { ...angularJson, newProjectRoot: '', cli: { - defaultCollection: '@nrwl/schematics' + defaultCollection: '@nrwl/workspace' } }; @@ -376,7 +381,7 @@ function updateTsLint() { tslintJson[key] = undefined; }); tslintJson.rulesDirectory = tslintJson.rulesDirectory || []; - tslintJson.rulesDirectory.push('node_modules/@nrwl/schematics/src/tslint'); + tslintJson.rulesDirectory.push('node_modules/@nrwl/workspace/src/tslint'); tslintJson.rules['nx-enforce-module-boundaries'] = [ true, { @@ -586,7 +591,73 @@ function createAdditionalFiles(options: Schema): Rule { }; } -function checkCanConvertToWorkspace() { +function dedup(array: any[]): any[] { + const res = []; + + array.forEach(a => { + if (res.indexOf(a) === -1) { + res.push(a); + } + }); + return res; +} + +function insertInToString(originalString: string, pos: number, toAdd: string) { + return originalString.slice(0, pos) + toAdd + originalString.slice(pos); +} + +function addNxModule(options: Schema) { + return (host: Tree, context: SchematicContext) => { + const angularJson = readJsonInTree(host, 'angular.json'); + const app = angularJson.projects[options.name]; + const modulePath = path.resolve( + '.', + getAppModulePath(host, app.architect.build.options.main).slice(1) + ); + let content = fs.readFileSync(modulePath).toString(); + + // Bail if the module already cotains the import + if (content.includes('NxModule.forRoot()')) { + return host; + } + + let moduleSource = ts.createSourceFile( + modulePath, + content, + ts.ScriptTarget.Latest, + true + ); + const importChange: InsertChange = insertImport( + moduleSource, + modulePath, + 'NxModule', + '@nrwl/nx' + ) as InsertChange; + content = insertInToString(content, importChange.pos, importChange.toAdd); + + moduleSource = ts.createSourceFile( + modulePath, + content, + ts.ScriptTarget.Latest, + true + ); + + const ngModuleChange: InsertChange = addImportToModule( + moduleSource, + modulePath, + 'NxModule.forRoot()' + )[0] as InsertChange; + content = insertInToString( + content, + ngModuleChange.pos, + ngModuleChange.toAdd + ); + fs.writeFileSync(modulePath, content); + return host; + }; +} + +function checkCanConvertToWorkspace(options: Schema) { return (host: Tree, context: SchematicContext) => { try { if (!host.exists('package.json')) { @@ -651,7 +722,7 @@ export default function(schema: Schema): Rule { }) ]); return chain([ - checkCanConvertToWorkspace(), + checkCanConvertToWorkspace(options), mergeWith(templateSource), moveExistingFiles(options), createAdditionalFiles(options), @@ -661,6 +732,7 @@ export default function(schema: Schema): Rule { updateProjectTsLint(options), updateTsConfig(options), updateTsConfigsJson(options), + addNxModule(options), addInstallTask(options) ]); } diff --git a/packages/schematics/src/collection/ng-add/schema.d.ts b/packages/workspace/src/schematics/ng-add/schema.d.ts similarity index 100% rename from packages/schematics/src/collection/ng-add/schema.d.ts rename to packages/workspace/src/schematics/ng-add/schema.d.ts diff --git a/packages/schematics/src/collection/ng-add/schema.json b/packages/workspace/src/schematics/ng-add/schema.json similarity index 90% rename from packages/schematics/src/collection/ng-add/schema.json rename to packages/workspace/src/schematics/ng-add/schema.json index 005049fd9b..773237a794 100644 --- a/packages/schematics/src/collection/ng-add/schema.json +++ b/packages/workspace/src/schematics/ng-add/schema.json @@ -12,7 +12,7 @@ }, "skipInstall": { "type": "boolean", - "description": "Skip installing after adding @nrwl/schematics", + "description": "Skip installing after adding @nrwl/workspace", "default": false }, "name": { diff --git a/packages/workspace/src/schematics/ng-new/ng-new.spec.ts b/packages/workspace/src/schematics/ng-new/ng-new.spec.ts new file mode 100644 index 0000000000..4ff0730041 --- /dev/null +++ b/packages/workspace/src/schematics/ng-new/ng-new.spec.ts @@ -0,0 +1,103 @@ +describe('ng-new', () => { + it('should work', () => {}); + // const schematicRunner = new SchematicTestRunner( + // '@nrwl/workspace', + // path.join(__dirname, '../../collection.json') + // ); + // + // let projectTree: Tree; + // + // beforeEach(() => { + // projectTree = Tree.empty(); + // }); + // + // it('should create files (preset = angular)', async () => { + // const tree = await schematicRunner + // .runSchematicAsync( + // 'ng-new', + // { name: 'proj', preset: 'angular' }, + // projectTree + // ) + // .toPromise(); + // expect(tree.exists('/proj/apps/proj/src/app/app.component.ts')).toBe(true); + // + // expect( + // JSON.parse(tree.readContent('/proj/angular.json')).schematics[ + // '@nrwl/workspace:application' + // ].framework + // ).toBe(Framework.Angular); + // }); + // + // it('should create files (preset = react)', async () => { + // const tree = await schematicRunner + // .runSchematicAsync( + // 'ng-new', + // { name: 'proj', preset: 'react' }, + // projectTree + // ) + // .toPromise(); + // expect(tree.exists('/proj/apps/proj/src/main.tsx')).toBe(true); + // expect( + // JSON.parse(tree.readContent('/proj/angular.json')).schematics[ + // '@nrwl/workspace:application' + // ].framework + // ).toBe(Framework.React); + // }); + // + // it('should create files (preset = web-components)', async () => { + // const tree = await schematicRunner + // .runSchematicAsync( + // 'ng-new', + // { name: 'proj', preset: 'web-components' }, + // projectTree + // ) + // .toPromise(); + // expect(tree.exists('/proj/apps/proj/src/main.ts')).toBe(true); + // expect( + // JSON.parse(tree.readContent('/proj/angular.json')).schematics[ + // '@nrwl/workspace:application' + // ].framework + // ).toBe(Framework.WebComponents); + // }); + // + // describe('--preset full-stack', () => { + // it('should create files', async () => { + // const tree = await schematicRunner + // .runSchematicAsync( + // 'ng-new', + // { name: 'proj', preset: 'full-stack' }, + // projectTree + // ) + // .toPromise(); + // expect(tree.exists('/proj/apps/proj/src/app/app.component.ts')).toBe( + // true + // ); + // expect(tree.exists('/proj/apps/api/src/app/app.controller.ts')).toBe( + // true + // ); + // expect( + // tree.exists('/proj/libs/api-interface/src/lib/interfaces.ts') + // ).toBe(true); + // }); + // + // it('should work with unnormalized names', async () => { + // const tree = await schematicRunner + // .runSchematicAsync( + // 'ng-new', + // { name: 'myProj', preset: 'full-stack' }, + // projectTree + // ) + // .toPromise(); + // + // expect( + // tree.exists('/my-proj/apps/my-proj/src/app/app.component.ts') + // ).toBe(true); + // expect(tree.exists('/my-proj/apps/api/src/app/app.controller.ts')).toBe( + // true + // ); + // expect( + // tree.exists('/my-proj/libs/api-interface/src/lib/interfaces.ts') + // ).toBe(true); + // }); + // }); +}); diff --git a/packages/workspace/src/schematics/ng-new/ng-new.ts b/packages/workspace/src/schematics/ng-new/ng-new.ts new file mode 100644 index 0000000000..15d38b0e48 --- /dev/null +++ b/packages/workspace/src/schematics/ng-new/ng-new.ts @@ -0,0 +1,271 @@ +import { + chain, + move, + Rule, + schematic, + SchematicContext, + Tree +} from '@angular-devkit/schematics'; +import { Schema } from './schema'; +import { + NodePackageInstallTask, + RepositoryInitializerTask +} from '@angular-devkit/schematics/tasks'; +import { toFileName } from '@nrwl/workspace'; +import { formatFiles } from '@nrwl/workspace'; + +export default function(options: Schema): Rule { + options = normalizeOptions(options); + + const workspaceOpts = { ...options, preset: undefined }; + return (host: Tree, context: SchematicContext) => { + return chain([ + schematic('workspace', workspaceOpts), + // createPreset(options), + move('/', options.directory), + addTasks(options), + formatFiles() + ])(Tree.empty(), context); + }; +} + +// function createPreset(options: Schema): Rule { +// if (options.preset === 'empty') { +// return noop(); +// } else if (options.preset === 'angular') { +// return chain([ +// schematic( +// 'application', +// { +// name: options.name, +// style: options.style, +// framework: Framework.Angular +// }, +// { interactive: false } +// ), +// setDefaultAppFramework(Framework.Angular) +// ]); +// } else if (options.preset === 'react') { +// return chain([ +// externalSchematic( +// '@nrwl/react', +// 'application', +// { +// name: options.name, +// style: options.style +// }, +// { interactive: false } +// ), +// setDefaultAppFramework(Framework.React) +// ]); +// } else if (options.preset === 'web-components') { +// return chain([ +// externalSchematic( +// '@nrwl/web', +// 'application', +// { +// name: options.name, +// style: options.style +// }, +// { interactive: false } +// ), +// setDefaultAppFramework(Framework.WebComponents) +// ]); +// } else { +// return chain([ +// schematic( +// 'application', +// { name: options.name, style: options.style }, +// { interactive: false } +// ), +// externalSchematic( +// '@nrwl/nest', +// 'application', +// { +// name: 'api', +// frontendProject: options.name +// }, +// { interactive: false } +// ), +// schematic( +// 'library', +// { name: 'api-interface', framework: 'none' }, +// { interactive: false } +// ), +// setDefaultAppFramework(Framework.Angular), +// connectFrontendAndApi(options) +// ]); +// } +// } + +// function connectFrontendAndApi(options: Schema) { +// return (host: Tree) => { +// host.create( +// 'libs/api-interface/src/lib/interfaces.ts', +// `export interface Message { message: string }` +// ); +// host.overwrite( +// 'libs/api-interface/src/index.ts', +// `export * from './lib/interfaces';` +// ); +// +// const modulePath = `apps/${options.name}/src/app/app.module.ts`; +// const moduleFile = ts.createSourceFile( +// modulePath, +// host.read(modulePath).toString(), +// ts.ScriptTarget.Latest, +// true +// ); +// insert(host, modulePath, [ +// insertImport( +// moduleFile, +// modulePath, +// 'HttpClientModule', +// `@angular/common/http` +// ), +// ...addImportToModule( +// moduleFile, +// `@angular/common/http`, +// `HttpClientModule` +// ) +// ]); +// +// const scope = options.npmScope ? options.npmScope : options.name; +// const style = options.style ? options.style : 'css'; +// host.overwrite( +// `apps/${options.name}/src/app/app.component.ts`, +// `import { Component } from '@angular/core'; +// import { HttpClient } from '@angular/common/http'; +// import { Message } from '@${scope}/api-interface'; +// +// @Component({ +// selector: '${scope}-root', +// templateUrl: './app.component.html', +// styleUrls: ['./app.component.${style}'] +// }) +// export class AppComponent { +// hello$ = this.http.get('/api/hello') +// constructor(private http: HttpClient) {} +// } +// ` +// ); +// +// host.overwrite( +// `apps/${options.name}/src/app/app.component.spec.ts`, +// `import { Component } from '@angular/core'; +// import { TestBed, async } from '@angular/core/testing'; +// import { HttpClientModule } from '@angular/common/http'; +// import { AppComponent } from './app.component'; +// +// describe('AppComponent', () => { +// beforeEach(async(() => { +// TestBed.configureTestingModule({ +// declarations: [AppComponent], +// imports: [HttpClientModule] +// }).compileComponents(); +// })); +// +// it('should create the app', () => { +// const fixture = TestBed.createComponent(AppComponent); +// const app = fixture.debugElement.componentInstance; +// expect(app).toBeTruthy(); +// }); +// }); +// ` +// ); +// +// host.overwrite( +// `apps/${options.name}/src/app/app.component.html`, +// `
+//

Welcome to ${options.name}!

+// +//
+//
Message: {{ (hello$|async)|json }}
+// ` +// ); +// +// host.overwrite( +// `apps/api/src/app/app.controller.ts`, +// `import { Controller, Get } from '@nestjs/common'; +// +// import { Message } from '@${scope}/api-interface'; +// +// import { AppService } from './app.service'; +// +// @Controller() +// export class AppController { +// constructor(private readonly appService: AppService) {} +// +// @Get('hello') +// getData(): Message { +// return this.appService.getData(); +// } +// } +// ` +// ); +// +// host.overwrite( +// `apps/api/src/app/app.service.ts`, +// `import { Injectable } from '@nestjs/common'; +// import { Message } from '@${scope}/api-interface'; +// +// @Injectable() +// export class AppService { +// getData(): Message { +// return { message: 'Welcome to api!' }; +// } +// } +// ` +// ); +// }; +// } + +function addTasks(options: Schema) { + return (host: Tree, context: SchematicContext) => { + let packageTask; + if (!options.skipInstall) { + packageTask = context.addTask( + new NodePackageInstallTask(options.directory) + ); + } + if (!options.skipGit) { + const commit = + typeof options.commit == 'object' + ? options.commit + : !!options.commit + ? {} + : false; + context.addTask( + new RepositoryInitializerTask(options.directory, commit), + packageTask ? [packageTask] : [] + ); + } + }; +} + +// function setDefaultAppFramework(framework: Framework) { +// return updateJsonInTree('angular.json', json => { +// if (!json.schematics) { +// json.schematics = {}; +// } +// if (!json.schematics['@nrwl/workspace:application']) { +// json.schematics['@nrwl/workspace:application'] = {}; +// } +// if (!json.schematics['@nrwl/workspace:application'].framework) { +// json.schematics['@nrwl/workspace:application'].framework = framework; +// } +// return json; +// }); +// } +// +function normalizeOptions(options: Schema): Schema { + options.name = toFileName(options.name); + if (!options.directory) { + options.directory = options.name; + } + + return options; +} diff --git a/packages/schematics/src/collection/ng-new/schema.d.ts b/packages/workspace/src/schematics/ng-new/schema.d.ts similarity index 100% rename from packages/schematics/src/collection/ng-new/schema.d.ts rename to packages/workspace/src/schematics/ng-new/schema.d.ts diff --git a/packages/schematics/src/collection/ng-new/schema.json b/packages/workspace/src/schematics/ng-new/schema.json similarity index 99% rename from packages/schematics/src/collection/ng-new/schema.json rename to packages/workspace/src/schematics/ng-new/schema.json index d72b475215..84a6ce6e49 100644 --- a/packages/schematics/src/collection/ng-new/schema.json +++ b/packages/workspace/src/schematics/ng-new/schema.json @@ -1,6 +1,6 @@ { "$schema": "http://json-schema.org/schema", - "id": "SchematicsNxNgNew", + "id": "NxWorkspaceNew", "title": "Create an empty workspace", "type": "object", "properties": { diff --git a/packages/schematics/src/collection/workspace-schematic/files/__name__/index.ts__tmpl__ b/packages/workspace/src/schematics/workspace-schematic/files/__name__/index.ts__tmpl__ similarity index 77% rename from packages/schematics/src/collection/workspace-schematic/files/__name__/index.ts__tmpl__ rename to packages/workspace/src/schematics/workspace-schematic/files/__name__/index.ts__tmpl__ index 1b895fe3ae..d652e3bd23 100644 --- a/packages/schematics/src/collection/workspace-schematic/files/__name__/index.ts__tmpl__ +++ b/packages/workspace/src/schematics/workspace-schematic/files/__name__/index.ts__tmpl__ @@ -6,8 +6,8 @@ import { export default function(schema: any): Rule { return chain([ - externalSchematic('@nrwl/schematics', 'lib', { + externalSchematic('@nrwl/workspace', 'lib', { name: schema.name }) ]); -} \ No newline at end of file +} diff --git a/packages/schematics/src/collection/workspace-schematic/files/__name__/schema.json b/packages/workspace/src/schematics/workspace-schematic/files/__name__/schema.json similarity index 100% rename from packages/schematics/src/collection/workspace-schematic/files/__name__/schema.json rename to packages/workspace/src/schematics/workspace-schematic/files/__name__/schema.json diff --git a/packages/schematics/src/collection/workspace-schematic/schema.d.ts b/packages/workspace/src/schematics/workspace-schematic/schema.d.ts similarity index 100% rename from packages/schematics/src/collection/workspace-schematic/schema.d.ts rename to packages/workspace/src/schematics/workspace-schematic/schema.d.ts diff --git a/packages/schematics/src/collection/workspace-schematic/schema.json b/packages/workspace/src/schematics/workspace-schematic/schema.json similarity index 100% rename from packages/schematics/src/collection/workspace-schematic/schema.json rename to packages/workspace/src/schematics/workspace-schematic/schema.json diff --git a/packages/schematics/src/collection/workspace-schematic/workspace-schematic.spec.ts b/packages/workspace/src/schematics/workspace-schematic/workspace-schematic.spec.ts similarity index 64% rename from packages/schematics/src/collection/workspace-schematic/workspace-schematic.spec.ts rename to packages/workspace/src/schematics/workspace-schematic/workspace-schematic.spec.ts index 19ac63c493..aea59ad739 100644 --- a/packages/schematics/src/collection/workspace-schematic/workspace-schematic.spec.ts +++ b/packages/workspace/src/schematics/workspace-schematic/workspace-schematic.spec.ts @@ -1,14 +1,12 @@ -import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import * as path from 'path'; import { Tree, VirtualTree } from '@angular-devkit/schematics'; -import { createEmptyWorkspace, runSchematic } from '../../utils/testing-utils'; +import { createEmptyWorkspace } from '@nrwl/workspace/testing'; +import { runSchematic } from '../../utils/testing'; describe('workspace-schematic', () => { let appTree: Tree; beforeEach(() => { - appTree = new VirtualTree(); - appTree = createEmptyWorkspace(appTree); + appTree = createEmptyWorkspace(Tree.empty()); }); it('should generate files', async () => { diff --git a/packages/schematics/src/collection/workspace-schematic/index.ts b/packages/workspace/src/schematics/workspace-schematic/workspace-schematic.ts similarity index 85% rename from packages/schematics/src/collection/workspace-schematic/index.ts rename to packages/workspace/src/schematics/workspace-schematic/workspace-schematic.ts index f5d70d24b3..e60a2dab8f 100644 --- a/packages/schematics/src/collection/workspace-schematic/index.ts +++ b/packages/workspace/src/schematics/workspace-schematic/workspace-schematic.ts @@ -9,8 +9,8 @@ import { move } from '@angular-devkit/schematics'; import { Schema } from './schema'; -import { toFileName } from '../../utils/name-utils'; -import { formatFiles } from '../../utils/rules/format-files'; +import { formatFiles } from '@nrwl/workspace'; +import { toFileName } from '@nrwl/workspace'; export default function(schema: Schema): Rule { const options = normalizeOptions(schema); diff --git a/packages/schematics/src/collection/workspace/files/.vscode/extensions.json b/packages/workspace/src/schematics/workspace/files/.vscode/extensions.json similarity index 100% rename from packages/schematics/src/collection/workspace/files/.vscode/extensions.json rename to packages/workspace/src/schematics/workspace/files/.vscode/extensions.json diff --git a/packages/schematics/src/collection/workspace/files/README.md b/packages/workspace/src/schematics/workspace/files/README.md similarity index 100% rename from packages/schematics/src/collection/workspace/files/README.md rename to packages/workspace/src/schematics/workspace/files/README.md diff --git a/packages/schematics/src/collection/workspace/files/__dot__editorconfig b/packages/workspace/src/schematics/workspace/files/__dot__editorconfig similarity index 100% rename from packages/schematics/src/collection/workspace/files/__dot__editorconfig rename to packages/workspace/src/schematics/workspace/files/__dot__editorconfig diff --git a/packages/schematics/src/collection/workspace/files/__dot__gitignore b/packages/workspace/src/schematics/workspace/files/__dot__gitignore similarity index 100% rename from packages/schematics/src/collection/workspace/files/__dot__gitignore rename to packages/workspace/src/schematics/workspace/files/__dot__gitignore diff --git a/packages/schematics/src/collection/workspace/files/__dot__prettierignore b/packages/workspace/src/schematics/workspace/files/__dot__prettierignore similarity index 100% rename from packages/schematics/src/collection/workspace/files/__dot__prettierignore rename to packages/workspace/src/schematics/workspace/files/__dot__prettierignore diff --git a/packages/schematics/src/collection/workspace/files/__dot__prettierrc b/packages/workspace/src/schematics/workspace/files/__dot__prettierrc similarity index 100% rename from packages/schematics/src/collection/workspace/files/__dot__prettierrc rename to packages/workspace/src/schematics/workspace/files/__dot__prettierrc diff --git a/packages/schematics/src/collection/workspace/files/angular.json b/packages/workspace/src/schematics/workspace/files/angular.json similarity index 75% rename from packages/schematics/src/collection/workspace/files/angular.json rename to packages/workspace/src/schematics/workspace/files/angular.json index 90e767aac4..fe22ec1b10 100644 --- a/packages/schematics/src/collection/workspace/files/angular.json +++ b/packages/workspace/src/schematics/workspace/files/angular.json @@ -8,13 +8,13 @@ "typescriptMismatch": false, "versionMismatch": false }, - "defaultCollection": "@nrwl/schematics" + "defaultCollection": "@nrwl/workspace" }, "schematics": {<% if (style !== 'css') { %> - "@nrwl/schematics:application": { + "@nrwl/workspace:application": { "style": "<%= style %>" }, - "@nrwl/schematics:library": { + "@nrwl/workspace:library": { "style": "<%= style %>" } <% } %>} diff --git a/packages/schematics/src/collection/workspace/files/apps/.gitkeep b/packages/workspace/src/schematics/workspace/files/apps/.gitkeep similarity index 100% rename from packages/schematics/src/collection/workspace/files/apps/.gitkeep rename to packages/workspace/src/schematics/workspace/files/apps/.gitkeep diff --git a/packages/schematics/src/collection/workspace/files/libs/.gitkeep b/packages/workspace/src/schematics/workspace/files/libs/.gitkeep similarity index 100% rename from packages/schematics/src/collection/workspace/files/libs/.gitkeep rename to packages/workspace/src/schematics/workspace/files/libs/.gitkeep diff --git a/packages/schematics/src/collection/workspace/files/nx.json b/packages/workspace/src/schematics/workspace/files/nx.json similarity index 100% rename from packages/schematics/src/collection/workspace/files/nx.json rename to packages/workspace/src/schematics/workspace/files/nx.json diff --git a/packages/schematics/src/collection/workspace/files/package.json b/packages/workspace/src/schematics/workspace/files/package.json similarity index 93% rename from packages/schematics/src/collection/workspace/files/package.json rename to packages/workspace/src/schematics/workspace/files/package.json index b331b39477..702f6d4306 100644 --- a/packages/schematics/src/collection/workspace/files/package.json +++ b/packages/workspace/src/schematics/workspace/files/package.json @@ -20,7 +20,7 @@ "format": "./node_modules/.bin/nx format:write", "format:write": "./node_modules/.bin/nx format:write", "format:check": "./node_modules/.bin/nx format:check", - "update": "ng update @nrwl/schematics", + "update": "ng update @nrwl/workspace", "update:check": "ng update", "workspace-schematic": "./node_modules/.bin/nx workspace-schematic", "dep-graph": "./node_modules/.bin/nx dep-graph", @@ -29,8 +29,8 @@ "private": true, "dependencies": {}, "devDependencies": { + "@nrwl/workspace": "<%= nxVersion %>", "@angular/cli": "<%= angularCliVersion %>", - "@nrwl/schematics": "<%= schematicsVersion %>", "@types/node": "~8.9.4", "dotenv": "6.2.0", "ts-node": "~7.0.0", diff --git a/packages/schematics/src/collection/workspace/files/tools/schematics/.gitkeep b/packages/workspace/src/schematics/workspace/files/tools/schematics/.gitkeep similarity index 100% rename from packages/schematics/src/collection/workspace/files/tools/schematics/.gitkeep rename to packages/workspace/src/schematics/workspace/files/tools/schematics/.gitkeep diff --git a/packages/schematics/src/collection/workspace/files/tools/tsconfig.tools.json b/packages/workspace/src/schematics/workspace/files/tools/tsconfig.tools.json similarity index 100% rename from packages/schematics/src/collection/workspace/files/tools/tsconfig.tools.json rename to packages/workspace/src/schematics/workspace/files/tools/tsconfig.tools.json diff --git a/packages/schematics/src/collection/workspace/files/tsconfig.json b/packages/workspace/src/schematics/workspace/files/tsconfig.json similarity index 100% rename from packages/schematics/src/collection/workspace/files/tsconfig.json rename to packages/workspace/src/schematics/workspace/files/tsconfig.json diff --git a/packages/schematics/src/collection/workspace/files/tslint.json b/packages/workspace/src/schematics/workspace/files/tslint.json similarity index 95% rename from packages/schematics/src/collection/workspace/files/tslint.json rename to packages/workspace/src/schematics/workspace/files/tslint.json index 7079558ab5..4b7a879b75 100644 --- a/packages/schematics/src/collection/workspace/files/tslint.json +++ b/packages/workspace/src/schematics/workspace/files/tslint.json @@ -1,5 +1,5 @@ { - "rulesDirectory": ["node_modules/@nrwl/schematics/src/tslint"], + "rulesDirectory": ["node_modules/@nrwl/workspace/src/tslint"], "rules": { "arrow-return-shorthand": true, "callable-types": true, diff --git a/packages/schematics/src/collection/workspace/schema.d.ts b/packages/workspace/src/schematics/workspace/schema.d.ts similarity index 100% rename from packages/schematics/src/collection/workspace/schema.d.ts rename to packages/workspace/src/schematics/workspace/schema.d.ts diff --git a/packages/schematics/src/collection/workspace/schema.json b/packages/workspace/src/schematics/workspace/schema.json similarity index 100% rename from packages/schematics/src/collection/workspace/schema.json rename to packages/workspace/src/schematics/workspace/schema.json diff --git a/packages/schematics/src/collection/workspace/workspace.spec.ts b/packages/workspace/src/schematics/workspace/workspace.spec.ts similarity index 52% rename from packages/schematics/src/collection/workspace/workspace.spec.ts rename to packages/workspace/src/schematics/workspace/workspace.spec.ts index 9ae4844bd6..c58201a2a7 100644 --- a/packages/schematics/src/collection/workspace/workspace.spec.ts +++ b/packages/workspace/src/schematics/workspace/workspace.spec.ts @@ -1,47 +1,24 @@ -import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; -import * as path from 'path'; import { Tree } from '@angular-devkit/schematics'; -import { readJsonInTree } from '../../utils/ast-utils'; -import { NxJson } from '../../command-line/shared'; +import { NxJson, readJsonInTree } from '@nrwl/workspace'; +import { runSchematic } from '../../utils/testing'; describe('workspace', () => { - const schematicRunner = new SchematicTestRunner( - '@nrwl/schematics', - path.join(__dirname, '../../collection.json') - ); - let projectTree: Tree; beforeEach(() => { projectTree = Tree.empty(); }); - it('should update angular.json', () => { - const tree = schematicRunner.runSchematic( - 'workspace', - { name: 'proj' }, - projectTree - ); - }); - - it('should create files', () => { - const tree = schematicRunner.runSchematic( - 'workspace', - { name: 'proj' }, - projectTree - ); + it('should create files', async () => { + const tree = await runSchematic('workspace', { name: 'proj' }, projectTree); expect(tree.exists('/nx.json')).toBe(true); expect(tree.exists('/angular.json')).toBe(true); expect(tree.exists('/.prettierrc')).toBe(true); expect(tree.exists('/.prettierignore')).toBe(true); }); - it('should create nx.json', () => { - const tree = schematicRunner.runSchematic( - 'workspace', - { name: 'proj' }, - projectTree - ); + it('should create nx.json', async () => { + const tree = await runSchematic('workspace', { name: 'proj' }, projectTree); const nxJson = readJsonInTree(tree, '/nx.json'); expect(nxJson).toEqual({ npmScope: 'proj', @@ -56,12 +33,8 @@ describe('workspace', () => { }); }); - it('should recommend vscode extensions', () => { - const tree = schematicRunner.runSchematic( - 'workspace', - { name: 'proj' }, - projectTree - ); + it('should recommend vscode extensions', async () => { + const tree = await runSchematic('workspace', { name: 'proj' }, projectTree); const recommendations = readJsonInTree<{ recommendations: string[] }>( tree, '/.vscode/extensions.json' @@ -75,17 +48,17 @@ describe('workspace', () => { ]); }); - it('should configure the project to use style argument', () => { - const tree = schematicRunner.runSchematic( + it('should configure the project to use style argument', async () => { + const tree = await runSchematic( 'workspace', { name: 'proj', style: 'scss' }, projectTree ); expect(JSON.parse(tree.readContent('/angular.json')).schematics).toEqual({ - '@nrwl/schematics:application': { + '@nrwl/workspace:application': { style: 'scss' }, - '@nrwl/schematics:library': { + '@nrwl/workspace:library': { style: 'scss' } }); diff --git a/packages/schematics/src/collection/workspace/index.ts b/packages/workspace/src/schematics/workspace/workspace.ts similarity index 76% rename from packages/schematics/src/collection/workspace/index.ts rename to packages/workspace/src/schematics/workspace/workspace.ts index eccd47925b..a076425d9e 100644 --- a/packages/schematics/src/collection/workspace/index.ts +++ b/packages/workspace/src/schematics/workspace/workspace.ts @@ -11,8 +11,16 @@ import { } from '@angular-devkit/schematics'; import { Schema } from './schema'; import { strings } from '@angular-devkit/core'; -import { libVersions } from '../../lib-versions'; -import { DEFAULT_NRWL_PRETTIER_CONFIG } from '../../utils/common'; +import { + angularCliVersion, + prettierVersion, + typescriptVersion, + nxVersion +} from '../../utils/versions'; + +export const DEFAULT_NRWL_PRETTIER_CONFIG = { + singleQuote: true +}; export default function(options: Schema): Rule { if (!options.name) { @@ -26,7 +34,10 @@ export default function(options: Schema): Rule { utils: strings, dot: '.', tmpl: '', - ...libVersions, + typescriptVersion, + prettierVersion, + angularCliVersion, + nxVersion, ...(options as object), npmScope, defaultNrwlPrettierConfig: JSON.stringify( diff --git a/packages/schematics/src/tslint/nxEnforceModuleBoundariesRule.spec.ts b/packages/workspace/src/tslint/nxEnforceModuleBoundariesRule.spec.ts similarity index 100% rename from packages/schematics/src/tslint/nxEnforceModuleBoundariesRule.spec.ts rename to packages/workspace/src/tslint/nxEnforceModuleBoundariesRule.spec.ts diff --git a/packages/schematics/src/tslint/nxEnforceModuleBoundariesRule.ts b/packages/workspace/src/tslint/nxEnforceModuleBoundariesRule.ts similarity index 100% rename from packages/schematics/src/tslint/nxEnforceModuleBoundariesRule.ts rename to packages/workspace/src/tslint/nxEnforceModuleBoundariesRule.ts diff --git a/packages/schematics/src/utils/ast-utils.spec.ts b/packages/workspace/src/utils/ast-utils.spec.ts similarity index 100% rename from packages/schematics/src/utils/ast-utils.spec.ts rename to packages/workspace/src/utils/ast-utils.spec.ts diff --git a/packages/schematics/src/utils/ast-utils.ts b/packages/workspace/src/utils/ast-utils.ts old mode 100755 new mode 100644 similarity index 100% rename from packages/schematics/src/utils/ast-utils.ts rename to packages/workspace/src/utils/ast-utils.ts diff --git a/packages/schematics/src/utils/cli-config-utils.ts b/packages/workspace/src/utils/cli-config-utils.ts similarity index 100% rename from packages/schematics/src/utils/cli-config-utils.ts rename to packages/workspace/src/utils/cli-config-utils.ts diff --git a/packages/schematics/src/utils/common.spec.ts b/packages/workspace/src/utils/common.spec.ts similarity index 100% rename from packages/schematics/src/utils/common.spec.ts rename to packages/workspace/src/utils/common.spec.ts diff --git a/packages/schematics/src/utils/common.ts b/packages/workspace/src/utils/common.ts similarity index 100% rename from packages/schematics/src/utils/common.ts rename to packages/workspace/src/utils/common.ts diff --git a/packages/schematics/src/utils/fileutils.spec.ts b/packages/workspace/src/utils/fileutils.spec.ts similarity index 100% rename from packages/schematics/src/utils/fileutils.spec.ts rename to packages/workspace/src/utils/fileutils.spec.ts diff --git a/packages/schematics/src/utils/fileutils.ts b/packages/workspace/src/utils/fileutils.ts similarity index 100% rename from packages/schematics/src/utils/fileutils.ts rename to packages/workspace/src/utils/fileutils.ts diff --git a/packages/schematics/src/utils/frameworks.ts b/packages/workspace/src/utils/frameworks.ts similarity index 100% rename from packages/schematics/src/utils/frameworks.ts rename to packages/workspace/src/utils/frameworks.ts diff --git a/packages/schematics/src/utils/name-utils.ts b/packages/workspace/src/utils/name-utils.ts similarity index 100% rename from packages/schematics/src/utils/name-utils.ts rename to packages/workspace/src/utils/name-utils.ts diff --git a/packages/builders/src/utils/normalize.spec.ts b/packages/workspace/src/utils/normalize.spec.ts similarity index 100% rename from packages/builders/src/utils/normalize.spec.ts rename to packages/workspace/src/utils/normalize.spec.ts diff --git a/packages/builders/src/utils/normalize.ts b/packages/workspace/src/utils/normalize.ts similarity index 100% rename from packages/builders/src/utils/normalize.ts rename to packages/workspace/src/utils/normalize.ts diff --git a/packages/schematics/src/utils/rules/deleteFile.ts b/packages/workspace/src/utils/rules/deleteFile.ts similarity index 100% rename from packages/schematics/src/utils/rules/deleteFile.ts rename to packages/workspace/src/utils/rules/deleteFile.ts diff --git a/packages/schematics/src/utils/rules/format-files.spec.ts b/packages/workspace/src/utils/rules/format-files.spec.ts similarity index 85% rename from packages/schematics/src/utils/rules/format-files.spec.ts rename to packages/workspace/src/utils/rules/format-files.spec.ts index 94ff62c6fa..52ff119efb 100644 --- a/packages/schematics/src/utils/rules/format-files.spec.ts +++ b/packages/workspace/src/utils/rules/format-files.spec.ts @@ -3,10 +3,7 @@ import { Tree } from '@angular-devkit/schematics'; import * as prettier from 'prettier'; import * as path from 'path'; - -import { createEmptyWorkspace } from '../testing-utils'; import { formatFiles } from './format-files'; -import { serializeJson } from '../fileutils'; import * as appRoot from 'app-root-path'; describe('formatFiles', () => { @@ -14,10 +11,10 @@ describe('formatFiles', () => { let schematicRunner: SchematicTestRunner; beforeEach(() => { schematicRunner = new SchematicTestRunner( - '@nrwl/schematics', - path.join(__dirname, '../../collection.json') + '@nrwl/workspace', + path.join(__dirname, '../../../collection.json') ); - spyOn(prettier, 'format').and.callFake(input => 'formated :: ' + input); + spyOn(prettier, 'format').and.callFake(input => 'formatted :: ' + input); tree = Tree.empty(); }); @@ -35,7 +32,7 @@ describe('formatFiles', () => { printWidth: 80, filepath: appRoot.resolve('a.ts') }); - expect(result.read('a.ts').toString()).toEqual('formated :: const a=a'); + expect(result.read('a.ts').toString()).toEqual('formatted :: const a=a'); }); it('should not format deleted files', async () => { @@ -63,7 +60,7 @@ describe('formatFiles', () => { expect(prettier.format).toHaveBeenCalledWith('const a=b', { filepath: appRoot.resolve('a.ts') }); - expect(result.read('a.ts').toString()).toEqual('formated :: const a=b'); + expect(result.read('a.ts').toString()).toEqual('formatted :: const a=b'); }); it('should not format renamed files', async () => { @@ -76,7 +73,7 @@ describe('formatFiles', () => { expect(prettier.format).toHaveBeenCalledWith('const a=a', { filepath: appRoot.resolve('b.ts') }); - expect(result.read('b.ts').toString()).toEqual('formated :: const a=a'); + expect(result.read('b.ts').toString()).toEqual('formatted :: const a=a'); }); describe('--skip-format', () => { diff --git a/packages/schematics/src/utils/rules/format-files.ts b/packages/workspace/src/utils/rules/format-files.ts similarity index 100% rename from packages/schematics/src/utils/rules/format-files.ts rename to packages/workspace/src/utils/rules/format-files.ts diff --git a/packages/schematics/src/utils/rules/update-karma-conf.spec.ts b/packages/workspace/src/utils/rules/update-karma-conf.spec.ts similarity index 96% rename from packages/schematics/src/utils/rules/update-karma-conf.spec.ts rename to packages/workspace/src/utils/rules/update-karma-conf.spec.ts index 45371f2b64..5f2f283b3b 100644 --- a/packages/schematics/src/utils/rules/update-karma-conf.spec.ts +++ b/packages/workspace/src/utils/rules/update-karma-conf.spec.ts @@ -12,8 +12,8 @@ describe('updateKarmaConf', () => { let schematicRunner: SchematicTestRunner; beforeEach(done => { schematicRunner = new SchematicTestRunner( - '@nrwl/schematics', - path.join(__dirname, '../../collection.json') + '@nrwl/workspace', + path.join(__dirname, '../../../collection.json') ); tree = createEmptyWorkspace(Tree.empty()); tree.create('apps/projectName/karma.conf.js', ''); diff --git a/packages/schematics/src/utils/rules/update-karma-conf.ts b/packages/workspace/src/utils/rules/update-karma-conf.ts similarity index 100% rename from packages/schematics/src/utils/rules/update-karma-conf.ts rename to packages/workspace/src/utils/rules/update-karma-conf.ts diff --git a/packages/schematics/src/utils/strings.ts b/packages/workspace/src/utils/strings.ts similarity index 100% rename from packages/schematics/src/utils/strings.ts rename to packages/workspace/src/utils/strings.ts diff --git a/packages/schematics/src/utils/strip-source-code.spec.ts b/packages/workspace/src/utils/strip-source-code.spec.ts similarity index 100% rename from packages/schematics/src/utils/strip-source-code.spec.ts rename to packages/workspace/src/utils/strip-source-code.spec.ts diff --git a/packages/schematics/src/utils/strip-source-code.ts b/packages/workspace/src/utils/strip-source-code.ts similarity index 100% rename from packages/schematics/src/utils/strip-source-code.ts rename to packages/workspace/src/utils/strip-source-code.ts diff --git a/packages/schematics/src/utils/testing-utils.ts b/packages/workspace/src/utils/testing-utils.ts similarity index 89% rename from packages/schematics/src/utils/testing-utils.ts rename to packages/workspace/src/utils/testing-utils.ts index d262c9d95d..81069431b0 100644 --- a/packages/schematics/src/utils/testing-utils.ts +++ b/packages/workspace/src/utils/testing-utils.ts @@ -1,11 +1,6 @@ import { Tree } from '@angular-devkit/schematics'; import { names, toFileName } from './name-utils'; import { NxJson } from '../command-line/shared'; -import { - SchematicTestRunner, - UnitTestTree -} from '@angular-devkit/schematics/testing'; -import * as path from 'path'; export interface AppConfig { appName: string; // name of app @@ -27,21 +22,6 @@ export function getLibConfig(): LibConfig { return libConfig; } -export const schematicRunner = new SchematicTestRunner( - '@nrwl/schematics', - path.join(__dirname, '../collection.json') -); - -export function runSchematic( - name: string, - options: any, - tree: Tree -): Promise { - return schematicRunner - .runSchematicAsync(name, { ...options, skipFormat: true }, tree) - .toPromise(); -} - export function createEmptyWorkspace(tree: Tree): Tree { tree.create( '/angular.json', diff --git a/packages/workspace/src/utils/testing.ts b/packages/workspace/src/utils/testing.ts new file mode 100644 index 0000000000..0fb6185444 --- /dev/null +++ b/packages/workspace/src/utils/testing.ts @@ -0,0 +1,12 @@ +import { join } from 'path'; +import { SchematicTestRunner } from '@angular-devkit/schematics/testing'; +import { Tree } from '@angular-devkit/schematics'; + +const testRunner = new SchematicTestRunner( + '@nrwl/workspace', + join(__dirname, '../../collection.json') +); + +export function runSchematic(schematicName: string, options: any, tree: Tree) { + return testRunner.runSchematicAsync(schematicName, options, tree).toPromise(); +} diff --git a/packages/builders/src/utils/types.ts b/packages/workspace/src/utils/types.ts similarity index 100% rename from packages/builders/src/utils/types.ts rename to packages/workspace/src/utils/types.ts diff --git a/packages/builders/src/utils/typescript.ts b/packages/workspace/src/utils/typescript.ts similarity index 100% rename from packages/builders/src/utils/typescript.ts rename to packages/workspace/src/utils/typescript.ts diff --git a/packages/workspace/src/utils/versions.ts b/packages/workspace/src/utils/versions.ts new file mode 100644 index 0000000000..a69a4d3f26 --- /dev/null +++ b/packages/workspace/src/utils/versions.ts @@ -0,0 +1,6 @@ +export const nxVersion = '*'; + +export const angularCliVersion = '7.3.1'; +export const typescriptVersion = '3.2.2'; +export const prettierVersion = '1.16.4'; +export const jasmineMarblesVersion = '^0.4.0'; diff --git a/packages/builders/src/utils/webpack/config.spec.ts b/packages/workspace/src/utils/webpack/config.spec.ts similarity index 100% rename from packages/builders/src/utils/webpack/config.spec.ts rename to packages/workspace/src/utils/webpack/config.spec.ts diff --git a/packages/builders/src/utils/webpack/config.ts b/packages/workspace/src/utils/webpack/config.ts similarity index 100% rename from packages/builders/src/utils/webpack/config.ts rename to packages/workspace/src/utils/webpack/config.ts diff --git a/packages/workspace/testing.ts b/packages/workspace/testing.ts new file mode 100644 index 0000000000..b970f51023 --- /dev/null +++ b/packages/workspace/testing.ts @@ -0,0 +1,8 @@ +export { + createEmptyWorkspace, + createApp, + createLib, + AppConfig, + getLibConfig, + getAppConfig +} from './src/utils/testing-utils'; diff --git a/scripts/build.sh b/scripts/build.sh index e4255349ea..1f36e18419 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -25,9 +25,9 @@ rm -rf build/packages/nx/bundles/nrwl-nx-testing.umd.min.js.bak rsync -a --exclude=*.ts packages/ build/packages -chmod +x build/packages/schematics/bin/create-nx-workspace.js +chmod +x build/packages/workspace/bin/create-nx-workspace.js chmod +x build/packages/create-nx-workspace/bin/create-nx-workspace.js -chmod +x build/packages/schematics/src/command-line/nx.js +chmod +x build/packages/workspace/src/command-line/nx.js rm -rf build/packages/install rm -rf build/packages/nx/dist rm -rf build/packages/nx/spec @@ -35,10 +35,28 @@ cp README.md build/packages/builders cp README.md build/packages/schematics cp README.md build/packages/nx cp README.md build/packages/create-nx-workspace +cp README.md build/packages/workspace +cp README.md build/packages/node +cp README.md build/packages/express +cp README.md build/packages/nest +cp README.md build/packages/web +cp README.md build/packages/react +cp README.md build/packages/angular +cp README.md build/packages/jest +cp README.md build/packages/cypress cp LICENSE build/packages/builders cp LICENSE build/packages/schematics cp LICENSE build/packages/nx cp LICENSE build/packages/create-nx-workspace +cp LICENSE build/packages/workspace +cp LICENSE build/packages/node +cp LICENSE build/packages/express +cp LICENSE build/packages/nest +cp LICENSE build/packages/web +cp LICENSE build/packages/react +cp LICENSE build/packages/angular +cp LICENSE build/packages/jest +cp LICENSE build/packages/cypress echo "Nx libraries available at build/packages:" ls build/packages diff --git a/scripts/documentation/npmscripts.ts b/scripts/documentation/npmscripts.ts index 2f4cc8855a..046cfa8e66 100644 --- a/scripts/documentation/npmscripts.ts +++ b/scripts/documentation/npmscripts.ts @@ -3,7 +3,7 @@ import * as yargs from 'yargs'; import * as path from 'path'; import { dedent } from 'tslint/lib/utils'; -import { commandsObject } from '../../packages/schematics/src/command-line/nx-commands'; +import { commandsObject } from '@nrwl/workspace'; import { sortAlphabeticallyFunction } from './utils'; const commandsOutputDirectory = path.join( diff --git a/scripts/package.sh b/scripts/package.sh index 63d1f86e2a..c339db0ed4 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -17,28 +17,28 @@ cd build/packages if [[ "$OSTYPE" == "darwin"* ]]; then sed -i "" "s|exports.nxVersion = '\*';|exports.nxVersion = '$NX_VERSION';|g" schematics/src/lib-versions.js sed -i "" "s|exports.schematicsVersion = '\*';|exports.schematicsVersion = '$NX_VERSION';|g" schematics/src/lib-versions.js - sed -i "" "s|exports.nxVersion = '\*';|exports.nxVersion = '$NX_VERSION';|g" {react,web,jest,node,express,nest,cypress,angular}/src/utils/versions.js - sed -i "" "s|\*|$NX_VERSION|g" {schematics,react,web,jest,node,express,nest,cypress,angular}/package.json + sed -i "" "s|exports.nxVersion = '\*';|exports.nxVersion = '$NX_VERSION';|g" {react,web,jest,node,express,nest,cypress,angular,workspace}/src/utils/versions.js + sed -i "" "s|\*|$NX_VERSION|g" {schematics,react,web,jest,node,express,nest,cypress,angular,workspace}/package.json sed -i "" "s|NX_VERSION|$NX_VERSION|g" create-nx-workspace/bin/create-nx-workspace.js sed -i "" "s|ANGULAR_CLI_VERSION|$ANGULAR_CLI_VERSION|g" create-nx-workspace/bin/create-nx-workspace.js - sed -i "" "s|NX_VERSION|$NX_VERSION|g" schematics/bin/create-nx-workspace.js - sed -i "" "s|ANGULAR_CLI_VERSION|$ANGULAR_CLI_VERSION|g" schematics/bin/create-nx-workspace.js + sed -i "" "s|NX_VERSION|$NX_VERSION|g" workspace/bin/create-nx-workspace.js + sed -i "" "s|ANGULAR_CLI_VERSION|$ANGULAR_CLI_VERSION|g" workspace/bin/create-nx-workspace.js else sed -i "s|exports.nxVersion = '\*';|exports.nxVersion = '$NX_VERSION';|g" schematics/src/lib-versions.js sed -i "s|exports.schematicsVersion = '\*';|exports.schematicsVersion = '$NX_VERSION';|g" schematics/src/lib-versions.js - sed -i "s|exports.nxVersion = '\*';|exports.nxVersion = '$NX_VERSION';|g" {react,web,jest,node,express,nest,cypress,angular}/src/utils/versions.js - sed -i "s|\*|$NX_VERSION|g" {schematics,react,web,jest,node,express,nest,cypress,angular}/package.json + sed -i "s|exports.nxVersion = '\*';|exports.nxVersion = '$NX_VERSION';|g" {react,web,jest,node,express,nest,cypress,angular,workspace}/src/utils/versions.js + sed -i "s|\*|$NX_VERSION|g" {schematics,react,web,jest,node,express,nest,cypress,angular,workspace}/package.json sed -i "s|NX_VERSION|$NX_VERSION|g" create-nx-workspace/bin/create-nx-workspace.js sed -i "s|ANGULAR_CLI_VERSION|$ANGULAR_CLI_VERSION|g" create-nx-workspace/bin/create-nx-workspace.js - sed -i "s|NX_VERSION|$NX_VERSION|g" schematics/bin/create-nx-workspace.js - sed -i "s|ANGULAR_CLI_VERSION|$ANGULAR_CLI_VERSION|g" schematics/bin/create-nx-workspace.js + sed -i "s|NX_VERSION|$NX_VERSION|g" workspace/bin/create-nx-workspace.js + sed -i "s|ANGULAR_CLI_VERSION|$ANGULAR_CLI_VERSION|g" workspace/bin/create-nx-workspace.js fi if [[ $NX_VERSION == "*" ]]; then if [[ "$OSTYPE" == "darwin"* ]]; then - sed -E -i "" "s/\"@nrwl\/([^\"]+)\": \"\\*\"/\"@nrwl\/\1\": \"file:..\/\1\"/" {schematics,jest,web,react,node,express,nest,cypress,angular}/package.json + sed -E -i "" "s/\"@nrwl\/([^\"]+)\": \"\\*\"/\"@nrwl\/\1\": \"file:..\/\1\"/" {schematics,jest,web,react,node,express,nest,cypress,angular,workspace}/package.json else - sed -E -i "s/\"@nrwl\/([^\"]+)\": \"\\*\"/\"@nrwl\/\1\": \"file:..\/\1\"/" {schematics,jest,web,react,node,express,nest,cypress,angular}/package.json + sed -E -i "s/\"@nrwl\/([^\"]+)\": \"\\*\"/\"@nrwl\/\1\": \"file:..\/\1\"/" {schematics,jest,web,react,node,express,nest,cypress,angular,workspace}/package.json fi fi diff --git a/scripts/test_schematics.sh b/scripts/test_schematics.sh index d1fd9580bb..9f2434bba1 100755 --- a/scripts/test_schematics.sh +++ b/scripts/test_schematics.sh @@ -3,5 +3,5 @@ if [ -n "$1" ]; then jest --maxWorkers=1 ./build/packages/$1.spec.js else - jest --maxWorkers=1 ./build/packages/{schematics,bazel,builders,react,jest,web,node,express,nest,cypress,angular} + jest --maxWorkers=1 ./build/packages/{schematics,bazel,builders,react,jest,web,node,express,nest,cypress,angular,workspace} fi diff --git a/tsconfig.json b/tsconfig.json index 8e0240c0bf..a414d893c6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,10 +12,8 @@ "declaration": true, "baseUrl": ".", "paths": { - "@nrwl/schematics": ["./packages/schematics"], - "@nrwl/schematics/*": ["./packages/schematics/*"], - "@nrwl/builders": ["./packages/builders"], - "@nrwl/builders/*": ["./packages/builders/*"] + "@nrwl/workspace": ["./packages/workspace"], + "@nrwl/workspace/testing": ["./packages/workspace/testing"] } }, "exclude": [ @@ -23,6 +21,15 @@ "build", "packages/bazel", "packages/schematics/src/*/files/**/*", + "packages/workspace/src/*/files/**/*", + "packages/jest/src/*/files/**/*", + "packages/cypress/src/*/files/**/*", + "packages/node/src/*/files/**/*", + "packages/express/src/*/files/**/*", + "packages/nest/src/*/files/**/*", + "packages/angular/src/*/files/**/*", + "packages/react/src/*/files/**/*", + "packages/web/src/*/files/**/*", "scripts" ], "angularCompilerOptions": { diff --git a/yarn.lock b/yarn.lock index c3e824a4c2..e9a1506ea0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -924,15 +924,11 @@ add-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" -addressparser@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" - after@0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" -agent-base@4, agent-base@^4.1.0, agent-base@^4.2.0, agent-base@~4.2.0: +agent-base@4, agent-base@^4.1.0, agent-base@~4.2.0: version "4.2.1" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" dependencies: @@ -1001,16 +997,6 @@ amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" -amqplib@^0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/amqplib/-/amqplib-0.5.2.tgz#d2d7313c7ffaa4d10bcf1e6252de4591b6cc7b63" - dependencies: - bitsyntax "~0.0.4" - bluebird "^3.4.6" - buffer-more-ints "0.0.2" - readable-stream "1.x >=1.1.9" - safe-buffer "^5.0.1" - angular@1.6.6: version "1.6.6" resolved "https://registry.yarnpkg.com/angular/-/angular-1.6.6.tgz#fd5a3cfb437ce382d854ee01120797978527cb64" @@ -1158,10 +1144,6 @@ array-reduce@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" -array-slice@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-0.2.3.tgz#dd3cfb80ed7973a75117cdac69b0b99ec86186f5" - array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -1210,10 +1192,6 @@ assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" - assert@^1.1.1: version "1.4.1" resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" @@ -1224,10 +1202,6 @@ assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" -ast-types@0.x.x: - version "0.11.6" - resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.11.6.tgz#4e2266c2658829aef3b40cc33ad599c4e9eb89ef" - astral-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" @@ -1260,7 +1234,7 @@ async@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" -async@^2.5.0, async@^2.6.1, async@~2.6.0: +async@^2.5.0, async@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" dependencies: @@ -1300,15 +1274,11 @@ autoprefixer@^9.0.0: postcss "^7.0.5" postcss-value-parser "^3.3.1" -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" -aws4@^1.2.1, aws4@^1.6.0, aws4@^1.8.0: +aws4@^1.6.0, aws4@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" @@ -1319,12 +1289,6 @@ axios@0.18.0: follow-redirects "^1.3.0" is-buffer "^1.1.5" -axios@^0.15.3: - version "0.15.3" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.15.3.tgz#2c9d638b2e191a08ea1d6cc988eadd6ba5bdc053" - dependencies: - follow-redirects "1.0.0" - babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" @@ -1883,18 +1847,6 @@ binary-extensions@^1.0.0: version "1.12.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" -bitsyntax@~0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/bitsyntax/-/bitsyntax-0.0.4.tgz#eb10cc6f82b8c490e3e85698f07e83d46e0cba82" - dependencies: - buffer-more-ints "0.0.2" - -bl@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.1.2.tgz#fdca871a99713aa00d19e3bbba41c44787a65398" - dependencies: - readable-stream "~2.0.5" - blob@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz#bcf13052ca54463f30f9fc7e95b9a47630a94921" @@ -1909,7 +1861,7 @@ bluebird@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" -bluebird@^3.3.0, bluebird@^3.4.6, bluebird@^3.5.0, bluebird@^3.5.1: +bluebird@^3.3.0, bluebird@^3.5.0, bluebird@^3.5.1: version "3.5.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.2.tgz#1be0908e054a751754549c270489c1505d4ab15a" @@ -1966,12 +1918,6 @@ boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - dependencies: - hoek "2.x.x" - boxen@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" @@ -1991,12 +1937,6 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^0.1.2: - version "0.1.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-0.1.5.tgz#c085711085291d8b75fdd74eab0f8597280711e6" - dependencies: - expand-range "^0.1.0" - braces@^1.8.2: version "1.8.5" resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" @@ -2005,7 +1945,7 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" -braces@^2.3.0, braces@^2.3.1: +braces@^2.3.0, braces@^2.3.1, braces@^2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" dependencies: @@ -2153,10 +2093,6 @@ buffer-indexof@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" -buffer-more-ints@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/buffer-more-ints/-/buffer-more-ints-0.0.2.tgz#26b3885d10fa13db7fc01aae3aab870199e0124c" - buffer-xor@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" @@ -2169,18 +2105,6 @@ buffer@^4.3.0: ieee754 "^1.1.4" isarray "^1.0.0" -buildmail@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/buildmail/-/buildmail-4.0.1.tgz#877f7738b78729871c9a105e3b837d2be11a7a72" - dependencies: - addressparser "1.0.1" - libbase64 "0.1.0" - libmime "3.0.0" - libqp "1.1.0" - nodemailer-fetch "1.6.0" - nodemailer-shared "1.1.0" - punycode "1.4.1" - builtin-modules@^1.0.0, builtin-modules@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" @@ -2402,10 +2326,6 @@ capture-stack-trace@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz#a6c0bbe1f38f3aa0b92238ecb6ff42c344d4135d" -caseless@~0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" - caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -2511,10 +2431,6 @@ circular-dependency-plugin@5.0.2, circular-dependency-plugin@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/circular-dependency-plugin/-/circular-dependency-plugin-5.0.2.tgz#da168c0b37e7b43563fb9f912c1c007c213389ef" -circular-json@^0.5.4: - version "0.5.7" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.5.7.tgz#b8be478d72ea58c7eeda26bf1cf1fba43d188842" - class-utils@^0.3.5: version "0.3.6" resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" @@ -2659,19 +2575,13 @@ colors@^1.1.0: version "1.3.2" resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.2.tgz#2df8ff573dfbf255af562f8ce7181d6b971a359b" -combine-lists@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/combine-lists/-/combine-lists-1.0.1.tgz#458c07e09e0d900fc28b70a3fec2dacd1d2cb7f6" - dependencies: - lodash "^4.5.0" - combined-stream@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" dependencies: delayed-stream "~1.0.0" -combined-stream@^1.0.5, combined-stream@^1.0.6, combined-stream@~1.0.5, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@~1.0.5, combined-stream@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" dependencies: @@ -2685,7 +2595,7 @@ commander@2.17.x, commander@~2.17.1: version "2.17.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" -commander@^2.12.0, commander@^2.12.1, commander@^2.9.0: +commander@^2.12.0, commander@^2.12.1: version "2.19.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" @@ -3253,12 +3163,6 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" - dependencies: - boom "2.x.x" - crypto-browserify@^3.11.0: version "3.12.0" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" @@ -3440,10 +3344,6 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -data-uri-to-buffer@1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz#77163ea9c20d8641b4707e8f18abdf9a78f34835" - data-urls@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.0.1.tgz#d416ac3896918f29ca84d81085bc3705834da579" @@ -3464,9 +3364,10 @@ date-fns@^1.27.2: version "1.29.0" resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" -date-format@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/date-format/-/date-format-1.2.0.tgz#615e828e233dd1ab9bb9ae0950e0ceccfa6ecad8" +date-format@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/date-format/-/date-format-2.0.0.tgz#7cf7b172f1ec564f0003b39ea302c5498fb98c8f" + integrity sha512-M6UqVvZVgFYqZL1SfHsRGIQSz3ZL+qgbsV5Lp1Vj61LZVYuEwcMXYay7DRDtYs2HQQBK5hQtQ0fD9aEJ89V0LA== date-now@^0.1.4: version "0.1.4" @@ -3482,7 +3383,7 @@ debug@*, debug@4.1.0: dependencies: ms "^2.1.1" -debug@2, debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9, debug@~2.6.4, debug@~2.6.6: +debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: @@ -3597,14 +3498,6 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" -degenerator@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-1.0.4.tgz#fcf490a37ece266464d9cc431ab98c5819ced095" - dependencies: - ast-types "0.x.x" - escodegen "1.x.x" - esprima "3.x.x" - del@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" @@ -3820,10 +3713,6 @@ dotenv@6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.2.0.tgz#941c0410535d942c8becf28d3f357dbd9d476064" -double-ended-queue@^2.1.0-0: - version "2.1.0-0" - resolved "https://registry.yarnpkg.com/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz#103d3527fd31528f40188130c841efdd78264e5c" - duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -3900,9 +3789,10 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" -engine.io-client@~3.1.0: - version "3.1.6" - resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.1.6.tgz#5bdeb130f8b94a50ac5cbeb72583e7a4a063ddfd" +engine.io-client@~3.2.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.2.1.tgz#6f54c0475de487158a1a7c77d10178708b6add36" + integrity sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw== dependencies: component-emitter "1.2.1" component-inherit "0.0.3" @@ -3926,9 +3816,10 @@ engine.io-parser@~2.1.0, engine.io-parser@~2.1.1: blob "0.0.4" has-binary2 "~1.0.2" -engine.io@~3.1.0: - version "3.1.5" - resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-3.1.5.tgz#0e7ef9d690eb0b35597f1d4ad02a26ca2dba3845" +engine.io@~3.2.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-3.2.1.tgz#b60281c35484a70ee0351ea0ebff83ec8c9522a2" + integrity sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w== dependencies: accepts "~1.3.4" base64id "1.0.0" @@ -3936,8 +3827,6 @@ engine.io@~3.1.0: debug "~3.1.0" engine.io-parser "~2.1.0" ws "~3.3.1" - optionalDependencies: - uws "~9.14.0" enhanced-resolve@4.1.0, enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0: version "4.1.0" @@ -4039,9 +3928,9 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" -escodegen@1.x.x, escodegen@^1.9.1: - version "1.11.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589" +escodegen@^1.11.0: + version "1.11.1" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.1.tgz#c485ff8d6b4cdb89e27f4a856e91f118401ca510" dependencies: esprima "^3.1.3" estraverse "^4.2.0" @@ -4050,9 +3939,9 @@ escodegen@1.x.x, escodegen@^1.9.1: optionalDependencies: source-map "~0.6.1" -escodegen@^1.11.0: - version "1.11.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.1.tgz#c485ff8d6b4cdb89e27f4a856e91f118401ca510" +escodegen@^1.9.1: + version "1.11.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589" dependencies: esprima "^3.1.3" estraverse "^4.2.0" @@ -4072,7 +3961,7 @@ esm@^3.0.79: version "3.2.4" resolved "https://registry.yarnpkg.com/esm/-/esm-3.2.4.tgz#0b728b5d6043061bf552197407bf2c630717812b" -esprima@3.x.x, esprima@^3.1.3: +esprima@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" @@ -4198,14 +4087,6 @@ exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" -expand-braces@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/expand-braces/-/expand-braces-0.1.2.tgz#488b1d1d2451cb3d3a6b192cfc030f44c5855fea" - dependencies: - array-slice "^0.2.3" - array-unique "^0.2.1" - braces "^0.1.2" - expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" @@ -4224,13 +4105,6 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expand-range@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-0.1.1.tgz#4cb8eda0993ca56fa4f41fc42f3cbb4ccadff044" - dependencies: - is-number "^0.1.1" - repeat-string "^0.2.2" - expand-range@^1.8.1: version "1.8.2" resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" @@ -4336,7 +4210,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@3, extend@^3.0.0, extend@~3.0.0, extend@~3.0.1, extend@~3.0.2: +extend@^3.0.0, extend@~3.0.1, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" @@ -4483,10 +4357,6 @@ file-loader@3.0.1: loader-utils "^1.0.2" schema-utils "^1.0.0" -file-uri-to-path@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - filename-regex@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" @@ -4600,6 +4470,11 @@ findup-sync@0.4.2: micromatch "^2.3.7" resolve-dir "^0.1.0" +flatted@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.0.tgz#55122b6536ea496b4b44893ee2608141d10d9916" + integrity sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg== + flush-write-stream@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" @@ -4607,12 +4482,6 @@ flush-write-stream@^1.0.0: inherits "^2.0.1" readable-stream "^2.0.4" -follow-redirects@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.0.0.tgz#8e34298cbd2e176f254effec75a1c78cc849fd37" - dependencies: - debug "^2.2.0" - follow-redirects@^1.0.0: version "1.5.9" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.9.tgz#c9ed9d748b814a39535716e531b9196a845d89c6" @@ -4664,22 +4533,6 @@ fork-ts-checker-webpack-plugin@^0.4.9: resolve "^1.5.0" tapable "^1.0.0" -form-data@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.0.0.tgz#6f0aebadcc5da16c13e1ecc11137d85f9b883b25" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.11" - -form-data@~2.3.0, form-data@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" - dependencies: - asynckit "^0.4.0" - combined-stream "1.0.6" - mime-types "^2.1.12" - form-data@~2.3.1: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -4688,6 +4541,14 @@ form-data@~2.3.1: combined-stream "^1.0.6" mime-types "^2.1.12" +form-data@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" + dependencies: + asynckit "^0.4.0" + combined-stream "1.0.6" + mime-types "^2.1.12" + forwarded@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" @@ -4786,13 +4647,6 @@ fstream@^1.0.0, fstream@^1.0.2: mkdirp ">=0.5 0" rimraf "2" -ftp@~0.3.10: - version "0.3.10" - resolved "https://registry.yarnpkg.com/ftp/-/ftp-0.3.10.tgz#9197d861ad8142f3e63d5a83bfe4c59f7330885d" - dependencies: - readable-stream "1.1.x" - xregexp "2.0.0" - function-bind@^1.0.2, function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -4816,18 +4670,6 @@ gaze@^1.0.0: dependencies: globule "^1.0.0" -generate-function@^2.0.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.3.1.tgz#f069617690c10c868e73b8465746764f97c3479f" - dependencies: - is-property "^1.0.2" - -generate-object-property@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - dependencies: - is-property "^1.0.0" - genfun@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537" @@ -4864,17 +4706,6 @@ get-stream@^4.0.0, get-stream@^4.1.0: dependencies: pump "^3.0.0" -get-uri@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/get-uri/-/get-uri-2.0.2.tgz#5c795e71326f6ca1286f2fc82575cd2bab2af578" - dependencies: - data-uri-to-buffer "1" - debug "2" - extend "3" - file-uri-to-path "1" - ftp "~0.3.10" - readable-stream "2" - get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -5161,15 +4992,6 @@ har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" -har-validator@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" - dependencies: - chalk "^1.1.1" - commander "^2.9.0" - is-my-json-valid "^2.12.4" - pinkie-promise "^2.0.0" - har-validator@~5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" @@ -5277,26 +5099,10 @@ hash.js@^1.0.0, hash.js@^1.0.3: inherits "^2.0.3" minimalistic-assert "^1.0.1" -hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" - dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" - he@1.2.x: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" -hipchat-notifier@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz#b6d249755437c191082367799d3ba9a0f23b231e" - dependencies: - lodash "^4.0.0" - request "^2.0.0" - hmac-drbg@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -5305,10 +5111,6 @@ hmac-drbg@^1.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" @@ -5432,14 +5234,6 @@ http-proxy@^1.13.0, http-proxy@^1.16.2: follow-redirects "^1.0.0" requires-port "^1.0.0" -http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" - dependencies: - assert-plus "^0.2.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -5448,17 +5242,6 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -httpntlm@1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/httpntlm/-/httpntlm-1.6.1.tgz#ad01527143a2e8773cfae6a96f58656bb52a34b2" - dependencies: - httpreq ">=0.4.22" - underscore "~1.7.0" - -httpreq@>=0.4.22: - version "0.4.24" - resolved "https://registry.yarnpkg.com/httpreq/-/httpreq-0.4.24.tgz#4335ffd82cd969668a39465c929ac61d6393627f" - https-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" @@ -5491,10 +5274,6 @@ husky@^1.0.0-rc.13: run-node "^1.0.0" slash "^2.0.0" -iconv-lite@0.4.15: - version "0.4.15" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" - iconv-lite@0.4.19: version "0.4.19" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" @@ -5588,14 +5367,6 @@ indexof@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" -inflection@~1.12.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.12.0.tgz#a200935656d6f5f6bc4dc7502e1aecb703228416" - -inflection@~1.3.0: - version "1.3.8" - resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.3.8.tgz#cbd160da9f75b14c3cc63578d4f396784bf3014e" - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -5728,7 +5499,7 @@ ip-regex@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" -ip@^1.1.0, ip@^1.1.2, ip@^1.1.5: +ip@^1.1.0, ip@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" @@ -5907,28 +5678,10 @@ is-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" -is-my-ip-valid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" - -is-my-json-valid@^2.12.4: - version "2.19.0" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.19.0.tgz#8fd6e40363cd06b963fa877d444bfb5eddc62175" - dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - is-my-ip-valid "^1.0.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" - is-npm@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" -is-number@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-0.1.1.tgz#69a7af116963d47206ec9bd9b48a14216f1e3806" - is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" @@ -5991,10 +5744,6 @@ is-promise@^2.1, is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" -is-property@^1.0.0, is-property@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - is-redirect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" @@ -6694,7 +6443,7 @@ json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" -json-stringify-safe@5.0.x, json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" @@ -6744,10 +6493,6 @@ jsonparse@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" -jsonpointer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" @@ -6797,37 +6542,38 @@ karma-webpack@2.0.4: source-map "^0.1.41" webpack-dev-middleware "^1.0.11" -karma@~2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/karma/-/karma-2.0.5.tgz#3710c7a2e71b1c439313f283846d88e04e4f918c" +karma@~4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/karma/-/karma-4.0.1.tgz#2581d6caa0d4cd28b65131561b47bad6d5478773" + integrity sha512-ind+4s03BqIXas7ZmraV3/kc5+mnqwCd+VDX1FndS6jxbt03kQKX2vXrWxNLuCjVYmhMwOZosAEKMM0a2q7w7A== dependencies: bluebird "^3.3.0" body-parser "^1.16.1" + braces "^2.3.2" chokidar "^2.0.3" colors "^1.1.0" - combine-lists "^1.0.0" connect "^3.6.0" core-js "^2.2.0" di "^0.0.1" dom-serialize "^2.2.0" - expand-braces "^0.1.1" + flatted "^2.0.0" glob "^7.1.1" graceful-fs "^4.1.2" http-proxy "^1.13.0" isbinaryfile "^3.0.0" - lodash "^4.17.4" - log4js "^2.5.3" - mime "^1.3.4" + lodash "^4.17.11" + log4js "^4.0.0" + mime "^2.3.1" minimatch "^3.0.2" optimist "^0.6.1" qjobs "^1.1.4" range-parser "^1.2.0" rimraf "^2.6.0" safe-buffer "^5.0.1" - socket.io "2.0.4" + socket.io "2.1.1" source-map "^0.6.1" tmp "0.0.33" - useragent "2.2.1" + useragent "2.3.0" keyv@3.0.0: version "3.0.0" @@ -6951,22 +6697,6 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -libbase64@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/libbase64/-/libbase64-0.1.0.tgz#62351a839563ac5ff5bd26f12f60e9830bb751e6" - -libmime@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/libmime/-/libmime-3.0.0.tgz#51a1a9e7448ecbd32cda54421675bb21bc093da6" - dependencies: - iconv-lite "0.4.15" - libbase64 "0.1.0" - libqp "1.1.0" - -libqp@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/libqp/-/libqp-1.1.0.tgz#f5e6e06ad74b794fb5b5b66988bf728ef1dedbe8" - license-webpack-plugin@2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-2.1.0.tgz#83acaa6e89c3c5316effdd80cb4ec9c5cd8efc2f" @@ -7171,7 +6901,7 @@ lodash@4.17.10: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" -lodash@4.17.11, lodash@^4.0.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.5.0, lodash@~4.17.10: +lodash@4.17.11, lodash@^4.0.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.5.0, lodash@~4.17.10: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" @@ -7202,32 +6932,16 @@ log-update@^1.0.2: ansi-escapes "^1.0.0" cli-cursor "^1.0.2" -log4js@^2.5.3: - version "2.11.0" - resolved "https://registry.yarnpkg.com/log4js/-/log4js-2.11.0.tgz#bf3902eff65c6923d9ce9cfbd2db54160e34005a" +log4js@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log4js/-/log4js-4.1.0.tgz#57983c6a443546a8c8607e9cb045d2a117c27644" + integrity sha512-eDa+zZPeVEeK6QGJAePyXM6pg4P3n3TO5rX9iZMVY48JshsTyLJZLIL5HipI1kQ2qLsSyOpUqNND/C5H4WhhiA== dependencies: - circular-json "^0.5.4" - date-format "^1.2.0" - debug "^3.1.0" - semver "^5.5.0" - streamroller "0.7.0" - optionalDependencies: - amqplib "^0.5.2" - axios "^0.15.3" - hipchat-notifier "^1.1.0" - loggly "^1.1.0" - mailgun-js "^0.18.0" - nodemailer "^2.5.0" - redis "^2.7.1" - slack-node "~0.2.0" - -loggly@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/loggly/-/loggly-1.1.1.tgz#0a0fc1d3fa3a5ec44fdc7b897beba2a4695cebee" - dependencies: - json-stringify-safe "5.0.x" - request "2.75.x" - timespan "2.3.x" + date-format "^2.0.0" + debug "^4.1.1" + flatted "^2.0.0" + rfdc "^1.1.2" + streamroller "^1.0.4" loglevel@^1.4.1: version "1.6.1" @@ -7262,9 +6976,13 @@ lowercase-keys@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" -lru-cache@2.2.x: - version "2.2.4" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.2.4.tgz#6c658619becf14031d0d0b594b16042ce4dc063d" +lru-cache@4.1.x: + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" lru-cache@^4.0.1, lru-cache@^4.1.1, lru-cache@^4.1.2, lru-cache@^4.1.3: version "4.1.3" @@ -7295,27 +7013,6 @@ magic-string@^0.25.0, magic-string@^0.25.1: dependencies: sourcemap-codec "^1.4.1" -mailcomposer@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/mailcomposer/-/mailcomposer-4.0.1.tgz#0e1c44b2a07cf740ee17dc149ba009f19cadfeb4" - dependencies: - buildmail "4.0.1" - libmime "3.0.0" - -mailgun-js@^0.18.0: - version "0.18.1" - resolved "https://registry.yarnpkg.com/mailgun-js/-/mailgun-js-0.18.1.tgz#ee39aa18d7bb598a5ce9ede84afb681defc8a6b0" - dependencies: - async "~2.6.0" - debug "~3.1.0" - form-data "~2.3.0" - inflection "~1.12.0" - is-stream "^1.1.0" - path-proxy "~1.0.0" - promisify-call "^2.0.2" - proxy-agent "~3.0.0" - tsscmp "~1.0.0" - make-dir@^1.0.0, make-dir@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" @@ -7534,7 +7231,7 @@ mime-types@2.1.20: dependencies: mime-db "~1.36.0" -mime-types@^2.1.11, mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.19, mime-types@~2.1.7: +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.19: version "2.1.21" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.21.tgz#28995aa1ecb770742fe6ae7e58f9181c744b3f96" dependencies: @@ -7544,7 +7241,7 @@ mime@1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" -mime@^1.3.4, mime@^1.4.1, mime@^1.5.0: +mime@^1.4.1, mime@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" @@ -7780,10 +7477,6 @@ nested-error-stacks@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz#0fbdcf3e13fe4994781280524f8b96b0cdff9c61" -netmask@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/netmask/-/netmask-1.0.6.tgz#20297e89d86f6f6400f250d9f4f6b4c1945fcd35" - next-tick@1: version "1.0.0" resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" @@ -8005,59 +7698,6 @@ node-sass@^4.9.3: stdout-stream "^1.4.0" "true-case-path" "^1.0.2" -node-uuid@~1.4.7: - version "1.4.8" - resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" - -nodemailer-direct-transport@3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz#e96fafb90358560947e569017d97e60738a50a86" - dependencies: - nodemailer-shared "1.1.0" - smtp-connection "2.12.0" - -nodemailer-fetch@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz#79c4908a1c0f5f375b73fe888da9828f6dc963a4" - -nodemailer-shared@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz#cf5994e2fd268d00f5cf0fa767a08169edb07ec0" - dependencies: - nodemailer-fetch "1.6.0" - -nodemailer-smtp-pool@2.8.2: - version "2.8.2" - resolved "https://registry.yarnpkg.com/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz#2eb94d6cf85780b1b4725ce853b9cbd5e8da8c72" - dependencies: - nodemailer-shared "1.1.0" - nodemailer-wellknown "0.1.10" - smtp-connection "2.12.0" - -nodemailer-smtp-transport@2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz#03d71c76314f14ac7dbc7bf033a6a6d16d67fb77" - dependencies: - nodemailer-shared "1.1.0" - nodemailer-wellknown "0.1.10" - smtp-connection "2.12.0" - -nodemailer-wellknown@0.1.10: - version "0.1.10" - resolved "https://registry.yarnpkg.com/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz#586db8101db30cb4438eb546737a41aad0cf13d5" - -nodemailer@^2.5.0: - version "2.7.2" - resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-2.7.2.tgz#f242e649aeeae39b6c7ed740ef7b061c404d30f9" - dependencies: - libmime "3.0.0" - mailcomposer "4.0.1" - nodemailer-direct-transport "3.3.2" - nodemailer-shared "1.1.0" - nodemailer-smtp-pool "2.8.2" - nodemailer-smtp-transport "2.7.2" - socks "1.1.9" - "nopt@2 || 3": version "3.0.6" resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" @@ -8192,7 +7832,7 @@ nwsapi@^2.0.9: version "2.1.1" resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.1.1.tgz#08d6d75e69fd791bdea31507ffafe8c843b67e9c" -oauth-sign@~0.8.1, oauth-sign@~0.8.2: +oauth-sign@~0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" @@ -8485,29 +8125,6 @@ p-try@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" -pac-proxy-agent@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pac-proxy-agent/-/pac-proxy-agent-3.0.0.tgz#11d578b72a164ad74bf9d5bac9ff462a38282432" - dependencies: - agent-base "^4.2.0" - debug "^3.1.0" - get-uri "^2.0.0" - http-proxy-agent "^2.1.0" - https-proxy-agent "^2.2.1" - pac-resolver "^3.0.0" - raw-body "^2.2.0" - socks-proxy-agent "^4.0.1" - -pac-resolver@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pac-resolver/-/pac-resolver-3.0.0.tgz#6aea30787db0a891704deb7800a722a7615a6f26" - dependencies: - co "^4.6.0" - degenerator "^1.0.4" - ip "^1.1.5" - netmask "^1.0.6" - thunkify "^2.1.2" - package-json@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" @@ -8679,12 +8296,6 @@ path-parse@^1.0.5, path-parse@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" -path-proxy@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/path-proxy/-/path-proxy-1.0.0.tgz#18e8a36859fc9d2f1a53b48dee138543c020de5e" - dependencies: - inflection "~1.3.0" - path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" @@ -8907,10 +8518,6 @@ private@^0.1.6, private@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - process-nextick-args@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" @@ -8946,12 +8553,6 @@ promise@~7.0.1: dependencies: asap "~2.0.3" -promisify-call@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/promisify-call/-/promisify-call-2.0.4.tgz#d48c2d45652ccccd52801ddecbd533a6d4bd5fba" - dependencies: - with-callback "^1.0.2" - prompts@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.0.3.tgz#c5ccb324010b2e8f74752aadceeb57134c1d2522" @@ -8980,23 +8581,6 @@ proxy-addr@~2.0.3, proxy-addr@~2.0.4: forwarded "~0.1.2" ipaddr.js "1.8.0" -proxy-agent@~3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-3.0.3.tgz#1c1a33db60ef5f2e9e35b876fd63c2bc681c611d" - dependencies: - agent-base "^4.2.0" - debug "^3.1.0" - http-proxy-agent "^2.1.0" - https-proxy-agent "^2.2.1" - lru-cache "^4.1.2" - pac-proxy-agent "^3.0.0" - proxy-from-env "^1.0.0" - socks-proxy-agent "^4.0.1" - -proxy-from-env@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.0.0.tgz#33c50398f70ea7eb96d21f7b817630a55791c7ee" - prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" @@ -9050,7 +8634,7 @@ punycode@1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" -punycode@1.4.1, punycode@^1.2.4, punycode@^1.4.1: +punycode@^1.2.4, punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" @@ -9074,10 +8658,6 @@ qs@6.5.2, qs@~6.5.1, qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" -qs@~6.2.0: - version "6.2.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.3.tgz#1cfcb25c10a9b2b483053ff39f5dfc9233908cfe" - query-string@^5.0.1: version "5.1.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb" @@ -9140,7 +8720,7 @@ raw-body@2.3.2: iconv-lite "0.4.19" unpipe "1.0.0" -raw-body@2.3.3, raw-body@^2.2.0: +raw-body@2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" dependencies: @@ -9260,7 +8840,7 @@ read-pkg@^4.0.1: parse-json "^4.0.0" pify "^3.0.0" -"readable-stream@1 || 2", readable-stream@2, readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.3, readable-stream@^2.3.6: +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" dependencies: @@ -9281,7 +8861,7 @@ readable-stream@1.0: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@1.1.x, "readable-stream@1.x >=1.1.9": +readable-stream@1.1.x: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" dependencies: @@ -9298,17 +8878,6 @@ readable-stream@^3.0.6: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readable-stream@~2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - string_decoder "~0.10.x" - util-deprecate "~1.0.1" - readdirp@^2.0.0: version "2.2.1" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" @@ -9349,22 +8918,6 @@ redent@^2.0.0: indent-string "^3.0.0" strip-indent "^2.0.0" -redis-commands@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/redis-commands/-/redis-commands-1.4.0.tgz#52f9cf99153efcce56a8f86af986bd04e988602f" - -redis-parser@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-2.6.0.tgz#52ed09dacac108f1a631c07e9b69941e7a19504b" - -redis@^2.7.1: - version "2.8.0" - resolved "https://registry.yarnpkg.com/redis/-/redis-2.8.0.tgz#202288e3f58c49f6079d97af7a10e1303ae14b02" - dependencies: - double-ended-queue "^2.1.0-0" - redis-commands "^1.2.0" - redis-parser "^2.6.0" - reflect-metadata@^0.1.2: version "0.1.12" resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.12.tgz#311bf0c6b63cd782f228a81abe146a2bfa9c56f2" @@ -9499,10 +9052,6 @@ repeat-element@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" -repeat-string@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-0.2.2.tgz#c7a8d3236068362059a7e4651fc6884e8b1fb4ae" - repeat-string@^1.5.2, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" @@ -9533,32 +9082,6 @@ request-promise-native@^1.0.5: stealthy-require "^1.1.0" tough-cookie ">=2.3.3" -request@2.75.x: - version "2.75.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.75.0.tgz#d2b8268a286da13eaa5d01adf5d18cc90f657d93" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - bl "~1.1.2" - caseless "~0.11.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.0.0" - har-validator "~2.0.6" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - node-uuid "~1.4.7" - oauth-sign "~0.8.1" - qs "~6.2.0" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" - request@2.87.0: version "2.87.0" resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e" @@ -9584,7 +9107,7 @@ request@2.87.0: tunnel-agent "^0.6.0" uuid "^3.1.0" -request@^2.0.0, request@^2.74.0, request@^2.83.0, request@^2.87.0, request@^2.88.0: +request@^2.83.0, request@^2.87.0, request@^2.88.0: version "2.88.0" resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" dependencies: @@ -9609,15 +9132,6 @@ request@^2.0.0, request@^2.74.0, request@^2.83.0, request@^2.87.0, request@^2.88 tunnel-agent "^0.6.0" uuid "^3.3.2" -requestretry@^1.2.2: - version "1.13.0" - resolved "https://registry.yarnpkg.com/requestretry/-/requestretry-1.13.0.tgz#213ec1006eeb750e8b8ce54176283d15a8d55d94" - dependencies: - extend "^3.0.0" - lodash "^4.15.0" - request "^2.74.0" - when "^3.7.7" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -9703,6 +9217,11 @@ retry@^0.10.0: version "0.10.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" +rfdc@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.1.2.tgz#e6e72d74f5dc39de8f538f65e00c36c18018e349" + integrity sha512-92ktAgvZhBzYTIK0Mja9uen5q5J3NRVMoDkJL2VMwq6SXjVCgqvQeVP2XAaUY6HT+XpQYeLSjb3UoitBryKmdA== + right-pad@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/right-pad/-/right-pad-1.0.1.tgz#8ca08c2cbb5b55e74dafa96bf7fd1a27d568c8d0" @@ -10080,12 +9599,6 @@ sisteransi@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.0.tgz#77d9622ff909080f1c19e5f4a1df0c1b0a27b88c" -slack-node@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/slack-node/-/slack-node-0.2.0.tgz#de4b8dddaa8b793f61dbd2938104fdabf37dfa30" - dependencies: - requestretry "^1.2.2" - slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" @@ -10098,21 +9611,10 @@ slice-ansi@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" -smart-buffer@^1.0.4: - version "1.1.15" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-1.1.15.tgz#7f114b5b65fab3e2a35aa775bb12f0d1c649bf16" - smart-buffer@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.0.1.tgz#07ea1ca8d4db24eb4cac86537d7d18995221ace3" -smtp-connection@2.12.0: - version "2.12.0" - resolved "https://registry.yarnpkg.com/smtp-connection/-/smtp-connection-2.12.0.tgz#d76ef9127cb23c2259edb1e8349c2e8d5e2d74c1" - dependencies: - httpntlm "1.6.1" - nodemailer-shared "1.1.0" - snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -10140,52 +9642,50 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - dependencies: - hoek "2.x.x" - socket.io-adapter@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz#2a805e8a14d6372124dd9159ad4502f8cb07f06b" -socket.io-client@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.0.4.tgz#0918a552406dc5e540b380dcd97afc4a64332f8e" +socket.io-client@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.1.1.tgz#dcb38103436ab4578ddb026638ae2f21b623671f" + integrity sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ== dependencies: backo2 "1.0.2" base64-arraybuffer "0.1.5" component-bind "1.0.0" component-emitter "1.2.1" - debug "~2.6.4" - engine.io-client "~3.1.0" + debug "~3.1.0" + engine.io-client "~3.2.0" + has-binary2 "~1.0.2" has-cors "1.1.0" indexof "0.0.1" object-component "0.0.3" parseqs "0.0.5" parseuri "0.0.5" - socket.io-parser "~3.1.1" + socket.io-parser "~3.2.0" to-array "0.1.4" -socket.io-parser@~3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.1.3.tgz#ed2da5ee79f10955036e3da413bfd7f1e4d86c8e" +socket.io-parser@~3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.2.0.tgz#e7c6228b6aa1f814e6148aea325b51aa9499e077" + integrity sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA== dependencies: component-emitter "1.2.1" debug "~3.1.0" - has-binary2 "~1.0.2" isarray "2.0.1" -socket.io@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-2.0.4.tgz#c1a4590ceff87ecf13c72652f046f716b29e6014" +socket.io@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-2.1.1.tgz#a069c5feabee3e6b214a75b40ce0652e1cfb9980" + integrity sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA== dependencies: - debug "~2.6.6" - engine.io "~3.1.0" + debug "~3.1.0" + engine.io "~3.2.0" + has-binary2 "~1.0.2" socket.io-adapter "~1.1.0" - socket.io-client "2.0.4" - socket.io-parser "~3.1.1" + socket.io-client "2.1.1" + socket.io-parser "~3.2.0" sockjs-client@1.3.0: version "1.3.0" @@ -10205,20 +9705,13 @@ sockjs@0.3.19: faye-websocket "^0.10.0" uuid "^3.0.1" -socks-proxy-agent@^4.0.0, socks-proxy-agent@^4.0.1: +socks-proxy-agent@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-4.0.1.tgz#5936bf8b707a993079c6f37db2091821bffa6473" dependencies: agent-base "~4.2.0" socks "~2.2.0" -socks@1.1.9: - version "1.1.9" - resolved "https://registry.yarnpkg.com/socks/-/socks-1.1.9.tgz#628d7e4d04912435445ac0b6e459376cb3e6d691" - dependencies: - ip "^1.1.2" - smart-buffer "^1.0.4" - socks@~2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/socks/-/socks-2.2.1.tgz#68ad678b3642fbc5d99c64c165bc561eab0215f9" @@ -10498,14 +9991,16 @@ stream-to-observable@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.1.0.tgz#45bf1d9f2d7dc09bed81f1c307c430e68b84cffe" -streamroller@0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/streamroller/-/streamroller-0.7.0.tgz#a1d1b7cf83d39afb0d63049a5acbf93493bdf64b" +streamroller@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/streamroller/-/streamroller-1.0.4.tgz#d485c7624796d5e2eb34190c79afcbf006afb5e6" + integrity sha512-Wc2Gm5ygjSX8ZpW9J7Y9FwiSzTlKSvcl0FTTMd3rn7RoxDXpBW+xD9TY5sWL2n0UR61COB0LG1BQvN6nTUQbLQ== dependencies: - date-format "^1.2.0" + async "^2.6.1" + date-format "^2.0.0" debug "^3.1.0" - mkdirp "^0.5.1" - readable-stream "^2.3.0" + fs-extra "^7.0.0" + lodash "^4.17.10" streamsearch@0.1.2: version "0.1.2" @@ -10561,10 +10056,6 @@ string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" -stringstream@~0.0.4: - version "0.0.6" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72" - strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -10798,10 +10289,6 @@ through@2, "through@>=2.2.7 <3", through@X.X.X, through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" -thunkify@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/thunkify/-/thunkify-2.1.2.tgz#faa0e9d230c51acc95ca13a361ac05ca7e04553d" - thunky@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" @@ -10827,10 +10314,6 @@ timers-ext@0.1, timers-ext@^0.1.5: es5-ext "~0.10.46" next-tick "1" -timespan@2.3.x: - version "2.3.0" - resolved "https://registry.yarnpkg.com/timespan/-/timespan-2.3.0.tgz#4902ce040bd13d845c8f59b27e9d59bad6f39929" - tmp-promise@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-1.0.5.tgz#3208d7fa44758f86a2a4c4060f3c33fea30e8038" @@ -10916,7 +10399,7 @@ tough-cookie@^2.5.0: psl "^1.1.28" punycode "^2.1.1" -tough-cookie@~2.3.0, tough-cookie@~2.3.3: +tough-cookie@~2.3.3: version "2.3.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" dependencies: @@ -11017,10 +10500,6 @@ tslint@5.11.0: tslib "^1.8.0" tsutils "^2.27.2" -tsscmp@~1.0.0: - version "1.0.6" - resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" - tsutils@^2.27.2: version "2.29.0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99" @@ -11037,10 +10516,6 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" -tunnel-agent@~0.4.1: - version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" - tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" @@ -11081,10 +10556,6 @@ ultron@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" -underscore@~1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" - union-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" @@ -11208,11 +10679,12 @@ use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" -useragent@2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/useragent/-/useragent-2.2.1.tgz#cf593ef4f2d175875e8bb658ea92e18a4fd06d8e" +useragent@2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/useragent/-/useragent-2.3.0.tgz#217f943ad540cb2128658ab23fc960f6a88c9972" + integrity sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw== dependencies: - lru-cache "2.2.x" + lru-cache "4.1.x" tmp "0.0.x" util-deprecate@^1.0.1, util-deprecate@~1.0.1: @@ -11254,10 +10726,6 @@ uuid@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" -uws@~9.14.0: - version "9.14.0" - resolved "https://registry.yarnpkg.com/uws/-/uws-9.14.0.tgz#fac8386befc33a7a3705cbd58dc47b430ca4dd95" - validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -11522,10 +10990,6 @@ whatwg-url@^7.0.0: tr46 "^1.0.1" webidl-conversions "^4.0.2" -when@^3.7.7: - version "3.7.8" - resolved "https://registry.yarnpkg.com/when/-/when-3.7.8.tgz#c7130b6a7ea04693e842cdc9e7a1f2aa39a39f82" - when@~3.6.x: version "3.6.4" resolved "https://registry.yarnpkg.com/when/-/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e" @@ -11569,10 +11033,6 @@ window-size@1.1.1: define-property "^1.0.0" is-number "^3.0.0" -with-callback@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/with-callback/-/with-callback-1.0.2.tgz#a09629b9a920028d721404fb435bdcff5c91bc21" - word-wrap@^1.0.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" @@ -11654,10 +11114,6 @@ xmlhttprequest-ssl@~1.5.4: version "1.5.5" resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e" -xregexp@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" - xregexp@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020"