From 38a34b6388c5f4ce220ab91a72baf9bdfd9c3ab3 Mon Sep 17 00:00:00 2001 From: Willem Dantuma Date: Fri, 12 Jul 2019 13:07:31 +0200 Subject: [PATCH] Added stub for @farmmaps/common --- angular.json | 35 ++++++++++++++++ package-lock.json | 41 ++++++++++++++----- projects/common/README.md | 24 +++++++++++ projects/common/karma.conf.js | 32 +++++++++++++++ projects/common/ng-package.json | 7 ++++ projects/common/package-lock.json | 5 +++ projects/common/package.json | 8 ++++ .../common/src/lib/common.component.spec.ts | 25 +++++++++++ projects/common/src/lib/common.component.ts | 19 +++++++++ projects/common/src/lib/common.module.ts | 10 +++++ .../common/src/lib/common.service.spec.ts | 12 ++++++ projects/common/src/lib/common.service.ts | 9 ++++ projects/common/src/public-api.ts | 7 ++++ projects/common/src/test.ts | 22 ++++++++++ projects/common/tsconfig.lib.json | 32 +++++++++++++++ projects/common/tsconfig.spec.json | 17 ++++++++ projects/common/tslint.json | 17 ++++++++ projects/material/package-lock.json | 5 +++ projects/material/package.json | 2 +- src/app/app.component.html | 2 + src/app/app.module.ts | 4 +- tsconfig.json | 8 ++++ 22 files changed, 330 insertions(+), 13 deletions(-) create mode 100644 projects/common/README.md create mode 100644 projects/common/karma.conf.js create mode 100644 projects/common/ng-package.json create mode 100644 projects/common/package-lock.json create mode 100644 projects/common/package.json create mode 100644 projects/common/src/lib/common.component.spec.ts create mode 100644 projects/common/src/lib/common.component.ts create mode 100644 projects/common/src/lib/common.module.ts create mode 100644 projects/common/src/lib/common.service.spec.ts create mode 100644 projects/common/src/lib/common.service.ts create mode 100644 projects/common/src/public-api.ts create mode 100644 projects/common/src/test.ts create mode 100644 projects/common/tsconfig.lib.json create mode 100644 projects/common/tsconfig.spec.json create mode 100644 projects/common/tslint.json create mode 100644 projects/material/package-lock.json diff --git a/angular.json b/angular.json index 8cae375..78eda97 100644 --- a/angular.json +++ b/angular.json @@ -165,6 +165,41 @@ } } } + }, + "common": { + "root": "projects/common", + "sourceRoot": "projects/common/src", + "projectType": "library", + "prefix": "lib", + "architect": { + "build": { + "builder": "@angular-devkit/build-ng-packagr:build", + "options": { + "tsConfig": "projects/common/tsconfig.lib.json", + "project": "projects/common/ng-package.json" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "projects/common/src/test.ts", + "tsConfig": "projects/common/tsconfig.spec.json", + "karmaConfig": "projects/common/karma.conf.js" + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "projects/common/tsconfig.lib.json", + "projects/common/tsconfig.spec.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + } + } } }, "defaultProject": "farmmaps-lib-app" diff --git a/package-lock.json b/package-lock.json index c66b090..7d7ede2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3827,7 +3827,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -3848,12 +3849,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3868,17 +3871,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3995,7 +4001,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -4007,6 +4014,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -4021,6 +4029,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -4028,12 +4037,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -4052,6 +4063,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -4132,7 +4144,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -4144,6 +4157,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -4229,7 +4243,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -4265,6 +4280,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -4284,6 +4300,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -4327,12 +4344,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, diff --git a/projects/common/README.md b/projects/common/README.md new file mode 100644 index 0000000..9811f98 --- /dev/null +++ b/projects/common/README.md @@ -0,0 +1,24 @@ +# Common + +This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0. + +## Code scaffolding + +Run `ng generate component component-name --project common` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project common`. +> Note: Don't forget to add `--project common` or else it will be added to the default project in your `angular.json` file. + +## Build + +Run `ng build common` to build the project. The build artifacts will be stored in the `dist/` directory. + +## Publishing + +After building your library with `ng build common`, go to the dist folder `cd dist/common` and run `npm publish`. + +## Running unit tests + +Run `ng test common` to execute the unit tests via [Karma](https://karma-runner.github.io). + +## Further help + +To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). diff --git a/projects/common/karma.conf.js b/projects/common/karma.conf.js new file mode 100644 index 0000000..3d0ddf2 --- /dev/null +++ b/projects/common/karma.conf.js @@ -0,0 +1,32 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, '../../coverage/common'), + reports: ['html', 'lcovonly'], + fixWebpackSourcePaths: true + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/projects/common/ng-package.json b/projects/common/ng-package.json new file mode 100644 index 0000000..1cb4d65 --- /dev/null +++ b/projects/common/ng-package.json @@ -0,0 +1,7 @@ +{ + "$schema": "../../node_modules/ng-packagr/ng-package.schema.json", + "dest": "../../dist/common", + "lib": { + "entryFile": "src/public-api.ts" + } +} \ No newline at end of file diff --git a/projects/common/package-lock.json b/projects/common/package-lock.json new file mode 100644 index 0000000..bd9c5da --- /dev/null +++ b/projects/common/package-lock.json @@ -0,0 +1,5 @@ +{ + "name": "@farmmaps/common", + "version": "0.0.1", + "lockfileVersion": 1 +} diff --git a/projects/common/package.json b/projects/common/package.json new file mode 100644 index 0000000..b31cd18 --- /dev/null +++ b/projects/common/package.json @@ -0,0 +1,8 @@ +{ + "name": "@farmmaps/common", + "version": "0.0.1", + "peerDependencies": { + "@angular/common": "^7.2.0", + "@angular/core": "^7.2.0" + } +} diff --git a/projects/common/src/lib/common.component.spec.ts b/projects/common/src/lib/common.component.spec.ts new file mode 100644 index 0000000..77aac14 --- /dev/null +++ b/projects/common/src/lib/common.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { CommonComponent } from './common.component'; + +describe('CommonComponent', () => { + let component: CommonComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ CommonComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(CommonComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/projects/common/src/lib/common.component.ts b/projects/common/src/lib/common.component.ts new file mode 100644 index 0000000..6281079 --- /dev/null +++ b/projects/common/src/lib/common.component.ts @@ -0,0 +1,19 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'lib-common', + template: ` +

+ common works! +

+ `, + styles: [] +}) +export class CommonComponent implements OnInit { + + constructor() { } + + ngOnInit() { + } + +} diff --git a/projects/common/src/lib/common.module.ts b/projects/common/src/lib/common.module.ts new file mode 100644 index 0000000..5d270ea --- /dev/null +++ b/projects/common/src/lib/common.module.ts @@ -0,0 +1,10 @@ +import { NgModule } from '@angular/core'; +import { CommonComponent } from './common.component'; + +@NgModule({ + declarations: [CommonComponent], + imports: [ + ], + exports: [CommonComponent] +}) +export class CommonModule { } diff --git a/projects/common/src/lib/common.service.spec.ts b/projects/common/src/lib/common.service.spec.ts new file mode 100644 index 0000000..e2b7548 --- /dev/null +++ b/projects/common/src/lib/common.service.spec.ts @@ -0,0 +1,12 @@ +import { TestBed } from '@angular/core/testing'; + +import { CommonService } from './common.service'; + +describe('CommonService', () => { + beforeEach(() => TestBed.configureTestingModule({})); + + it('should be created', () => { + const service: CommonService = TestBed.get(CommonService); + expect(service).toBeTruthy(); + }); +}); diff --git a/projects/common/src/lib/common.service.ts b/projects/common/src/lib/common.service.ts new file mode 100644 index 0000000..343dc86 --- /dev/null +++ b/projects/common/src/lib/common.service.ts @@ -0,0 +1,9 @@ +import { Injectable } from '@angular/core'; + +@Injectable({ + providedIn: 'root' +}) +export class CommonService { + + constructor() { } +} diff --git a/projects/common/src/public-api.ts b/projects/common/src/public-api.ts new file mode 100644 index 0000000..6128eb2 --- /dev/null +++ b/projects/common/src/public-api.ts @@ -0,0 +1,7 @@ +/* + * Public API Surface of common + */ + +export * from './lib/common.service'; +export * from './lib/common.component'; +export * from './lib/common.module'; diff --git a/projects/common/src/test.ts b/projects/common/src/test.ts new file mode 100644 index 0000000..e11ff1c --- /dev/null +++ b/projects/common/src/test.ts @@ -0,0 +1,22 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'core-js/es7/reflect'; +import 'zone.js/dist/zone'; +import 'zone.js/dist/zone-testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: any; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/projects/common/tsconfig.lib.json b/projects/common/tsconfig.lib.json new file mode 100644 index 0000000..3fe337f --- /dev/null +++ b/projects/common/tsconfig.lib.json @@ -0,0 +1,32 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/lib", + "target": "es2015", + "module": "es2015", + "moduleResolution": "node", + "declaration": true, + "sourceMap": true, + "inlineSources": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "importHelpers": true, + "types": [], + "lib": [ + "dom", + "es2018" + ] + }, + "angularCompilerOptions": { + "annotateForClosureCompiler": true, + "skipTemplateCodegen": true, + "strictMetadataEmit": true, + "fullTemplateTypeCheck": true, + "strictInjectionParameters": true, + "enableResourceInlining": true + }, + "exclude": [ + "src/test.ts", + "**/*.spec.ts" + ] +} diff --git a/projects/common/tsconfig.spec.json b/projects/common/tsconfig.spec.json new file mode 100644 index 0000000..16da33d --- /dev/null +++ b/projects/common/tsconfig.spec.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/spec", + "types": [ + "jasmine", + "node" + ] + }, + "files": [ + "src/test.ts" + ], + "include": [ + "**/*.spec.ts", + "**/*.d.ts" + ] +} diff --git a/projects/common/tslint.json b/projects/common/tslint.json new file mode 100644 index 0000000..124133f --- /dev/null +++ b/projects/common/tslint.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tslint.json", + "rules": { + "directive-selector": [ + true, + "attribute", + "lib", + "camelCase" + ], + "component-selector": [ + true, + "element", + "lib", + "kebab-case" + ] + } +} diff --git a/projects/material/package-lock.json b/projects/material/package-lock.json new file mode 100644 index 0000000..6a234c4 --- /dev/null +++ b/projects/material/package-lock.json @@ -0,0 +1,5 @@ +{ + "name": "material", + "version": "0.0.1", + "lockfileVersion": 1 +} diff --git a/projects/material/package.json b/projects/material/package.json index d9b1f7e..8b74a3b 100644 --- a/projects/material/package.json +++ b/projects/material/package.json @@ -5,4 +5,4 @@ "@angular/common": "^7.2.0", "@angular/core": "^7.2.0" } -} \ No newline at end of file +} diff --git a/src/app/app.component.html b/src/app/app.component.html index e0268cf..e5d31c2 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -8,6 +8,8 @@

Material Test

Material Test Cropfield Selector

+

Common Test

+