Merge tslint-warnings

This commit is contained in:
William Welling
2016-12-02 08:10:32 -06:00
19 changed files with 112 additions and 176 deletions

2
.gitignore vendored
View File

@@ -18,3 +18,5 @@ webpack.records.json
/npm-debug.log.*
morgan.log
*.css

View File

@@ -27,7 +27,3 @@ Currently this contains the [Angular 2 Universal Starter](https://github.com/ang
## AoT and Prod
- `npm run build:prod:ngc` to compile the ngfactory files and build prod

View File

@@ -3,5 +3,5 @@
"dist",
"src/index.html"
],
"ext" : "js ts json html"
"ext": "js ts json html"
}

View File

@@ -32,17 +32,17 @@
"lint": "tslint \"src/**/*.ts\" || true"
},
"dependencies": {
"@angular/common": "~2.1.2",
"@angular/compiler": "~2.1.2",
"@angular/compiler-cli": "~2.1.2",
"@angular/core": "~2.1.2",
"@angular/forms": "~2.1.2",
"@angular/http": "~2.1.2",
"@angular/platform-browser": "~2.1.2",
"@angular/platform-browser-dynamic": "~2.1.2",
"@angular/platform-server": "~2.1.2",
"@angular/router": "~3.1.2",
"@angular/upgrade": "~2.1.2",
"@angular/common": "~2.2.4",
"@angular/compiler": "~2.2.4",
"@angular/compiler-cli": "~2.2.4",
"@angular/core": "~2.2.4",
"@angular/forms": "~2.2.4",
"@angular/http": "~2.2.4",
"@angular/platform-browser": "~2.2.4",
"@angular/platform-browser-dynamic": "~2.2.4",
"@angular/platform-server": "~2.2.4",
"@angular/router": "~3.2.4",
"@angular/upgrade": "~2.2.4",
"@angularclass/bootloader": "~1.0.1",
"@angularclass/idle-preload": "~1.0.4",
"@ng-bootstrap/ng-bootstrap": "1.0.0-alpha.14",
@@ -61,27 +61,27 @@
"ng2-translate": "~4.0.1",
"preboot": "~4.5.2",
"rxjs": "5.0.0-beta.12",
"webfontloader": "^1.6.26",
"webfontloader": "^1.6.27",
"zone.js": "~0.6.26"
},
"devDependencies": {
"@ngtools/webpack": "~1.1.7",
"@types/body-parser": "0.0.29",
"@types/compression": "0.0.29",
"@types/cookie-parser": "^1.3.29",
"@types/express": "^4.0.32",
"@types/express-serve-static-core": "^4.0.33",
"@types/hammerjs": "^2.0.32",
"@ngtools/webpack": "1.1.7",
"@types/body-parser": "0.0.33",
"@types/compression": "0.0.33",
"@types/cookie-parser": "^1.3.30",
"@types/express": "^4.0.34",
"@types/express-serve-static-core": "^4.0.39",
"@types/hammerjs": "^2.0.33",
"@types/memory-cache": "0.0.29",
"@types/mime": "0.0.28",
"@types/mime": "0.0.29",
"@types/morgan": "^1.7.32",
"@types/node": "^6.0.38",
"@types/serve-static": "^1.7.27",
"@types/node": "^6.0.51",
"@types/serve-static": "^1.7.31",
"@types/webfontloader": "^1.6.27",
"accepts": "^1.3.3",
"angular2-template-loader": "^0.4.0",
"angular2-template-loader": "^0.6.0",
"awesome-typescript-loader": "^2.2.4",
"codelyzer": "1.0.0-beta.3",
"codelyzer": "2.0.0-beta.1",
"cookie-parser": "^1.4.3",
"copy-webpack-plugin": "~4.0.1",
"express-interceptor": "^1.2.0",
@@ -90,21 +90,21 @@
"json-loader": "^0.5.4",
"memory-cache": "^0.1.6",
"node-sass": "^3.13.0",
"nodemon": "^1.10.0",
"nodemon": "^1.11.0",
"raw-loader": "^0.5.1",
"reflect-metadata": "0.1.8",
"rimraf": "^2.5.4",
"sass-loader": "^4.0.2",
"string-replace-loader": "^1.0.5",
"ts-helpers": "^1.1.2",
"ts-node": "^1.3.0",
"tslint": "3.13.0",
"typescript": "2.0.2",
"ts-node": "^1.7.0",
"tslint": "4.0.2",
"tslint-loader": "3.2.1",
"typescript": "2.0.10",
"v8-lazy-parse-webpack-plugin": "^0.3.0",
"webpack": "2.1.0-beta.27",
"webpack-bundle-analyzer": "1.4.1",
"webpack-dev-middleware": "^1.8.4",
"webpack-dev-server": "2.1.0-beta.11",
"webpack-merge": "~0.16.0"
"webpack-merge": "~1.0.2"
}
}

View File

@@ -8,14 +8,14 @@ let __compiler__ = require('@angular/compiler');
import { __platform_browser_private__ } from '@angular/platform-browser';
import { __core_private__ } from '@angular/core';
if (!__core_private__['ViewUtils']) {
__core_private__['ViewUtils'] = __core_private__['view_utils'];
__core_private__['ViewUtils'] = __core_private__['view_utils'];
}
if (__compiler__ && __compiler__.SelectorMatcher && __compiler__.CssSelector) {
(__compiler__).__compiler_private__ = {
SelectorMatcher: __compiler__.SelectorMatcher,
CssSelector: __compiler__.CssSelector
}
(__compiler__).__compiler_private__ = {
SelectorMatcher: __compiler__.SelectorMatcher,
CssSelector: __compiler__.CssSelector
}
}

View File

@@ -9,25 +9,25 @@ import { __platform_browser_private__ } from '@angular/platform-browser';
import { __core_private__ } from '@angular/core';
let patch = false;
if (!__core_private__['ViewUtils']) {
patch = true;
__core_private__['ViewUtils'] = __core_private__['view_utils'];
patch = true;
__core_private__['ViewUtils'] = __core_private__['view_utils'];
}
if (__compiler__ && __compiler__.SelectorMatcher && __compiler__.CssSelector) {
patch = true;
(__compiler__).__compiler_private__ = {
SelectorMatcher: __compiler__.SelectorMatcher,
CssSelector: __compiler__.CssSelector
}
patch = true;
(__compiler__).__compiler_private__ = {
SelectorMatcher: __compiler__.SelectorMatcher,
CssSelector: __compiler__.CssSelector
}
}
if (patch) {
var __universal__ = require('angular2-platform-node/__private_imports__');
__universal__.ViewUtils = __core_private__['view_utils'];
__universal__.CssSelector = __universal__.CssSelector || __compiler__.CssSelector;
__universal__.SelectorMatcher = __universal__.SelectorMatcher || __compiler__.SelectorMatcher;
var __universal__ = require('angular2-platform-node/__private_imports__');
__universal__.ViewUtils = __core_private__['view_utils'];
__universal__.CssSelector = __universal__.CssSelector || __compiler__.CssSelector;
__universal__.SelectorMatcher = __universal__.SelectorMatcher || __compiler__.SelectorMatcher;
}
// Fix Material Support

View File

@@ -6,9 +6,9 @@
* found in the LICENSE file at https://angular.io/license
*/
import {Injectable} from '@angular/core';
import { Injectable } from '@angular/core';
// es6-modules are used here
import {DomAdapter, getDOM} from '@angular/platform-browser/src/dom/dom_adapter';
import { DomAdapter, getDOM } from '@angular/platform-browser/src/dom/dom_adapter';
/**
* Represent meta element.
@@ -69,7 +69,7 @@ export class Meta {
* @param tags
* @returns {HTMLMetaElement[]}
*/
addTags(...tags: Array<MetaDefinition|MetaDefinition[]>): HTMLMetaElement[] {
addTags(...tags: Array<MetaDefinition | MetaDefinition[]>): HTMLMetaElement[] {
const presentTags = this._flattenArray(tags);
if (presentTags.length === 0) return [];
return presentTags.map((tag: MetaDefinition) => this._addInternal(tag));

View File

@@ -4,16 +4,19 @@ import { Component, ChangeDetectionStrategy, ViewEncapsulation } from '@angular/
changeDetection: ChangeDetectionStrategy.Default,
encapsulation: ViewEncapsulation.Emulated,
selector: 'ds-home',
styleUrls: ['./home.component.scss'],
styleUrls: ['./home.component.css'],
templateUrl: './home.component.html'
})
export class HomeComponent {
data: any = {};
constructor() {
this.universalInit();
}
universalInit() {
}
}

View File

@@ -11,9 +11,9 @@ export class ApiService {
}
/**
* whatever domain/feature method name
*/
/**
* whatever domain/feature method name
*/
get(url: string, options?: any) {
return this._http.get(url, options)
.map(res => res.json())

View File

@@ -4,7 +4,7 @@ import { Inject, Injectable, isDevMode } from '@angular/core';
export class CacheService {
static KEY = 'CacheService';
constructor(@Inject('LRU') public _cache: Map<string, any>) {
constructor( @Inject('LRU') public _cache: Map<string, any>) {
}

View File

@@ -23,14 +23,14 @@ export function hashCodeString(str: string): string {
// domain/feature service
@Injectable()
export class ModelService {
// This is only one example of one Model depending on your domain
// This is only one example of one Model depending on your domain
constructor(public _api: ApiService, public _cache: CacheService) {
}
/**
* whatever domain/feature method name
*/
/**
* whatever domain/feature method name
*/
get(url) {
// you want to return the cache if there is a response in it.
// This would cache the first response so if your API isn't idempotent

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -1,9 +1,9 @@
var util = require('util');
var {Router} = require('express');
var { Router } = require('express');
// Our API for demos only
import {fakeDataBase} from './db';
import {fakeDemoRedisCache} from './cache';
import { fakeDataBase } from './db';
import { fakeDemoRedisCache } from './cache';
// you would use cookies/token etc
var USER_ID = 'f9d98cf1-1b96-464e-8755-bcc2a5c09077'; // hardcoded as an example
@@ -32,9 +32,9 @@ export function serverApi(req, res) {
var COUNT = 4;
var TODOS = [
{ id: 0, value: 'finish example', created_at: new Date(), completed: false },
{ id: 1, value: 'add tests', created_at: new Date(), completed: false },
{ id: 1, value: 'add tests', created_at: new Date(), completed: false },
{ id: 2, value: 'include development environment', created_at: new Date(), completed: false },
{ id: 3, value: 'include production environment', created_at: new Date(), completed: false }
{ id: 3, value: 'include production environment', created_at: new Date(), completed: false }
];
export function createTodoApi() {
@@ -51,7 +51,7 @@ export function createTodoApi() {
})
.post(function(req, res) {
console.log('POST', util.inspect(req.body, {colors: true}));
console.log('POST', util.inspect(req.body, { colors: true }));
var todo = req.body;
if (todo) {
TODOS.push({
@@ -81,12 +81,12 @@ export function createTodoApi() {
router.route('/todos/:todo_id')
.get(function(req, res) {
console.log('GET', util.inspect(req.todo, {colors: true}));
console.log('GET', util.inspect(req.todo, { colors: true }));
res.json(req.todo);
})
.put(function(req, res) {
console.log('PUT', util.inspect(req.body, {colors: true}));
console.log('PUT', util.inspect(req.body, { colors: true }));
var index = TODOS.indexOf(req.todo);
var todo = TODOS[index] = req.body;

8
src/typings.d.ts vendored
View File

@@ -39,7 +39,7 @@ interface SystemJS {
// Extra variables that live on Global that will be replaced by webpack DefinePlugin
declare var ENV: string;
declare var HMR: boolean;
declare var Zone: {current: any};
declare var Zone: { current: any };
interface GlobalEnvironment {
ENV;
HMR;
@@ -68,6 +68,6 @@ interface WebpackRequire {
}
// Extend typings
interface NodeRequire extends WebpackRequire {}
interface NodeModule extends WebpackModule {}
interface Global extends GlobalEnvironment {}
interface NodeRequire extends WebpackRequire { }
interface NodeModule extends WebpackModule { }
interface Global extends GlobalEnvironment { }

View File

@@ -24,5 +24,7 @@
},
"compileOnSave": false,
"buildOnSave": false,
"atom": { "rewriteTsconfig": false }
"atom": {
"rewriteTsconfig": false
}
}

View File

@@ -23,5 +23,7 @@
},
"compileOnSave": false,
"buildOnSave": false,
"atom": { "rewriteTsconfig": false }
"atom": {
"rewriteTsconfig": false
}
}

View File

@@ -2,102 +2,19 @@
"rulesDirectory": [
"node_modules/codelyzer"
],
"rules":{
"class-name": true,
"comment-format": [
"rules": {
"directive-selector": [
true,
"check-space"
"attribute",
"ds",
"camelCase"
],
"curly": true,
"eofline": true,
"forin": true,
"indent": [
"component-selector": [
true,
"spaces"
"element",
"ds",
"kebab-case"
],
"label-position": true,
"label-undefined": true,
"max-line-length": [
true,
140
],
"member-access": false,
"member-ordering": [
true,
"static-before-instance",
"variables-before-functions"
],
"no-arg": true,
"no-bitwise": true,
"no-console": [
true,
"debug",
"info",
"time",
"timeEnd",
"trace"
],
"no-construct": true,
"no-debugger": true,
"no-duplicate-key": true,
"no-duplicate-variable": true,
"no-empty": false,
"no-eval": true,
"no-inferrable-types": true,
"no-shadowed-variable": true,
"no-string-literal": false,
"no-switch-case-fall-through": true,
"no-trailing-whitespace": true,
"no-unused-expression": true,
"no-unused-variable": true,
"no-unreachable": true,
"no-use-before-declare": true,
"no-var-keyword": true,
"object-literal-sort-keys": false,
"one-line": [
true,
"check-open-brace",
"check-catch",
"check-else",
"check-whitespace"
],
"quotemark": [
true,
"single"
],
"radix": true,
"semicolon": [
"always"
],
"triple-equals": [
true,
"allow-null-check"
],
"typedef-whitespace": [
true,
{
"call-signature": "nospace",
"index-signature": "nospace",
"parameter": "nospace",
"property-declaration": "nospace",
"variable-declaration": "nospace"
}
],
"variable-name": false,
"whitespace": [
true,
"check-branch",
"check-decl",
"check-operator",
"check-separator",
"check-type"
],
"directive-selector-prefix": [true, "ds"],
"component-selector-prefix": [true, "ds"],
"directive-selector-name": [true, "camelCase"],
"component-selector-name": [true, "kebab-case"],
"directive-selector-type": [true, "attribute"],
"component-selector-type": [true, "element"],
"use-input-property-decorator": true,
"use-output-property-decorator": true,
"use-host-property-decorator": true,
@@ -107,7 +24,11 @@
"no-forward-ref": true,
"use-life-cycle-interface": true,
"use-pipe-transform-interface": true,
"pipe-naming": [true, "camelCase", "ds"],
"pipe-naming": [
true,
"camelCase",
"ds"
],
"component-class-suffix": true,
"directive-class-suffix": true,
"import-destructuring-spacing": true,

View File

@@ -27,7 +27,12 @@ export var commonPlugins = [
// Loader options
new webpack.LoaderOptionsPlugin({
options: {
tslint: {
emitErrors: false,
failOnHint: false
},
}
}),
];
@@ -49,8 +54,13 @@ export var commonConfig = {
{ test: /\.ts$/, use: ['awesome-typescript-loader', 'angular2-template-loader'] },
{ test: /\.html$/, use: 'raw-loader' },
{ test: /\.css$/, use: 'raw-loader' },
{ test: /\.scss$/, use: ['raw-loader', 'sass-loader'] },
{ test: /\.json$/, use: 'json-loader' }
{ test: /\.json$/, use: 'json-loader' },
{
enforce: 'pre',
test: /\.ts?$/,
use: 'tslint-loader',
exclude: /(node_modules)/,
}
],
},
plugins: [

View File

@@ -4,7 +4,7 @@ const clone = require('js.clone');
const webpackMerge = require('webpack-merge');
const V8LazyParseWebpackPlugin = require('v8-lazy-parse-webpack-plugin');
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
import webpackConfig, { root, includeClientPackages } from './webpack.config';
import webpackConfig, { root, includeClientPackages } from './webpack.config';
// const CompressionPlugin = require('compression-webpack-plugin');
@@ -171,8 +171,8 @@ export const serverConfig = {
export default [
// Client
webpackMerge(webpackConfig[0], clone(commonConfig), clientConfig, {plugins: webpackConfig[0].plugins.concat(commonPlugins, clientPlugins) }),
webpackMerge(webpackConfig[0], clone(commonConfig), clientConfig, { plugins: webpackConfig[0].plugins.concat(commonPlugins, clientPlugins) }),
// Server
webpackMerge(webpackConfig[1], clone(commonConfig), serverConfig, {plugins: webpackConfig[1].plugins.concat(commonPlugins, serverPlugins) })
webpackMerge(webpackConfig[1], clone(commonConfig), serverConfig, { plugins: webpackConfig[1].plugins.concat(commonPlugins, serverPlugins) })
];