From 22d9279e3ba9fa0e33929e538f3651fa5fbf0b9c Mon Sep 17 00:00:00 2001 From: Sercan Yemen Date: Tue, 14 Nov 2017 09:35:03 +0300 Subject: [PATCH 1/7] Fix: Authentication (v2) pages not scrollable when custom scrollbars disabled --- .../forgot-password-2/forgot-password-2.component.scss | 1 + .../content/pages/authentication/login-2/login-2.component.scss | 1 + .../pages/authentication/register-2/register-2.component.scss | 1 + .../reset-password-2/reset-password-2.component.scss | 1 + 4 files changed, 4 insertions(+) diff --git a/src/app/main/content/pages/authentication/forgot-password-2/forgot-password-2.component.scss b/src/app/main/content/pages/authentication/forgot-password-2/forgot-password-2.component.scss index f609d883..777dee54 100644 --- a/src/app/main/content/pages/authentication/forgot-password-2/forgot-password-2.component.scss +++ b/src/app/main/content/pages/authentication/forgot-password-2/forgot-password-2.component.scss @@ -34,6 +34,7 @@ } #forgot-password-form-wrapper { + overflow: auto; width: 400px; min-width: 400px; max-width: 400px; diff --git a/src/app/main/content/pages/authentication/login-2/login-2.component.scss b/src/app/main/content/pages/authentication/login-2/login-2.component.scss index 9eb92b6a..64aede4a 100644 --- a/src/app/main/content/pages/authentication/login-2/login-2.component.scss +++ b/src/app/main/content/pages/authentication/login-2/login-2.component.scss @@ -34,6 +34,7 @@ } #login-form-wrapper { + overflow: auto; width: 400px; min-width: 400px; max-width: 400px; diff --git a/src/app/main/content/pages/authentication/register-2/register-2.component.scss b/src/app/main/content/pages/authentication/register-2/register-2.component.scss index c460563a..96e135f0 100644 --- a/src/app/main/content/pages/authentication/register-2/register-2.component.scss +++ b/src/app/main/content/pages/authentication/register-2/register-2.component.scss @@ -34,6 +34,7 @@ } #register-form-wrapper { + overflow: auto; width: 400px; min-width: 400px; max-width: 400px; diff --git a/src/app/main/content/pages/authentication/reset-password-2/reset-password-2.component.scss b/src/app/main/content/pages/authentication/reset-password-2/reset-password-2.component.scss index f5acd6e9..9892460e 100644 --- a/src/app/main/content/pages/authentication/reset-password-2/reset-password-2.component.scss +++ b/src/app/main/content/pages/authentication/reset-password-2/reset-password-2.component.scss @@ -34,6 +34,7 @@ } #reset-password-form-wrapper { + overflow: auto; width: 400px; min-width: 400px; max-width: 400px; From 142fc982ca4b21b280b4640127fe709e7add3dd0 Mon Sep 17 00:00:00 2001 From: mustafahlvc Date: Fri, 17 Nov 2017 16:57:42 +0300 Subject: [PATCH 2/7] Angular updated to 5.0.2, angular-cli updated to 1.5.2, + angular-material-elements and fakeDb folder excluded from linting, + some lint errors solved. --- .angular-cli.json | 18 +- package-lock.json | 1015 +---------------- package.json | 26 +- src/app/core/matColors.ts | 1 + .../contact-list/contact-list.component.ts | 5 + tslint.json | 15 +- 6 files changed, 104 insertions(+), 976 deletions(-) diff --git a/.angular-cli.json b/.angular-cli.json index e997f3de..e105fc1d 100644 --- a/.angular-cli.json +++ b/.angular-cli.json @@ -39,15 +39,27 @@ "lint": [ { "project": "src/tsconfig.app.json", - "exclude": "**/node_modules/**" + "exclude": [ + "**/node_modules/**", + "**/src/app/fuse-fake-db/**/*", + "**/src/assets/angular-material-examples/**/*" + ] }, { "project": "src/tsconfig.spec.json", - "exclude": "**/node_modules/**" + "exclude": [ + "**/node_modules/**", + "**/src/app/fuse-fake-db/**/*", + "**/src/assets/angular-material-examples/**/*" + ] }, { "project": "e2e/tsconfig.e2e.json", - "exclude": "**/node_modules/**" + "exclude": [ + "**/node_modules/**", + "**/src/app/fuse-fake-db/**/*", + "**/src/assets/angular-material-examples/**/*" + ] } ], "test": { diff --git a/package-lock.json b/package-lock.json index 0f7492fd..e76720ef 100644 --- a/package-lock.json +++ b/package-lock.json @@ -43,9 +43,9 @@ } }, "@angular/animations": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.0.1.tgz", - "integrity": "sha1-qSsrGGpuWjGp8VhJEd1qp+FsXeE=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.0.2.tgz", + "integrity": "sha1-bTpzWk+Fw4jaa6P3ddu+YUBKwC0=", "requires": { "tslib": "1.8.0" } @@ -59,15 +59,15 @@ } }, "@angular/cli": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-1.5.0.tgz", - "integrity": "sha512-nCXvqNCdi+8aOU2v6EABZsMg5bB7iM+wfaoWKnu9M5fOW2Rm+7/3Y1gDQKyFkgXCzXdy3J/xpfmwT0gjmjlvIA==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-1.5.2.tgz", + "integrity": "sha512-OcHYTjHKoUohN6WaCWkoq5Jud1auYTh/LMtqelP1XgpszYrwfZguwNbKvwddqhrs8RPgeVM0owI4hK/sgYA07Q==", "dev": true, "requires": { "@angular-devkit/build-optimizer": "0.0.32", "@angular-devkit/schematics": "0.0.35", "@ngtools/json-schema": "1.1.0", - "@ngtools/webpack": "1.8.0", + "@ngtools/webpack": "1.8.2", "@schematics/angular": "0.1.0", "autoprefixer": "6.7.7", "chalk": "2.2.2", @@ -92,6 +92,7 @@ "license-webpack-plugin": "1.1.1", "lodash": "4.17.4", "memory-fs": "0.4.1", + "minimatch": "3.0.4", "node-modules-path": "1.0.1", "node-sass": "4.5.3", "nopt": "4.0.1", @@ -121,28 +122,45 @@ "webpack-sources": "1.0.1", "webpack-subresource-integrity": "1.0.1", "zone.js": "0.8.18" + }, + "dependencies": { + "@ngtools/webpack": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-1.8.2.tgz", + "integrity": "sha512-JgG6foy0Npf7dG1fWCF3Gvvtp43FfpYtTTfNwrJPujcIfFeEfBKgzSPj3nW/bx2YzGjxRqmLXBzqVO5kaYcAqg==", + "dev": true, + "requires": { + "chalk": "2.2.2", + "enhanced-resolve": "3.4.1", + "loader-utils": "1.1.0", + "magic-string": "0.22.4", + "semver": "5.4.1", + "source-map": "0.5.7", + "tree-kill": "1.2.0" + } + } } }, "@angular/common": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.0.1.tgz", - "integrity": "sha1-QwBas8i4/68Xaq+zuGupMcPkvfk=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.0.2.tgz", + "integrity": "sha1-2AMiFT+qqazKkVUmOKPkfcI3umo=", "requires": { "tslib": "1.8.0" } }, "@angular/compiler": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.0.1.tgz", - "integrity": "sha1-f9TH+ku770wUaWL6lGuCczCmyO0=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.0.2.tgz", + "integrity": "sha1-2GXUNyJ83RYYP4eQCjiJPY9fsTk=", "requires": { "tslib": "1.8.0" } }, "@angular/compiler-cli": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.0.1.tgz", - "integrity": "sha1-Um3BuzlPsWrZFmAe6pqgDrRLT/8=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.0.2.tgz", + "integrity": "sha1-WbFnQTKF0ZX5ndHZvnP3D+2zNCk=", "dev": true, "requires": { "chokidar": "1.7.0", @@ -152,9 +170,9 @@ } }, "@angular/core": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.0.1.tgz", - "integrity": "sha1-pKdK/H4gWNMLgmPrbWbarOn0J7o=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.0.2.tgz", + "integrity": "sha1-+7VpHRr37GKSSAHIlDlVaTVihUo=", "requires": { "tslib": "1.8.0" } @@ -168,25 +186,25 @@ } }, "@angular/forms": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.0.1.tgz", - "integrity": "sha1-afMDxME9o8qg3mNDdYg4i2rWKyE=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.0.2.tgz", + "integrity": "sha1-9Mb/JdUXkPYydi6xxQd00XyM9GU=", "requires": { "tslib": "1.8.0" } }, "@angular/http": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.0.1.tgz", - "integrity": "sha1-NQy99jz6yJOWE9dT/wce1YpgVhs=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.0.2.tgz", + "integrity": "sha1-yzrxUh4U8ECqjKFVTij435tW/eg=", "requires": { "tslib": "1.8.0" } }, "@angular/language-service": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-5.0.1.tgz", - "integrity": "sha1-hp4J29bj2VwRfAYtId0f2SCtRNY=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-5.0.2.tgz", + "integrity": "sha1-q4ZjZx+WJ4NT+18eY3agdQYZjwc=", "dev": true }, "@angular/material": { @@ -198,25 +216,25 @@ } }, "@angular/platform-browser": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.0.1.tgz", - "integrity": "sha1-FIld0w7Sow7nuZx2t2R0j0bBqGI=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.0.2.tgz", + "integrity": "sha1-0Quv8DwkN/MIhHnBc9MK/fCxJKk=", "requires": { "tslib": "1.8.0" } }, "@angular/platform-browser-dynamic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.0.1.tgz", - "integrity": "sha1-Fttn1S1FMVY6sVQpxr3+GLwb7cg=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.0.2.tgz", + "integrity": "sha1-iYSn4vxPimdg+aBdlaK7n2sLf5o=", "requires": { "tslib": "1.8.0" } }, "@angular/router": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.0.1.tgz", - "integrity": "sha1-msCPKTAu9gzf08eBDZbCZd7EY9Y=", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.0.2.tgz", + "integrity": "sha1-vhBPsJG87EGN09hU+K9koD5cZ50=", "requires": { "tslib": "1.8.0" } @@ -233,21 +251,6 @@ "integrity": "sha1-w6DFRNYjkqzCgTpCyKDcb1j4aSI=", "dev": true }, - "@ngtools/webpack": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-1.8.0.tgz", - "integrity": "sha512-QefALj8VUakHMI/Z/7RjyQR4UpAAfCXeoHqqD9+7Td3CZkuryyGQILqOSAg3d+cP+64iCwIb2jSKC+YAIy722Q==", - "dev": true, - "requires": { - "chalk": "2.2.2", - "enhanced-resolve": "3.4.1", - "loader-utils": "1.1.0", - "magic-string": "0.22.4", - "semver": "5.4.1", - "source-map": "0.5.7", - "tree-kill": "1.2.0" - } - }, "@ngx-translate/core": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-8.0.0.tgz", @@ -288,9 +291,9 @@ } }, "@types/node": { - "version": "6.0.90", - "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.90.tgz", - "integrity": "sha512-tXoGRVdi7wZX7P1VWoV9Wfk0uYDOAHdEYXAttuWgSrN76Q32wQlSrMX0Rgyv3RTEaQY2ZLQrzYHVM2e8rfo8sA==", + "version": "6.0.92", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.92.tgz", + "integrity": "sha512-awEYSSTn7dauwVCYSx2CJaPTu0Z1Ht2oR1b2AD3CYao6ZRb+opb6EL43fzmD7eMFgMHzTBWSUzlWSD+S8xN0Nw==", "dev": true }, "@types/q": { @@ -1265,7 +1268,6 @@ "requires": { "anymatch": "1.3.2", "async-each": "1.0.1", - "fsevents": "1.1.2", "glob-parent": "2.0.0", "inherits": "2.0.3", "is-binary-path": "1.0.1", @@ -3428,905 +3430,6 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, - "fsevents": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.2.tgz", - "integrity": "sha512-Sn44E5wQW4bTHXvQmvSHwqbuiXtduD6Rrjm2ZtUEGbyrig+nUH3t/QD4M4/ZXViY556TBpRgZkHLDx3JxPwxiw==", - "dev": true, - "optional": true, - "requires": { - "nan": "2.7.0", - "node-pre-gyp": "0.6.36" - }, - "dependencies": { - "abbrev": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "aproba": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.2.9" - } - }, - "asn1": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "assert-plus": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws4": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "balanced-match": { - "version": "0.4.2", - "bundled": true, - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "0.14.5" - } - }, - "block-stream": { - "version": "0.0.9", - "bundled": true, - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "boom": { - "version": "2.10.1", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "brace-expansion": { - "version": "1.1.7", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "0.4.2", - "concat-map": "0.0.1" - } - }, - "buffer-shims": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true - }, - "co": { - "version": "4.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "requires": { - "delayed-stream": "1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "cryptiles": { - "version": "2.0.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "boom": "2.10.1" - } - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "debug": { - "version": "2.6.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.4.2", - "bundled": true, - "dev": true, - "optional": true - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "extend": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "optional": true - }, - "form-data": { - "version": "2.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "fstream": { - "version": "1.0.11", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.1" - } - }, - "fstream-ignore": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fstream": "1.0.11", - "inherits": "2.0.3", - "minimatch": "3.0.4" - } - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "1.1.1", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true, - "dev": true - }, - "har-schema": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "har-validator": { - "version": "4.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "hawk": { - "version": "3.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "hoek": { - "version": "2.16.3", - "bundled": true, - "dev": true - }, - "http-signature": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.0", - "sshpk": "1.13.0" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "ini": { - "version": "1.3.4", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "jodid25519": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsonify": "0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "jsonify": { - "version": "0.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "jsprim": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.0.2", - "json-schema": "0.2.3", - "verror": "1.3.6" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "mime-db": { - "version": "1.27.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.15", - "bundled": true, - "dev": true, - "requires": { - "mime-db": "1.27.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "node-pre-gyp": { - "version": "0.6.36", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "mkdirp": "0.5.1", - "nopt": "4.0.1", - "npmlog": "4.1.0", - "rc": "1.2.1", - "request": "2.81.0", - "rimraf": "2.6.1", - "semver": "5.3.0", - "tar": "2.2.1", - "tar-pack": "3.4.0" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1.1.0", - "osenv": "0.1.4" - } - }, - "npmlog": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "performance-now": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "1.0.7", - "bundled": true, - "dev": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.2.9", - "bundled": true, - "dev": true, - "requires": { - "buffer-shims": "1.0.0", - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "1.0.1", - "util-deprecate": "1.0.2" - } - }, - "request": { - "version": "2.81.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.15", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.0.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.0.1" - } - }, - "rimraf": { - "version": "2.6.1", - "bundled": true, - "dev": true, - "requires": { - "glob": "7.1.2" - } - }, - "safe-buffer": { - "version": "5.0.1", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.3.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sntp": { - "version": "1.0.9", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "hoek": "2.16.3" - } - }, - "sshpk": { - "version": "1.13.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jodid25519": "1.0.2", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "stringstream": { - "version": "0.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "2.2.1", - "bundled": true, - "dev": true, - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } - }, - "tar-pack": { - "version": "3.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "2.6.8", - "fstream": "1.0.11", - "fstream-ignore": "1.0.5", - "once": "1.4.0", - "readable-stream": "2.2.9", - "rimraf": "2.6.1", - "tar": "2.2.1", - "uid-number": "0.0.6" - } - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "punycode": "1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "dev": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "verror": { - "version": "1.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "extsprintf": "1.0.2" - } - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - } - } - }, "fstream": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", @@ -7813,7 +6916,7 @@ "integrity": "sha1-myIXQXCaTGLVzVPGqt1UpxE36V8=", "dev": true, "requires": { - "@types/node": "6.0.90", + "@types/node": "6.0.92", "@types/q": "0.0.32", "@types/selenium-webdriver": "2.53.42", "blocking-proxy": "0.0.5", diff --git a/package.json b/package.json index 2002adad..4ec1837c 100644 --- a/package.json +++ b/package.json @@ -16,18 +16,18 @@ "private": true, "dependencies": { "@agm/core": "1.0.0-beta.2", - "@angular/animations": "5.0.1", + "@angular/animations": "5.0.2", "@angular/cdk": "5.0.0-rc0", - "@angular/common": "5.0.1", - "@angular/compiler": "5.0.1", - "@angular/core": "5.0.1", + "@angular/common": "5.0.2", + "@angular/compiler": "5.0.2", + "@angular/core": "5.0.2", "@angular/flex-layout": "2.0.0-beta.10", - "@angular/forms": "5.0.1", - "@angular/http": "5.0.1", + "@angular/forms": "5.0.2", + "@angular/http": "5.0.2", "@angular/material": "5.0.0-rc0", - "@angular/platform-browser": "5.0.1", - "@angular/platform-browser-dynamic": "5.0.1", - "@angular/router": "5.0.1", + "@angular/platform-browser": "5.0.2", + "@angular/platform-browser-dynamic": "5.0.2", + "@angular/router": "5.0.2", "@ngx-translate/core": "8.0.0", "@swimlane/ngx-charts": "6.1.0", "@swimlane/ngx-datatable": "11.0.3", @@ -50,13 +50,13 @@ "zone.js": "0.8.18" }, "devDependencies": { - "@angular/cli": "1.5.0", - "@angular/compiler-cli": "5.0.1", - "@angular/language-service": "5.0.1", + "@angular/cli": "1.5.2", + "@angular/compiler-cli": "5.0.2", + "@angular/language-service": "5.0.2", "@angularclass/hmr": "2.1.3", "@types/jasmine": "2.5.54", "@types/jasminewd2": "2.0.3", - "@types/node": "6.0.90", + "@types/node": "6.0.92", "codelyzer": "3.2.2", "jasmine-core": "2.6.4", "jasmine-spec-reporter": "4.1.1", diff --git a/src/app/core/matColors.ts b/src/app/core/matColors.ts index 17c42ee6..9597ff50 100644 --- a/src/app/core/matColors.ts +++ b/src/app/core/matColors.ts @@ -681,6 +681,7 @@ const matColors = { } }; +// tslint:disable-next-line const matPresetColors = [ '#ffebee', '#ffcdd2', '#ef9a9a', '#e57373', '#ef5350', '#f44336', '#e53935', '#d32f2f', '#c62828', '#b71c1c', '#ff8a80', '#ff5252', '#ff1744', '#d50000', '#fce4ec', '#f8bbd0', '#f48fb1', '#f06292', '#ec407a', '#e91e63', '#d81b60', '#c2185b', '#ad1457', '#880e4f', '#ff80ab', '#ff4081', '#f50057', '#c51162', '#f3e5f5', '#e1bee7', '#ce93d8', '#ba68c8', '#ab47bc', '#9c27b0', '#8e24aa', '#7b1fa2', '#6a1b9a', '#4a148c', '#ea80fc', '#e040fb', '#d500f9', '#aa00ff', '#ede7f6', '#d1c4e9', '#b39ddb', '#9575cd', '#7e57c2', '#673ab7', '#5e35b1', '#512da8', '#4527a0', '#311b92', '#b388ff', '#7c4dff', '#651fff', '#6200ea', '#e8eaf6', '#c5cae9', '#9fa8da', '#7986cb', '#5c6bc0', '#3f51b5', '#3949ab', '#303f9f', '#283593', '#1a237e', '#8c9eff', '#536dfe', '#3d5afe', '#304ffe', '#e3f2fd', '#bbdefb', '#90caf9', '#64b5f6', '#42a5f5', '#2196f3', '#1e88e5', '#1976d2', '#1565c0', '#0d47a1', '#82b1ff', '#448aff', '#2979ff', '#2962ff', '#e1f5fe', '#b3e5fc', '#81d4fa', '#4fc3f7', '#29b6f6', '#03a9f4', '#039be5', '#0288d1', '#0277bd', '#01579b', '#80d8ff', '#40c4ff', '#00b0ff', '#0091ea', '#e0f7fa', '#b2ebf2', '#80deea', '#4dd0e1', '#26c6da', '#00bcd4', '#00acc1', '#0097a7', '#00838f', '#006064', '#84ffff', '#18ffff', '#00e5ff', '#00b8d4', '#e0f2f1', '#b2dfdb', '#80cbc4', '#4db6ac', '#26a69a', '#009688', '#00897b', '#00796b', '#00695c', '#004d40', '#a7ffeb', '#64ffda', '#1de9b6', '#00bfa5', '#e8f5e9', '#c8e6c9', '#a5d6a7', '#81c784', '#66bb6a', '#4caf50', '#43a047', '#388e3c', '#2e7d32', '#1b5e20', '#b9f6ca', '#69f0ae', '#00e676', '#00c853', '#f1f8e9', '#dcedc8', '#c5e1a5', '#aed581', '#9ccc65', '#8bc34a', '#7cb342', '#689f38', '#558b2f', '#33691e', '#ccff90', '#b2ff59', '#76ff03', '#64dd17', '#f9fbe7', '#f0f4c3', '#e6ee9c', '#dce775', '#d4e157', '#cddc39', '#c0ca33', '#afb42b', '#9e9d24', '#827717', '#f4ff81', '#eeff41', '#c6ff00', '#aeea00', '#fffde7', '#fff9c4', '#fff59d', '#fff176', '#ffee58', '#ffeb3b', '#fdd835', '#fbc02d', '#f9a825', '#f57f17', '#ffff8d', '#ffff00', '#ffea00', '#ffd600', '#fff8e1', '#ffecb3', '#ffe082', '#ffd54f', '#ffca28', '#ffc107', '#ffb300', '#ffa000', '#ff8f00', '#ff6f00', '#ffe57f', '#ffd740', '#ffc400', '#ffab00', '#fff3e0', '#ffe0b2', '#ffcc80', '#ffb74d', '#ffa726', '#ff9800', '#fb8c00', '#f57c00', '#ef6c00', '#e65100', '#ffd180', '#ffab40', '#ff9100', '#ff6d00', '#fbe9e7', '#ffccbc', '#ffab91', '#ff8a65', '#ff7043', '#ff5722', '#f4511e', '#e64a19', '#d84315', '#bf360c', '#ff9e80', '#ff6e40', '#ff3d00', '#dd2c00', '#efebe9', '#d7ccc8', '#bcaaa4', '#a1887f', '#8d6e63', '#795548', '#6d4c41', '#5d4037', '#4e342e', '#3e2723', '#d7ccc8', '#bcaaa4', '#8d6e63', '#5d4037', '#fafafa', '#f5f5f5', '#eeeeee', '#e0e0e0', '#bdbdbd', '#9e9e9e', '#757575', '#616161', '#424242', '#212121', '#ffffff', '#eeeeee', '#bdbdbd', '#616161', '#eceff1', '#cfd8dc', '#b0bec5', '#90a4ae', '#78909c', '#607d8b', '#546e7a', '#455a64', '#37474f', '#263238', '#cfd8dc', '#b0bec5', '#78909c', '#455a64' ]; diff --git a/src/app/main/content/apps/contacts/contact-list/contact-list.component.ts b/src/app/main/content/apps/contacts/contact-list/contact-list.component.ts index e645ba9b..8eca6913 100644 --- a/src/app/main/content/apps/contacts/contact-list/contact-list.component.ts +++ b/src/app/main/content/apps/contacts/contact-list/contact-list.component.ts @@ -55,6 +55,11 @@ export class FuseContactsContactListComponent implements OnInit, OnDestroy this.contactsService.onSelectedContactsChanged.subscribe(selectedContacts => { for ( const id in this.checkboxes ) { + if ( !this.checkboxes.hasOwnProperty(id) ) + { + continue; + } + this.checkboxes[id] = selectedContacts.includes(id); } this.selectedContacts = selectedContacts; diff --git a/tslint.json b/tslint.json index 576a0287..621ec556 100644 --- a/tslint.json +++ b/tslint.json @@ -15,7 +15,8 @@ "forin": true, "import-blacklist": [ true, - "rxjs" + "rxjs", + "rxjs/Rx" ], "import-spacing": true, "indent": [ @@ -31,8 +32,14 @@ "member-access": false, "member-ordering": [ true, - "static-before-instance", - "variables-before-functions" + { + "order": [ + "static-field", + "instance-field", + "static-method", + "instance-method" + ] + } ], "no-arg": true, "no-bitwise": true, @@ -63,7 +70,7 @@ "no-trailing-whitespace": false, "no-unnecessary-initializer": true, "no-unused-expression": true, - "no-use-before-declare": true, + "no-use-before-declare": false, "no-var-keyword": true, "object-literal-sort-keys": false, "one-line": false, From 76358f996eccd4db76ecb01c8cdedba3f8880bac Mon Sep 17 00:00:00 2001 From: mustafahlvc Date: Fri, 17 Nov 2017 18:35:43 +0300 Subject: [PATCH 3/7] Angular material docs updated, + @angular/material-moment-adapter added to package.json --- package-lock.json | 8 + package.json | 1 + .../angular-material.module.ts | 2 +- .../angular-material/example-components.ts | 250 +++++++++++++++-- src/app/navigation.model.ts | 6 + .../chips-input/chips-input-example.ts | 4 +- .../chips-stacked/chips-stacked-example.ts | 12 +- .../datepicker-api/datepicker-api-example.ts | 4 +- .../datepicker-disabled-example.css} | 0 .../datepicker-disabled-example.html | 23 ++ .../datepicker-disabled-example.ts | 11 + .../datepicker-events-example.css | 6 + .../datepicker-events-example.html | 10 + .../datepicker-events-example.ts | 18 ++ .../datepicker-filter-example.ts | 4 +- .../datepicker-formats-example.css | 1 + .../datepicker-formats-example.html | 5 + .../datepicker-formats-example.ts | 44 +++ .../datepicker-locale-example.css | 1 + .../datepicker-locale-example.html | 7 + .../datepicker-locale-example.ts | 42 +++ .../datepicker-min-max-example.ts | 4 +- .../datepicker-moment-example.css | 1 + .../datepicker-moment-example.html | 5 + .../datepicker-moment-example.ts | 32 +++ .../datepicker-overview-example.ts | 4 +- .../datepicker-start-view-example.ts | 4 +- .../datepicker-touch-example.ts | 4 +- .../datepicker-value-example.css | 1 + .../datepicker-value-example.html | 18 ++ .../datepicker-value-example.ts | 14 + .../elevation-overview-example.css | 4 + .../elevation-overview-example.html | 7 + .../elevation-overview-example.ts | 14 + .../form-field-custom-control-example.ts | 12 +- .../form-field-theming-example.html | 2 +- .../grid-list-dynamic-example.ts | 12 +- .../input-autosize-textarea-example.css | 1 + .../input-autosize-textarea-example.html | 4 + .../input-autosize-textarea-example.ts | 11 + .../input-clearable-example.ts | 2 +- .../input-error-state-matcher-example.css | 9 + .../input-error-state-matcher-example.html | 13 + .../input-error-state-matcher-example.ts | 29 ++ .../input-errors/input-errors-example.html | 2 +- .../input-errors/input-errors-example.ts | 8 +- .../input-hint/input-hint-example.ts | 2 +- .../input-overview-example.html | 4 + .../input-prefix-suffix-example.ts | 2 +- .../progress-bar-buffer-example.css | 1 + .../progress-bar-buffer-example.html | 1 + .../progress-bar-buffer-example.ts | 12 + .../progress-bar-determinate-example.css | 1 + .../progress-bar-determinate-example.html | 1 + .../progress-bar-determinate-example.ts | 12 + .../progress-bar-indeterminate-example.css | 1 + .../progress-bar-indeterminate-example.html} | 0 .../progress-bar-indeterminate-example.ts | 12 + .../progress-bar-overview-example.ts | 12 - .../progress-bar-query-example.css | 1 + .../progress-bar-query-example.html | 1 + .../progress-bar-query-example.ts | 12 + .../select-custom-trigger-example.css | 4 + .../select-custom-trigger-example.html | 11 + .../select-custom-trigger-example.ts | 15 + .../select-disabled-example.css | 1 + .../select-disabled-example.html | 12 + .../select-disabled-example.ts | 13 + .../select-error-state-matcher-example.css | 1 + .../select-error-state-matcher-example.html | 12 + .../select-error-state-matcher-example.ts | 29 ++ .../select-form/select-form-example.ts | 12 +- .../select-hint-error-example.css | 1 + .../select-hint-error-example.html | 10 + .../select-hint-error-example.ts | 32 +++ .../select-multiple-example.css | 1 + .../select-multiple-example.html | 5 + .../select-multiple-example.ts | 15 + .../select-no-ripple-example.css | 1 + .../select-no-ripple-example.html | 7 + .../select-no-ripple-example.ts | 11 + .../select-optgroup-example.css | 1 + .../select-optgroup-example.html | 11 + .../select-optgroup-example.ts | 81 ++++++ .../select-overview-example.ts | 12 +- .../select-panel-class-example.css | 11 + .../select-panel-class-example.html | 8 + .../select-panel-class-example.ts | 16 ++ .../select-reset/select-reset-example.css | 1 + .../select-reset/select-reset-example.html | 6 + .../select-reset/select-reset-example.ts | 20 ++ .../select-value-binding-example.css | 1 + .../select-value-binding-example.html | 10 + .../select-value-binding-example.ts | 12 + .../sort-overview/sort-overview-example.ts | 15 +- .../table-basic/table-basic-example.ts | 207 +++++++------- .../table-filtering-example.css | 7 +- .../table-filtering-example.html | 37 ++- .../table-filtering-example.ts | 246 ++++++++--------- .../table-http/table-http-example.css | 27 +- .../table-http/table-http-example.html | 13 +- .../table-http/table-http-example.ts | 124 +++------ .../table-overview/table-overview-example.css | 37 +-- .../table-overview-example.html | 53 +--- .../table-overview/table-overview-example.ts | 257 +++--------------- .../table-pagination-example.css | 9 - .../table-pagination-example.html | 42 ++- .../table-pagination-example.ts | 225 ++++++++------- .../table-sorting/table-sorting-example.css | 11 +- .../table-sorting/table-sorting-example.html | 35 ++- .../table-sorting/table-sorting-example.ts | 255 +++++++++-------- .../toolbar-multirow-example.html | 4 +- 112 files changed, 1697 insertions(+), 1041 deletions(-) rename src/assets/angular-material-examples/{progress-bar-overview/progress-bar-overview-example.css => datepicker-disabled/datepicker-disabled-example.css} (100%) create mode 100644 src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.html create mode 100644 src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.ts create mode 100644 src/assets/angular-material-examples/datepicker-events/datepicker-events-example.css create mode 100644 src/assets/angular-material-examples/datepicker-events/datepicker-events-example.html create mode 100644 src/assets/angular-material-examples/datepicker-events/datepicker-events-example.ts create mode 100644 src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.css create mode 100644 src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.html create mode 100644 src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.ts create mode 100644 src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.css create mode 100644 src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.html create mode 100644 src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.ts create mode 100644 src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.css create mode 100644 src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.html create mode 100644 src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.ts create mode 100644 src/assets/angular-material-examples/datepicker-value/datepicker-value-example.css create mode 100644 src/assets/angular-material-examples/datepicker-value/datepicker-value-example.html create mode 100644 src/assets/angular-material-examples/datepicker-value/datepicker-value-example.ts create mode 100644 src/assets/angular-material-examples/elevation-overview/elevation-overview-example.css create mode 100644 src/assets/angular-material-examples/elevation-overview/elevation-overview-example.html create mode 100644 src/assets/angular-material-examples/elevation-overview/elevation-overview-example.ts create mode 100644 src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.css create mode 100644 src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.html create mode 100644 src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.ts create mode 100644 src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.css create mode 100644 src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.html create mode 100644 src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.ts create mode 100644 src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.css create mode 100644 src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.html create mode 100644 src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.ts create mode 100644 src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.css create mode 100644 src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.html create mode 100644 src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.ts create mode 100644 src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.css rename src/assets/angular-material-examples/{progress-bar-overview/progress-bar-overview-example.html => progress-bar-indeterminate/progress-bar-indeterminate-example.html} (100%) create mode 100644 src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.ts delete mode 100644 src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.ts create mode 100644 src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.css create mode 100644 src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.html create mode 100644 src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.ts create mode 100644 src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.css create mode 100644 src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.html create mode 100644 src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.ts create mode 100644 src/assets/angular-material-examples/select-disabled/select-disabled-example.css create mode 100644 src/assets/angular-material-examples/select-disabled/select-disabled-example.html create mode 100644 src/assets/angular-material-examples/select-disabled/select-disabled-example.ts create mode 100644 src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.css create mode 100644 src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.html create mode 100644 src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.ts create mode 100644 src/assets/angular-material-examples/select-hint-error/select-hint-error-example.css create mode 100644 src/assets/angular-material-examples/select-hint-error/select-hint-error-example.html create mode 100644 src/assets/angular-material-examples/select-hint-error/select-hint-error-example.ts create mode 100644 src/assets/angular-material-examples/select-multiple/select-multiple-example.css create mode 100644 src/assets/angular-material-examples/select-multiple/select-multiple-example.html create mode 100644 src/assets/angular-material-examples/select-multiple/select-multiple-example.ts create mode 100644 src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.css create mode 100644 src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.html create mode 100644 src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.ts create mode 100644 src/assets/angular-material-examples/select-optgroup/select-optgroup-example.css create mode 100644 src/assets/angular-material-examples/select-optgroup/select-optgroup-example.html create mode 100644 src/assets/angular-material-examples/select-optgroup/select-optgroup-example.ts create mode 100644 src/assets/angular-material-examples/select-panel-class/select-panel-class-example.css create mode 100644 src/assets/angular-material-examples/select-panel-class/select-panel-class-example.html create mode 100644 src/assets/angular-material-examples/select-panel-class/select-panel-class-example.ts create mode 100644 src/assets/angular-material-examples/select-reset/select-reset-example.css create mode 100644 src/assets/angular-material-examples/select-reset/select-reset-example.html create mode 100644 src/assets/angular-material-examples/select-reset/select-reset-example.ts create mode 100644 src/assets/angular-material-examples/select-value-binding/select-value-binding-example.css create mode 100644 src/assets/angular-material-examples/select-value-binding/select-value-binding-example.html create mode 100644 src/assets/angular-material-examples/select-value-binding/select-value-binding-example.ts diff --git a/package-lock.json b/package-lock.json index e76720ef..66e51c25 100644 --- a/package-lock.json +++ b/package-lock.json @@ -215,6 +215,14 @@ "tslib": "1.8.0" } }, + "@angular/material-moment-adapter": { + "version": "5.0.0-rc0", + "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-5.0.0-rc0.tgz", + "integrity": "sha512-NI9Q8555vbm6RvBltW0rzyaKwthpUmjtoGtSQePp6TI0ZtROtGAwH/KCcNM3FsSqvQuxBc5jq0HId2wvHknxEw==", + "requires": { + "tslib": "1.8.0" + } + }, "@angular/platform-browser": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.0.2.tgz", diff --git a/package.json b/package.json index 4ec1837c..2ea0ab4e 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "@angular/forms": "5.0.2", "@angular/http": "5.0.2", "@angular/material": "5.0.0-rc0", + "@angular/material-moment-adapter": "5.0.0-rc0", "@angular/platform-browser": "5.0.2", "@angular/platform-browser-dynamic": "5.0.2", "@angular/router": "5.0.2", diff --git a/src/app/main/content/components/angular-material/angular-material.module.ts b/src/app/main/content/components/angular-material/angular-material.module.ts index ae4ee2c1..acffb5e6 100644 --- a/src/app/main/content/components/angular-material/angular-material.module.ts +++ b/src/app/main/content/components/angular-material/angular-material.module.ts @@ -2,9 +2,9 @@ import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; import { SharedModule } from '../../../../core/modules/shared.module'; import { FuseWidgetModule } from '../../../../core/components/widget/widget.module'; -import { FuseAngularMaterialComponent } from 'app/main/content/components/angular-material/angular-material.component'; import { FuseExampleViewerComponent } from './example-viewer/example-viewer'; import { EXAMPLE_LIST } from './example-components'; +import { FuseAngularMaterialComponent } from './angular-material.component'; const routes: Routes = [ { diff --git a/src/app/main/content/components/angular-material/example-components.ts b/src/app/main/content/components/angular-material/example-components.ts index 10a136dc..e3787926 100644 --- a/src/app/main/content/components/angular-material/example-components.ts +++ b/src/app/main/content/components/angular-material/example-components.ts @@ -15,15 +15,22 @@ import { ChipsInputExample } from '../../../../../assets/angular-material-exampl import { ChipsOverviewExample } from '../../../../../assets/angular-material-examples/chips-overview/chips-overview-example'; import { ChipsStackedExample } from '../../../../../assets/angular-material-examples/chips-stacked/chips-stacked-example'; import { DatepickerApiExample } from '../../../../../assets/angular-material-examples/datepicker-api/datepicker-api-example'; +import { DatepickerDisabledExample } from '../../../../../assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example'; +import { DatepickerEventsExample } from '../../../../../assets/angular-material-examples/datepicker-events/datepicker-events-example'; import { DatepickerFilterExample } from '../../../../../assets/angular-material-examples/datepicker-filter/datepicker-filter-example'; +import { DatepickerFormatsExample } from '../../../../../assets/angular-material-examples/datepicker-formats/datepicker-formats-example'; +import { DatepickerLocaleExample } from '../../../../../assets/angular-material-examples/datepicker-locale/datepicker-locale-example'; import { DatepickerMinMaxExample } from '../../../../../assets/angular-material-examples/datepicker-min-max/datepicker-min-max-example'; +import { DatepickerMomentExample } from '../../../../../assets/angular-material-examples/datepicker-moment/datepicker-moment-example'; import { DatepickerOverviewExample } from '../../../../../assets/angular-material-examples/datepicker-overview/datepicker-overview-example'; import { DatepickerStartViewExample } from '../../../../../assets/angular-material-examples/datepicker-start-view/datepicker-start-view-example'; import { DatepickerTouchExample } from '../../../../../assets/angular-material-examples/datepicker-touch/datepicker-touch-example'; +import { DatepickerValueExample } from '../../../../../assets/angular-material-examples/datepicker-value/datepicker-value-example'; import { DialogContentExampleDialog, DialogContentExample } from '../../../../../assets/angular-material-examples/dialog-content/dialog-content-example'; import { DialogDataExampleDialog, DialogDataExample } from '../../../../../assets/angular-material-examples/dialog-data/dialog-data-example'; import { DialogElementsExampleDialog, DialogElementsExample } from '../../../../../assets/angular-material-examples/dialog-elements/dialog-elements-example'; import { DialogOverviewExampleDialog, DialogOverviewExample } from '../../../../../assets/angular-material-examples/dialog-overview/dialog-overview-example'; +import { ElevationOverviewExample } from '../../../../../assets/angular-material-examples/elevation-overview/elevation-overview-example'; import { ExpansionOverviewExample } from '../../../../../assets/angular-material-examples/expansion-overview/expansion-overview-example'; import { ExpansionStepsExample } from '../../../../../assets/angular-material-examples/expansion-steps/expansion-steps-example'; import { MyTelInput, FormFieldCustomControlExample } from '../../../../../assets/angular-material-examples/form-field-custom-control/form-field-custom-control-example'; @@ -37,7 +44,9 @@ import { GridListDynamicExample } from '../../../../../assets/angular-material-e import { GridListOverviewExample } from '../../../../../assets/angular-material-examples/grid-list-overview/grid-list-overview-example'; import { IconOverviewExample } from '../../../../../assets/angular-material-examples/icon-overview/icon-overview-example'; import { IconSvgExample } from '../../../../../assets/angular-material-examples/icon-svg/icon-svg-example'; +import { InputAutosizeTextareaExample } from '../../../../../assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example'; import { InputClearableExample } from '../../../../../assets/angular-material-examples/input-clearable/input-clearable-example'; +import { InputErrorStateMatcherExample } from '../../../../../assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example'; import { InputErrorsExample } from '../../../../../assets/angular-material-examples/input-errors/input-errors-example'; import { InputFormExample } from '../../../../../assets/angular-material-examples/input-form/input-form-example'; import { InputHintExample } from '../../../../../assets/angular-material-examples/input-hint/input-hint-example'; @@ -51,14 +60,27 @@ import { MenuOverviewExample } from '../../../../../assets/angular-material-exam import { NestedMenuExample } from '../../../../../assets/angular-material-examples/nested-menu/nested-menu-example'; import { PaginatorConfigurableExample } from '../../../../../assets/angular-material-examples/paginator-configurable/paginator-configurable-example'; import { PaginatorOverviewExample } from '../../../../../assets/angular-material-examples/paginator-overview/paginator-overview-example'; +import { ProgressBarBufferExample } from '../../../../../assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example'; import { ProgressBarConfigurableExample } from '../../../../../assets/angular-material-examples/progress-bar-configurable/progress-bar-configurable-example'; -import { ProgressBarOverviewExample } from '../../../../../assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example'; +import { ProgressBarDeterminateExample } from '../../../../../assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example'; +import { ProgressBarIndeterminateExample } from '../../../../../assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example'; +import { ProgressBarQueryExample } from '../../../../../assets/angular-material-examples/progress-bar-query/progress-bar-query-example'; import { ProgressSpinnerConfigurableExample } from '../../../../../assets/angular-material-examples/progress-spinner-configurable/progress-spinner-configurable-example'; import { ProgressSpinnerOverviewExample } from '../../../../../assets/angular-material-examples/progress-spinner-overview/progress-spinner-overview-example'; import { RadioNgModelExample } from '../../../../../assets/angular-material-examples/radio-ng-model/radio-ng-model-example'; import { RadioOverviewExample } from '../../../../../assets/angular-material-examples/radio-overview/radio-overview-example'; +import { SelectCustomTriggerExample } from '../../../../../assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example'; +import { SelectDisabledExample } from '../../../../../assets/angular-material-examples/select-disabled/select-disabled-example'; +import { SelectErrorStateMatcherExample } from '../../../../../assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example'; import { SelectFormExample } from '../../../../../assets/angular-material-examples/select-form/select-form-example'; +import { SelectHintErrorExample } from '../../../../../assets/angular-material-examples/select-hint-error/select-hint-error-example'; +import { SelectMultipleExample } from '../../../../../assets/angular-material-examples/select-multiple/select-multiple-example'; +import { SelectNoRippleExample } from '../../../../../assets/angular-material-examples/select-no-ripple/select-no-ripple-example'; +import { SelectOptgroupExample } from '../../../../../assets/angular-material-examples/select-optgroup/select-optgroup-example'; import { SelectOverviewExample } from '../../../../../assets/angular-material-examples/select-overview/select-overview-example'; +import { SelectPanelClassExample } from '../../../../../assets/angular-material-examples/select-panel-class/select-panel-class-example'; +import { SelectResetExample } from '../../../../../assets/angular-material-examples/select-reset/select-reset-example'; +import { SelectValueBindingExample } from '../../../../../assets/angular-material-examples/select-value-binding/select-value-binding-example'; import { SidenavFabExample } from '../../../../../assets/angular-material-examples/sidenav-fab/sidenav-fab-example'; import { SidenavOverviewExample } from '../../../../../assets/angular-material-examples/sidenav-overview/sidenav-overview-example'; import { SlideToggleConfigurableExample } from '../../../../../assets/angular-material-examples/slide-toggle-configurable/slide-toggle-configurable-example'; @@ -97,10 +119,16 @@ export const COMPONENT_MAP = { 'datepicker' : [ 'datepicker-overview', 'datepicker-start-view', + 'datepicker-value', 'datepicker-min-max', 'datepicker-filter', + 'datepicker-events', + 'datepicker-disabled', 'datepicker-touch', - 'datepicker-api' + 'datepicker-api', + 'datepicker-locale', + 'datepicker-moment', + 'datepicker-formats' ], 'form-field' : [ 'form-field-overview', @@ -114,6 +142,8 @@ export const COMPONENT_MAP = { 'input' : [ 'input-overview', 'input-errors', + 'input-error-state-matcher', + 'input-autosize-textarea', 'input-prefix-suffix', 'input-hint', 'input-clearable', @@ -125,7 +155,17 @@ export const COMPONENT_MAP = { ], 'select' : [ 'select-overview', - 'select-form' + 'select-value-binding', + 'select-form', + 'select-hint-error', + 'select-disabled', + 'select-reset', + 'select-optgroup', + 'select-multiple', + 'select-custom-trigger', + 'select-no-ripple', + 'select-panel-class', + 'select-error-state-matcher' ], 'slider' : [ 'slider-overview', @@ -169,6 +209,9 @@ export const COMPONENT_MAP = { 'tabs-overview', 'tabs-template-label' ], + 'elevation' : [ + 'elevation-overview' + ], 'expansion-panel' : [ 'expansion-overview', 'expansion-steps' @@ -195,7 +238,10 @@ export const COMPONENT_MAP = { 'progress-spinner-configurable' ], 'progress-bar' : [ - 'progress-bar-overview', + 'progress-bar-determinate', + 'progress-bar-indeterminate', + 'progress-bar-query', + 'progress-bar-buffer', 'progress-bar-configurable' ], 'dialog' : [ @@ -324,41 +370,77 @@ export const EXAMPLE_COMPONENTS = { selectorName : null }, 'datepicker-api' : { - title : 'Datepicker API', + title : 'Datepicker open method ', component : DatepickerApiExample, additionalFiles: null, selectorName : null }, + 'datepicker-disabled' : { + title : 'Disabled datepicker ', + component : DatepickerDisabledExample, + additionalFiles: null, + selectorName : null + }, + 'datepicker-events' : { + title : 'Datepicker input and change events ', + component : DatepickerEventsExample, + additionalFiles: null, + selectorName : null + }, 'datepicker-filter' : { - title : 'Datepicker Filter', + title : 'Datepicker with filter validation ', component : DatepickerFilterExample, additionalFiles: null, selectorName : null }, + 'datepicker-formats' : { + title : 'Datepicker with custom formats ', + component : DatepickerFormatsExample, + additionalFiles: null, + selectorName : null + }, + 'datepicker-locale' : { + title : 'Datepicker with different locale ', + component : DatepickerLocaleExample, + additionalFiles: null, + selectorName : null + }, 'datepicker-min-max' : { - title : 'Datepicker Min Max', + title : 'Datepicker with min & max validation ', component : DatepickerMinMaxExample, additionalFiles: null, selectorName : null }, + 'datepicker-moment' : { + title : 'Datepicker that uses Moment.js dates ', + component : DatepickerMomentExample, + additionalFiles: null, + selectorName : null + }, 'datepicker-overview' : { - title : 'Basic datepicker', + title : 'Basic datepicker ', component : DatepickerOverviewExample, additionalFiles: null, selectorName : null }, 'datepicker-start-view' : { - title : 'Datepicker start date', + title : 'Datepicker start date ', component : DatepickerStartViewExample, additionalFiles: null, selectorName : null }, 'datepicker-touch' : { - title : 'Datepicker Touch', + title : 'Datepicker touch UI ', component : DatepickerTouchExample, additionalFiles: null, selectorName : null }, + 'datepicker-value' : { + title : 'Datepicker selected value ', + component : DatepickerValueExample, + additionalFiles: null, + selectorName : null + }, 'dialog-content' : { title : 'Dialog with header, scrollable content and actions', component : DialogContentExample, @@ -383,6 +465,12 @@ export const EXAMPLE_COMPONENTS = { additionalFiles: ['dialog-overview-example-dialog.html'], selectorName : 'DialogOverviewExample, DialogOverviewExampleDialog' }, + 'elevation-overview' : { + title : 'Elevation CSS classes', + component : ElevationOverviewExample, + additionalFiles: null, + selectorName : null + }, 'expansion-overview' : { title : 'Basic expansion panel', component : ExpansionOverviewExample, @@ -461,14 +549,26 @@ export const EXAMPLE_COMPONENTS = { additionalFiles: null, selectorName : null }, + 'input-autosize-textarea' : { + title : 'Auto-resizing textarea ', + component : InputAutosizeTextareaExample, + additionalFiles: null, + selectorName : null + }, 'input-clearable' : { - title : 'Input Clearable', + title : 'Input with a clear button', component : InputClearableExample, additionalFiles: null, selectorName : null }, + 'input-error-state-matcher' : { + title : 'Input with a custom ErrorStateMatcher ', + component : InputErrorStateMatcherExample, + additionalFiles: null, + selectorName : null + }, 'input-errors' : { - title : 'Input Errors', + title : 'Input with error messages', component : InputErrorsExample, additionalFiles: null, selectorName : null @@ -480,7 +580,7 @@ export const EXAMPLE_COMPONENTS = { selectorName : null }, 'input-hint' : { - title : 'Input hints', + title : 'Input with hints', component : InputHintExample, additionalFiles: null, selectorName : null @@ -492,7 +592,7 @@ export const EXAMPLE_COMPONENTS = { selectorName : null }, 'input-prefix-suffix' : { - title : 'Input Prefixes and Suffixes', + title : 'Inputs with prefixes and suffixes', component : InputPrefixSuffixExample, additionalFiles: null, selectorName : null @@ -545,15 +645,33 @@ export const EXAMPLE_COMPONENTS = { additionalFiles: null, selectorName : null }, + 'progress-bar-buffer' : { + title : 'Buffer progress-bar', + component : ProgressBarBufferExample, + additionalFiles: null, + selectorName : null + }, 'progress-bar-configurable' : { title : 'Configurable progress-bar', component : ProgressBarConfigurableExample, additionalFiles: null, selectorName : null }, - 'progress-bar-overview' : { - title : 'Basic progress-bar', - component : ProgressBarOverviewExample, + 'progress-bar-determinate' : { + title : 'Determinate progress-bar', + component : ProgressBarDeterminateExample, + additionalFiles: null, + selectorName : null + }, + 'progress-bar-indeterminate' : { + title : 'Indeterminate progress-bar', + component : ProgressBarIndeterminateExample, + additionalFiles: null, + selectorName : null + }, + 'progress-bar-query' : { + title : 'Query progress-bar', + component : ProgressBarQueryExample, additionalFiles: null, selectorName : null }, @@ -581,18 +699,78 @@ export const EXAMPLE_COMPONENTS = { additionalFiles: null, selectorName : null }, + 'select-custom-trigger' : { + title : 'Select with custom trigger text ', + component : SelectCustomTriggerExample, + additionalFiles: null, + selectorName : null + }, + 'select-disabled' : { + title : 'Disabled select ', + component : SelectDisabledExample, + additionalFiles: null, + selectorName : null + }, + 'select-error-state-matcher' : { + title : 'Select with a custom ErrorStateMatcher ', + component : SelectErrorStateMatcherExample, + additionalFiles: null, + selectorName : null + }, 'select-form' : { title : 'Select in a form', component : SelectFormExample, additionalFiles: null, selectorName : null }, + 'select-hint-error' : { + title : 'Select with form field features ', + component : SelectHintErrorExample, + additionalFiles: null, + selectorName : null + }, + 'select-multiple' : { + title : 'Select with multiple selection ', + component : SelectMultipleExample, + additionalFiles: null, + selectorName : null + }, + 'select-no-ripple' : { + title : 'Select with no option ripple ', + component : SelectNoRippleExample, + additionalFiles: null, + selectorName : null + }, + 'select-optgroup' : { + title : 'Select with option groups ', + component : SelectOptgroupExample, + additionalFiles: null, + selectorName : null + }, 'select-overview' : { title : 'Basic select', component : SelectOverviewExample, additionalFiles: null, selectorName : null }, + 'select-panel-class' : { + title : 'Select with custom panel styling', + component : SelectPanelClassExample, + additionalFiles: null, + selectorName : null + }, + 'select-reset' : { + title : 'Select with reset option ', + component : SelectResetExample, + additionalFiles: null, + selectorName : null + }, + 'select-value-binding' : { + title : 'Select with 2-way value binding ', + component : SelectValueBindingExample, + additionalFiles: null, + selectorName : null + }, 'sidenav-fab' : { title : 'Sidenav with a FAB', component : SidenavFabExample, @@ -678,7 +856,7 @@ export const EXAMPLE_COMPONENTS = { selectorName : null }, 'table-overview' : { - title : 'Feature-rich data table', + title : 'Data table with sorting, pagination, and filtering.', component : TableOverviewExample, additionalFiles: null, selectorName : null @@ -751,19 +929,22 @@ export const EXAMPLE_LIST = [ ChipsOverviewExample, ChipsStackedExample, DatepickerApiExample, + DatepickerDisabledExample, + DatepickerEventsExample, DatepickerFilterExample, + DatepickerFormatsExample, + DatepickerLocaleExample, DatepickerMinMaxExample, + DatepickerMomentExample, DatepickerOverviewExample, DatepickerStartViewExample, DatepickerTouchExample, - DialogContentExampleDialog, - DialogContentExample, - DialogDataExampleDialog, - DialogDataExample, - DialogElementsExampleDialog, - DialogElementsExample, - DialogOverviewExampleDialog, - DialogOverviewExample, + DatepickerValueExample, + DialogContentExampleDialog, DialogContentExample, + DialogDataExampleDialog, DialogDataExample, + DialogElementsExampleDialog, DialogElementsExample, + DialogOverviewExampleDialog, DialogOverviewExample, + ElevationOverviewExample, ExpansionOverviewExample, ExpansionStepsExample, MyTelInput, FormFieldCustomControlExample, @@ -777,7 +958,9 @@ export const EXAMPLE_LIST = [ GridListOverviewExample, IconOverviewExample, IconSvgExample, + InputAutosizeTextareaExample, InputClearableExample, + InputErrorStateMatcherExample, InputErrorsExample, InputFormExample, InputHintExample, @@ -791,14 +974,27 @@ export const EXAMPLE_LIST = [ NestedMenuExample, PaginatorConfigurableExample, PaginatorOverviewExample, + ProgressBarBufferExample, ProgressBarConfigurableExample, - ProgressBarOverviewExample, + ProgressBarDeterminateExample, + ProgressBarIndeterminateExample, + ProgressBarQueryExample, ProgressSpinnerConfigurableExample, ProgressSpinnerOverviewExample, RadioNgModelExample, RadioOverviewExample, + SelectCustomTriggerExample, + SelectDisabledExample, + SelectErrorStateMatcherExample, SelectFormExample, + SelectHintErrorExample, + SelectMultipleExample, + SelectNoRippleExample, + SelectOptgroupExample, SelectOverviewExample, + SelectPanelClassExample, + SelectResetExample, + SelectValueBindingExample, SidenavFabExample, SidenavOverviewExample, SlideToggleConfigurableExample, diff --git a/src/app/navigation.model.ts b/src/app/navigation.model.ts index f8bbd401..db9d78c8 100644 --- a/src/app/navigation.model.ts +++ b/src/app/navigation.model.ts @@ -649,6 +649,12 @@ export class NavigationModel 'type' : 'item', 'url' : '/components/angular-material/tabs' }, + { + 'id' : 'elevation', + 'title': 'Elevation', + 'type' : 'item', + 'url' : '/components/angular-material/elevation' + }, { 'id' : 'expansion-panel', 'title': 'Expansion Panel', diff --git a/src/assets/angular-material-examples/chips-input/chips-input-example.ts b/src/assets/angular-material-examples/chips-input/chips-input-example.ts index 6a383c63..6ec6bd3a 100644 --- a/src/assets/angular-material-examples/chips-input/chips-input-example.ts +++ b/src/assets/angular-material-examples/chips-input/chips-input-example.ts @@ -1,8 +1,6 @@ import { Component } from '@angular/core'; import { MatChipInputEvent } from '@angular/material'; -import { ENTER } from '@angular/cdk/keycodes'; - -const COMMA = 188; +import { ENTER, COMMA } from '@angular/cdk/keycodes'; /** * @title Chips with input diff --git a/src/assets/angular-material-examples/chips-stacked/chips-stacked-example.ts b/src/assets/angular-material-examples/chips-stacked/chips-stacked-example.ts index 51d0c411..7120ac7a 100644 --- a/src/assets/angular-material-examples/chips-stacked/chips-stacked-example.ts +++ b/src/assets/angular-material-examples/chips-stacked/chips-stacked-example.ts @@ -13,16 +13,20 @@ export class ChipsStackedExample color: string; availableColors = [ - {name : 'none', + { + name : 'none', color: '' }, - {name : 'Primary', + { + name : 'Primary', color: 'primary' }, - {name : 'Accent', + { + name : 'Accent', color: 'accent' }, - {name : 'Warn', + { + name : 'Warn', color: 'warn' } ]; diff --git a/src/assets/angular-material-examples/datepicker-api/datepicker-api-example.ts b/src/assets/angular-material-examples/datepicker-api/datepicker-api-example.ts index c2cac215..5e668aa7 100644 --- a/src/assets/angular-material-examples/datepicker-api/datepicker-api-example.ts +++ b/src/assets/angular-material-examples/datepicker-api/datepicker-api-example.ts @@ -1,8 +1,6 @@ import { Component } from '@angular/core'; -/** - * @title Datepicker API - */ +/** @title Datepicker open method */ @Component({ selector : 'datepicker-api-example', templateUrl: 'datepicker-api-example.html', diff --git a/src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.css b/src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.css similarity index 100% rename from src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.css rename to src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.css diff --git a/src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.html b/src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.html new file mode 100644 index 00000000..b8c2ba39 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.html @@ -0,0 +1,23 @@ +

+ + + + + +

+ +

+ + + + + +

+ +

+ + + + + +

diff --git a/src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.ts b/src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.ts new file mode 100644 index 00000000..82a999dd --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-disabled/datepicker-disabled-example.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +/** @title Disabled datepicker */ +@Component({ + selector : 'datepicker-disabled-example', + templateUrl: 'datepicker-disabled-example.html', + styleUrls : ['datepicker-disabled-example.css'] +}) +export class DatepickerDisabledExample +{ +} diff --git a/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.css b/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.css new file mode 100644 index 00000000..33ff1dba --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.css @@ -0,0 +1,6 @@ +.example-events { + width: 400px; + height: 200px; + border: 1px solid #555; + overflow: auto; +} diff --git a/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.html b/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.html new file mode 100644 index 00000000..835163ea --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.html @@ -0,0 +1,10 @@ + + + + + + +
+
{{e}}
+
diff --git a/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.ts b/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.ts new file mode 100644 index 00000000..c8616000 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-events/datepicker-events-example.ts @@ -0,0 +1,18 @@ +import { Component } from '@angular/core'; +import { MatDatepickerInputEvent } from '@angular/material/datepicker'; + +/** @title Datepicker input and change events */ +@Component({ + selector : 'datepicker-events-example', + templateUrl: 'datepicker-events-example.html', + styleUrls : ['datepicker-events-example.css'] +}) +export class DatepickerEventsExample +{ + events: string[] = []; + + addEvent(type: string, event: MatDatepickerInputEvent) + { + this.events.push(`${type}: ${event.value}`); + } +} diff --git a/src/assets/angular-material-examples/datepicker-filter/datepicker-filter-example.ts b/src/assets/angular-material-examples/datepicker-filter/datepicker-filter-example.ts index ebe82cc5..1355dbf5 100644 --- a/src/assets/angular-material-examples/datepicker-filter/datepicker-filter-example.ts +++ b/src/assets/angular-material-examples/datepicker-filter/datepicker-filter-example.ts @@ -1,8 +1,6 @@ import { Component } from '@angular/core'; -/** - * @title Datepicker Filter - */ +/** @title Datepicker with filter validation */ @Component({ selector : 'datepicker-filter-example', templateUrl: 'datepicker-filter-example.html', diff --git a/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.css b/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.html b/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.html new file mode 100644 index 00000000..42f7396e --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.html @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.ts b/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.ts new file mode 100644 index 00000000..9693f252 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-formats/datepicker-formats-example.ts @@ -0,0 +1,44 @@ +import { Component } from '@angular/core'; +import { FormControl } from '@angular/forms'; +import { MomentDateAdapter } from '@angular/material-moment-adapter'; +import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core'; + +import * as moment from 'moment'; + +// See the Moment.js docs for the meaning of these formats: +// https://momentjs.com/docs/#/displaying/format/ +export const MY_FORMATS = { + parse : { + dateInput: 'LL' + }, + display: { + dateInput : 'LL', + monthYearLabel : 'MMM YYYY', + dateA11yLabel : 'LL', + monthYearA11yLabel: 'MMMM YYYY' + } +}; + +/** @title Datepicker with custom formats */ +@Component({ + selector : 'datepicker-formats-example', + templateUrl: 'datepicker-formats-example.html', + styleUrls : ['datepicker-formats-example.css'], + providers : [ + // `MomentDateAdapter` can be automatically provided by importing `MomentDateModule` in your + // application's root module. We provide it at the component level here, due to limitations of + // our example generation script. + {provide : DateAdapter, + useClass: MomentDateAdapter, + deps : [MAT_DATE_LOCALE] + }, + + {provide : MAT_DATE_FORMATS, + useValue: MY_FORMATS + } + ] +}) +export class DatepickerFormatsExample +{ + date = new FormControl(moment()); +} diff --git a/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.css b/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.html b/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.html new file mode 100644 index 00000000..dbd1bbb3 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.html @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.ts b/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.ts new file mode 100644 index 00000000..97859b92 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-locale/datepicker-locale-example.ts @@ -0,0 +1,42 @@ +import { Component } from '@angular/core'; +import { MAT_MOMENT_DATE_FORMATS, MomentDateAdapter } from '@angular/material-moment-adapter'; +import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core'; + +/** @title Datepicker with different locale */ +@Component({ + selector : 'datepicker-locale-example', + templateUrl: 'datepicker-locale-example.html', + styleUrls : ['datepicker-locale-example.css'], + providers : [ + // The locale would typically be provided on the root module of your application. We do it at + // the component level here, due to limitations of our example generation script. + { + provide : MAT_DATE_LOCALE, + useValue: 'ja-JP' + }, + + // `MomentDateAdapter` and `MAT_MOMENT_DATE_FORMATS` can be automatically provided by importing + // `MatMomentDateModule` in your applications root module. We provide it at the component level + // here, due to limitations of our example generation script. + { + provide : DateAdapter, + useClass: MomentDateAdapter, + deps : [MAT_DATE_LOCALE] + }, + { + provide : MAT_DATE_FORMATS, + useValue: MAT_MOMENT_DATE_FORMATS + } + ] +}) +export class DatepickerLocaleExample +{ + constructor(private adapter: DateAdapter) + { + } + + french() + { + this.adapter.setLocale('fr'); + } +} diff --git a/src/assets/angular-material-examples/datepicker-min-max/datepicker-min-max-example.ts b/src/assets/angular-material-examples/datepicker-min-max/datepicker-min-max-example.ts index 8bcc6fae..c37c261a 100644 --- a/src/assets/angular-material-examples/datepicker-min-max/datepicker-min-max-example.ts +++ b/src/assets/angular-material-examples/datepicker-min-max/datepicker-min-max-example.ts @@ -1,8 +1,6 @@ import { Component } from '@angular/core'; -/** - * @title Datepicker Min Max - */ +/** @title Datepicker with min & max validation */ @Component({ selector : 'datepicker-min-max-example', templateUrl: 'datepicker-min-max-example.html', diff --git a/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.css b/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.html b/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.html new file mode 100644 index 00000000..356fe317 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.html @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.ts b/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.ts new file mode 100644 index 00000000..a66d4849 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-moment/datepicker-moment-example.ts @@ -0,0 +1,32 @@ +import { Component } from '@angular/core'; +import { FormControl } from '@angular/forms'; +import { MAT_MOMENT_DATE_FORMATS, MomentDateAdapter } from '@angular/material-moment-adapter'; +import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core'; + +import * as moment from 'moment'; + +/** @title Datepicker that uses Moment.js dates */ +@Component({ + selector : 'datepicker-moment-example', + templateUrl: 'datepicker-moment-example.html', + styleUrls : ['datepicker-moment-example.css'], + providers : [ + // `MomentDateAdapter` and `MAT_MOMENT_DATE_FORMATS` can be automatically provided by importing + // `MatMomentDateModule` in your applications root module. We provide it at the component level + // here, due to limitations of our example generation script. + { + provide : DateAdapter, + useClass: MomentDateAdapter, + deps : [MAT_DATE_LOCALE] + }, + { + provide : MAT_DATE_FORMATS, + useValue: MAT_MOMENT_DATE_FORMATS + } + ] +}) +export class DatepickerMomentExample +{ + // Datepicker takes `Moment` objects instead of `Date` objects. + date = new FormControl(moment([2017, 0, 1])); +} diff --git a/src/assets/angular-material-examples/datepicker-overview/datepicker-overview-example.ts b/src/assets/angular-material-examples/datepicker-overview/datepicker-overview-example.ts index f77ade6b..8a7e6259 100644 --- a/src/assets/angular-material-examples/datepicker-overview/datepicker-overview-example.ts +++ b/src/assets/angular-material-examples/datepicker-overview/datepicker-overview-example.ts @@ -1,8 +1,6 @@ import { Component } from '@angular/core'; -/** - * @title Basic datepicker - */ +/** @title Basic datepicker */ @Component({ selector : 'datepicker-overview-example', templateUrl: 'datepicker-overview-example.html', diff --git a/src/assets/angular-material-examples/datepicker-start-view/datepicker-start-view-example.ts b/src/assets/angular-material-examples/datepicker-start-view/datepicker-start-view-example.ts index 57264dad..40444759 100644 --- a/src/assets/angular-material-examples/datepicker-start-view/datepicker-start-view-example.ts +++ b/src/assets/angular-material-examples/datepicker-start-view/datepicker-start-view-example.ts @@ -1,8 +1,6 @@ import { Component } from '@angular/core'; -/** - * @title Datepicker start date - */ +/** @title Datepicker start date */ @Component({ selector : 'datepicker-start-view-example', templateUrl: 'datepicker-start-view-example.html', diff --git a/src/assets/angular-material-examples/datepicker-touch/datepicker-touch-example.ts b/src/assets/angular-material-examples/datepicker-touch/datepicker-touch-example.ts index 4a4732a5..f4e00774 100644 --- a/src/assets/angular-material-examples/datepicker-touch/datepicker-touch-example.ts +++ b/src/assets/angular-material-examples/datepicker-touch/datepicker-touch-example.ts @@ -1,8 +1,6 @@ import { Component } from '@angular/core'; -/** - * @title Datepicker Touch - */ +/** @title Datepicker touch UI */ @Component({ selector : 'datepicker-touch-example', templateUrl: 'datepicker-touch-example.html', diff --git a/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.css b/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.html b/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.html new file mode 100644 index 00000000..8d001e84 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.html @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + diff --git a/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.ts b/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.ts new file mode 100644 index 00000000..6ba7d133 --- /dev/null +++ b/src/assets/angular-material-examples/datepicker-value/datepicker-value-example.ts @@ -0,0 +1,14 @@ +import { Component } from '@angular/core'; +import { FormControl } from '@angular/forms'; + +/** @title Datepicker selected value */ +@Component({ + selector : 'datepicker-value-example', + templateUrl: 'datepicker-value-example.html', + styleUrls : ['datepicker-value-example.css'] +}) +export class DatepickerValueExample +{ + date = new FormControl(new Date()); + serializedDate = new FormControl((new Date()).toISOString()); +} diff --git a/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.css b/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.css new file mode 100644 index 00000000..60b1fa73 --- /dev/null +++ b/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.css @@ -0,0 +1,4 @@ +.example-container { + padding: 16px; + margin-bottom: 16px; +} diff --git a/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.html b/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.html new file mode 100644 index 00000000..0477751b --- /dev/null +++ b/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.html @@ -0,0 +1,7 @@ +
+ Example +
+ + diff --git a/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.ts b/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.ts new file mode 100644 index 00000000..94dcbc09 --- /dev/null +++ b/src/assets/angular-material-examples/elevation-overview/elevation-overview-example.ts @@ -0,0 +1,14 @@ +import { Component } from '@angular/core'; + +/** + * @title Elevation CSS classes + */ +@Component({ + selector : 'elevation-overview-example', + styleUrls : ['elevation-overview-example.css'], + templateUrl: 'elevation-overview-example.html' +}) +export class ElevationOverviewExample +{ + isActive = false; +} diff --git a/src/assets/angular-material-examples/form-field-custom-control/form-field-custom-control-example.ts b/src/assets/angular-material-examples/form-field-custom-control/form-field-custom-control-example.ts index e9e62c24..686116e1 100644 --- a/src/assets/angular-material-examples/form-field-custom-control/form-field-custom-control-example.ts +++ b/src/assets/angular-material-examples/form-field-custom-control/form-field-custom-control-example.ts @@ -165,12 +165,12 @@ export class MyTelInput implements MatFormFieldControl, OnDestroy @Component({ selector: 'form-field-custom-control-example', template: ` - - - phone - Include area code - - ` + + + phone + Include area code + + ` }) export class FormFieldCustomControlExample { diff --git a/src/assets/angular-material-examples/form-field-theming/form-field-theming-example.html b/src/assets/angular-material-examples/form-field-theming/form-field-theming-example.html index 085adc53..7ac9bbcd 100644 --- a/src/assets/angular-material-examples/form-field-theming/form-field-theming-example.html +++ b/src/assets/angular-material-examples/form-field-theming/form-field-theming-example.html @@ -9,6 +9,6 @@ - Min size: 10px + Min size: 10px diff --git a/src/assets/angular-material-examples/grid-list-dynamic/grid-list-dynamic-example.ts b/src/assets/angular-material-examples/grid-list-dynamic/grid-list-dynamic-example.ts index 0cf1626c..9886d0b5 100644 --- a/src/assets/angular-material-examples/grid-list-dynamic/grid-list-dynamic-example.ts +++ b/src/assets/angular-material-examples/grid-list-dynamic/grid-list-dynamic-example.ts @@ -10,22 +10,26 @@ import { Component } from '@angular/core'; export class GridListDynamicExample { tiles = [ - {text : 'One', + { + text : 'One', cols : 3, rows : 1, color: 'lightblue' }, - {text : 'Two', + { + text : 'Two', cols : 1, rows : 2, color: 'lightgreen' }, - {text : 'Three', + { + text : 'Three', cols : 1, rows : 1, color: 'lightpink' }, - {text : 'Four', + { + text : 'Four', cols : 2, rows : 1, color: '#DDBDF1' diff --git a/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.css b/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.html b/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.html new file mode 100644 index 00000000..e9487d20 --- /dev/null +++ b/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.html @@ -0,0 +1,4 @@ + + + diff --git a/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.ts b/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.ts new file mode 100644 index 00000000..1ac3606e --- /dev/null +++ b/src/assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +/** @title Auto-resizing textarea */ +@Component({ + selector : 'input-autosize-textarea-example', + templateUrl: './input-autosize-textarea-example.html', + styleUrls : ['./input-autosize-textarea-example.css'] +}) +export class InputAutosizeTextareaExample +{ +} diff --git a/src/assets/angular-material-examples/input-clearable/input-clearable-example.ts b/src/assets/angular-material-examples/input-clearable/input-clearable-example.ts index f240bf0d..8fdf3a50 100644 --- a/src/assets/angular-material-examples/input-clearable/input-clearable-example.ts +++ b/src/assets/angular-material-examples/input-clearable/input-clearable-example.ts @@ -1,7 +1,7 @@ import { Component } from '@angular/core'; /** - * @title Input Clearable + * @title Input with a clear button */ @Component({ selector : 'input-clearable-example', diff --git a/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.css b/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.css new file mode 100644 index 00000000..7a2e5016 --- /dev/null +++ b/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.css @@ -0,0 +1,9 @@ +.example-form { + min-width: 150px; + max-width: 500px; + width: 100%; +} + +.example-full-width { + width: 100%; +} diff --git a/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.html b/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.html new file mode 100644 index 00000000..da1c9622 --- /dev/null +++ b/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.html @@ -0,0 +1,13 @@ +
+ + + Errors appear instantly! + + Please enter a valid email address + + + Email is required + + +
diff --git a/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.ts b/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.ts new file mode 100644 index 00000000..ad7e542d --- /dev/null +++ b/src/assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example.ts @@ -0,0 +1,29 @@ +import { Component } from '@angular/core'; +import { FormControl, FormGroupDirective, NgForm, Validators } from '@angular/forms'; +import { ErrorStateMatcher } from '@angular/material/core'; + +/** Error when invalid control is dirty, touched, or submitted. */ +export class MyErrorStateMatcher implements ErrorStateMatcher +{ + isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean + { + const isSubmitted = form && form.submitted; + return !!(control && control.invalid && (control.dirty || control.touched || isSubmitted)); + } +} + +/** @title Input with a custom ErrorStateMatcher */ +@Component({ + selector : 'input-error-state-matcher-example', + templateUrl: './input-error-state-matcher-example.html', + styleUrls : ['./input-error-state-matcher-example.css'] +}) +export class InputErrorStateMatcherExample +{ + emailFormControl = new FormControl('', [ + Validators.required, + Validators.email + ]); + + matcher = new MyErrorStateMatcher(); +} diff --git a/src/assets/angular-material-examples/input-errors/input-errors-example.html b/src/assets/angular-material-examples/input-errors/input-errors-example.html index 24c0c93a..2c72c98b 100644 --- a/src/assets/angular-material-examples/input-errors/input-errors-example.html +++ b/src/assets/angular-material-examples/input-errors/input-errors-example.html @@ -1,7 +1,7 @@
- + Please enter a valid email address diff --git a/src/assets/angular-material-examples/input-errors/input-errors-example.ts b/src/assets/angular-material-examples/input-errors/input-errors-example.ts index 59200fbb..9be64f28 100644 --- a/src/assets/angular-material-examples/input-errors/input-errors-example.ts +++ b/src/assets/angular-material-examples/input-errors/input-errors-example.ts @@ -1,10 +1,8 @@ import { Component } from '@angular/core'; import { FormControl, Validators } from '@angular/forms'; -const EMAIL_REGEX = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; - /** - * @title Input Errors + * @title Input with error messages */ @Component({ selector : 'input-errors-example', @@ -13,10 +11,8 @@ const EMAIL_REGEX = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA }) export class InputErrorsExample { - emailFormControl = new FormControl('', [ Validators.required, - Validators.pattern(EMAIL_REGEX) + Validators.email ]); - } diff --git a/src/assets/angular-material-examples/input-hint/input-hint-example.ts b/src/assets/angular-material-examples/input-hint/input-hint-example.ts index d8f0737b..96552d91 100644 --- a/src/assets/angular-material-examples/input-hint/input-hint-example.ts +++ b/src/assets/angular-material-examples/input-hint/input-hint-example.ts @@ -1,7 +1,7 @@ import { Component } from '@angular/core'; /** - * @title Input hints + * @title Input with hints */ @Component({ selector : 'input-hint-example', diff --git a/src/assets/angular-material-examples/input-overview/input-overview-example.html b/src/assets/angular-material-examples/input-overview/input-overview-example.html index e577897f..9667ace5 100644 --- a/src/assets/angular-material-examples/input-overview/input-overview-example.html +++ b/src/assets/angular-material-examples/input-overview/input-overview-example.html @@ -2,4 +2,8 @@ + + + + diff --git a/src/assets/angular-material-examples/input-prefix-suffix/input-prefix-suffix-example.ts b/src/assets/angular-material-examples/input-prefix-suffix/input-prefix-suffix-example.ts index 279792f8..decde83f 100644 --- a/src/assets/angular-material-examples/input-prefix-suffix/input-prefix-suffix-example.ts +++ b/src/assets/angular-material-examples/input-prefix-suffix/input-prefix-suffix-example.ts @@ -1,7 +1,7 @@ import { Component } from '@angular/core'; /** - * @title Input Prefixes and Suffixes + * @title Inputs with prefixes and suffixes */ @Component({ selector : 'input-prefix-suffix-example', diff --git a/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.css b/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.html b/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.html new file mode 100644 index 00000000..32c7d95e --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.html @@ -0,0 +1 @@ + diff --git a/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.ts b/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.ts new file mode 100644 index 00000000..1e893c02 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-buffer/progress-bar-buffer-example.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +/** + * @title Buffer progress-bar + */ +@Component({ + selector : 'progress-bar-buffer-example', + templateUrl: 'progress-bar-buffer-example.html' +}) +export class ProgressBarBufferExample +{ +} diff --git a/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.css b/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.html b/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.html new file mode 100644 index 00000000..905e8524 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.html @@ -0,0 +1 @@ + diff --git a/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.ts b/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.ts new file mode 100644 index 00000000..69ba1e7f --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-determinate/progress-bar-determinate-example.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +/** + * @title Determinate progress-bar + */ +@Component({ + selector : 'progress-bar-determinate-example', + templateUrl: 'progress-bar-determinate-example.html' +}) +export class ProgressBarDeterminateExample +{ +} diff --git a/src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.css b/src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.html b/src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.html similarity index 100% rename from src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.html rename to src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.html diff --git a/src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.ts b/src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.ts new file mode 100644 index 00000000..8029e813 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-indeterminate/progress-bar-indeterminate-example.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +/** + * @title Indeterminate progress-bar + */ +@Component({ + selector : 'progress-bar-indeterminate-example', + templateUrl: 'progress-bar-indeterminate-example.html' +}) +export class ProgressBarIndeterminateExample +{ +} diff --git a/src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.ts b/src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.ts deleted file mode 100644 index e2e35861..00000000 --- a/src/assets/angular-material-examples/progress-bar-overview/progress-bar-overview-example.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Component } from '@angular/core'; - -/** - * @title Basic progress-bar - */ -@Component({ - selector : 'progress-bar-overview-example', - templateUrl: 'progress-bar-overview-example.html' -}) -export class ProgressBarOverviewExample -{ -} diff --git a/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.css b/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.html b/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.html new file mode 100644 index 00000000..71ef7d54 --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.html @@ -0,0 +1 @@ + diff --git a/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.ts b/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.ts new file mode 100644 index 00000000..567ec67a --- /dev/null +++ b/src/assets/angular-material-examples/progress-bar-query/progress-bar-query-example.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +/** + * @title Query progress-bar + */ +@Component({ + selector : 'progress-bar-query-example', + templateUrl: 'progress-bar-query-example.html' +}) +export class ProgressBarQueryExample +{ +} diff --git a/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.css b/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.css new file mode 100644 index 00000000..a4ebf62f --- /dev/null +++ b/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.css @@ -0,0 +1,4 @@ +.example-additional-selection { + opacity: 0.75; + font-size: 0.75em; +} diff --git a/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.html b/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.html new file mode 100644 index 00000000..50ee0cea --- /dev/null +++ b/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.html @@ -0,0 +1,11 @@ + + + + {{toppings.value ? toppings.value[0] : ''}} + + (+{{toppings.value.length - 1}} others) + + + {{topping}} + + diff --git a/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.ts b/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.ts new file mode 100644 index 00000000..4ac8f7d5 --- /dev/null +++ b/src/assets/angular-material-examples/select-custom-trigger/select-custom-trigger-example.ts @@ -0,0 +1,15 @@ +import { Component } from '@angular/core'; +import { FormControl } from '@angular/forms'; + +/** @title Select with custom trigger text */ +@Component({ + selector : 'select-custom-trigger-example', + templateUrl: 'select-custom-trigger-example.html', + styleUrls : ['select-custom-trigger-example.css'] +}) +export class SelectCustomTriggerExample +{ + toppings = new FormControl(); + + toppingList = ['Extra cheese', 'Mushroom', 'Onion', 'Pepperoni', 'Sausage', 'Tomato']; +} diff --git a/src/assets/angular-material-examples/select-disabled/select-disabled-example.css b/src/assets/angular-material-examples/select-disabled/select-disabled-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-disabled/select-disabled-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-disabled/select-disabled-example.html b/src/assets/angular-material-examples/select-disabled/select-disabled-example.html new file mode 100644 index 00000000..692d5d22 --- /dev/null +++ b/src/assets/angular-material-examples/select-disabled/select-disabled-example.html @@ -0,0 +1,12 @@ +

+ Disable select +

+

+ + + Option 1 + Option 2 (disabled) + Option 3 + + +

diff --git a/src/assets/angular-material-examples/select-disabled/select-disabled-example.ts b/src/assets/angular-material-examples/select-disabled/select-disabled-example.ts new file mode 100644 index 00000000..07eeaa94 --- /dev/null +++ b/src/assets/angular-material-examples/select-disabled/select-disabled-example.ts @@ -0,0 +1,13 @@ +import { Component } from '@angular/core'; +import { FormControl } from '@angular/forms'; + +/** @title Disabled select */ +@Component({ + selector : 'select-disabled-example', + templateUrl: 'select-disabled-example.html', + styleUrls : ['select-disabled-example.css'] +}) +export class SelectDisabledExample +{ + disableSelect = new FormControl(false); +} diff --git a/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.css b/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.html b/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.html new file mode 100644 index 00000000..7551ca97 --- /dev/null +++ b/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.html @@ -0,0 +1,12 @@ + + + Clear + Valid option + Invalid option + + Errors appear instantly! + You must make a selection + + Your selection is invalid + + diff --git a/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.ts b/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.ts new file mode 100644 index 00000000..c3957f6b --- /dev/null +++ b/src/assets/angular-material-examples/select-error-state-matcher/select-error-state-matcher-example.ts @@ -0,0 +1,29 @@ +import { Component } from '@angular/core'; +import { FormControl, FormGroupDirective, NgForm, Validators } from '@angular/forms'; +import { ErrorStateMatcher } from '@angular/material/core'; + +/** Error when invalid control is dirty, touched, or submitted. */ +export class MyErrorStateMatcher implements ErrorStateMatcher +{ + isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean + { + const isSubmitted = form && form.submitted; + return !!(control && control.invalid && (control.dirty || control.touched || isSubmitted)); + } +} + +/** @title Select with a custom ErrorStateMatcher */ +@Component({ + selector : 'select-error-state-matcher-example', + templateUrl: 'select-error-state-matcher-example.html', + styleUrls : ['select-error-state-matcher-example.css'] +}) +export class SelectErrorStateMatcherExample +{ + selected = new FormControl('valid', [ + Validators.required, + Validators.pattern('valid') + ]); + + matcher = new MyErrorStateMatcher(); +} diff --git a/src/assets/angular-material-examples/select-form/select-form-example.ts b/src/assets/angular-material-examples/select-form/select-form-example.ts index afd365ae..94321ea5 100644 --- a/src/assets/angular-material-examples/select-form/select-form-example.ts +++ b/src/assets/angular-material-examples/select-form/select-form-example.ts @@ -5,20 +5,24 @@ import { Component } from '@angular/core'; */ @Component({ selector : 'select-form-example', - templateUrl: 'select-form-example.html' + templateUrl: 'select-form-example.html', + styleUrls : ['select-form-example.css'] }) export class SelectFormExample { selectedValue: string; foods = [ - {value : 'steak-0', + { + value : 'steak-0', viewValue: 'Steak' }, - {value : 'pizza-1', + { + value : 'pizza-1', viewValue: 'Pizza' }, - {value : 'tacos-2', + { + value : 'tacos-2', viewValue: 'Tacos' } ]; diff --git a/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.css b/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.html b/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.html new file mode 100644 index 00000000..254253eb --- /dev/null +++ b/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.html @@ -0,0 +1,10 @@ + + + -- + + {{animal.name}} + + + Please choose an animal + {{animalControl.value?.sound}} + diff --git a/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.ts b/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.ts new file mode 100644 index 00000000..74e9eb1f --- /dev/null +++ b/src/assets/angular-material-examples/select-hint-error/select-hint-error-example.ts @@ -0,0 +1,32 @@ +import { Component } from '@angular/core'; +import { FormControl, Validators } from '@angular/forms'; + +/** @title Select with form field features */ +@Component({ + selector : 'select-hint-error-example', + templateUrl: 'select-hint-error-example.html', + styleUrls : ['select-hint-error-example.css'] +}) +export class SelectHintErrorExample +{ + animalControl = new FormControl('', [Validators.required]); + + animals = [ + { + name : 'Dog', + sound: 'Woof!' + }, + { + name : 'Cat', + sound: 'Meow!' + }, + { + name : 'Cow', + sound: 'Moo!' + }, + { + name : 'Fox', + sound: 'Wa-pa-pa-pa-pa-pa-pow!' + } + ]; +} diff --git a/src/assets/angular-material-examples/select-multiple/select-multiple-example.css b/src/assets/angular-material-examples/select-multiple/select-multiple-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-multiple/select-multiple-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-multiple/select-multiple-example.html b/src/assets/angular-material-examples/select-multiple/select-multiple-example.html new file mode 100644 index 00000000..6056d9af --- /dev/null +++ b/src/assets/angular-material-examples/select-multiple/select-multiple-example.html @@ -0,0 +1,5 @@ + + + {{topping}} + + diff --git a/src/assets/angular-material-examples/select-multiple/select-multiple-example.ts b/src/assets/angular-material-examples/select-multiple/select-multiple-example.ts new file mode 100644 index 00000000..9c33296d --- /dev/null +++ b/src/assets/angular-material-examples/select-multiple/select-multiple-example.ts @@ -0,0 +1,15 @@ +import { Component } from '@angular/core'; +import { FormControl } from '@angular/forms'; + +/** @title Select with multiple selection */ +@Component({ + selector : 'select-multiple-example', + templateUrl: 'select-multiple-example.html', + styleUrls : ['select-multiple-example.css'] +}) +export class SelectMultipleExample +{ + toppings = new FormControl(); + + toppingList = ['Extra cheese', 'Mushroom', 'Onion', 'Pepperoni', 'Sausage', 'Tomato']; +} diff --git a/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.css b/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.html b/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.html new file mode 100644 index 00000000..644d1ee6 --- /dev/null +++ b/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.html @@ -0,0 +1,7 @@ + + + Option 1 + Option 2 + Option 3 + + diff --git a/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.ts b/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.ts new file mode 100644 index 00000000..cfab0f3d --- /dev/null +++ b/src/assets/angular-material-examples/select-no-ripple/select-no-ripple-example.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; + +/** @title Select with no option ripple */ +@Component({ + selector : 'select-no-ripple-example', + templateUrl: 'select-no-ripple-example.html', + styleUrls : ['select-no-ripple-example.css'] +}) +export class SelectNoRippleExample +{ +} diff --git a/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.css b/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.html b/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.html new file mode 100644 index 00000000..9ffa0891 --- /dev/null +++ b/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.html @@ -0,0 +1,11 @@ + + + -- None -- + + + {{ pokemon.viewValue }} + + + + diff --git a/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.ts b/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.ts new file mode 100644 index 00000000..0e32bd1b --- /dev/null +++ b/src/assets/angular-material-examples/select-optgroup/select-optgroup-example.ts @@ -0,0 +1,81 @@ +import { Component } from '@angular/core'; +import { FormControl } from '@angular/forms'; + +/** @title Select with option groups */ +@Component({ + selector : 'select-optgroup-example', + templateUrl: 'select-optgroup-example.html', + styleUrls : ['select-optgroup-example.css'] +}) +export class SelectOptgroupExample +{ + pokemonControl = new FormControl(); + + pokemonGroups = [ + { + name : 'Grass', + pokemon: [ + { + value : 'bulbasaur-0', + viewValue: 'Bulbasaur' + }, + { + value : 'oddish-1', + viewValue: 'Oddish' + }, + { + value : 'bellsprout-2', + viewValue: 'Bellsprout' + } + ] + }, + { + name : 'Water', + pokemon: [ + { + value : 'squirtle-3', + viewValue: 'Squirtle' + }, + { + value : 'psyduck-4', + viewValue: 'Psyduck' + }, + { + value : 'horsea-5', + viewValue: 'Horsea' + } + ] + }, + { + name : 'Fire', + disabled: true, + pokemon : [ + { + value : 'charmander-6', + viewValue: 'Charmander' + }, + { + value : 'vulpix-7', + viewValue: 'Vulpix' + }, + { + value : 'flareon-8', + viewValue: 'Flareon' + } + ] + }, + { + name : 'Psychic', + pokemon: [ + { + value : 'mew-9', + viewValue: 'Mew' + }, + { + value : 'mewtwo-10', + viewValue: 'Mewtwo' + } + ] + } + ]; +} diff --git a/src/assets/angular-material-examples/select-overview/select-overview-example.ts b/src/assets/angular-material-examples/select-overview/select-overview-example.ts index 7e88e407..53efe178 100644 --- a/src/assets/angular-material-examples/select-overview/select-overview-example.ts +++ b/src/assets/angular-material-examples/select-overview/select-overview-example.ts @@ -5,18 +5,22 @@ import { Component } from '@angular/core'; */ @Component({ selector : 'select-overview-example', - templateUrl: 'select-overview-example.html' + templateUrl: 'select-overview-example.html', + styleUrls : ['select-overview-example.css'] }) export class SelectOverviewExample { foods = [ - {value : 'steak-0', + { + value : 'steak-0', viewValue: 'Steak' }, - {value : 'pizza-1', + { + value : 'pizza-1', viewValue: 'Pizza' }, - {value : 'tacos-2', + { + value : 'tacos-2', viewValue: 'Tacos' } ]; diff --git a/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.css b/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.css new file mode 100644 index 00000000..750bfabc --- /dev/null +++ b/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.css @@ -0,0 +1,11 @@ +.example-panel-red .mat-select-content { + background: rgba(255, 0, 0, 0.5); +} + +.example-panel-green .mat-select-content { + background: rgba(0, 255, 0, 0.5); +} + +.example-panel-blue .mat-select-content { + background: rgba(0, 0, 255, 0.5); +} diff --git a/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.html b/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.html new file mode 100644 index 00000000..5e3aaef2 --- /dev/null +++ b/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.html @@ -0,0 +1,8 @@ + + + Red + Green + Blue + + diff --git a/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.ts b/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.ts new file mode 100644 index 00000000..c87965d9 --- /dev/null +++ b/src/assets/angular-material-examples/select-panel-class/select-panel-class-example.ts @@ -0,0 +1,16 @@ +import { Component, ViewEncapsulation } from '@angular/core'; +import { FormControl } from '@angular/forms'; + +/** + * @title Select with custom panel styling + */ +@Component({ + selector : 'select-panel-class-example', + templateUrl : 'select-panel-class-example.html', + styleUrls : ['select-panel-class-example.css'], + encapsulation: ViewEncapsulation.None +}) +export class SelectPanelClassExample +{ + panelColor = new FormControl('red'); +} diff --git a/src/assets/angular-material-examples/select-reset/select-reset-example.css b/src/assets/angular-material-examples/select-reset/select-reset-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-reset/select-reset-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-reset/select-reset-example.html b/src/assets/angular-material-examples/select-reset/select-reset-example.html new file mode 100644 index 00000000..91c99388 --- /dev/null +++ b/src/assets/angular-material-examples/select-reset/select-reset-example.html @@ -0,0 +1,6 @@ + + + None + {{state}} + + diff --git a/src/assets/angular-material-examples/select-reset/select-reset-example.ts b/src/assets/angular-material-examples/select-reset/select-reset-example.ts new file mode 100644 index 00000000..6cf83795 --- /dev/null +++ b/src/assets/angular-material-examples/select-reset/select-reset-example.ts @@ -0,0 +1,20 @@ +import { Component } from '@angular/core'; + +/** @title Select with reset option */ +@Component({ + selector : 'select-reset-example', + templateUrl: 'select-reset-example.html', + styleUrls : ['select-reset-example.css'] +}) +export class SelectResetExample +{ + states = [ + 'Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', + 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', + 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', + 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', + 'New York', 'North Carolina', 'North Dakota', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', + 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', + 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming' + ]; +} diff --git a/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.css b/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.css new file mode 100644 index 00000000..74323087 --- /dev/null +++ b/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.css @@ -0,0 +1 @@ +/** No CSS for this example */ diff --git a/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.html b/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.html new file mode 100644 index 00000000..93e1d0b4 --- /dev/null +++ b/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.html @@ -0,0 +1,10 @@ + + + None + Option 1 + Option 2 + Option 3 + + + +

You selected: {{selected}}

diff --git a/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.ts b/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.ts new file mode 100644 index 00000000..3406f1fa --- /dev/null +++ b/src/assets/angular-material-examples/select-value-binding/select-value-binding-example.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +/** @title Select with 2-way value binding */ +@Component({ + selector : 'select-value-binding-example', + templateUrl: 'select-value-binding-example.html', + styleUrls : ['select-value-binding-example.css'] +}) +export class SelectValueBindingExample +{ + selected = 'option2'; +} diff --git a/src/assets/angular-material-examples/sort-overview/sort-overview-example.ts b/src/assets/angular-material-examples/sort-overview/sort-overview-example.ts index 939ead29..8e435c75 100644 --- a/src/assets/angular-material-examples/sort-overview/sort-overview-example.ts +++ b/src/assets/angular-material-examples/sort-overview/sort-overview-example.ts @@ -12,31 +12,36 @@ import { Sort } from '@angular/material'; export class SortOverviewExample { desserts = [ - {name : 'Frozen yogurt', + { + name : 'Frozen yogurt', calories: '159', fat : '6', carbs : '24', protein : '4' }, - {name : 'Ice cream sandwich', + { + name : 'Ice cream sandwich', calories: '237', fat : '9', carbs : '37', protein : '4' }, - {name : 'Eclair', + { + name : 'Eclair', calories: '262', fat : '16', carbs : '24', protein : '6' }, - {name : 'Cupcake', + { + name : 'Cupcake', calories: '305', fat : '4', carbs : '67', protein : '4' }, - {name : 'Gingerbread', + { + name : 'Gingerbread', calories: '356', fat : '16', carbs : '49', diff --git a/src/assets/angular-material-examples/table-basic/table-basic-example.ts b/src/assets/angular-material-examples/table-basic/table-basic-example.ts index acdca967..c768fa83 100644 --- a/src/assets/angular-material-examples/table-basic/table-basic-example.ts +++ b/src/assets/angular-material-examples/table-basic/table-basic-example.ts @@ -1,7 +1,5 @@ import { Component } from '@angular/core'; -import { DataSource } from '@angular/cdk/collections'; -import { Observable } from 'rxjs/Observable'; -import 'rxjs/add/observable/of'; +import { MatTableDataSource } from '@angular/material'; /** * @title Basic table @@ -14,7 +12,7 @@ import 'rxjs/add/observable/of'; export class TableBasicExample { displayedColumns = ['position', 'name', 'weight', 'symbol']; - dataSource = new ExampleDataSource(); + dataSource = new MatTableDataSource(ELEMENT_DATA); } export interface Element @@ -25,124 +23,125 @@ export interface Element symbol: string; } -const data: Element[] = [ - {position : 1, - name : 'Hydrogen', - weight: 1.0079, - symbol: 'H' +const ELEMENT_DATA: Element[] = [ + { + position: 1, + name : 'Hydrogen', + weight : 1.0079, + symbol : 'H' }, - {position : 2, - name : 'Helium', - weight: 4.0026, - symbol: 'He' + { + position: 2, + name : 'Helium', + weight : 4.0026, + symbol : 'He' }, - {position : 3, - name : 'Lithium', - weight: 6.941, - symbol: 'Li' + { + position: 3, + name : 'Lithium', + weight : 6.941, + symbol : 'Li' }, - {position : 4, - name : 'Beryllium', - weight: 9.0122, - symbol: 'Be' + { + position: 4, + name : 'Beryllium', + weight : 9.0122, + symbol : 'Be' }, - {position : 5, - name : 'Boron', - weight: 10.811, - symbol: 'B' + { + position: 5, + name : 'Boron', + weight : 10.811, + symbol : 'B' }, - {position : 6, - name : 'Carbon', - weight: 12.0107, - symbol: 'C' + { + position: 6, + name : 'Carbon', + weight : 12.0107, + symbol : 'C' }, - {position : 7, - name : 'Nitrogen', - weight: 14.0067, - symbol: 'N' + { + position: 7, + name : 'Nitrogen', + weight : 14.0067, + symbol : 'N' }, - {position : 8, - name : 'Oxygen', - weight: 15.9994, - symbol: 'O' + { + position: 8, + name : 'Oxygen', + weight : 15.9994, + symbol : 'O' }, - {position : 9, - name : 'Fluorine', - weight: 18.9984, - symbol: 'F' + { + position: 9, + name : 'Fluorine', + weight : 18.9984, + symbol : 'F' }, - {position : 10, - name : 'Neon', - weight: 20.1797, - symbol: 'Ne' + { + position: 10, + name : 'Neon', + weight : 20.1797, + symbol : 'Ne' }, - {position : 11, - name : 'Sodium', - weight: 22.9897, - symbol: 'Na' + { + position: 11, + name : 'Sodium', + weight : 22.9897, + symbol : 'Na' }, - {position : 12, - name : 'Magnesium', - weight: 24.305, - symbol: 'Mg' + { + position: 12, + name : 'Magnesium', + weight : 24.305, + symbol : 'Mg' }, - {position : 13, - name : 'Aluminum', - weight: 26.9815, - symbol: 'Al' + { + position: 13, + name : 'Aluminum', + weight : 26.9815, + symbol : 'Al' }, - {position : 14, - name : 'Silicon', - weight: 28.0855, - symbol: 'Si' + { + position: 14, + name : 'Silicon', + weight : 28.0855, + symbol : 'Si' }, - {position : 15, - name : 'Phosphorus', - weight: 30.9738, - symbol: 'P' + { + position: 15, + name : 'Phosphorus', + weight : 30.9738, + symbol : 'P' }, - {position : 16, - name : 'Sulfur', - weight: 32.065, - symbol: 'S' + { + position: 16, + name : 'Sulfur', + weight : 32.065, + symbol : 'S' }, - {position : 17, - name : 'Chlorine', - weight: 35.453, - symbol: 'Cl' + { + position: 17, + name : 'Chlorine', + weight : 35.453, + symbol : 'Cl' }, - {position : 18, - name : 'Argon', - weight: 39.948, - symbol: 'Ar' + { + position: 18, + name : 'Argon', + weight : 39.948, + symbol : 'Ar' }, - {position : 19, - name : 'Potassium', - weight: 39.0983, - symbol: 'K' + { + position: 19, + name : 'Potassium', + weight : 39.0983, + symbol : 'K' }, - {position : 20, - name : 'Calcium', - weight: 40.078, - symbol: 'Ca' + { + position: 20, + name : 'Calcium', + weight : 40.078, + symbol : 'Ca' } ]; - -/** - * Data source to provide what data should be rendered in the table. The observable provided - * in connect should emit exactly the data that should be rendered by the table. If the data is - * altered, the observable should emit that new set of data on the stream. In our case here, - * we return a stream that contains only one set of data that doesn't change. - */ -export class ExampleDataSource extends DataSource -{ - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable - { - return Observable.of(data); - } - - disconnect() - { - } -} diff --git a/src/assets/angular-material-examples/table-filtering/table-filtering-example.css b/src/assets/angular-material-examples/table-filtering/table-filtering-example.css index 155058d1..26d5d392 100644 --- a/src/assets/angular-material-examples/table-filtering/table-filtering-example.css +++ b/src/assets/angular-material-examples/table-filtering/table-filtering-example.css @@ -7,17 +7,12 @@ .example-header { min-height: 64px; - display: flex; - align-items: baseline; padding: 8px 24px 0; - font-size: 20px; - justify-content: space-between; } .mat-form-field { font-size: 14px; - flex-grow: 1; - margin-left: 32px; + width: 100%; } .mat-table { diff --git a/src/assets/angular-material-examples/table-filtering/table-filtering-example.html b/src/assets/angular-material-examples/table-filtering/table-filtering-example.html index cd1964d3..abbc1009 100644 --- a/src/assets/angular-material-examples/table-filtering/table-filtering-example.html +++ b/src/assets/angular-material-examples/table-filtering/table-filtering-example.html @@ -1,37 +1,34 @@
- - + +
- - - - - ID - {{row.id}} - - - - - Progress - {{row.progress}}% + + + No. + {{element.position}} - + Name - {{row.name}} + {{element.name}} + + + + + Weight + {{element.weight}} - - Color - {{row.color}} + + Symbol + {{element.symbol}} diff --git a/src/assets/angular-material-examples/table-filtering/table-filtering-example.ts b/src/assets/angular-material-examples/table-filtering/table-filtering-example.ts index d00c5e3f..7b672fed 100644 --- a/src/assets/angular-material-examples/table-filtering/table-filtering-example.ts +++ b/src/assets/angular-material-examples/table-filtering/table-filtering-example.ts @@ -1,13 +1,5 @@ -import { Component, ElementRef, ViewChild } from '@angular/core'; -import { DataSource } from '@angular/cdk/collections'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { Observable } from 'rxjs/Observable'; -import 'rxjs/add/operator/startWith'; -import 'rxjs/add/observable/merge'; -import 'rxjs/add/operator/map'; -import 'rxjs/add/operator/debounceTime'; -import 'rxjs/add/operator/distinctUntilChanged'; -import 'rxjs/add/observable/fromEvent'; +import { Component } from '@angular/core'; +import { MatTableDataSource } from '@angular/material'; /** * @title Table with filtering @@ -19,134 +11,144 @@ import 'rxjs/add/observable/fromEvent'; }) export class TableFilteringExample { - displayedColumns = ['userId', 'userName', 'progress', 'color']; - exampleDatabase = new ExampleDatabase(); - dataSource: ExampleDataSource | null; + displayedColumns = ['position', 'name', 'weight', 'symbol']; + dataSource = new MatTableDataSource(ELEMENT_DATA); - @ViewChild('filter') filter: ElementRef; - - ngOnInit() + applyFilter(filterValue: string) { - this.dataSource = new ExampleDataSource(this.exampleDatabase); - Observable.fromEvent(this.filter.nativeElement, 'keyup') - .debounceTime(150) - .distinctUntilChanged() - .subscribe(() => { - if ( !this.dataSource ) - { - return; - } - this.dataSource.filter = this.filter.nativeElement.value; - }); + filterValue = filterValue.trim(); // Remove whitespace + filterValue = filterValue.toLowerCase(); // MatTableDataSource defaults to lowercase matches + this.dataSource.filter = filterValue; } } -/** Constants used to fill up our data base. */ -const COLORS = [ - 'maroon', 'red', 'orange', 'yellow', 'olive', 'green', 'purple', - 'fuchsia', 'lime', 'teal', 'aqua', 'blue', 'navy', 'black', 'gray' -]; -const NAMES = [ - 'Maia', 'Asher', 'Olivia', 'Atticus', 'Amelia', 'Jack', - 'Charlotte', 'Theodore', 'Isla', 'Oliver', 'Isabella', 'Jasper', - 'Cora', 'Levi', 'Violet', 'Arthur', 'Mia', 'Thomas', 'Elizabeth' -]; - -export interface UserData +export interface Element { - id: string; name: string; - progress: string; - color: string; + position: number; + weight: number; + symbol: string; } -/** An example database that the data source uses to retrieve data for the table. */ -export class ExampleDatabase -{ - /** Stream that emits whenever the data has been modified. */ - dataChange: BehaviorSubject = new BehaviorSubject([]); - - get data(): UserData[] +const ELEMENT_DATA: Element[] = [ { - return this.dataChange.value; - } - - constructor() + position: 1, + name : 'Hydrogen', + weight : 1.0079, + symbol : 'H' + }, { - // Fill up the database with 100 users. - for ( let i = 0; i < 100; i++ ) - { - this.addUser(); - } - } - - /** Adds a new user to the database. */ - addUser() + position: 2, + name : 'Helium', + weight : 4.0026, + symbol : 'He' + }, { - const copiedData = this.data.slice(); - copiedData.push(this.createNewUser()); - this.dataChange.next(copiedData); - } - - /** Builds and returns a new User. */ - private createNewUser() + position: 3, + name : 'Lithium', + weight : 6.941, + symbol : 'Li' + }, { - const name = - NAMES[Math.round(Math.random() * (NAMES.length - 1))] + ' ' + - NAMES[Math.round(Math.random() * (NAMES.length - 1))].charAt(0) + '.'; - - return { - id : (this.data.length + 1).toString(), - name : name, - progress: Math.round(Math.random() * 100).toString(), - color : COLORS[Math.round(Math.random() * (COLORS.length - 1))] - }; - } -} - -/** - * Data source to provide what data should be rendered in the table. Note that the data source - * can retrieve its data in any way. In this case, the data source is provided a reference - * to a common data base, ExampleDatabase. It is not the data source's responsibility to manage - * the underlying data. Instead, it only needs to take the data and send the table exactly what - * should be rendered. - */ -export class ExampleDataSource extends DataSource -{ - _filterChange = new BehaviorSubject(''); - - get filter(): string + position: 4, + name : 'Beryllium', + weight : 9.0122, + symbol : 'Be' + }, { - return this._filterChange.value; - } - - set filter(filter: string) + position: 5, + name : 'Boron', + weight : 10.811, + symbol : 'B' + }, { - this._filterChange.next(filter); - } - - constructor(private _exampleDatabase: ExampleDatabase) + position: 6, + name : 'Carbon', + weight : 12.0107, + symbol : 'C' + }, { - super(); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable + position: 7, + name : 'Nitrogen', + weight : 14.0067, + symbol : 'N' + }, { - const displayDataChanges = [ - this._exampleDatabase.dataChange, - this._filterChange - ]; - - return Observable.merge(...displayDataChanges).map(() => { - return this._exampleDatabase.data.slice().filter((item: UserData) => { - let searchStr = (item.name + item.color).toLowerCase(); - return searchStr.indexOf(this.filter.toLowerCase()) != -1; - }); - }); - } - - disconnect() + position: 8, + name : 'Oxygen', + weight : 15.9994, + symbol : 'O' + }, { + position: 9, + name : 'Fluorine', + weight : 18.9984, + symbol : 'F' + }, + { + position: 10, + name : 'Neon', + weight : 20.1797, + symbol : 'Ne' + }, + { + position: 11, + name : 'Sodium', + weight : 22.9897, + symbol : 'Na' + }, + { + position: 12, + name : 'Magnesium', + weight : 24.305, + symbol : 'Mg' + }, + { + position: 13, + name : 'Aluminum', + weight : 26.9815, + symbol : 'Al' + }, + { + position: 14, + name : 'Silicon', + weight : 28.0855, + symbol : 'Si' + }, + { + position: 15, + name : 'Phosphorus', + weight : 30.9738, + symbol : 'P' + }, + { + position: 16, + name : 'Sulfur', + weight : 32.065, + symbol : 'S' + }, + { + position: 17, + name : 'Chlorine', + weight : 35.453, + symbol : 'Cl' + }, + { + position: 18, + name : 'Argon', + weight : 39.948, + symbol : 'Ar' + }, + { + position: 19, + name : 'Potassium', + weight : 39.0983, + symbol : 'K' + }, + { + position: 20, + name : 'Calcium', + weight : 40.078, + symbol : 'Ca' } -} +]; diff --git a/src/assets/angular-material-examples/table-http/table-http-example.css b/src/assets/angular-material-examples/table-http/table-http-example.css index 4f7ac2f8..d1e89791 100644 --- a/src/assets/angular-material-examples/table-http/table-http-example.css +++ b/src/assets/angular-material-examples/table-http/table-http-example.css @@ -20,23 +20,6 @@ min-height: 300px; } -.mat-column-title { - text-overflow: ellipsis; - white-space: nowrap; - flex: 1; - overflow: hidden; -} - -/* Column Widths */ -.mat-column-number, -.mat-column-state { - max-width: 64px; -} - -.mat-column-created { - max-width: 124px; -} - .example-loading-shade { position: absolute; top: 0; @@ -55,3 +38,13 @@ max-width: 360px; text-align: center; } + +/* Column Widths */ +.mat-column-number, +.mat-column-state { + max-width: 64px; +} + +.mat-column-created { + max-width: 124px; +} diff --git a/src/assets/angular-material-examples/table-http/table-http-example.html b/src/assets/angular-material-examples/table-http/table-http-example.html index c18f5ac5..599f5281 100644 --- a/src/assets/angular-material-examples/table-http/table-http-example.html +++ b/src/assets/angular-material-examples/table-http/table-http-example.html @@ -1,14 +1,14 @@
- -
+ *ngIf="isLoadingResults || isRateLimitReached"> + +
GitHub's API rate limit has been reached. It will be reset in one minute.
+ matSort matSortActive="created" matSortDisableClear matSortDirection="asc"> @@ -32,7 +32,7 @@ - + @@ -45,7 +45,6 @@ - +
diff --git a/src/assets/angular-material-examples/table-http/table-http-example.ts b/src/assets/angular-material-examples/table-http/table-http-example.ts index a6848596..4f852bd2 100644 --- a/src/assets/angular-material-examples/table-http/table-http-example.ts +++ b/src/assets/angular-material-examples/table-http/table-http-example.ts @@ -1,7 +1,6 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; -import { Http } from '@angular/http'; -import { DataSource } from '@angular/cdk/collections'; -import { MatPaginator, MatSort } from '@angular/material'; +import { Component, AfterViewInit, ViewChild } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { MatPaginator, MatSort, MatTableDataSource } from '@angular/material'; import { Observable } from 'rxjs/Observable'; import 'rxjs/add/observable/merge'; import 'rxjs/add/observable/of'; @@ -18,24 +17,56 @@ import 'rxjs/add/operator/switchMap'; styleUrls : ['table-http-example.css'], templateUrl: 'table-http-example.html' }) -export class TableHttpExample implements OnInit +export class TableHttpExample implements AfterViewInit { - displayedColumns = ['created_at', 'state', 'number', 'title']; + displayedColumns = ['created', 'state', 'number', 'title']; exampleDatabase: ExampleHttpDao | null; - dataSource: ExampleDataSource | null; + dataSource = new MatTableDataSource(); + + resultsLength = 0; + isLoadingResults = false; + isRateLimitReached = false; @ViewChild(MatPaginator) paginator: MatPaginator; @ViewChild(MatSort) sort: MatSort; - constructor(private http: Http) + constructor(private http: HttpClient) { } - ngOnInit() + ngAfterViewInit() { this.exampleDatabase = new ExampleHttpDao(this.http); - this.dataSource = new ExampleDataSource( - this.exampleDatabase!, this.paginator, this.sort); + + // If the user changes the sort order, reset back to the first page. + this.sort.sortChange.subscribe(() => this.paginator.pageIndex = 0); + + Observable.merge(this.sort.sortChange, this.paginator.page) + .startWith(null) + .switchMap(() => { + setTimeout(() => { + this.isLoadingResults = true; + }); + return this.exampleDatabase!.getRepoIssues( + this.sort.active, this.sort.direction, this.paginator.pageIndex); + }) + .map(data => { + // Flip flag to show that loading has finished. + this.isLoadingResults = false; + this.isRateLimitReached = false; + this.resultsLength = data.total_count; + + return data.items; + }) + .catch(() => { + setTimeout(() => { + this.isLoadingResults = false; + // Catch if the GitHub API has reached its rate limit. Return empty data. + this.isRateLimitReached = true; + }); + return Observable.of([]); + }) + .subscribe(data => this.dataSource.data = data); } } @@ -56,7 +87,7 @@ export interface GithubIssue /** An example database that the data source uses to retrieve data for the table. */ export class ExampleHttpDao { - constructor(private http: Http) + constructor(private http: HttpClient) { } @@ -66,73 +97,6 @@ export class ExampleHttpDao const requestUrl = `${href}?q=repo:angular/material2&sort=${sort}&order=${order}&page=${page + 1}`; - return this.http.get(requestUrl) - .map(response => response.json() as GithubApi); - } -} - -/** - * Data source to provide what data should be rendered in the table. Note that the data source - * can retrieve its data in any way. In this case, the data source is provided a reference - * to a common data base, ExampleHttpDao. It is not the data source's responsibility to manage - * the underlying data. Instead, it only needs to take the data and send the table exactly what - * should be rendered. - */ -export class ExampleDataSource extends DataSource -{ - // The number of issues returned by github matching the query. - resultsLength = 0; - isLoadingResults = false; - isRateLimitReached = false; - - constructor( - private exampleDatabase: ExampleHttpDao, - private paginator: MatPaginator, - private sort: MatSort - ) - { - super(); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable - { - const displayDataChanges = [ - this.sort.sortChange, - this.paginator.page - ]; - - // If the user changes the sort order, reset back to the first page. - this.sort.sortChange.subscribe(() => this.paginator.pageIndex = 0); - - return Observable.merge(...displayDataChanges) - .startWith(null) - .switchMap(() => { - setTimeout(() => { - this.isLoadingResults = true; - }); - return this.exampleDatabase.getRepoIssues( - this.sort.active, this.sort.direction, this.paginator.pageIndex); - }) - .map(data => { - // Flip flag to show that loading has finished. - this.isLoadingResults = false; - this.isRateLimitReached = false; - this.resultsLength = data.total_count; - - return data.items; - }) - .catch(() => { - // Catch if the GitHub API has reached its rate limit. Return empty data. - setTimeout(() => { - this.isLoadingResults = false; - this.isRateLimitReached = true; - }); - return Observable.of([]); - }); - } - - disconnect() - { + return this.http.get(requestUrl); } } diff --git a/src/assets/angular-material-examples/table-overview/table-overview-example.css b/src/assets/angular-material-examples/table-overview/table-overview-example.css index 5ddeba4b..986a3a60 100644 --- a/src/assets/angular-material-examples/table-overview/table-overview-example.css +++ b/src/assets/angular-material-examples/table-overview/table-overview-example.css @@ -1,4 +1,3 @@ -/* Structure */ .example-container { display: flex; flex-direction: column; @@ -6,45 +5,13 @@ } .example-header { - min-height: 56px; - max-height: 56px; - display: flex; - align-items: center; + min-height: 64px; padding: 8px 24px 0; - font-size: 20px; - justify-content: space-between; - border-bottom: 1px solid transparent; } .mat-form-field { font-size: 14px; - flex-grow: 1; - margin-top: 8px; -} - -.example-no-results { - display: flex; - justify-content: center; - padding: 24px; - font-size: 12px; - font-style: italic; -} - -/** Selection styles */ -.example-selection-header { - font-size: 18px; -} - -.mat-column-select { - max-width: 54px; -} - -.mat-row:hover, .example-selected-row { - background: #F5F5F5; -} - -.mat-row:active, .mat-row.example-selected-row { - background: #EAEAEA; + width: 100%; } .mat-table { diff --git a/src/assets/angular-material-examples/table-overview/table-overview-example.html b/src/assets/angular-material-examples/table-overview/table-overview-example.html index 161ae82b..61bafd76 100644 --- a/src/assets/angular-material-examples/table-overview/table-overview-example.html +++ b/src/assets/angular-material-examples/table-overview/table-overview-example.html @@ -1,40 +1,15 @@ -
- - +
+ +
-
- {{selection.selected.length}} - {{selection.selected.length == 1 ? 'user' : 'users'}} - selected -
- - - - - - - - - - - - - - - + - + ID {{row.id}} @@ -46,7 +21,7 @@ - + Name {{row.name}} @@ -58,21 +33,9 @@ - + -
- No users found matching filter. -
- - - +
diff --git a/src/assets/angular-material-examples/table-overview/table-overview-example.ts b/src/assets/angular-material-examples/table-overview/table-overview-example.ts index c70bbd8b..d441c52a 100644 --- a/src/assets/angular-material-examples/table-overview/table-overview-example.ts +++ b/src/assets/angular-material-examples/table-overview/table-overview-example.ts @@ -1,18 +1,8 @@ -import { Component, ElementRef, ViewChild } from '@angular/core'; -import { DataSource } from '@angular/cdk/collections'; -import { MatPaginator, MatSort } from '@angular/material'; -import { SelectionModel } from '@angular/cdk/collections'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { Observable } from 'rxjs/Observable'; -import 'rxjs/add/operator/startWith'; -import 'rxjs/add/observable/merge'; -import 'rxjs/add/observable/fromEvent'; -import 'rxjs/add/operator/map'; -import 'rxjs/add/operator/distinctUntilChanged'; -import 'rxjs/add/operator/debounceTime'; +import { Component, ViewChild } from '@angular/core'; +import { MatPaginator, MatSort, MatTableDataSource } from '@angular/material'; /** - * @title Feature-rich data table + * @title Data table with sorting, pagination, and filtering. */ @Component({ selector : 'table-overview-example', @@ -21,73 +11,58 @@ import 'rxjs/add/operator/debounceTime'; }) export class TableOverviewExample { - displayedColumns = ['select', 'userId', 'userName', 'progress', 'color']; - exampleDatabase = new ExampleDatabase(); - selection = new SelectionModel(true, []); - dataSource: ExampleDataSource | null; + displayedColumns = ['id', 'name', 'progress', 'color']; + dataSource: MatTableDataSource; @ViewChild(MatPaginator) paginator: MatPaginator; @ViewChild(MatSort) sort: MatSort; - @ViewChild('filter') filter: ElementRef; - ngOnInit() + constructor() { - this.dataSource = new ExampleDataSource(this.exampleDatabase, this.paginator, this.sort); - Observable.fromEvent(this.filter.nativeElement, 'keyup') - .debounceTime(150) - .distinctUntilChanged() - .subscribe(() => { - if ( !this.dataSource ) - { - return; - } - this.dataSource.filter = this.filter.nativeElement.value; - }); + // Create 100 users + const users: UserData[] = []; + for ( let i = 1; i <= 100; i++ ) + { + users.push(createNewUser(i)); + } + + // Assign the data to the data source for the table to render + this.dataSource = new MatTableDataSource(users); } - isAllSelected(): boolean + /** + * Set the paginator and sort after the view init since this component will + * be able to query its view for the initialized paginator and sort. + */ + ngAfterViewInit() { - if ( !this.dataSource ) - { - return false; - } - if ( this.selection.isEmpty() ) - { - return false; - } - - if ( this.filter.nativeElement.value ) - { - return this.selection.selected.length == this.dataSource.renderedData.length; - } - else - { - return this.selection.selected.length == this.exampleDatabase.data.length; - } + this.dataSource.paginator = this.paginator; + this.dataSource.sort = this.sort; } - masterToggle() + applyFilter(filterValue: string) { - if ( !this.dataSource ) - { - return; - } - - if ( this.isAllSelected() ) - { - this.selection.clear(); - } - else if ( this.filter.nativeElement.value ) - { - this.dataSource.renderedData.forEach(data => this.selection.select(data.id)); - } - else - { - this.exampleDatabase.data.forEach(data => this.selection.select(data.id)); - } + filterValue = filterValue.trim(); // Remove whitespace + filterValue = filterValue.toLowerCase(); // Datasource defaults to lowercase matches + this.dataSource.filter = filterValue; } } +/** Builds and returns a new User. */ +function createNewUser(id: number): UserData +{ + const name = + NAMES[Math.round(Math.random() * (NAMES.length - 1))] + ' ' + + NAMES[Math.round(Math.random() * (NAMES.length - 1))].charAt(0) + '.'; + + return { + id : id.toString(), + name : name, + progress: Math.round(Math.random() * 100).toString(), + color : COLORS[Math.round(Math.random() * (COLORS.length - 1))] + }; +} + /** Constants used to fill up our data base. */ const COLORS = [ 'maroon', 'red', 'orange', 'yellow', 'olive', 'green', 'purple', @@ -106,153 +81,3 @@ export interface UserData progress: string; color: string; } - -/** An example database that the data source uses to retrieve data for the table. */ -export class ExampleDatabase -{ - /** Stream that emits whenever the data has been modified. */ - dataChange: BehaviorSubject = new BehaviorSubject([]); - - get data(): UserData[] - { - return this.dataChange.value; - } - - constructor() - { - // Fill up the database with 100 users. - setTimeout(() => { - for ( let i = 0; i < 100; i++ ) - { - this.addUser(); - } - }); - } - - /** Adds a new user to the database. */ - addUser() - { - const copiedData = this.data.slice(); - copiedData.push(this.createNewUser()); - this.dataChange.next(copiedData); - } - - /** Builds and returns a new User. */ - private createNewUser() - { - const name = - NAMES[Math.round(Math.random() * (NAMES.length - 1))] + ' ' + - NAMES[Math.round(Math.random() * (NAMES.length - 1))].charAt(0) + '.'; - - return { - id : (this.data.length + 1).toString(), - name : name, - progress: Math.round(Math.random() * 100).toString(), - color : COLORS[Math.round(Math.random() * (COLORS.length - 1))] - }; - } -} - -/** - * Data source to provide what data should be rendered in the table. Note that the data source - * can retrieve its data in any way. In this case, the data source is provided a reference - * to a common data base, ExampleDatabase. It is not the data source's responsibility to manage - * the underlying data. Instead, it only needs to take the data and send the table exactly what - * should be rendered. - */ -export class ExampleDataSource extends DataSource -{ - _filterChange = new BehaviorSubject(''); - - get filter(): string - { - return this._filterChange.value; - } - - set filter(filter: string) - { - this._filterChange.next(filter); - } - - filteredData: UserData[] = []; - renderedData: UserData[] = []; - - constructor( - private _exampleDatabase: ExampleDatabase, - private _paginator: MatPaginator, - private _sort: MatSort - ) - { - super(); - - // Reset to the first page when the user changes the filter. - this._filterChange.subscribe(() => this._paginator.pageIndex = 0); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable - { - // Listen for any changes in the base data, sorting, filtering, or pagination - const displayDataChanges = [ - this._exampleDatabase.dataChange, - this._sort.sortChange, - this._filterChange, - this._paginator.page - ]; - - return Observable.merge(...displayDataChanges).map(() => { - // Filter data - this.filteredData = this._exampleDatabase.data.slice().filter((item: UserData) => { - let searchStr = (item.name + item.color).toLowerCase(); - return searchStr.indexOf(this.filter.toLowerCase()) != -1; - }); - - // Sort filtered data - const sortedData = this.sortData(this.filteredData.slice()); - - // Grab the page's slice of the filtered sorted data. - const startIndex = this._paginator.pageIndex * this._paginator.pageSize; - this.renderedData = sortedData.splice(startIndex, this._paginator.pageSize); - return this.renderedData; - }); - } - - disconnect() - { - } - - /** Returns a sorted copy of the database data. */ - sortData(data: UserData[]): UserData[] - { - if ( !this._sort.active || this._sort.direction == '' ) - { - return data; - } - - return data.sort((a, b) => { - let propertyA: number | string = ''; - let propertyB: number | string = ''; - - switch ( this._sort.active ) - { - case 'userId': - [propertyA, propertyB] = [a.id, b.id]; - break; - case 'userName': - [propertyA, propertyB] = [a.name, b.name]; - break; - case 'progress': - [propertyA, propertyB] = [a.progress, b.progress]; - break; - case 'color': - [propertyA, propertyB] = [a.color, b.color]; - break; - } - - let valueA = isNaN(+propertyA) ? propertyA : +propertyA; - let valueB = isNaN(+propertyB) ? propertyB : +propertyB; - - return (valueA < valueB ? -1 : 1) * (this._sort.direction == 'asc' ? 1 : -1); - }); - } -} diff --git a/src/assets/angular-material-examples/table-pagination/table-pagination-example.css b/src/assets/angular-material-examples/table-pagination/table-pagination-example.css index c6d0ba17..4bcbbe98 100644 --- a/src/assets/angular-material-examples/table-pagination/table-pagination-example.css +++ b/src/assets/angular-material-examples/table-pagination/table-pagination-example.css @@ -1,18 +1,9 @@ -/* Structure */ .example-container { display: flex; flex-direction: column; min-width: 300px; } -.example-header { - min-height: 64px; - display: flex; - align-items: center; - padding-left: 24px; - font-size: 20px; -} - .mat-table { overflow: auto; max-height: 500px; diff --git a/src/assets/angular-material-examples/table-pagination/table-pagination-example.html b/src/assets/angular-material-examples/table-pagination/table-pagination-example.html index 399a2197..a030e4a7 100644 --- a/src/assets/angular-material-examples/table-pagination/table-pagination-example.html +++ b/src/assets/angular-material-examples/table-pagination/table-pagination-example.html @@ -1,32 +1,28 @@
- - - - - - ID - {{row.id}} - - - - - Progress - {{row.progress}}% + + + No. + {{element.position}} - + Name - {{row.name}} + {{element.name}} + + + + + Weight + {{element.weight}} - - Color - {{row.color}} + + Symbol + {{element.symbol}} @@ -34,9 +30,7 @@ + [pageSize]="10" + [pageSizeOptions]="[5, 10, 20]"> -
+
\ No newline at end of file diff --git a/src/assets/angular-material-examples/table-pagination/table-pagination-example.ts b/src/assets/angular-material-examples/table-pagination/table-pagination-example.ts index ea56ac61..ad297cbe 100644 --- a/src/assets/angular-material-examples/table-pagination/table-pagination-example.ts +++ b/src/assets/angular-material-examples/table-pagination/table-pagination-example.ts @@ -1,11 +1,5 @@ import { Component, ViewChild } from '@angular/core'; -import { DataSource } from '@angular/cdk/collections'; -import { MatPaginator } from '@angular/material'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { Observable } from 'rxjs/Observable'; -import 'rxjs/add/operator/startWith'; -import 'rxjs/add/observable/merge'; -import 'rxjs/add/operator/map'; +import { MatPaginator, MatTableDataSource } from '@angular/material'; /** * @title Table with pagination @@ -17,113 +11,148 @@ import 'rxjs/add/operator/map'; }) export class TablePaginationExample { - displayedColumns = ['userId', 'userName', 'progress', 'color']; - exampleDatabase = new ExampleDatabase(); - dataSource: ExampleDataSource | null; + displayedColumns = ['position', 'name', 'weight', 'symbol']; + dataSource = new MatTableDataSource(ELEMENT_DATA); @ViewChild(MatPaginator) paginator: MatPaginator; - ngOnInit() + /** + * Set the paginator after the view init since this component will + * be able to query its view for the initialized paginator. + */ + ngAfterViewInit() { - this.dataSource = new ExampleDataSource(this.exampleDatabase, this.paginator); + this.dataSource.paginator = this.paginator; } } -/** Constants used to fill up our data base. */ -const COLORS = [ - 'maroon', 'red', 'orange', 'yellow', 'olive', 'green', 'purple', - 'fuchsia', 'lime', 'teal', 'aqua', 'blue', 'navy', 'black', 'gray' -]; -const NAMES = [ - 'Maia', 'Asher', 'Olivia', 'Atticus', 'Amelia', 'Jack', - 'Charlotte', 'Theodore', 'Isla', 'Oliver', 'Isabella', 'Jasper', - 'Cora', 'Levi', 'Violet', 'Arthur', 'Mia', 'Thomas', 'Elizabeth' -]; - -export interface UserData +export interface Element { - id: string; name: string; - progress: string; - color: string; + position: number; + weight: number; + symbol: string; } -/** An example database that the data source uses to retrieve data for the table. */ -export class ExampleDatabase -{ - /** Stream that emits whenever the data has been modified. */ - dataChange: BehaviorSubject = new BehaviorSubject([]); - - get data(): UserData[] +const ELEMENT_DATA: Element[] = [ { - return this.dataChange.value; - } - - constructor() + position: 1, + name : 'Hydrogen', + weight : 1.0079, + symbol : 'H' + }, { - // Fill up the database with 100 users. - for ( let i = 0; i < 100; i++ ) - { - this.addUser(); - } - } - - /** Adds a new user to the database. */ - addUser() + position: 2, + name : 'Helium', + weight : 4.0026, + symbol : 'He' + }, { - const copiedData = this.data.slice(); - copiedData.push(this.createNewUser()); - this.dataChange.next(copiedData); - } - - /** Builds and returns a new User. */ - private createNewUser() + position: 3, + name : 'Lithium', + weight : 6.941, + symbol : 'Li' + }, { - const name = - NAMES[Math.round(Math.random() * (NAMES.length - 1))] + ' ' + - NAMES[Math.round(Math.random() * (NAMES.length - 1))].charAt(0) + '.'; - - return { - id : (this.data.length + 1).toString(), - name : name, - progress: Math.round(Math.random() * 100).toString(), - color : COLORS[Math.round(Math.random() * (COLORS.length - 1))] - }; - } -} - -/** - * Data source to provide what data should be rendered in the table. Note that the data source - * can retrieve its data in any way. In this case, the data source is provided a reference - * to a common data base, ExampleDatabase. It is not the data source's responsibility to manage - * the underlying data. Instead, it only needs to take the data and send the table exactly what - * should be rendered. - */ -export class ExampleDataSource extends DataSource -{ - constructor(private _exampleDatabase: ExampleDatabase, private _paginator: MatPaginator) + position: 4, + name : 'Beryllium', + weight : 9.0122, + symbol : 'Be' + }, { - super(); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable + position: 5, + name : 'Boron', + weight : 10.811, + symbol : 'B' + }, { - const displayDataChanges = [ - this._exampleDatabase.dataChange, - this._paginator.page - ]; - - return Observable.merge(...displayDataChanges).map(() => { - const data = this._exampleDatabase.data.slice(); - - // Grab the page's slice of data. - const startIndex = this._paginator.pageIndex * this._paginator.pageSize; - return data.splice(startIndex, this._paginator.pageSize); - }); - } - - disconnect() + position: 6, + name : 'Carbon', + weight : 12.0107, + symbol : 'C' + }, { + position: 7, + name : 'Nitrogen', + weight : 14.0067, + symbol : 'N' + }, + { + position: 8, + name : 'Oxygen', + weight : 15.9994, + symbol : 'O' + }, + { + position: 9, + name : 'Fluorine', + weight : 18.9984, + symbol : 'F' + }, + { + position: 10, + name : 'Neon', + weight : 20.1797, + symbol : 'Ne' + }, + { + position: 11, + name : 'Sodium', + weight : 22.9897, + symbol : 'Na' + }, + { + position: 12, + name : 'Magnesium', + weight : 24.305, + symbol : 'Mg' + }, + { + position: 13, + name : 'Aluminum', + weight : 26.9815, + symbol : 'Al' + }, + { + position: 14, + name : 'Silicon', + weight : 28.0855, + symbol : 'Si' + }, + { + position: 15, + name : 'Phosphorus', + weight : 30.9738, + symbol : 'P' + }, + { + position: 16, + name : 'Sulfur', + weight : 32.065, + symbol : 'S' + }, + { + position: 17, + name : 'Chlorine', + weight : 35.453, + symbol : 'Cl' + }, + { + position: 18, + name : 'Argon', + weight : 39.948, + symbol : 'Ar' + }, + { + position: 19, + name : 'Potassium', + weight : 39.0983, + symbol : 'K' + }, + { + position: 20, + name : 'Calcium', + weight : 40.078, + symbol : 'Ca' } -} +]; diff --git a/src/assets/angular-material-examples/table-sorting/table-sorting-example.css b/src/assets/angular-material-examples/table-sorting/table-sorting-example.css index 7bde15b2..a5b2b1bd 100644 --- a/src/assets/angular-material-examples/table-sorting/table-sorting-example.css +++ b/src/assets/angular-material-examples/table-sorting/table-sorting-example.css @@ -1,23 +1,14 @@ -/* Structure */ .example-container { display: flex; flex-direction: column; min-width: 300px; } -.example-header { - min-height: 64px; - display: flex; - align-items: center; - padding-left: 24px; - font-size: 20px; -} - .mat-table { overflow: auto; max-height: 500px; } -.mat-header-cell .mat-sort-header-sorted { +.mat-header-cell.mat-sort-header-sorted { color: black; } diff --git a/src/assets/angular-material-examples/table-sorting/table-sorting-example.html b/src/assets/angular-material-examples/table-sorting/table-sorting-example.html index ff15e446..b7d868d2 100644 --- a/src/assets/angular-material-examples/table-sorting/table-sorting-example.html +++ b/src/assets/angular-material-examples/table-sorting/table-sorting-example.html @@ -1,34 +1,31 @@
- - - - - ID - {{row.id}} - - - - - Progress - {{row.progress}}% + + + No. + {{element.position}} - + Name - {{row.name}} + {{element.name}} + + + + + Weight + {{element.weight}} - - Color - {{row.color}} + + Symbol + {{element.symbol}} -
+
\ No newline at end of file diff --git a/src/assets/angular-material-examples/table-sorting/table-sorting-example.ts b/src/assets/angular-material-examples/table-sorting/table-sorting-example.ts index f9240cd0..2d3e82a7 100644 --- a/src/assets/angular-material-examples/table-sorting/table-sorting-example.ts +++ b/src/assets/angular-material-examples/table-sorting/table-sorting-example.ts @@ -1,11 +1,5 @@ import { Component, ViewChild } from '@angular/core'; -import { DataSource } from '@angular/cdk/collections'; -import { MatSort } from '@angular/material'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { Observable } from 'rxjs/Observable'; -import 'rxjs/add/operator/startWith'; -import 'rxjs/add/observable/merge'; -import 'rxjs/add/operator/map'; +import { MatTableDataSource, MatSort } from '@angular/material'; /** * @title Table with sorting @@ -17,145 +11,148 @@ import 'rxjs/add/operator/map'; }) export class TableSortingExample { - displayedColumns = ['userId', 'userName', 'progress', 'color']; - exampleDatabase = new ExampleDatabase(); - dataSource: ExampleDataSource | null; + displayedColumns = ['position', 'name', 'weight', 'symbol']; + dataSource = new MatTableDataSource(ELEMENT_DATA); @ViewChild(MatSort) sort: MatSort; - ngOnInit() + /** + * Set the sort after the view init since this component will + * be able to query its view for the initialized sort. + */ + ngAfterViewInit() { - this.dataSource = new ExampleDataSource(this.exampleDatabase, this.sort); + this.dataSource.sort = this.sort; } } -/** Constants used to fill up our data base. */ -const COLORS = [ - 'maroon', 'red', 'orange', 'yellow', 'olive', 'green', 'purple', - 'fuchsia', 'lime', 'teal', 'aqua', 'blue', 'navy', 'black', 'gray' -]; -const NAMES = [ - 'Maia', 'Asher', 'Olivia', 'Atticus', 'Amelia', 'Jack', - 'Charlotte', 'Theodore', 'Isla', 'Oliver', 'Isabella', 'Jasper', - 'Cora', 'Levi', 'Violet', 'Arthur', 'Mia', 'Thomas', 'Elizabeth' -]; - -export interface UserData +export interface Element { - id: string; name: string; - progress: string; - color: string; + position: number; + weight: number; + symbol: string; } -/** An example database that the data source uses to retrieve data for the table. */ -export class ExampleDatabase -{ - /** Stream that emits whenever the data has been modified. */ - dataChange: BehaviorSubject = new BehaviorSubject([]); - - get data(): UserData[] +const ELEMENT_DATA: Element[] = [ { - return this.dataChange.value; - } - - constructor() + position: 1, + name : 'Hydrogen', + weight : 1.0079, + symbol : 'H' + }, { - // Fill up the database with 100 users. - for ( let i = 0; i < 100; i++ ) - { - this.addUser(); - } - } - - /** Adds a new user to the database. */ - addUser() + position: 2, + name : 'Helium', + weight : 4.0026, + symbol : 'He' + }, { - const copiedData = this.data.slice(); - copiedData.push(this.createNewUser()); - this.dataChange.next(copiedData); - } - - /** Builds and returns a new User. */ - private createNewUser() + position: 3, + name : 'Lithium', + weight : 6.941, + symbol : 'Li' + }, { - const name = - NAMES[Math.round(Math.random() * (NAMES.length - 1))] + ' ' + - NAMES[Math.round(Math.random() * (NAMES.length - 1))].charAt(0) + '.'; - - return { - id : (this.data.length + 1).toString(), - name : name, - progress: Math.round(Math.random() * 100).toString(), - color : COLORS[Math.round(Math.random() * (COLORS.length - 1))] - }; - } -} - -/** - * Data source to provide what data should be rendered in the table. Note that the data source - * can retrieve its data in any way. In this case, the data source is provided a reference - * to a common data base, ExampleDatabase. It is not the data source's responsibility to manage - * the underlying data. Instead, it only needs to take the data and send the table exactly what - * should be rendered. - */ -export class ExampleDataSource extends DataSource -{ - constructor(private _exampleDatabase: ExampleDatabase, private _sort: MatSort) + position: 4, + name : 'Beryllium', + weight : 9.0122, + symbol : 'Be' + }, { - super(); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable + position: 5, + name : 'Boron', + weight : 10.811, + symbol : 'B' + }, { - const displayDataChanges = [ - this._exampleDatabase.dataChange, - this._sort.sortChange - ]; - - return Observable.merge(...displayDataChanges).map(() => { - return this.getSortedData(); - }); - } - - disconnect() + position: 6, + name : 'Carbon', + weight : 12.0107, + symbol : 'C' + }, { - } - - /** Returns a sorted copy of the database data. */ - getSortedData(): UserData[] + position: 7, + name : 'Nitrogen', + weight : 14.0067, + symbol : 'N' + }, { - const data = this._exampleDatabase.data.slice(); - if ( !this._sort.active || this._sort.direction == '' ) - { - return data; - } - - return data.sort((a, b) => { - let propertyA: number | string = ''; - let propertyB: number | string = ''; - - switch ( this._sort.active ) - { - case 'userId': - [propertyA, propertyB] = [a.id, b.id]; - break; - case 'userName': - [propertyA, propertyB] = [a.name, b.name]; - break; - case 'progress': - [propertyA, propertyB] = [a.progress, b.progress]; - break; - case 'color': - [propertyA, propertyB] = [a.color, b.color]; - break; - } - - let valueA = isNaN(+propertyA) ? propertyA : +propertyA; - let valueB = isNaN(+propertyB) ? propertyB : +propertyB; - - return (valueA < valueB ? -1 : 1) * (this._sort.direction == 'asc' ? 1 : -1); - }); + position: 8, + name : 'Oxygen', + weight : 15.9994, + symbol : 'O' + }, + { + position: 9, + name : 'Fluorine', + weight : 18.9984, + symbol : 'F' + }, + { + position: 10, + name : 'Neon', + weight : 20.1797, + symbol : 'Ne' + }, + { + position: 11, + name : 'Sodium', + weight : 22.9897, + symbol : 'Na' + }, + { + position: 12, + name : 'Magnesium', + weight : 24.305, + symbol : 'Mg' + }, + { + position: 13, + name : 'Aluminum', + weight : 26.9815, + symbol : 'Al' + }, + { + position: 14, + name : 'Silicon', + weight : 28.0855, + symbol : 'Si' + }, + { + position: 15, + name : 'Phosphorus', + weight : 30.9738, + symbol : 'P' + }, + { + position: 16, + name : 'Sulfur', + weight : 32.065, + symbol : 'S' + }, + { + position: 17, + name : 'Chlorine', + weight : 35.453, + symbol : 'Cl' + }, + { + position: 18, + name : 'Argon', + weight : 39.948, + symbol : 'Ar' + }, + { + position: 19, + name : 'Potassium', + weight : 39.0983, + symbol : 'K' + }, + { + position: 20, + name : 'Calcium', + weight : 40.078, + symbol : 'Ca' } -} +]; diff --git a/src/assets/angular-material-examples/toolbar-multirow/toolbar-multirow-example.html b/src/assets/angular-material-examples/toolbar-multirow/toolbar-multirow-example.html index 5ee4b8b7..bf25e3a0 100644 --- a/src/assets/angular-material-examples/toolbar-multirow/toolbar-multirow-example.html +++ b/src/assets/angular-material-examples/toolbar-multirow/toolbar-multirow-example.html @@ -1,5 +1,7 @@ - Custom Toolbar + + Custom Toolbar + Second Line From 2511a03b666c959175e579baffb13fb1299947f5 Mon Sep 17 00:00:00 2001 From: Sercan Yemen Date: Sat, 18 Nov 2017 00:45:42 +0300 Subject: [PATCH 4/7] Increased the Fuse version number + Updated ngx-charts and ngx-datatables + added rxjs imports for the various search --- package-lock.json | 907 +++++++++++++++++- package.json | 6 +- .../chat/sidenavs/left/user/user.component.ts | 1 + .../apps/contacts/contacts.component.ts | 1 + .../todo-details/todo-details.component.ts | 1 + .../main/content/apps/todo/todo.component.ts | 3 +- .../main/content/pages/faq/faq.component.ts | 1 + 7 files changed, 915 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 66e51c25..2bb35655 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "fuse2", - "version": "1.2.1", + "version": "1.2.2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1276,6 +1276,7 @@ "requires": { "anymatch": "1.3.2", "async-each": "1.0.1", + "fsevents": "1.1.3", "glob-parent": "2.0.0", "inherits": "2.0.3", "is-binary-path": "1.0.1", @@ -3438,6 +3439,910 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, + "fsevents": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", + "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", + "dev": true, + "optional": true, + "requires": { + "nan": "2.7.0", + "node-pre-gyp": "0.6.39" + }, + "dependencies": { + "abbrev": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "ajv": { + "version": "4.11.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.2.9" + } + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "assert-plus": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws-sign2": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true, + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "block-stream": { + "version": "0.0.9", + "bundled": true, + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "boom": { + "version": "2.10.1", + "bundled": true, + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } + }, + "buffer-shims": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true + }, + "co": { + "version": "4.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "cryptiles": { + "version": "2.0.5", + "bundled": true, + "dev": true, + "requires": { + "boom": "2.10.1" + } + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true, + "dev": true, + "optional": true + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "extsprintf": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "optional": true + }, + "form-data": { + "version": "2.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.15" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "fstream": { + "version": "1.0.11", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.1" + } + }, + "fstream-ignore": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fstream": "1.0.11", + "inherits": "2.0.3", + "minimatch": "3.0.4" + } + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "1.1.1", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "har-schema": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "hawk": { + "version": "3.1.3", + "bundled": true, + "dev": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "bundled": true, + "dev": true + }, + "http-signature": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.0", + "sshpk": "1.13.0" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.4", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "jodid25519": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "jsprim": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.0.2", + "json-schema": "0.2.3", + "verror": "1.3.6" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "mime-db": { + "version": "1.27.0", + "bundled": true, + "dev": true + }, + "mime-types": { + "version": "2.1.15", + "bundled": true, + "dev": true, + "requires": { + "mime-db": "1.27.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "node-pre-gyp": { + "version": "0.6.39", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "1.0.2", + "hawk": "3.1.3", + "mkdirp": "0.5.1", + "nopt": "4.0.1", + "npmlog": "4.1.0", + "rc": "1.2.1", + "request": "2.81.0", + "rimraf": "2.6.1", + "semver": "5.3.0", + "tar": "2.2.1", + "tar-pack": "3.4.0" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1.1.0", + "osenv": "0.1.4" + } + }, + "npmlog": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "performance-now": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true, + "dev": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true + }, + "qs": { + "version": "6.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.2.9", + "bundled": true, + "dev": true, + "requires": { + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "1.0.1", + "util-deprecate": "1.0.2" + } + }, + "request": { + "version": "2.81.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.15", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.0.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.0.1" + } + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "dev": true, + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.0.1", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sntp": { + "version": "1.0.9", + "bundled": true, + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "sshpk": { + "version": "1.13.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jodid25519": "1.0.2", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "2.2.1", + "bundled": true, + "dev": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tar-pack": { + "version": "3.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "2.6.8", + "fstream": "1.0.11", + "fstream-ignore": "1.0.5", + "once": "1.4.0", + "readable-stream": "2.2.9", + "rimraf": "2.6.1", + "tar": "2.2.1", + "uid-number": "0.0.6" + } + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "dev": true, + "optional": true + }, + "uid-number": { + "version": "0.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "uuid": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "verror": { + "version": "1.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "extsprintf": "1.0.2" + } + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + } + } + }, "fstream": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", diff --git a/package.json b/package.json index 2ea0ab4e..ecb3110a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fuse2", - "version": "1.2.1", + "version": "1.2.2", "license": "", "scripts": { "ng": "ng", @@ -30,8 +30,8 @@ "@angular/platform-browser-dynamic": "5.0.2", "@angular/router": "5.0.2", "@ngx-translate/core": "8.0.0", - "@swimlane/ngx-charts": "6.1.0", - "@swimlane/ngx-datatable": "11.0.3", + "@swimlane/ngx-charts": "7.0.0", + "@swimlane/ngx-datatable": "11.0.4", "@withinpixels/ngx-dnd": "3.1.0", "angular-calendar": "0.21.3", "angular-in-memory-web-api": "0.5.1", diff --git a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.ts b/src/app/main/content/apps/chat/sidenavs/left/user/user.component.ts index 9eaa25e2..d0db48fd 100644 --- a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.ts +++ b/src/app/main/content/apps/chat/sidenavs/left/user/user.component.ts @@ -1,6 +1,7 @@ import { Component, OnDestroy, OnInit } from '@angular/core'; import { ChatService } from '../../../chat.service'; import { FormControl, FormGroup } from '@angular/forms'; +import 'rxjs/add/operator/distinctUntilChanged'; @Component({ selector : 'fuse-chat-user-sidenav', diff --git a/src/app/main/content/apps/contacts/contacts.component.ts b/src/app/main/content/apps/contacts/contacts.component.ts index e38eb903..d9639cae 100644 --- a/src/app/main/content/apps/contacts/contacts.component.ts +++ b/src/app/main/content/apps/contacts/contacts.component.ts @@ -4,6 +4,7 @@ import { fuseAnimations } from '../../../../core/animations'; import { FormControl, FormGroup } from '@angular/forms'; import { FuseContactsContactFormDialogComponent } from './contact-form/contact-form.component'; import { MatDialog } from '@angular/material'; +import 'rxjs/add/operator/distinctUntilChanged'; @Component({ selector : 'fuse-contacts', diff --git a/src/app/main/content/apps/todo/todo-details/todo-details.component.ts b/src/app/main/content/apps/todo/todo-details/todo-details.component.ts index 07e150c1..27c2ef83 100644 --- a/src/app/main/content/apps/todo/todo-details/todo-details.component.ts +++ b/src/app/main/content/apps/todo/todo-details/todo-details.component.ts @@ -5,6 +5,7 @@ import { Subscription } from 'rxjs/Subscription'; import { FormBuilder, FormGroup } from '@angular/forms'; import { FuseUtils } from '../../../../../core/fuseUtils'; import { fuseAnimations } from '../../../../../core/animations'; +import 'rxjs/add/operator/distinctUntilChanged'; @Component({ selector : 'fuse-todo-details', diff --git a/src/app/main/content/apps/todo/todo.component.ts b/src/app/main/content/apps/todo/todo.component.ts index 4511b929..c9946d0f 100644 --- a/src/app/main/content/apps/todo/todo.component.ts +++ b/src/app/main/content/apps/todo/todo.component.ts @@ -1,9 +1,10 @@ -import { Component, HostBinding, OnDestroy, OnInit } from '@angular/core'; +import { Component, OnDestroy, OnInit } from '@angular/core'; import { Subscription } from 'rxjs/Subscription'; import { TodoService } from './todo.service'; import { FormControl } from '@angular/forms'; import { Todo } from './todo.model'; import { fuseAnimations } from '../../../../core/animations'; +import 'rxjs/add/operator/distinctUntilChanged'; @Component({ selector : 'fuse-todo', diff --git a/src/app/main/content/pages/faq/faq.component.ts b/src/app/main/content/pages/faq/faq.component.ts index 4fb7dc81..faf506de 100644 --- a/src/app/main/content/pages/faq/faq.component.ts +++ b/src/app/main/content/pages/faq/faq.component.ts @@ -3,6 +3,7 @@ import { FormControl } from '@angular/forms'; import { Subscription } from 'rxjs/Subscription'; import { FaqService } from './faq.service'; import { FuseUtils } from '../../../../core/fuseUtils'; +import 'rxjs/add/operator/distinctUntilChanged'; @Component({ selector : 'fuse-faq', From 297bb95a2e6d7eb33cf7204c46601389e23814a8 Mon Sep 17 00:00:00 2001 From: mustafahlvc Date: Sat, 18 Nov 2017 01:43:08 +0300 Subject: [PATCH 5/7] Temporary aot build fix for @swimlane/ngx-charts --- package-lock.json | 938 ++-------------------------------------------- package.json | 2 +- tsconfig.json | 6 + 3 files changed, 34 insertions(+), 912 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2bb35655..cd0036aa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -274,14 +274,35 @@ } }, "@swimlane/ngx-charts": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@swimlane/ngx-charts/-/ngx-charts-6.1.0.tgz", - "integrity": "sha512-918ksaRl8RvGWGOjpUCywTS1MnLTqHki53XXibyhZkmHGSP5yLkcArBAFhFLvtQTTbuX8KSz2WFKxwaJ3JuJFw==" + "version": "github:HitomiTenshi/ngx-charts#77f862a540b27cb14e0a662a4118d3195c1af4d9", + "requires": { + "d3-array": "1.2.1", + "d3-brush": "1.0.4", + "d3-color": "1.0.3", + "d3-force": "1.1.0", + "d3-format": "1.2.0", + "d3-hierarchy": "1.1.5", + "d3-interpolate": "1.1.5", + "d3-scale": "1.0.6", + "d3-selection": "1.1.0", + "d3-shape": "1.2.0", + "d3-time-format": "2.1.0" + }, + "dependencies": { + "d3-time-format": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.0.tgz", + "integrity": "sha512-mqTsfDTylgwE3YE/VNs9oB2OGX274fO0B5j1irbgLQI+X3FPoJg25pesNxrcdZ2nBeRx/6sHDJlDyMIjWL0BGQ==", + "requires": { + "d3-time": "1.0.7" + } + } + } }, "@swimlane/ngx-datatable": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@swimlane/ngx-datatable/-/ngx-datatable-11.0.3.tgz", - "integrity": "sha512-feJ9Ep0xddgC1IuNEqxWcTnoSPc3drzY+Bn27RFq+ztXYf3mHsLMxerMqFyVaLPnMrZKttZ7MX48gXzOkSVavw==" + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/@swimlane/ngx-datatable/-/ngx-datatable-11.0.4.tgz", + "integrity": "sha512-c/IA4wSeauLhImwkeNYpgB/QZBOPfHCBYXYie18yySUhBxBkY13mss1v0OsR17O0BJgrl79wq9uNs/FKLBo7aQ==" }, "@types/jasmine": { "version": "2.5.54", @@ -1276,7 +1297,6 @@ "requires": { "anymatch": "1.3.2", "async-each": "1.0.1", - "fsevents": "1.1.3", "glob-parent": "2.0.0", "inherits": "2.0.3", "is-binary-path": "1.0.1", @@ -3439,910 +3459,6 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, - "fsevents": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", - "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", - "dev": true, - "optional": true, - "requires": { - "nan": "2.7.0", - "node-pre-gyp": "0.6.39" - }, - "dependencies": { - "abbrev": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "ajv": { - "version": "4.11.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "aproba": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "1.0.0", - "readable-stream": "2.2.9" - } - }, - "asn1": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "assert-plus": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "aws4": { - "version": "1.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "balanced-match": { - "version": "0.4.2", - "bundled": true, - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "0.14.5" - } - }, - "block-stream": { - "version": "0.0.9", - "bundled": true, - "dev": true, - "requires": { - "inherits": "2.0.3" - } - }, - "boom": { - "version": "2.10.1", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "brace-expansion": { - "version": "1.1.7", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "0.4.2", - "concat-map": "0.0.1" - } - }, - "buffer-shims": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "dev": true, - "optional": true - }, - "co": { - "version": "4.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "combined-stream": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "requires": { - "delayed-stream": "1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "cryptiles": { - "version": "2.0.5", - "bundled": true, - "dev": true, - "requires": { - "boom": "2.10.1" - } - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "debug": { - "version": "2.6.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.4.2", - "bundled": true, - "dev": true, - "optional": true - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "ecc-jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "extend": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "extsprintf": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true, - "dev": true, - "optional": true - }, - "form-data": { - "version": "2.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.5", - "mime-types": "2.1.15" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "fstream": { - "version": "1.0.11", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.1" - } - }, - "fstream-ignore": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fstream": "1.0.11", - "inherits": "2.0.3", - "minimatch": "3.0.4" - } - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "1.1.1", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - }, - "graceful-fs": { - "version": "4.1.11", - "bundled": true, - "dev": true - }, - "har-schema": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "har-validator": { - "version": "4.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "hawk": { - "version": "3.1.3", - "bundled": true, - "dev": true, - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "hoek": { - "version": "2.16.3", - "bundled": true, - "dev": true - }, - "http-signature": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.0", - "sshpk": "1.13.0" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "ini": { - "version": "1.3.4", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "jodid25519": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "0.1.1" - } - }, - "jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true, - "dev": true, - "optional": true - }, - "json-stable-stringify": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsonify": "0.0.0" - } - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "jsonify": { - "version": "0.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "jsprim": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.0.2", - "json-schema": "0.2.3", - "verror": "1.3.6" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "mime-db": { - "version": "1.27.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.15", - "bundled": true, - "dev": true, - "requires": { - "mime-db": "1.27.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "node-pre-gyp": { - "version": "0.6.39", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "1.0.2", - "hawk": "3.1.3", - "mkdirp": "0.5.1", - "nopt": "4.0.1", - "npmlog": "4.1.0", - "rc": "1.2.1", - "request": "2.81.0", - "rimraf": "2.6.1", - "semver": "5.3.0", - "tar": "2.2.1", - "tar-pack": "3.4.0" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1.1.0", - "osenv": "0.1.4" - } - }, - "npmlog": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "oauth-sign": { - "version": "0.8.2", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1.0.2" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "performance-now": { - "version": "0.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "1.0.7", - "bundled": true, - "dev": true - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "0.4.2", - "ini": "1.3.4", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.2.9", - "bundled": true, - "dev": true, - "requires": { - "buffer-shims": "1.0.0", - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "1.0.1", - "util-deprecate": "1.0.2" - } - }, - "request": { - "version": "2.81.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.6.0", - "caseless": "0.12.0", - "combined-stream": "1.0.5", - "extend": "3.0.1", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.15", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.0.1", - "stringstream": "0.0.5", - "tough-cookie": "2.3.2", - "tunnel-agent": "0.6.0", - "uuid": "3.0.1" - } - }, - "rimraf": { - "version": "2.6.1", - "bundled": true, - "dev": true, - "requires": { - "glob": "7.1.2" - } - }, - "safe-buffer": { - "version": "5.0.1", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.3.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sntp": { - "version": "1.0.9", - "bundled": true, - "dev": true, - "requires": { - "hoek": "2.16.3" - } - }, - "sshpk": { - "version": "1.13.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.1", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.1", - "getpass": "0.1.7", - "jodid25519": "1.0.2", - "jsbn": "0.1.1", - "tweetnacl": "0.14.5" - }, - "dependencies": { - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" - } - }, - "string_decoder": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "stringstream": { - "version": "0.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "2.2.1", - "bundled": true, - "dev": true, - "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" - } - }, - "tar-pack": { - "version": "3.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "2.6.8", - "fstream": "1.0.11", - "fstream-ignore": "1.0.5", - "once": "1.4.0", - "readable-stream": "2.2.9", - "rimraf": "2.6.1", - "tar": "2.2.1", - "uid-number": "0.0.6" - } - }, - "tough-cookie": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "punycode": "1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "dev": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "uuid": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "verror": { - "version": "1.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "extsprintf": "1.0.2" - } - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "1.0.2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - } - } - }, "fstream": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", diff --git a/package.json b/package.json index ecb3110a..032aa0e7 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@angular/platform-browser-dynamic": "5.0.2", "@angular/router": "5.0.2", "@ngx-translate/core": "8.0.0", - "@swimlane/ngx-charts": "7.0.0", + "@swimlane/ngx-charts": "github:HitomiTenshi/ngx-charts#angular5", "@swimlane/ngx-datatable": "11.0.4", "@withinpixels/ngx-dnd": "3.1.0", "angular-calendar": "0.21.3", diff --git a/tsconfig.json b/tsconfig.json index a6c016bf..d08dfe1b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -15,5 +15,11 @@ "es2017", "dom" ] + }, + "angularCompilerOptions": { + "genDir": "release/", + "strictMetadataEmit": true, + "skipTemplateCodegen": true, + "annotationsAs": "decorators" } } From 5a9cd362827727ae528a9b9214b249a24d09b00d Mon Sep 17 00:00:00 2001 From: Sercan Yemen Date: Mon, 27 Nov 2017 14:28:08 +0300 Subject: [PATCH 6/7] Increased the Fuse version number + Updated Angular, Angular Material and Flex Layout + Updated various components for better Angular5 support + Fixed: Contacts app various issues + Fixed: Duplicate content in Profile page tabs + Fixed: Folded status of the Navbar shouldn't brake the layout if Horizontal Navbar is active --- package-lock.json | 2370 ++++++++++++----- package.json | 48 +- .../contact-form/contact-form.component.scss | 6 + .../contact-list/contact-list.component.scss | 9 +- .../apps/contacts/contacts.component.scss | 8 - .../apps/contacts/contacts.component.ts | 20 +- .../pages/profile/profile.component.html | 6 +- .../profile/tabs/about/about.component.html | 21 +- .../photos-videos.component.html | 5 +- .../tabs/timeline/timeline.component.html | 12 +- .../horizontal/navbar-horizontal.component.ts | 12 +- .../vertical/navbar-vertical.component.scss | 2 +- 12 files changed, 1769 insertions(+), 750 deletions(-) diff --git a/package-lock.json b/package-lock.json index cd0036aa..15ad952c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "fuse2", - "version": "1.2.2", + "version": "1.2.3", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -10,70 +10,70 @@ "integrity": "sha512-3bdfvkWDmJszpj/F6Fzgv7sks0cs/cUEQPfs37tcJFz3jc62SsXy4TGb/WJT8FpH2nSGE6DonP8lXuFxB0lblQ==" }, "@angular-devkit/build-optimizer": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.0.32.tgz", - "integrity": "sha512-j09JdaFoRukEllfmH+TUJpe2ujUzTSj/szqYGHWVBilajwnNQh7f0A9v1R27mX+2di4x8tXuvaBgwvdEZBv32w==", + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.0.33.tgz", + "integrity": "sha512-qdGAwI3Yd3QIJ4FJsJcAyBVThUVEGKqSm0E3njSVSQkEatjvxHXNDvexBieQDPiUhjYG2Yyobor8nW5EMxPieQ==", "dev": true, "requires": { "loader-utils": "1.1.0", "source-map": "0.5.7", "typescript": "2.4.2", - "webpack-sources": "1.0.1" + "webpack-sources": "1.1.0" } }, "@angular-devkit/core": { - "version": "0.0.20", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.0.20.tgz", - "integrity": "sha512-lg5BvMxOfbVD//SOQvpq6TPIKTXYNMj0I9N/kfXbXkUGgiBGFLyFMf2fc+qNvDoa7lulKMPT8OJWS1YlGt93eg==", + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.0.21.tgz", + "integrity": "sha512-6cfjRE6W+ZOxE8Xk3PFRA8kJJK2sJhd5ZGQ/BsVYyz2cxN8Zb3Gmu1wxg7l5TiPbOjqfn797tBEpKGBXJV85xw==", "dev": true, "requires": { "source-map": "0.5.7" } }, "@angular-devkit/schematics": { - "version": "0.0.35", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.0.35.tgz", - "integrity": "sha512-+qGUWhmMpHqHkYKMk1yKQDjXb/vqXGkzbMiRs/u5rSnlrH+/TzkCO0UsM7/p9WPcModuDxkf5FItpw/AgdcPeQ==", + "version": "0.0.37", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.0.37.tgz", + "integrity": "sha512-CF7+W4Flkvd6z4d/dvH0IP5PV8gSBHr4lE7eyScDpuet7s+I4b6SYh5bWDEvyDF+hZwDTFDyrHHj77kyeJu+8g==", "dev": true, "requires": { - "@angular-devkit/core": "0.0.20", + "@angular-devkit/core": "0.0.21", "@ngtools/json-schema": "1.1.0", "minimist": "1.2.0", "rxjs": "5.5.2" } }, "@angular/animations": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.0.2.tgz", - "integrity": "sha1-bTpzWk+Fw4jaa6P3ddu+YUBKwC0=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.0.3.tgz", + "integrity": "sha1-8IsHAHsUn6EmecNG+lWCD1RLGeA=", "requires": { "tslib": "1.8.0" } }, "@angular/cdk": { - "version": "5.0.0-rc0", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-5.0.0-rc0.tgz", - "integrity": "sha512-wZg/mzHisiTieVt7Q/YNPB+r07PHvjoAT3+0mwyIP7wuC00W8BJLPhTZd/tIM5q7Nd69kuA1HSx1qLkcmlCZkw==", + "version": "5.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-5.0.0-rc.1.tgz", + "integrity": "sha512-thVOUphT2cpKaFQcBFfueWaNU8+C0g4FPWhanzXbT239tFJQzp76ynvq17ePrGiJNomm8H3YHYkMNiaiYX98dg==", "requires": { "tslib": "1.8.0" } }, "@angular/cli": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-1.5.2.tgz", - "integrity": "sha512-OcHYTjHKoUohN6WaCWkoq5Jud1auYTh/LMtqelP1XgpszYrwfZguwNbKvwddqhrs8RPgeVM0owI4hK/sgYA07Q==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-1.5.4.tgz", + "integrity": "sha512-Z5nltoJL09rr3dw9qFzcJ3YQEP63jqnhdmIxGcU5zQ7DyV9ptNm0slhL17d9AtqI/eIN4TshvOkfd72+oEVSIA==", "dev": true, "requires": { - "@angular-devkit/build-optimizer": "0.0.32", - "@angular-devkit/schematics": "0.0.35", + "@angular-devkit/build-optimizer": "0.0.33", + "@angular-devkit/schematics": "0.0.37", "@ngtools/json-schema": "1.1.0", - "@ngtools/webpack": "1.8.2", - "@schematics/angular": "0.1.0", + "@ngtools/webpack": "1.8.4", + "@schematics/angular": "0.1.7", "autoprefixer": "6.7.7", "chalk": "2.2.2", "circular-dependency-plugin": "3.0.0", - "common-tags": "1.4.0", - "copy-webpack-plugin": "4.2.0", + "common-tags": "1.5.1", + "copy-webpack-plugin": "4.2.3", "core-object": "3.1.5", "css-loader": "0.28.7", "cssnano": "3.10.0", @@ -94,13 +94,13 @@ "memory-fs": "0.4.1", "minimatch": "3.0.4", "node-modules-path": "1.0.1", - "node-sass": "4.5.3", + "node-sass": "4.7.2", "nopt": "4.0.1", "opn": "5.1.0", "portfinder": "1.0.13", "postcss-custom-properties": "6.2.0", - "postcss-loader": "1.3.3", - "postcss-url": "5.1.2", + "postcss-loader": "2.0.9", + "postcss-url": "7.3.0", "raw-loader": "0.5.1", "resolve": "1.5.0", "rxjs": "5.5.2", @@ -116,51 +116,34 @@ "url-loader": "0.6.2", "webpack": "3.8.1", "webpack-concat-plugin": "1.4.0", - "webpack-dev-middleware": "1.12.0", - "webpack-dev-server": "2.9.3", + "webpack-dev-middleware": "1.12.1", + "webpack-dev-server": "2.9.4", "webpack-merge": "4.1.1", - "webpack-sources": "1.0.1", + "webpack-sources": "1.1.0", "webpack-subresource-integrity": "1.0.1", "zone.js": "0.8.18" - }, - "dependencies": { - "@ngtools/webpack": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-1.8.2.tgz", - "integrity": "sha512-JgG6foy0Npf7dG1fWCF3Gvvtp43FfpYtTTfNwrJPujcIfFeEfBKgzSPj3nW/bx2YzGjxRqmLXBzqVO5kaYcAqg==", - "dev": true, - "requires": { - "chalk": "2.2.2", - "enhanced-resolve": "3.4.1", - "loader-utils": "1.1.0", - "magic-string": "0.22.4", - "semver": "5.4.1", - "source-map": "0.5.7", - "tree-kill": "1.2.0" - } - } } }, "@angular/common": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.0.2.tgz", - "integrity": "sha1-2AMiFT+qqazKkVUmOKPkfcI3umo=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.0.3.tgz", + "integrity": "sha1-mwuHTgyMsIjXx94q9ywsPz69ALs=", "requires": { "tslib": "1.8.0" } }, "@angular/compiler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.0.2.tgz", - "integrity": "sha1-2GXUNyJ83RYYP4eQCjiJPY9fsTk=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.0.3.tgz", + "integrity": "sha1-RYF8mjKxsQPAMHsPVWYPUw9KBqo=", "requires": { "tslib": "1.8.0" } }, "@angular/compiler-cli": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.0.2.tgz", - "integrity": "sha1-WbFnQTKF0ZX5ndHZvnP3D+2zNCk=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.0.3.tgz", + "integrity": "sha1-gg/pX1ZTwUGK2aycqegZqHnM5K4=", "dev": true, "requires": { "chokidar": "1.7.0", @@ -170,79 +153,79 @@ } }, "@angular/core": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.0.2.tgz", - "integrity": "sha1-+7VpHRr37GKSSAHIlDlVaTVihUo=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.0.3.tgz", + "integrity": "sha1-JWZAD2cTvxw59+ALwDpjKAqH5ms=", "requires": { "tslib": "1.8.0" } }, "@angular/flex-layout": { - "version": "2.0.0-beta.10", - "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.10.tgz", - "integrity": "sha512-Y4f+Gw8pjDBwb9IykSTGiYRfVyzLfzTxFvRzKuDYEGUFi2UG3zOmAr2OzkpA/+K4mE5zQ+hYkBJaJD+DXAd/6w==", + "version": "2.0.0-beta.10-4905443", + "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.10-4905443.tgz", + "integrity": "sha512-jjr6mQ3X2vdEQbsyHD/mz1hfTBUUEOZVLFWEz/sbNoeU7uiA4lvqdp/ASrkZydGJHmTDUYrbBE/9kx0lherZ8Q==", "requires": { "tslib": "1.8.0" } }, "@angular/forms": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.0.2.tgz", - "integrity": "sha1-9Mb/JdUXkPYydi6xxQd00XyM9GU=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.0.3.tgz", + "integrity": "sha1-IH+Swr2JZg3aWFjvWNHqwfLK8ac=", "requires": { "tslib": "1.8.0" } }, "@angular/http": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.0.2.tgz", - "integrity": "sha1-yzrxUh4U8ECqjKFVTij435tW/eg=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.0.3.tgz", + "integrity": "sha1-o7mkJHxLd0VuSVSWVdTB0YWeB10=", "requires": { "tslib": "1.8.0" } }, "@angular/language-service": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-5.0.2.tgz", - "integrity": "sha1-q4ZjZx+WJ4NT+18eY3agdQYZjwc=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-5.0.3.tgz", + "integrity": "sha1-6MIVgeBGTqUDY+jw1J17an5rPL8=", "dev": true }, "@angular/material": { - "version": "5.0.0-rc0", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-5.0.0-rc0.tgz", - "integrity": "sha512-ZW9gy3c8l2NbFfX9DRYSW+i67pPoL9DZoMCb16STQlhdDfwwAWNpjGF0etXkXw30hDnRCMGVVJVU+45cNXJspA==", + "version": "5.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-5.0.0-rc.1.tgz", + "integrity": "sha512-PQAVyJX6oUnMo+rb4Q06gMCtzFuDAhmhu7rVSUv9gKHWPI6GHgw9h4eM9pThCH7bpXjfrtGRA7ZP8tBLSJqNRA==", "requires": { "tslib": "1.8.0" } }, "@angular/material-moment-adapter": { - "version": "5.0.0-rc0", - "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-5.0.0-rc0.tgz", - "integrity": "sha512-NI9Q8555vbm6RvBltW0rzyaKwthpUmjtoGtSQePp6TI0ZtROtGAwH/KCcNM3FsSqvQuxBc5jq0HId2wvHknxEw==", + "version": "5.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-5.0.0-rc.1.tgz", + "integrity": "sha512-8axvpcQtEnT9kcU9MwKiBg2WIoQjeT33d2WTYrm19VHBZ8bsfXbsuMkmpme2yDng5kvcn2YKQpYlWs8r8dirKw==", "requires": { "tslib": "1.8.0" } }, "@angular/platform-browser": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.0.2.tgz", - "integrity": "sha1-0Quv8DwkN/MIhHnBc9MK/fCxJKk=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.0.3.tgz", + "integrity": "sha1-SshyQEoqgWLdKKWxZCOLdr9eEmE=", "requires": { "tslib": "1.8.0" } }, "@angular/platform-browser-dynamic": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.0.2.tgz", - "integrity": "sha1-iYSn4vxPimdg+aBdlaK7n2sLf5o=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.0.3.tgz", + "integrity": "sha1-vm3PA6BPpRxqBIS0Dl8afX5UzIc=", "requires": { "tslib": "1.8.0" } }, "@angular/router": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.0.2.tgz", - "integrity": "sha1-vhBPsJG87EGN09hU+K9koD5cZ50=", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.0.3.tgz", + "integrity": "sha1-YWzGp64zV1tU5hO3CvXH8pHIzR4=", "requires": { "tslib": "1.8.0" } @@ -259,50 +242,57 @@ "integrity": "sha1-w6DFRNYjkqzCgTpCyKDcb1j4aSI=", "dev": true }, + "@ngtools/webpack": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-1.8.4.tgz", + "integrity": "sha512-/1d1aJ/W/VV2DnLDd2WMF5NV3lvYbG4euNd9GbMD4HhOfDJyEmBkl2DJ3+iPF5lOpR27DQnhKV64c8S7enxLBQ==", + "dev": true, + "requires": { + "chalk": "2.2.2", + "enhanced-resolve": "3.4.1", + "loader-utils": "1.1.0", + "magic-string": "0.22.4", + "semver": "5.4.1", + "source-map": "0.5.7", + "tree-kill": "1.2.0" + } + }, "@ngx-translate/core": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-8.0.0.tgz", "integrity": "sha1-dR/WtRLYDzp0jS3o38lt/vopr+A=" }, "@schematics/angular": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-0.1.0.tgz", - "integrity": "sha512-+Yy72J55uImsROxwyyEMso+HJIvx7+ffT8o8HzdNOZyLg4jj7G/ZDiCsCmhRtTYOmOof4OqvF2VecJyXVi0oHA==", + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-0.1.7.tgz", + "integrity": "sha512-3dZbRkM7akVCazr9T7gX+BOKri1Mn/N36o36Nojf8LSRxMo7QSJ9s651RPc5snYqpbKrTXZXUO4xKknAf4x+Ng==", "dev": true, "requires": { - "@angular-devkit/core": "0.0.20" + "@angular-devkit/core": "0.0.21" } }, "@swimlane/ngx-charts": { - "version": "github:HitomiTenshi/ngx-charts#77f862a540b27cb14e0a662a4118d3195c1af4d9", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@swimlane/ngx-charts/-/ngx-charts-7.0.1.tgz", + "integrity": "sha512-YZNhRpMjhLpbaJK8iwPDj79Czusw12YNGGnrlbn3iwMhH8e3xkZVfzWhRA9RpfbVKo+S7qMhFTSlOhePQ61Zbg==", "requires": { "d3-array": "1.2.1", "d3-brush": "1.0.4", "d3-color": "1.0.3", "d3-force": "1.1.0", - "d3-format": "1.2.0", + "d3-format": "1.2.1", "d3-hierarchy": "1.1.5", - "d3-interpolate": "1.1.5", - "d3-scale": "1.0.6", - "d3-selection": "1.1.0", + "d3-interpolate": "1.1.6", + "d3-scale": "1.0.7", + "d3-selection": "1.2.0", "d3-shape": "1.2.0", - "d3-time-format": "2.1.0" - }, - "dependencies": { - "d3-time-format": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.0.tgz", - "integrity": "sha512-mqTsfDTylgwE3YE/VNs9oB2OGX274fO0B5j1irbgLQI+X3FPoJg25pesNxrcdZ2nBeRx/6sHDJlDyMIjWL0BGQ==", - "requires": { - "d3-time": "1.0.7" - } - } + "d3-time-format": "2.1.1" } }, "@swimlane/ngx-datatable": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/@swimlane/ngx-datatable/-/ngx-datatable-11.0.4.tgz", - "integrity": "sha512-c/IA4wSeauLhImwkeNYpgB/QZBOPfHCBYXYie18yySUhBxBkY13mss1v0OsR17O0BJgrl79wq9uNs/FKLBo7aQ==" + "version": "11.1.4", + "resolved": "https://registry.npmjs.org/@swimlane/ngx-datatable/-/ngx-datatable-11.1.4.tgz", + "integrity": "sha512-vNuMySQw8p+kweB7qBiSuBWLv14kOK+PqKkO9jx/+vYROZLEOwtzZ1NVasqBMox+/JpyU2p8fUYJDyRIEUR1xg==" }, "@types/jasmine": { "version": "2.5.54", @@ -332,9 +322,9 @@ "dev": true }, "@types/selenium-webdriver": { - "version": "2.53.42", - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.42.tgz", - "integrity": "sha1-dMt3+2BS7a/yqJhN2v2I1BnyXKw=", + "version": "2.53.43", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz", + "integrity": "sha512-UBYHWph6P3tutkbXpW6XYg9ZPbTKjw/YC2hGG1/GEvWwTbvezBUv3h+mmUFw79T3RFPnmedpiXdOBbXX+4l0jg==", "dev": true }, "@withinpixels/ngx-dnd": { @@ -415,9 +405,9 @@ } }, "ajv": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.3.0.tgz", - "integrity": "sha1-RBT/dKUIecII7l/cgm4ywwNUnto=", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.0.tgz", + "integrity": "sha1-6yhAdG6dxIvV4GOjbj/UAMXqtak=", "dev": true, "requires": { "co": "4.6.0", @@ -456,13 +446,13 @@ "dev": true }, "angular-calendar": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/angular-calendar/-/angular-calendar-0.21.3.tgz", - "integrity": "sha512-cuAh5oXQ7gBUb8s+E8OUmtg5sSUBqBq/adWKHxVLJQa31C89qRhyrbTUuTJWTjNLMgGb6emubGuJS3VbrdY95Q==", + "version": "0.22.1", + "resolved": "https://registry.npmjs.org/angular-calendar/-/angular-calendar-0.22.1.tgz", + "integrity": "sha512-1CrNEvEqKTT8Mx66McNl4IjZwHopHlRWgMihu3U8Pct06kssivu968cBZ1M4bhKkVdd7J/Bwc94/PKR4Km64SQ==", "requires": { "angular-draggable-droppable": "1.1.1", "angular-resizable-element": "1.2.4", - "calendar-utils": "0.0.57", + "calendar-utils": "0.0.58", "date-fns": "1.29.0", "positioning": "1.3.1" } @@ -488,7 +478,7 @@ "integrity": "sha1-hja/narXD8NWMxJnB/+zPmhPurE=", "requires": { "marked": "0.3.6", - "prismjs": "1.8.3" + "prismjs": "1.8.4" } }, "ansi-html": { @@ -509,7 +499,7 @@ "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", "dev": true, "requires": { - "color-convert": "1.9.0" + "color-convert": "1.9.1" } }, "anymatch": { @@ -596,7 +586,7 @@ "dev": true, "requires": { "define-properties": "1.1.2", - "es-abstract": "1.9.0" + "es-abstract": "1.10.0" } }, "array-slice": { @@ -678,9 +668,9 @@ "dev": true }, "async": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", - "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", "dev": true, "requires": { "lodash": "4.17.4" @@ -717,7 +707,7 @@ "dev": true, "requires": { "browserslist": "1.7.7", - "caniuse-db": "1.0.30000757", + "caniuse-db": "1.0.30000772", "normalize-range": "0.1.2", "num2fraction": "1.2.2", "postcss": "5.2.18", @@ -927,9 +917,9 @@ "dev": true }, "binary-extensions": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.10.0.tgz", - "integrity": "sha1-muuabF6IY4qtFx4Wf1kAq+JINdA=", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", "dev": true }, "blob": { @@ -1005,7 +995,7 @@ "deep-equal": "1.0.1", "dns-equal": "1.0.0", "dns-txt": "2.0.2", - "multicast-dns": "6.1.1", + "multicast-dns": "6.2.1", "multicast-dns-service-types": "1.1.0" } }, @@ -1113,12 +1103,12 @@ } }, "browserify-zlib": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, "requires": { - "pako": "0.2.9" + "pako": "1.0.6" } }, "browserslist": { @@ -1127,7 +1117,7 @@ "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", "dev": true, "requires": { - "caniuse-db": "1.0.30000757", + "caniuse-db": "1.0.30000772", "electron-to-chromium": "1.3.27" } }, @@ -1173,9 +1163,9 @@ "dev": true }, "cacache": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.0.tgz", - "integrity": "sha512-s9h6I9NY3KcBjfuS28K6XNmrv/HNFSzlpVD6eYMXugZg3Y8jjI1lUzTeUMa0oKByCDtHfsIy5Ec7KgWRnC5gtg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.1.tgz", + "integrity": "sha512-dRHYcs9LvG9cHgdPzjiI+/eS7e1xRhULrcyOx04RZQsszNJXU2SL9CyG60yLnge282Qq5nwTv+ieK2fH+WPZmA==", "dev": true, "requires": { "bluebird": "3.5.1", @@ -1194,9 +1184,9 @@ } }, "calendar-utils": { - "version": "0.0.57", - "resolved": "https://registry.npmjs.org/calendar-utils/-/calendar-utils-0.0.57.tgz", - "integrity": "sha512-d3DMPFafv5JfJIvjnWuo+mgUYLkM9imIpSIsNmq6jj+AVIXwIzC5lwpNpUsNPP9mnUdpUNwDiJGLPlNGE6y1Mg==" + "version": "0.0.58", + "resolved": "https://registry.npmjs.org/calendar-utils/-/calendar-utils-0.0.58.tgz", + "integrity": "sha512-AWf6Tlt8fJAEuiFf/Cj+QpHtE7WvEHdbd+GECLXFrQ0Os2FKIGhodkOBLIb+vEReVnwZELeJISu55DGUO0+byw==" }, "callsite": { "version": "1.0.0", @@ -1237,15 +1227,15 @@ "dev": true, "requires": { "browserslist": "1.7.7", - "caniuse-db": "1.0.30000757", + "caniuse-db": "1.0.30000772", "lodash.memoize": "4.1.2", "lodash.uniq": "4.5.0" } }, "caniuse-db": { - "version": "1.0.30000757", - "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000757.tgz", - "integrity": "sha1-+iOjgyE9hX9KHmo77hezJmhQTL8=", + "version": "1.0.30000772", + "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000772.tgz", + "integrity": "sha1-UarokXaChureSj2DGep21qAbUSs=", "dev": true }, "caseless": { @@ -1297,6 +1287,7 @@ "requires": { "anymatch": "1.3.2", "async-each": "1.0.1", + "fsevents": "1.1.3", "glob-parent": "2.0.0", "inherits": "2.0.3", "is-binary-path": "1.0.1", @@ -1417,9 +1408,9 @@ } }, "clone": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "integrity": "sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.3.tgz", + "integrity": "sha1-KY1+IjFmD0DAA8LtMUDezz9TCF8=", "dev": true }, "clone-deep": { @@ -1456,9 +1447,9 @@ "dev": true }, "codelyzer": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-3.2.2.tgz", - "integrity": "sha512-VNvW9gRThsqRarEnLioiILd0Pdk0yCq/7cVgYvqHpC+3CHqfnrJfmXjoana7vzWfSis+9pODXofjCWX+nlU9Gw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-4.0.1.tgz", + "integrity": "sha512-MsOcaiLqcBK7hjHbfp9HZrflqWg5tD9A5qVSXkW208OJ8pkf63id8IiOjEiK/XU3o70W8tWbFKi1tAOwiJDMrQ==", "dev": true, "requires": { "app-root-path": "2.0.1", @@ -1475,15 +1466,15 @@ "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=", "dev": true, "requires": { - "clone": "1.0.2", - "color-convert": "1.9.0", + "clone": "1.0.3", + "color-convert": "1.9.1", "color-string": "0.3.0" } }, "color-convert": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz", - "integrity": "sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o=", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", "dev": true, "requires": { "color-name": "1.1.3" @@ -1540,14 +1531,14 @@ } }, "commander": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==" + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.1.tgz", + "integrity": "sha512-PCNLExLlI5HiPdaJs4pMXwOTHkSCpNQ1QJH9ykZLKtKEyKu3p9HgmH5l97vM8c0IUz6d54l+xEu2GG9yuYrFzA==" }, "common-tags": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.4.0.tgz", - "integrity": "sha1-EYe+Tz1M8MBCfUP3Tu8fc1AWFMA=", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.5.1.tgz", + "integrity": "sha512-NrUYGY5TApAk9KB+IZXkR3GR4tA3g26HDsoiGt4kCMHZ727gOGkC+UNfq0Z22jE15bLkc/6RV5Jw1RBW6Usg6A==", "dev": true, "requires": { "babel-runtime": "6.26.0" @@ -1648,9 +1639,9 @@ } }, "connect-history-api-fallback": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.4.0.tgz", - "integrity": "sha1-PbJPlz9LkjsOgvYZzg3wJBHKYj0=", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", + "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", "dev": true }, "console-browserify": { @@ -1696,9 +1687,9 @@ } }, "convert-source-map": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.0.tgz", - "integrity": "sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU=", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", "dev": true }, "cookie": { @@ -1728,19 +1719,17 @@ } }, "copy-webpack-plugin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.2.0.tgz", - "integrity": "sha512-eZERim02YjJcepLjrToQMapOoRLfiXewJi9zJON6xXNNJSUhkGzL1L/yFjOufS0KxsnWUzc2szg9t8ZaZKJXAg==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.2.3.tgz", + "integrity": "sha512-cL/Wl3Y1QmmKThl/mWeGB+HH3YH+25tn8nhqEGsZda4Yn7GqGnDZ+TbeKJ7A6zvrxyNhhuviYAxn/tCyyAqh8Q==", "dev": true, "requires": { "bluebird": "3.5.1", - "fs-extra": "4.0.2", "glob": "7.1.2", "is-glob": "4.0.0", "loader-utils": "0.2.17", "lodash": "4.17.4", - "minimatch": "3.0.4", - "node-dir": "0.1.17" + "minimatch": "3.0.4" }, "dependencies": { "loader-utils": { @@ -1863,9 +1852,9 @@ } }, "crypto-browserify": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.1.tgz", - "integrity": "sha512-Na7ZlwCOqoaW5RwUK1WpXws2kv8mNhWdTlzob0UXulk6G9BDbyiJaGTYBIX61Ozn9l1EPPJpICZb4DaOpT9NlQ==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, "requires": { "browserify-cipher": "1.0.0", @@ -1877,7 +1866,8 @@ "inherits": "2.0.3", "pbkdf2": "3.0.14", "public-encrypt": "4.0.0", - "randombytes": "2.0.5" + "randombytes": "2.0.5", + "randomfill": "1.0.3" } }, "css-color-names": { @@ -2008,6 +1998,12 @@ "source-map": "0.5.7" } }, + "cuint": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", + "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", + "dev": true + }, "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", @@ -2034,13 +2030,13 @@ "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", "dev": true, "requires": { - "es5-ext": "0.10.35" + "es5-ext": "0.10.37" } }, "d3": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/d3/-/d3-4.11.0.tgz", - "integrity": "sha512-o048nfmydnbt0ciIvCUDTq9p62rZYOXzl8cKps0XVzk+5nHgeXmAS7jU4nh+3v82pUyH7t/GFm1bJRX4oIAlPw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/d3/-/d3-4.12.0.tgz", + "integrity": "sha512-ibAzFJrj1uuX+wIy29baTx9JebA5i670UKlp+H3c9pg0w8PKl8jpj4zf64MmLPVBXm2vA1i29obnWuM/rmyfWA==", "requires": { "d3-array": "1.2.1", "d3-axis": "1.0.8", @@ -2050,28 +2046,28 @@ "d3-color": "1.0.3", "d3-dispatch": "1.0.3", "d3-drag": "1.2.1", - "d3-dsv": "1.0.7", + "d3-dsv": "1.0.8", "d3-ease": "1.0.3", "d3-force": "1.1.0", - "d3-format": "1.2.0", - "d3-geo": "1.8.1", + "d3-format": "1.2.1", + "d3-geo": "1.9.0", "d3-hierarchy": "1.1.5", - "d3-interpolate": "1.1.5", + "d3-interpolate": "1.1.6", "d3-path": "1.0.5", "d3-polygon": "1.0.3", "d3-quadtree": "1.0.3", "d3-queue": "3.0.7", "d3-random": "1.1.0", "d3-request": "1.0.6", - "d3-scale": "1.0.6", - "d3-selection": "1.1.0", + "d3-scale": "1.0.7", + "d3-selection": "1.2.0", "d3-shape": "1.2.0", - "d3-time": "1.0.7", - "d3-time-format": "2.0.5", + "d3-time": "1.0.8", + "d3-time-format": "2.1.1", "d3-timer": "1.0.7", - "d3-transition": "1.1.0", + "d3-transition": "1.1.1", "d3-voronoi": "1.1.2", - "d3-zoom": "1.6.0" + "d3-zoom": "1.7.1" } }, "d3-array": { @@ -2091,9 +2087,9 @@ "requires": { "d3-dispatch": "1.0.3", "d3-drag": "1.2.1", - "d3-interpolate": "1.1.5", - "d3-selection": "1.1.0", - "d3-transition": "1.1.0" + "d3-interpolate": "1.1.6", + "d3-selection": "1.2.0", + "d3-transition": "1.1.1" } }, "d3-chord": { @@ -2126,15 +2122,15 @@ "integrity": "sha512-Cg8/K2rTtzxzrb0fmnYOUeZHvwa4PHzwXOLZZPwtEs2SKLLKLXeYwZKBB+DlOxUvFmarOnmt//cU4+3US2lyyQ==", "requires": { "d3-dispatch": "1.0.3", - "d3-selection": "1.1.0" + "d3-selection": "1.2.0" } }, "d3-dsv": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-1.0.7.tgz", - "integrity": "sha512-12szKhDhM/tM5U/Ch3hyJ7sMdcwPqMRmrUWitLLdPBMKO9Wuox95ezKZvemy/fxFbefLF/HIPKUmJMBLLuFDaQ==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-1.0.8.tgz", + "integrity": "sha512-IVCJpQ+YGe3qu6odkPQI0KPqfxkhbP/oM1XhhE/DFiYmcXKfCRub4KXyiuehV1d4drjWVXHUWx4gHqhdZb6n/A==", "requires": { - "commander": "2.11.0", + "commander": "2.12.1", "iconv-lite": "0.4.19", "rw": "1.3.3" } @@ -2156,14 +2152,14 @@ } }, "d3-format": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.2.0.tgz", - "integrity": "sha1-a0gLqohohdRlHcJIqPSsnaFtsHo=" + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.2.1.tgz", + "integrity": "sha512-U4zRVLDXW61bmqoo+OJ/V687e1T5nVd3TAKAJKgtpZ/P1JsMgyod0y9br+mlQOryTAACdiXI3wCjuERHFNp91w==" }, "d3-geo": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.8.1.tgz", - "integrity": "sha512-PuvmWl1A1UXuaxcH55EGNhvMNAUBS0RQN2PAnxrZbDvDX56Xwkd+Yp1t1+ECkaJO3my+dnhxAyqAKMyyK+IFPQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.9.0.tgz", + "integrity": "sha512-94YbAT+q5E/p+XEd4VKiNkQNicrrON3l6eoW70sC8aHjUGoBDJ/Ht8Z/hvhGJJTi2zhYBvUd34Mfqv4TG7we9A==", "requires": { "d3-array": "1.2.1" } @@ -2174,9 +2170,9 @@ "integrity": "sha1-ochFxC+Eoga88cAcAQmOpN2qeiY=" }, "d3-interpolate": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.1.5.tgz", - "integrity": "sha1-aeCZ/zkhRxblY8muw+qdHqS4p58=", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.1.6.tgz", + "integrity": "sha512-mOnv5a+pZzkNIHtw/V6I+w9Lqm9L5bG3OTXPM5A+QO0yyVMQ4W1uZhR+VOJmazaOZXri2ppbiZ5BUNWT0pFM9A==", "requires": { "d3-color": "1.0.3" } @@ -2213,28 +2209,28 @@ "requires": { "d3-collection": "1.0.4", "d3-dispatch": "1.0.3", - "d3-dsv": "1.0.7", + "d3-dsv": "1.0.8", "xmlhttprequest": "1.8.0" } }, "d3-scale": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-1.0.6.tgz", - "integrity": "sha1-vOGdqA06DPQiyVQ64zIghiILNO0=", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-1.0.7.tgz", + "integrity": "sha512-KvU92czp2/qse5tUfGms6Kjig0AhHOwkzXG0+PqIJB3ke0WUv088AHMZI0OssO9NCkXt4RP8yju9rpH8aGB7Lw==", "requires": { "d3-array": "1.2.1", "d3-collection": "1.0.4", "d3-color": "1.0.3", - "d3-format": "1.2.0", - "d3-interpolate": "1.1.5", - "d3-time": "1.0.7", - "d3-time-format": "2.0.5" + "d3-format": "1.2.1", + "d3-interpolate": "1.1.6", + "d3-time": "1.0.8", + "d3-time-format": "2.1.1" } }, "d3-selection": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.1.0.tgz", - "integrity": "sha1-GZhoSJZIj4OcoDchI9o08dMYgJw=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.2.0.tgz", + "integrity": "sha512-xW2Pfcdzh1gOaoI+LGpPsLR2VpBQxuFoxvrvguK8ZmrJbPIVvfNG6pU6GNfK41D6Qz15sj61sbW/AFYuukwaLQ==" }, "d3-shape": { "version": "1.2.0", @@ -2245,16 +2241,16 @@ } }, "d3-time": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.0.7.tgz", - "integrity": "sha1-lMr27bt4ebuAnQ0fdXK8SEgvcnA=" + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.0.8.tgz", + "integrity": "sha512-YRZkNhphZh3KcnBfitvF3c6E0JOFGikHZ4YqD+Lzv83ZHn1/u6yGenRU1m+KAk9J1GnZMnKcrtfvSktlA1DXNQ==" }, "d3-time-format": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.0.5.tgz", - "integrity": "sha1-nXeAIE98kRnJFwsaVttN6aivly4=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.1.tgz", + "integrity": "sha512-8kAkymq2WMfzW7e+s/IUNAtN/y3gZXGRrdGfo6R8NKPAA85UBTxZg5E61bR6nLwjPjj4d3zywSQe1CkYLPFyrw==", "requires": { - "d3-time": "1.0.7" + "d3-time": "1.0.8" } }, "d3-timer": { @@ -2263,15 +2259,15 @@ "integrity": "sha512-vMZXR88XujmG/L5oB96NNKH5lCWwiLM/S2HyyAQLcjWJCloK5shxta4CwOFYLZoY3AWX73v8Lgv4cCAdWtRmOA==" }, "d3-transition": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-1.1.0.tgz", - "integrity": "sha1-z8hcdOUjkyQpBUZiNXKZBWDDlm8=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-1.1.1.tgz", + "integrity": "sha512-xeg8oggyQ+y5eb4J13iDgKIjUcEfIOZs2BqV/eEmXm2twx80wTzJ4tB4vaZ5BKfz7XsI/DFmQL5me6O27/5ykQ==", "requires": { "d3-color": "1.0.3", "d3-dispatch": "1.0.3", "d3-ease": "1.0.3", - "d3-interpolate": "1.1.5", - "d3-selection": "1.1.0", + "d3-interpolate": "1.1.6", + "d3-selection": "1.2.0", "d3-timer": "1.0.7" } }, @@ -2281,15 +2277,15 @@ "integrity": "sha1-Fodmfo8TotFYyAwUgMWinLDYlzw=" }, "d3-zoom": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.6.0.tgz", - "integrity": "sha512-viq+6rXA9JQY1wD+gpDEdlOtCeJ6IfcsNT2aVr31VTjIAIhYlO0YurQ80yDRZeMJw5P/e6nVPhGJF9D9Ade5Og==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.7.1.tgz", + "integrity": "sha512-sZHQ55DGq5BZBFGnRshUT8tm2sfhPHFnOlmPbbwTkAoPeVdRTkB4Xsf9GCY0TSHrTD8PeJPZGmP/TpGicwJDJQ==", "requires": { "d3-dispatch": "1.0.3", "d3-drag": "1.2.1", - "d3-interpolate": "1.1.5", - "d3-selection": "1.1.0", - "d3-transition": "1.1.0" + "d3-interpolate": "1.1.6", + "d3-selection": "1.2.0", + "d3-transition": "1.1.1" } }, "dashdash": { @@ -2472,40 +2468,6 @@ "randombytes": "2.0.5" } }, - "directory-encoder": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/directory-encoder/-/directory-encoder-0.7.2.tgz", - "integrity": "sha1-WbTiqk8lQi9sY7UntGL14tDdLFg=", - "dev": true, - "requires": { - "fs-extra": "0.23.1", - "handlebars": "1.3.0", - "img-stats": "0.5.2" - }, - "dependencies": { - "fs-extra": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.23.1.tgz", - "integrity": "sha1-ZhHbpq3yq43Jxp+rN83fiBgVfj0=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "2.4.0", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.2" - } - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "dev": true, - "requires": { - "graceful-fs": "4.1.11" - } - } - } - }, "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", @@ -2841,9 +2803,9 @@ } }, "es-abstract": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.9.0.tgz", - "integrity": "sha512-kk3IJoKo7A3pWJc0OV8yZ/VEX2oSUytfekrJiqoxBlKJMFAJVJVpGdHClCCTdv+Fn2zHfpDHHIelMFhZVfef3Q==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.10.0.tgz", + "integrity": "sha512-/uh/DhdqIOSkAWifU+8nG78vlQxdLckUdI/sPgy0VhuXi2qJ7T8czBmqIYtLQVpCIFYafChnsRsB5pyb1JdmCQ==", "dev": true, "requires": { "es-to-primitive": "1.1.1", @@ -2865,9 +2827,9 @@ } }, "es5-ext": { - "version": "0.10.35", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.35.tgz", - "integrity": "sha1-GO6FjOajxFx9eekcFfzKnsVoSU8=", + "version": "0.10.37", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.37.tgz", + "integrity": "sha1-DudB0Ui4AGm6J9AgOTdWryV978M=", "dev": true, "requires": { "es6-iterator": "2.0.3", @@ -2881,7 +2843,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.35", + "es5-ext": "0.10.37", "es6-symbol": "3.1.1" } }, @@ -2892,7 +2854,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.35", + "es5-ext": "0.10.37", "es6-iterator": "2.0.3", "es6-set": "0.1.5", "es6-symbol": "3.1.1", @@ -2906,7 +2868,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.35", + "es5-ext": "0.10.37", "es6-iterator": "2.0.3", "es6-symbol": "3.1.1", "event-emitter": "0.3.5" @@ -2919,7 +2881,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.35" + "es5-ext": "0.10.37" } }, "es6-weak-map": { @@ -2929,7 +2891,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.35", + "es5-ext": "0.10.37", "es6-iterator": "2.0.3", "es6-symbol": "3.1.1" } @@ -2999,7 +2961,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.35" + "es5-ext": "0.10.37" } }, "eventemitter3": { @@ -3220,10 +3182,10 @@ "integrity": "sha1-kMqnkHvESfM1AF46x1MrQbAN5hI=", "dev": true, "requires": { - "async": "2.5.0", + "async": "2.6.0", "loader-utils": "1.1.0", "schema-utils": "0.3.0", - "webpack-sources": "1.0.1" + "webpack-sources": "1.1.0" } }, "extsprintf": { @@ -3459,6 +3421,910 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, + "fsevents": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", + "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", + "dev": true, + "optional": true, + "requires": { + "nan": "2.8.0", + "node-pre-gyp": "0.6.39" + }, + "dependencies": { + "abbrev": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "ajv": { + "version": "4.11.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.2.9" + } + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "assert-plus": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws-sign2": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true, + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "block-stream": { + "version": "0.0.9", + "bundled": true, + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "boom": { + "version": "2.10.1", + "bundled": true, + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } + }, + "buffer-shims": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true + }, + "co": { + "version": "4.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "cryptiles": { + "version": "2.0.5", + "bundled": true, + "dev": true, + "requires": { + "boom": "2.10.1" + } + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true, + "dev": true, + "optional": true + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "extsprintf": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "dev": true, + "optional": true + }, + "form-data": { + "version": "2.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.15" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "fstream": { + "version": "1.0.11", + "bundled": true, + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.1" + } + }, + "fstream-ignore": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fstream": "1.0.11", + "inherits": "2.0.3", + "minimatch": "3.0.4" + } + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "1.1.1", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true, + "dev": true + }, + "har-schema": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "hawk": { + "version": "3.1.3", + "bundled": true, + "dev": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "bundled": true, + "dev": true + }, + "http-signature": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.0", + "sshpk": "1.13.0" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.4", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "jodid25519": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "dev": true, + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "jsprim": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.0.2", + "json-schema": "0.2.3", + "verror": "1.3.6" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "mime-db": { + "version": "1.27.0", + "bundled": true, + "dev": true + }, + "mime-types": { + "version": "2.1.15", + "bundled": true, + "dev": true, + "requires": { + "mime-db": "1.27.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "node-pre-gyp": { + "version": "0.6.39", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "1.0.2", + "hawk": "3.1.3", + "mkdirp": "0.5.1", + "nopt": "4.0.1", + "npmlog": "4.1.0", + "rc": "1.2.1", + "request": "2.81.0", + "rimraf": "2.6.1", + "semver": "5.3.0", + "tar": "2.2.1", + "tar-pack": "3.4.0" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1.1.0", + "osenv": "0.1.4" + } + }, + "npmlog": { + "version": "4.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "performance-now": { + "version": "0.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true, + "dev": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true + }, + "qs": { + "version": "6.4.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.2.9", + "bundled": true, + "dev": true, + "requires": { + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "1.0.1", + "util-deprecate": "1.0.2" + } + }, + "request": { + "version": "2.81.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.15", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.0.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.0.1" + } + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "dev": true, + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.0.1", + "bundled": true, + "dev": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sntp": { + "version": "1.0.9", + "bundled": true, + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "sshpk": { + "version": "1.13.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jodid25519": "1.0.2", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "2.2.1", + "bundled": true, + "dev": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tar-pack": { + "version": "3.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "2.6.8", + "fstream": "1.0.11", + "fstream-ignore": "1.0.5", + "once": "1.4.0", + "readable-stream": "2.2.9", + "rimraf": "2.6.1", + "tar": "2.2.1", + "uid-number": "0.0.6" + } + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "dev": true, + "optional": true + }, + "uid-number": { + "version": "0.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "uuid": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "verror": { + "version": "1.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "extsprintf": "1.0.2" + } + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + } + } + }, "fstream": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", @@ -3503,6 +4369,23 @@ "globule": "1.2.0" } }, + "generate-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", + "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", + "dev": true, + "optional": true + }, + "generate-object-property": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", + "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "dev": true, + "optional": true, + "requires": { + "is-property": "1.0.2" + } + }, "get-caller-file": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", @@ -3663,42 +4546,83 @@ "dev": true }, "handlebars": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-1.3.0.tgz", - "integrity": "sha1-npsTCpPjiUkTItl1zz7BgYw3zjQ=", + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz", + "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=", "dev": true, "requires": { - "optimist": "0.3.7", - "uglify-js": "2.3.6" + "async": "1.5.2", + "optimist": "0.6.1", + "source-map": "0.4.4", + "uglify-js": "2.8.29" }, "dependencies": { "async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", "dev": true, "optional": true }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", "dev": true, "optional": true, + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + } + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, "requires": { "amdefine": "1.0.1" } }, "uglify-js": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz", - "integrity": "sha1-+gmEdwtCi3qbKoBY9GNV0U/vIRo=", + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", "dev": true, "optional": true, "requires": { - "async": "0.2.10", - "optimist": "0.3.7", - "source-map": "0.1.43" + "source-map": "0.5.7", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "optional": true + } + } + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" } } } @@ -3883,19 +4807,19 @@ "dev": true }, "html-minifier": { - "version": "3.5.6", - "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.6.tgz", - "integrity": "sha512-88FjtKrlak2XjczhxrBomgzV4jmGzM3UnHRBScRkJcmcRum0kb+IwhVAETJ8AVp7j0p3xugjSaw9L+RmI5/QOA==", + "version": "3.5.7", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.7.tgz", + "integrity": "sha512-GISXn6oKDo7+gVpKOgZJTbHMCUI2TSGfpg/8jgencWhWJsvEmsvp3M8emX7QocsXsYznWloLib3OeSfeyb/ewg==", "dev": true, "requires": { "camel-case": "3.0.0", "clean-css": "4.1.9", - "commander": "2.11.0", + "commander": "2.12.1", "he": "1.1.1", "ncname": "1.0.0", "param-case": "2.1.1", "relateurl": "0.2.7", - "uglify-js": "3.1.6" + "uglify-js": "3.2.0" } }, "html-webpack-plugin": { @@ -3905,7 +4829,7 @@ "dev": true, "requires": { "bluebird": "3.5.1", - "html-minifier": "3.5.6", + "html-minifier": "3.5.7", "loader-utils": "0.2.17", "lodash": "4.17.4", "pretty-error": "2.1.1", @@ -4050,9 +4974,9 @@ } }, "https-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", - "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", "dev": true }, "https-proxy-agent": { @@ -4083,16 +5007,27 @@ "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", "dev": true, "requires": { - "postcss": "6.0.13" + "postcss": "6.0.14" }, "dependencies": { - "postcss": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "integrity": "sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g==", + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "chalk": "2.2.2", + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", "source-map": "0.6.1", "supports-color": "4.5.0" } @@ -4124,15 +5059,6 @@ "dev": true, "optional": true }, - "img-stats": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/img-stats/-/img-stats-0.5.2.tgz", - "integrity": "sha1-wgNJbELy2esuWrgjL6dWurMsnis=", - "dev": true, - "requires": { - "xmldom": "0.1.27" - } - }, "import-local": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/import-local/-/import-local-0.1.1.tgz", @@ -4194,9 +5120,9 @@ "dev": true }, "ini": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", - "integrity": "sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4=", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true }, "internal-ip": { @@ -4264,7 +5190,7 @@ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "binary-extensions": "1.10.0" + "binary-extensions": "1.11.0" } }, "is-buffer": { @@ -4354,6 +5280,19 @@ "is-extglob": "2.1.1" } }, + "is-my-json-valid": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz", + "integrity": "sha512-ochPsqWS1WXj8ZnMIV0vnNXooaMhp7cyL4FMSIPKTtnV0Ha/T19G2b9kkhcNsabV9bxYkze7/aLZJb/bYuFduQ==", + "dev": true, + "optional": true, + "requires": { + "generate-function": "2.0.0", + "generate-object-property": "1.2.0", + "jsonpointer": "4.0.1", + "xtend": "4.0.1" + } + }, "is-number": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", @@ -4414,6 +5353,13 @@ "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", "dev": true }, + "is-property": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", + "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", + "dev": true, + "optional": true + }, "is-regex": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", @@ -4498,7 +5444,7 @@ "integrity": "sha512-oFCwXvd65amgaPCzqrR+a2XjanS1MvpXN6l/MlMUTv6uiA1NOgGX+I0uyq8Lg3GDxsxPsaP1049krz3hIJ5+KA==", "dev": true, "requires": { - "async": "2.5.0", + "async": "2.6.0", "fileset": "2.0.3", "istanbul-lib-coverage": "1.1.1", "istanbul-lib-hook": "1.1.0", @@ -4517,7 +5463,7 @@ "integrity": "sha1-5UkpAKsLuoNe+oAkywC+mz7qJwA=", "dev": true, "requires": { - "convert-source-map": "1.5.0", + "convert-source-map": "1.5.1", "istanbul-lib-instrument": "1.9.1", "loader-utils": "0.2.17", "object-assign": "4.1.1" @@ -4627,113 +5573,6 @@ "dev": true, "requires": { "handlebars": "4.0.11" - }, - "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - }, - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true, - "optional": true - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "optional": true, - "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", - "wordwrap": "0.0.2" - }, - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true, - "optional": true - } - } - }, - "handlebars": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz", - "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=", - "dev": true, - "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" - } - }, - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "0.0.10", - "wordwrap": "0.0.3" - } - }, - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": "1.0.1" - } - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "optional": true, - "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "optional": true - } - } - }, - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "optional": true, - "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", - "window-size": "0.1.0" - } - } } }, "jasmine": { @@ -4871,6 +5710,13 @@ "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", "dev": true }, + "jsonpointer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", + "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", + "dev": true, + "optional": true + }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -4913,7 +5759,7 @@ "isbinaryfile": "3.0.2", "lodash": "3.10.1", "log4js": "0.6.38", - "mime": "1.4.1", + "mime": "1.6.0", "minimatch": "3.0.4", "optimist": "0.6.1", "qjobs": "1.1.5", @@ -4931,22 +5777,6 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", "dev": true - }, - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "0.0.10", - "wordwrap": "0.0.3" - } } } }, @@ -5003,6 +5833,12 @@ "source-map-support": "0.4.18" } }, + "killable": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.0.tgz", + "integrity": "sha1-2ouEvUfeU5WHj5XWTQLyRJ/gXms=", + "dev": true + }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", @@ -5036,7 +5872,7 @@ "errno": "0.1.4", "graceful-fs": "4.1.11", "image-size": "0.5.5", - "mime": "1.4.1", + "mime": "1.6.0", "mkdirp": "0.5.1", "promise": "7.3.1", "request": "2.81.0", @@ -5212,9 +6048,9 @@ } }, "loglevel": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.5.1.tgz", - "integrity": "sha1-GJB4yUq5BT7iFaCs2/JCROoPZQI=", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.0.tgz", + "integrity": "sha1-rgyqVhERSYxboTcj1vtjHSQAOTQ=", "dev": true }, "longest": { @@ -5450,9 +6286,9 @@ } }, "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true }, "mime-db": { @@ -5515,7 +6351,7 @@ "flush-write-stream": "1.0.2", "from2": "2.3.0", "parallel-transform": "1.1.0", - "pump": "1.0.2", + "pump": "1.0.3", "pumpify": "1.3.5", "stream-each": "1.2.2", "through2": "2.0.3" @@ -5582,9 +6418,9 @@ "dev": true }, "multicast-dns": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.1.1.tgz", - "integrity": "sha1-bn3oalcIcqsXBYrepxYLvsqBTd4=", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.1.tgz", + "integrity": "sha512-uV3/ckdsffHx9IrGQrx613mturMdMqQ06WTq+C09NsStJ9iNG6RcUWgPKs1Rfjy+idZT6tfQoXEusGNnEZhT3w==", "dev": true, "requires": { "dns-packet": "1.2.2", @@ -5598,9 +6434,9 @@ "dev": true }, "nan": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz", - "integrity": "sha1-2Vv3IeyHfgjbJ27T/G63j5CDrUY=", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", "dev": true, "optional": true }, @@ -5620,9 +6456,9 @@ "dev": true }, "ngx-color-picker": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/ngx-color-picker/-/ngx-color-picker-4.4.0.tgz", - "integrity": "sha512-0xNcqpmL2DwvxJVaqTF7b1VlHcbG+nD9y6F8ZkUsR8hDD13tCQuwhc0P2xrjmipDYAT+IPE6HwWEB2XaDVIkgg==" + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/ngx-color-picker/-/ngx-color-picker-5.0.4.tgz", + "integrity": "sha512-PP8fnz7CM47Z74U9t7IiuMBDjljL+5/8OYQucFyZ0dS66E/oQHJOYhcgHg6W/G7hRspBzpmQsiURHZ0Ir/0T9w==" }, "ngx-cookie-service": { "version": "1.0.9", @@ -5638,15 +6474,6 @@ "lower-case": "1.1.4" } }, - "node-dir": { - "version": "0.1.17", - "resolved": "https://registry.npmjs.org/node-dir/-/node-dir-0.1.17.tgz", - "integrity": "sha1-X1Zl2TNRM1yqvvjxxVRRbPXx5OU=", - "dev": true, - "requires": { - "minimatch": "3.0.4" - } - }, "node-forge": { "version": "0.6.33", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.6.33.tgz", @@ -5695,21 +6522,21 @@ } }, "node-libs-browser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.0.0.tgz", - "integrity": "sha1-o6WeyXAkmFtG6Vg3lkb5bEthZkY=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", + "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", "dev": true, "requires": { "assert": "1.4.1", - "browserify-zlib": "0.1.4", + "browserify-zlib": "0.2.0", "buffer": "4.9.1", "console-browserify": "1.1.0", "constants-browserify": "1.0.0", - "crypto-browserify": "3.11.1", + "crypto-browserify": "3.12.0", "domain-browser": "1.1.7", "events": "1.1.1", - "https-browserify": "0.0.1", - "os-browserify": "0.2.1", + "https-browserify": "1.0.0", + "os-browserify": "0.3.0", "path-browserify": "0.0.0", "process": "0.11.10", "punycode": "1.4.1", @@ -5717,20 +6544,12 @@ "readable-stream": "2.3.3", "stream-browserify": "2.0.1", "stream-http": "2.7.2", - "string_decoder": "0.10.31", + "string_decoder": "1.0.3", "timers-browserify": "2.0.4", "tty-browserify": "0.0.0", "url": "0.11.0", "util": "0.10.3", "vm-browserify": "0.0.4" - }, - "dependencies": { - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true - } } }, "node-modules-path": { @@ -5740,9 +6559,9 @@ "dev": true }, "node-sass": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.5.3.tgz", - "integrity": "sha1-0JydEXlkEjnRuX/8YjH9zsU+FWg=", + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.7.2.tgz", + "integrity": "sha512-CaV+wLqZ7//Jdom5aUFCpGNoECd7BbNhjuwdsX/LkXBrHl8eb1Wjw4HvWqcFvhr5KuNgAk8i/myf/MQ1YYeroA==", "dev": true, "optional": true, "requires": { @@ -5758,18 +6577,25 @@ "lodash.mergewith": "4.6.0", "meow": "3.7.0", "mkdirp": "0.5.1", - "nan": "2.7.0", + "nan": "2.8.0", "node-gyp": "3.6.2", "npmlog": "4.1.2", - "request": "2.81.0", + "request": "2.79.0", "sass-graph": "2.2.4", - "stdout-stream": "1.4.0" + "stdout-stream": "1.4.0", + "true-case-path": "1.0.2" }, "dependencies": { "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "caseless": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", + "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", "dev": true, "optional": true }, @@ -5778,7 +6604,6 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, - "optional": true, "requires": { "ansi-styles": "2.2.1", "escape-string-regexp": "1.0.5", @@ -5787,10 +6612,65 @@ "supports-color": "2.0.0" } }, + "har-validator": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", + "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", + "dev": true, + "optional": true, + "requires": { + "chalk": "1.1.3", + "commander": "2.12.1", + "is-my-json-valid": "2.16.1", + "pinkie-promise": "2.0.1" + } + }, + "qs": { + "version": "6.3.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", + "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=", + "dev": true, + "optional": true + }, + "request": { + "version": "2.79.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", + "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", + "dev": true, + "optional": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.11.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "2.0.6", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "qs": "6.3.2", + "stringstream": "0.0.5", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.4.3", + "uuid": "3.1.0" + } + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "tunnel-agent": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", + "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", "dev": true, "optional": true } @@ -5978,12 +6858,21 @@ } }, "optimist": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", "dev": true, "requires": { - "wordwrap": "0.0.3" + "minimist": "0.0.10", + "wordwrap": "0.0.2" + }, + "dependencies": { + "minimist": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", + "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "dev": true + } } }, "options": { @@ -6014,9 +6903,9 @@ } }, "os-browserify": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.2.1.tgz", - "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", "dev": true }, "os-homedir": { @@ -6078,9 +6967,9 @@ "dev": true }, "pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", + "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==", "dev": true }, "parallel-transform": { @@ -6263,9 +7152,9 @@ } }, "perfect-scrollbar": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.0.3.tgz", - "integrity": "sha512-XASWeorN9fOdK/cErq1+gHC1Uy/sbnoGuVR1y2nsG7PvmzLofruZyTwYaDJUlw8i9S2N1blEdICihQBgoifoYQ==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.2.0.tgz", + "integrity": "sha512-8KlT7AhGdsMI96eUf/cC5JG1qGAvep9i1bEiUyTUDso3b+4WErJfURBKqrS7GaH7u91qsUubJ4xnpsWfdwa+dA==" }, "performance-now": { "version": "0.2.0", @@ -6433,16 +7322,27 @@ "dev": true, "requires": { "balanced-match": "1.0.0", - "postcss": "6.0.13" + "postcss": "6.0.14" }, "dependencies": { - "postcss": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "integrity": "sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g==", + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "chalk": "2.2.2", + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", "source-map": "0.6.1", "supports-color": "4.5.0" } @@ -6544,15 +7444,45 @@ } }, "postcss-loader": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-1.3.3.tgz", - "integrity": "sha1-piHqH6KQYqg5cqRvVEhncTAZFus=", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.0.9.tgz", + "integrity": "sha512-sgoXPtmgVT3aBAhU47Kig8oPF+mbXl8Unjvtz1Qj1q2D2EvSVJW2mKJNzxv5y/LvA9xWwuvdysvhc7Zn80UWWw==", "dev": true, "requires": { "loader-utils": "1.1.0", - "object-assign": "4.1.1", - "postcss": "5.2.18", - "postcss-load-config": "1.2.0" + "postcss": "6.0.14", + "postcss-load-config": "1.2.0", + "schema-utils": "0.3.0" + }, + "dependencies": { + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "4.5.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, "postcss-merge-idents": { @@ -6645,16 +7575,27 @@ "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=", "dev": true, "requires": { - "postcss": "6.0.13" + "postcss": "6.0.14" }, "dependencies": { - "postcss": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "integrity": "sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g==", + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "chalk": "2.2.2", + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", "source-map": "0.6.1", "supports-color": "4.5.0" } @@ -6674,16 +7615,27 @@ "dev": true, "requires": { "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.13" + "postcss": "6.0.14" }, "dependencies": { - "postcss": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "integrity": "sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g==", + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "chalk": "2.2.2", + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", "source-map": "0.6.1", "supports-color": "4.5.0" } @@ -6703,16 +7655,27 @@ "dev": true, "requires": { "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.13" + "postcss": "6.0.14" }, "dependencies": { - "postcss": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "integrity": "sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g==", + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "chalk": "2.2.2", + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", "source-map": "0.6.1", "supports-color": "4.5.0" } @@ -6732,16 +7695,27 @@ "dev": true, "requires": { "icss-replace-symbols": "1.1.0", - "postcss": "6.0.13" + "postcss": "6.0.14" }, "dependencies": { - "postcss": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "integrity": "sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g==", + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "chalk": "2.2.2", + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", "source-map": "0.6.1", "supports-color": "4.5.0" } @@ -6850,18 +7824,46 @@ } }, "postcss-url": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-5.1.2.tgz", - "integrity": "sha1-mLMWW+jVkkccsMqt3iwNH4MvEz4=", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-7.3.0.tgz", + "integrity": "sha512-VBP6uf6iL3AZra23nkPkOEkS/5azj1xf/toRrjfkolfFEgg9Gyzg9UhJZeIsz12EGKZTNVeGbPa2XtaZm/iZvg==", "dev": true, "requires": { - "directory-encoder": "0.7.2", - "js-base64": "2.3.2", - "mime": "1.4.1", + "mime": "1.6.0", "minimatch": "3.0.4", "mkdirp": "0.5.1", - "path-is-absolute": "1.0.1", - "postcss": "5.2.18" + "postcss": "6.0.14", + "xxhashjs": "0.2.1" + }, + "dependencies": { + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "postcss": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", + "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "4.5.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, "postcss-value-parser": { @@ -6904,9 +7906,9 @@ } }, "prismjs": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.8.3.tgz", - "integrity": "sha1-Sj0UC+XyYUqJh8ojMHM6QNitIHs=", + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.8.4.tgz", + "integrity": "sha1-VzzHoUwsBlZuHsog2BP1rlXbgNI=", "requires": { "clipboard": "1.7.1" } @@ -6947,7 +7949,7 @@ "requires": { "@types/node": "6.0.92", "@types/q": "0.0.32", - "@types/selenium-webdriver": "2.53.42", + "@types/selenium-webdriver": "2.53.43", "blocking-proxy": "0.0.5", "chalk": "1.1.3", "glob": "7.1.2", @@ -7010,22 +8012,6 @@ "pinkie-promise": "2.0.1" } }, - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "0.0.10", - "wordwrap": "0.0.3" - } - }, "q": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", @@ -7048,21 +8034,13 @@ "chalk": "1.1.3", "del": "2.2.2", "glob": "7.1.2", - "ini": "1.3.4", + "ini": "1.3.5", "minimist": "1.2.0", "q": "1.4.1", "request": "2.81.0", "rimraf": "2.6.2", "semver": "5.4.1", "xml2js": "0.4.19" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } } } } @@ -7103,9 +8081,9 @@ } }, "pump": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.2.tgz", - "integrity": "sha1-Oz7mUS+U8OV1U4wXmV+fFpkKXVE=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", + "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", "dev": true, "requires": { "end-of-stream": "1.4.0", @@ -7120,7 +8098,7 @@ "requires": { "duplexify": "3.5.1", "inherits": "2.0.3", - "pump": "1.0.2" + "pump": "1.0.3" } }, "punycode": { @@ -7225,6 +8203,16 @@ "safe-buffer": "5.1.1" } }, + "randomfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.3.tgz", + "integrity": "sha512-YL6GrhrWoic0Eq8rXVbMptH7dAxCs0J+mh5Y0euNekPPYaxEmdVGim6GdoxoRzKW2yJoU8tueifS7mYxvcFDEQ==", + "dev": true, + "requires": { + "randombytes": "2.0.5", + "safe-buffer": "5.1.1" + } + }, "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", @@ -7603,7 +8591,7 @@ "integrity": "sha512-c3/Zc+iW+qqDip6kXPYLEgsAu2lf4xz0EZDplB7EmSUMda12U1sGJPetH55B/j9eu0bTtKzKlNPWWyYC7wFNyQ==", "dev": true, "requires": { - "async": "2.5.0", + "async": "2.6.0", "clone-deep": "0.3.0", "loader-utils": "1.1.0", "lodash.tail": "4.1.1", @@ -7639,7 +8627,7 @@ "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", "dev": true, "requires": { - "ajv": "5.3.0" + "ajv": "5.5.0" } }, "scss-tokenizer": { @@ -7743,6 +8731,14 @@ "on-finished": "2.3.0", "range-parser": "1.2.0", "statuses": "1.3.1" + }, + "dependencies": { + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true + } } }, "serve-index": { @@ -8039,7 +9035,7 @@ "faye-websocket": "0.11.1", "inherits": "2.0.3", "json3": "3.3.2", - "url-parse": "1.1.9" + "url-parse": "1.2.0" }, "dependencies": { "faye-websocket": { @@ -8080,7 +9076,7 @@ "integrity": "sha512-MYbFX9DYxmTQFfy2v8FC1XZwpwHKYxg3SK8Wb7VPBKuhDjz8gi9re2819MsG4p49HDyiOSUKlmZ+nQBArW5CGw==", "dev": true, "requires": { - "async": "2.5.0", + "async": "2.6.0", "loader-utils": "0.2.17", "source-map": "0.6.1" }, @@ -8549,6 +9545,32 @@ "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", "dev": true }, + "true-case-path": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.2.tgz", + "integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=", + "dev": true, + "optional": true, + "requires": { + "glob": "6.0.4" + }, + "dependencies": { + "glob": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", + "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", + "dev": true, + "optional": true, + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + } + } + }, "ts-node": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-3.2.2.tgz", @@ -8610,20 +9632,20 @@ "requires": { "babel-code-frame": "6.26.0", "colors": "1.1.2", - "commander": "2.11.0", + "commander": "2.12.1", "diff": "3.4.0", "glob": "7.1.2", "minimatch": "3.0.4", "resolve": "1.5.0", "semver": "5.4.1", "tslib": "1.8.0", - "tsutils": "2.12.1" + "tsutils": "2.12.2" } }, "tsutils": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.12.1.tgz", - "integrity": "sha1-9Nlc4zkciXHkblTEzw7bCiHdWyQ=", + "version": "2.12.2", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.12.2.tgz", + "integrity": "sha1-rVikhl0X7D3bZjG2ylO+FKVlb/M=", "dev": true, "requires": { "tslib": "1.8.0" @@ -8674,12 +9696,12 @@ "dev": true }, "uglify-js": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.1.6.tgz", - "integrity": "sha512-/rseyxEKEVMBo8279lqpoJgD6C/i/CIi+9TJDvWmb+Xo6mqMKwjA8Io3IMHlcXQzj99feR6zrN8m3wqqvm/nYA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.2.0.tgz", + "integrity": "sha512-L98DlTshoPGnZGF8pr3MoE+CCo6n9joktHNHMPkckeBV8xTVc4CWtC0kGGhQsIvnX2Ug4nXFTAeE7SpTrPX2tg==", "dev": true, "requires": { - "commander": "2.11.0", + "commander": "2.12.1", "source-map": "0.6.1" }, "dependencies": { @@ -8704,22 +9726,22 @@ "integrity": "sha512-23qmtiLm1X7O0XVSZ54W7XGHykPss+2lo3RYC9zSzK3DDT5W27woZpDFDKguDCnG1RIX8cDnmy5j+dtXxJCA/Q==", "dev": true, "requires": { - "cacache": "10.0.0", + "cacache": "10.0.1", "find-cache-dir": "1.0.0", "schema-utils": "0.3.0", "source-map": "0.5.7", - "uglify-es": "3.1.6", - "webpack-sources": "1.0.1", - "worker-farm": "1.5.1" + "uglify-es": "3.2.0", + "webpack-sources": "1.1.0", + "worker-farm": "1.5.2" }, "dependencies": { "uglify-es": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.1.6.tgz", - "integrity": "sha512-7zyH8T4rT3/iLVzNI7Oa8hVQSlv280S8y2/a2EmvEObft3067rdUJJKjBspc70d0HUk1Og1V5Ny4UgZOlZ0hSg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.2.0.tgz", + "integrity": "sha512-eD4rjK4o6rzrvE1SMZJLQFEVMnWRUyIu6phJ0BXk5TIthMmP5B4QP0HI8o3bkQB5wf1N4WHA0leZAQyQBAd+Jg==", "dev": true, "requires": { - "commander": "2.11.0", + "commander": "2.12.1", "source-map": "0.6.1" }, "dependencies": { @@ -8821,14 +9843,14 @@ "dev": true, "requires": { "loader-utils": "1.1.0", - "mime": "1.4.1", + "mime": "1.6.0", "schema-utils": "0.3.0" } }, "url-parse": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.1.9.tgz", - "integrity": "sha1-xn8dd11R8KGJEd17P/rSe7nlvRk=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.2.0.tgz", + "integrity": "sha512-DT1XbYAfmQP65M/mE6OALxmXzZ/z1+e5zk2TcSKe/KiYbNGZxgtttzC0mR/sjopbpOXcbniq7eIKmocJnUWlEw==", "dev": true, "requires": { "querystringify": "1.0.0", @@ -8979,7 +10001,7 @@ "integrity": "sha1-ShRyvLuVK9Cpu0A2gB+VTfs5+qw=", "dev": true, "requires": { - "async": "2.5.0", + "async": "2.6.0", "chokidar": "1.7.0", "graceful-fs": "4.1.11" } @@ -9004,7 +10026,7 @@ "integrity": "sha1-gcUzqeM9W/tZe05j4s2yW1R3dRU=", "dev": true, "requires": { - "@types/selenium-webdriver": "2.53.42", + "@types/selenium-webdriver": "2.53.43", "selenium-webdriver": "2.53.3" }, "dependencies": { @@ -9059,9 +10081,9 @@ "requires": { "acorn": "5.2.1", "acorn-dynamic-import": "2.0.2", - "ajv": "5.3.0", + "ajv": "5.5.0", "ajv-keywords": "2.1.1", - "async": "2.5.0", + "async": "2.6.0", "enhanced-resolve": "3.4.1", "escope": "3.6.0", "interpret": "1.0.4", @@ -9071,13 +10093,13 @@ "loader-utils": "1.1.0", "memory-fs": "0.4.1", "mkdirp": "0.5.1", - "node-libs-browser": "2.0.0", + "node-libs-browser": "2.1.0", "source-map": "0.5.7", "supports-color": "4.5.0", "tapable": "0.2.8", "uglifyjs-webpack-plugin": "0.4.6", "watchpack": "1.4.0", - "webpack-sources": "1.0.1", + "webpack-sources": "1.1.0", "yargs": "8.0.2" }, "dependencies": { @@ -9232,7 +10254,7 @@ "requires": { "source-map": "0.5.7", "uglify-js": "2.8.29", - "webpack-sources": "1.0.1" + "webpack-sources": "1.1.0" } }, "which-module": { @@ -9241,12 +10263,6 @@ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - }, "yargs": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", @@ -9357,12 +10373,6 @@ "yargs": "3.10.0" } }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - }, "yargs": { "version": "3.10.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", @@ -9405,22 +10415,22 @@ } }, "webpack-dev-middleware": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.0.tgz", - "integrity": "sha1-007++y7dp+HTtdvgcolRMhllFwk=", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.1.tgz", + "integrity": "sha512-UzyVg/CKBKkymDpqOoQ4mWTs9zQp0DPCY8zbol9K0tPhqoM+JU5knKGXyMQ/Cdrmzb9Cw3eetm67fIsJ7u7ryg==", "dev": true, "requires": { "memory-fs": "0.4.1", - "mime": "1.4.1", + "mime": "1.6.0", "path-is-absolute": "1.0.1", "range-parser": "1.2.0", "time-stamp": "2.0.0" } }, "webpack-dev-server": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.9.3.tgz", - "integrity": "sha512-bwq7sj452FRH+oVfgOA8xXKkLYPTNsYB4dQ0Jhz3ydjNJ9MvhpGJtehFW8Z0cEcwNkRRiF4aYbReiSGQ4pbS1w==", + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.9.4.tgz", + "integrity": "sha512-thrqC0EQEoSjXeYgP6pUXcUCZ+LNrKsDPn+mItLnn5VyyNZOJKd06hUP5vqkYwL8nWWXsii0loSF9NHNccT6ow==", "dev": true, "requires": { "ansi-html": "0.0.7", @@ -9428,7 +10438,7 @@ "bonjour": "3.5.0", "chokidar": "1.7.0", "compression": "1.7.1", - "connect-history-api-fallback": "1.4.0", + "connect-history-api-fallback": "1.5.0", "debug": "3.1.0", "del": "3.0.0", "express": "4.16.2", @@ -9437,7 +10447,8 @@ "import-local": "0.1.1", "internal-ip": "1.2.0", "ip": "1.1.5", - "loglevel": "1.5.1", + "killable": "1.0.0", + "loglevel": "1.6.0", "opn": "5.1.0", "portfinder": "1.0.13", "selfsigned": "1.10.1", @@ -9447,7 +10458,7 @@ "spdy": "3.4.7", "strip-ansi": "3.0.1", "supports-color": "4.5.0", - "webpack-dev-middleware": "1.12.0", + "webpack-dev-middleware": "1.12.1", "yargs": "6.6.0" }, "dependencies": { @@ -9508,13 +10519,21 @@ } }, "webpack-sources": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.0.1.tgz", - "integrity": "sha512-05tMxipUCwHqYaVS8xc7sYPTly8PzXayRCB4dTxLhWTqlKUiwH6ezmEe0OSreL1c30LAuA3Zqmc+uEBUGFJDjw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", + "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", "dev": true, "requires": { "source-list-map": "2.0.0", - "source-map": "0.5.7" + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, "webpack-subresource-integrity": { @@ -9533,13 +10552,13 @@ "dev": true, "requires": { "http-parser-js": "0.4.9", - "websocket-extensions": "0.1.2" + "websocket-extensions": "0.1.3" } }, "websocket-extensions": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.2.tgz", - "integrity": "sha1-Dhh4HeYpoYMIzhSBZQ9n/6JpOl0=", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", "dev": true }, "when": { @@ -9585,15 +10604,15 @@ "dev": true }, "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", "dev": true }, "worker-farm": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.5.1.tgz", - "integrity": "sha512-T5NH6Wqsd8MwGD4AK8BBllUy6LmHaqjEOyo/YIUEegZui6/v5Bqde//3jwyE3PGiGYMmWi06exFBi5LNhhPFNw==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.5.2.tgz", + "integrity": "sha512-XxiQ9kZN5n6mmnW+mFJ+wXjNNI/Nx4DIdaAKLX1Bn6LYBWlN/zaBhu34DQYPZ1AJobQuu67S2OfDdNSVULvXkQ==", "dev": true, "requires": { "errno": "0.1.4", @@ -9654,12 +10673,6 @@ "integrity": "sha1-UZy0ymhtAFqEINNJbz8MruzKWA8=", "dev": true }, - "xmldom": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", - "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", - "dev": true - }, "xmlhttprequest": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", @@ -9677,6 +10690,15 @@ "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", "dev": true }, + "xxhashjs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.1.tgz", + "integrity": "sha1-m76b6JYUKXbfo0wGGy0GjEPTDeA=", + "dev": true, + "requires": { + "cuint": "0.2.2" + } + }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", diff --git a/package.json b/package.json index 032aa0e7..85f9bd03 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fuse2", - "version": "1.2.2", + "version": "1.2.3", "license": "", "scripts": { "ng": "ng", @@ -16,49 +16,49 @@ "private": true, "dependencies": { "@agm/core": "1.0.0-beta.2", - "@angular/animations": "5.0.2", - "@angular/cdk": "5.0.0-rc0", - "@angular/common": "5.0.2", - "@angular/compiler": "5.0.2", - "@angular/core": "5.0.2", - "@angular/flex-layout": "2.0.0-beta.10", - "@angular/forms": "5.0.2", - "@angular/http": "5.0.2", - "@angular/material": "5.0.0-rc0", - "@angular/material-moment-adapter": "5.0.0-rc0", - "@angular/platform-browser": "5.0.2", - "@angular/platform-browser-dynamic": "5.0.2", - "@angular/router": "5.0.2", + "@angular/animations": "5.0.3", + "@angular/cdk": "5.0.0-rc.1", + "@angular/common": "5.0.3", + "@angular/compiler": "5.0.3", + "@angular/core": "5.0.3", + "@angular/flex-layout": "2.0.0-beta.10-4905443", + "@angular/forms": "5.0.3", + "@angular/http": "5.0.3", + "@angular/material": "5.0.0-rc.1", + "@angular/material-moment-adapter": "5.0.0-rc.1", + "@angular/platform-browser": "5.0.3", + "@angular/platform-browser-dynamic": "5.0.3", + "@angular/router": "5.0.3", "@ngx-translate/core": "8.0.0", - "@swimlane/ngx-charts": "github:HitomiTenshi/ngx-charts#angular5", - "@swimlane/ngx-datatable": "11.0.4", + "@swimlane/ngx-charts": "7.0.1", + "@swimlane/ngx-datatable": "11.1.4", "@withinpixels/ngx-dnd": "3.1.0", - "angular-calendar": "0.21.3", + "angular-calendar": "0.22.1", "angular-in-memory-web-api": "0.5.1", "angular2-markdown": "1.6.0", "classlist.js": "1.1.20150312", "core-js": "2.5.1", - "d3": "4.11.0", + "d3": "4.12.0", "hammerjs": "2.0.8", "highlight.js": "9.12.0", "intl": "1.2.5", "moment": "2.19.2", - "ngx-color-picker": "4.4.0", + "ngx-color-picker": "5.0.4", "ngx-cookie-service": "1.0.9", - "perfect-scrollbar": "1.0.3", + "perfect-scrollbar": "1.2.0", "rxjs": "5.5.2", "web-animations-js": "2.3.1", "zone.js": "0.8.18" }, "devDependencies": { - "@angular/cli": "1.5.2", - "@angular/compiler-cli": "5.0.2", - "@angular/language-service": "5.0.2", + "@angular/cli": "1.5.4", + "@angular/compiler-cli": "5.0.3", + "@angular/language-service": "5.0.3", "@angularclass/hmr": "2.1.3", "@types/jasmine": "2.5.54", "@types/jasminewd2": "2.0.3", "@types/node": "6.0.92", - "codelyzer": "3.2.2", + "codelyzer": "4.0.1", "jasmine-core": "2.6.4", "jasmine-spec-reporter": "4.1.1", "karma": "1.7.1", diff --git a/src/app/main/content/apps/contacts/contact-form/contact-form.component.scss b/src/app/main/content/apps/contacts/contact-form/contact-form.component.scss index c54abb3b..d74b52b9 100644 --- a/src/app/main/content/apps/contacts/contact-form/contact-form.component.scss +++ b/src/app/main/content/apps/contacts/contact-form/contact-form.component.scss @@ -1,3 +1,5 @@ +@import "src/app/core/scss/fuse"; + .contact-form-dialog { .mat-dialog-container { @@ -5,6 +7,10 @@ width: 400px; overflow: hidden; + @include media-breakpoint('xs') { + width: auto; + } + .mat-toolbar { min-height: initial; } diff --git a/src/app/main/content/apps/contacts/contact-list/contact-list.component.scss b/src/app/main/content/apps/contacts/contact-list/contact-list.component.scss index a2c0009d..44569eb4 100644 --- a/src/app/main/content/apps/contacts/contact-list/contact-list.component.scss +++ b/src/app/main/content/apps/contacts/contact-list/contact-list.component.scss @@ -44,12 +44,9 @@ fuse-contacts-contact-list { } #add-contact-button { - position: fixed; + position: absolute; bottom: 12px; right: 12px; padding: 0; - - @include media-breakpoint-down('xs') { - top: 12px; - } -} + z-index: 99; +} \ No newline at end of file diff --git a/src/app/main/content/apps/contacts/contacts.component.scss b/src/app/main/content/apps/contacts/contacts.component.scss index 1f364d96..7cf18093 100644 --- a/src/app/main/content/apps/contacts/contacts.component.scss +++ b/src/app/main/content/apps/contacts/contacts.component.scss @@ -3,12 +3,4 @@ .content { overflow: hidden; } -} - -#add-contact-button { - position: absolute; - bottom: 12px; - right: 12px; - padding: 0; - z-index: 99; } \ No newline at end of file diff --git a/src/app/main/content/apps/contacts/contacts.component.ts b/src/app/main/content/apps/contacts/contacts.component.ts index d9639cae..67761196 100644 --- a/src/app/main/content/apps/contacts/contacts.component.ts +++ b/src/app/main/content/apps/contacts/contacts.component.ts @@ -1,10 +1,11 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; +import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core'; import { ContactsService } from './contacts.service'; import { fuseAnimations } from '../../../../core/animations'; import { FormControl, FormGroup } from '@angular/forms'; import { FuseContactsContactFormDialogComponent } from './contact-form/contact-form.component'; import { MatDialog } from '@angular/material'; import 'rxjs/add/operator/distinctUntilChanged'; +import { Subscription } from 'rxjs/Subscription'; @Component({ selector : 'fuse-contacts', @@ -13,11 +14,12 @@ import 'rxjs/add/operator/distinctUntilChanged'; encapsulation: ViewEncapsulation.None, animations : fuseAnimations }) -export class FuseContactsComponent implements OnInit +export class FuseContactsComponent implements OnInit, OnDestroy { hasSelectedContacts: boolean; searchInput: FormControl; dialogRef: any; + onSelectedContactsChangedSubscription: Subscription; constructor( private contactsService: ContactsService, @@ -51,11 +53,11 @@ export class FuseContactsComponent implements OnInit ngOnInit() { - - this.contactsService.onSelectedContactsChanged - .subscribe(selectedContacts => { - this.hasSelectedContacts = selectedContacts.length > 0; - }); + this.onSelectedContactsChangedSubscription = + this.contactsService.onSelectedContactsChanged + .subscribe(selectedContacts => { + this.hasSelectedContacts = selectedContacts.length > 0; + }); this.searchInput.valueChanges .debounceTime(300) @@ -65,4 +67,8 @@ export class FuseContactsComponent implements OnInit }); } + ngOnDestroy() + { + this.onSelectedContactsChangedSubscription.unsubscribe(); + } } diff --git a/src/app/main/content/pages/profile/profile.component.html b/src/app/main/content/pages/profile/profile.component.html index fbc4c69c..dce26f98 100644 --- a/src/app/main/content/pages/profile/profile.component.html +++ b/src/app/main/content/pages/profile/profile.component.html @@ -8,10 +8,12 @@ fxLayoutAlign.gt-sm="start center"> -
Katherine Wilson
+
Katherine Wilson +
-
+
diff --git a/src/app/main/content/pages/profile/tabs/about/about.component.html b/src/app/main/content/pages/profile/tabs/about/about.component.html index 0e314854..cba86b6c 100644 --- a/src/app/main/content/pages/profile/tabs/about/about.component.html +++ b/src/app/main/content/pages/profile/tabs/about/about.component.html @@ -1,10 +1,8 @@
-
+
-
+
General Information
@@ -38,8 +36,7 @@
-
+
Work
@@ -68,8 +65,7 @@
-
+
Contact
@@ -104,11 +100,9 @@
-
+
-
+
Friends
@@ -125,8 +119,7 @@
-
+
Joined Groups
diff --git a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.html b/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.html index e491a242..ea84dbef 100644 --- a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.html +++ b/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.html @@ -1,4 +1,4 @@ -
+
@@ -7,8 +7,7 @@
-
+
{{media.title}}
diff --git a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.html b/src/app/main/content/pages/profile/tabs/timeline/timeline.component.html index 8586e43c..2c3b3863 100644 --- a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.html +++ b/src/app/main/content/pages/profile/tabs/timeline/timeline.component.html @@ -1,10 +1,8 @@
-
+
-
+
@@ -37,8 +35,7 @@ -
+
@@ -136,8 +133,7 @@
-
+
Latest Activity
diff --git a/src/app/main/navbar/horizontal/navbar-horizontal.component.ts b/src/app/main/navbar/horizontal/navbar-horizontal.component.ts index 18a66d68..40cac7dd 100644 --- a/src/app/main/navbar/horizontal/navbar-horizontal.component.ts +++ b/src/app/main/navbar/horizontal/navbar-horizontal.component.ts @@ -1,4 +1,5 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; +import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core'; +import { FuseMainComponent } from '../../main.component'; @Component({ selector : 'fuse-navbar-horizontal', @@ -6,14 +7,19 @@ import { Component, OnInit, ViewEncapsulation } from '@angular/core'; styleUrls : ['./navbar-horizontal.component.scss'], encapsulation: ViewEncapsulation.None }) -export class FuseNavbarHorizontalComponent implements OnInit +export class FuseNavbarHorizontalComponent implements OnInit, OnDestroy { - constructor() + constructor(private fuseMainComponent: FuseMainComponent) { } ngOnInit() { + this.fuseMainComponent.addClass('fuse-nav-bar-horizontal'); + } + ngOnDestroy() + { + this.fuseMainComponent.removeClass('fuse-nav-bar-horizontal'); } } diff --git a/src/app/main/navbar/vertical/navbar-vertical.component.scss b/src/app/main/navbar/vertical/navbar-vertical.component.scss index abf58d03..1d7d4b18 100644 --- a/src/app/main/navbar/vertical/navbar-vertical.component.scss +++ b/src/app/main/navbar/vertical/navbar-vertical.component.scss @@ -2,7 +2,7 @@ fuse-main { - &.fuse-nav-bar-folded { + &.fuse-nav-bar-folded:not(.fuse-nav-bar-horizontal) { .content-wrapper { From 8bbabd74371d7b124da775d13b0ef926ac6101ab Mon Sep 17 00:00:00 2001 From: Sercan Yemen Date: Mon, 27 Nov 2017 14:31:57 +0300 Subject: [PATCH 7/7] Corrected the version number --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 15ad952c..f972c2e8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "fuse2", - "version": "1.2.3", + "version": "1.2.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 85f9bd03..b65a7f31 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fuse2", - "version": "1.2.3", + "version": "1.2.2", "license": "", "scripts": { "ng": "ng",