Skip to content
This repository has been archived by the owner on Sep 4, 2020. It is now read-only.

Commit

Permalink
v6.0.0 angular 6 and rxjs 6.1
Browse files Browse the repository at this point in the history
  • Loading branch information
clouless committed May 12, 2018
1 parent a58d4b9 commit 484ae06
Show file tree
Hide file tree
Showing 52 changed files with 2,474 additions and 2,742 deletions.
52 changes: 41 additions & 11 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,42 @@
.idea
*.iml
node_modules
build
dist
library-build-chain
# See http://help.github.com/ignore-files/ for more about ignoring files.

# compiled output
/dist
/tmp
/out-tsc

# dependencies
/node_modules

# IDEs and editors
/.idea
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace

# IDE - VSCode
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json

# misc
/.sass-cache
/connect.lock
/coverage
/libpeerconnection.log
npm-debug.log
yarn-error.log
testem.log
/typings

# System Files
.DS_Store
Thumbs.db

# compodoc
documentation
src/*.js
src/components/*.js
tsconfig-*.json
_dist_demo_node_modules
dist-demo
3 changes: 3 additions & 0 deletions DEVELOPMENT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Development

See https://github.com/cloukit/library-build-chain on how to build, start and publish library.
167 changes: 167 additions & 0 deletions angular.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,167 @@
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"toggle-demo": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"prefix": "cloukit",
"schematics": {
"@schematics/angular:component": {
"inlineTemplate": true,
"inlineStyle": true
}
},
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist/toggle-demo",
"index": "src/index.html",
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.app.json",
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css"
],
"scripts": []
},
"configurations": {
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
}
}
},
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "toggle-demo:build"
},
"configurations": {
"production": {
"browserTarget": "toggle-demo:build:production"
}
}
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"browserTarget": "toggle-demo:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/test.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.spec.json",
"karmaConfig": "src/karma.conf.js",
"styles": [
"styles.css"
],
"scripts": [],
"assets": [
"src/favicon.ico",
"src/assets"
]
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.app.json",
"src/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
]
}
}
}
},
"toggle-demo-e2e": {
"root": "e2e/",
"projectType": "application",
"architect": {
"e2e": {
"builder": "@angular-devkit/build-angular:protractor",
"options": {
"protractorConfig": "e2e/protractor.conf.js",
"devServerTarget": "toggle-demo:serve"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": "e2e/tsconfig.e2e.json",
"exclude": [
"**/node_modules/**"
]
}
}
}
},
"@cloukit/toggle": {
"root": "projects/cloukit/toggle",
"sourceRoot": "projects/cloukit/toggle/src",
"projectType": "library",
"prefix": "cloukit",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "projects/cloukit/toggle/tsconfig.lib.json",
"project": "projects/cloukit/toggle/ng-package.json"
},
"configurations": {
"production": {
"project": "projects/cloukit/toggle/ng-package.prod.json"
}
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "projects/cloukit/toggle/src/test.ts",
"tsConfig": "projects/cloukit/toggle/tsconfig.spec.json",
"karmaConfig": "projects/cloukit/toggle/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"projects/cloukit/toggle/tsconfig.lib.json",
"projects/cloukit/toggle/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
]
}
}
}
}
},
"defaultProject": "toggle-demo"
}
27 changes: 27 additions & 0 deletions cloukit-generate-story-source.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#!/bin/env node

/*!
* @license MIT
* Copyright (c) 2017 Bernhard Grünewaldt - codeclou.io
* https://github.com/cloukit/legal
* version 2018-05-10 1845
*/
const fs = require('fs');
const path = require('path');
const pathToStories = './src/app/demo/stories/';
const targetJson = './src/assets/demo-stories-source.json';
if (fs.existsSync(pathToStories)) {
console.log('>> parsing demo story source files into json');
const files = fs.readdirSync(pathToStories);
if (files !== undefined && files !== null && files.length > 0) {
const storySource = {};
for (let i = 0; i < files.length; i++) {
const storyFile = files[i];
let storyFileContent = fs.readFileSync((`${pathToStories}${storyFile}`), 'utf-8');
storySource[storyFile] = storyFileContent;
}
fs.writeFileSync(targetJson, JSON.stringify(storySource, null, 2));
}
} else {
console.log('>> SKIPPING > parsing demo story source files into json');
}
28 changes: 28 additions & 0 deletions e2e/protractor.conf.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// Protractor configuration file, see link for more information
// https://github.com/angular/protractor/blob/master/lib/config.ts

const { SpecReporter } = require('jasmine-spec-reporter');

exports.config = {
allScriptsTimeout: 11000,
specs: [
'./src/**/*.e2e-spec.ts'
],
capabilities: {
'browserName': 'chrome'
},
directConnect: true,
baseUrl: 'http://localhost:4200/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
onPrepare() {
require('ts-node').register({
project: require('path').join(__dirname, './tsconfig.e2e.json')
});
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
}
};
14 changes: 14 additions & 0 deletions e2e/src/app.e2e-spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import { AppPage } from './app.po';

describe('workspace-project App', () => {
let page: AppPage;

beforeEach(() => {
page = new AppPage();
});

it('should display welcome message', () => {
page.navigateTo();
expect(page.getParagraphText()).toEqual('Welcome to app!');
});
});
11 changes: 11 additions & 0 deletions e2e/src/app.po.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { browser, by, element } from 'protractor';

export class AppPage {
navigateTo() {
return browser.get('/');
}

getParagraphText() {
return element(by.css('cloukit-root h1')).getText();
}
}
13 changes: 13 additions & 0 deletions e2e/tsconfig.e2e.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"extends": "../tsconfig.json",
"compilerOptions": {
"outDir": "../out-tsc/app",
"module": "commonjs",
"target": "es5",
"types": [
"jasmine",
"jasminewd2",
"node"
]
}
}
Loading

0 comments on commit 484ae06

Please sign in to comment.