diff --git a/DEV_DOCS.md b/DEV_DOCS.md index 408d02738f..58e83fce1e 100644 --- a/DEV_DOCS.md +++ b/DEV_DOCS.md @@ -27,6 +27,7 @@ - add the package into bump-version.ts which bumps package version and its dependencies - add the package external dependencies into rollup-config.ts which gives rollup capability build package correctly - add the package into bundle.ts which build umd modules for our packages +- add the package into `JS_PACKAGES` in `scripts/gulp/tasks/config.ts` which used to add es2015 bundles for our packages - add the package into packages-smoke application dependencies to verify it works properly in isolation. # New Package Dependency Checklist diff --git a/angular.json b/angular.json index 947197aeac..3040e15d4e 100644 --- a/angular.json +++ b/angular.json @@ -26,8 +26,7 @@ "src/favicon.ico" ], "styles": [ - "node_modules/nebular-icons/scss/nebular-icons.scss", - "src/styles.scss" + "node_modules/nebular-icons/scss/nebular-icons.scss" ], "scripts": [] }, @@ -77,8 +76,7 @@ "tsConfig": "src/tsconfig.spec.json", "scripts": [], "styles": [ - "node_modules/nebular-icons/scss/nebular-icons.scss", - "src/styles.scss" + "node_modules/nebular-icons/scss/nebular-icons.scss" ], "assets": [ "src/assets", @@ -147,8 +145,7 @@ "src/favicon.ico" ], "styles": [ - "node_modules/nebular-icons/scss/nebular-icons.scss", - "src/styles.scss" + "node_modules/nebular-icons/scss/nebular-icons.scss" ], "scripts": [] }, @@ -198,8 +195,7 @@ "tsConfig": "src/tsconfig.spec.json", "scripts": [], "styles": [ - "node_modules/nebular-icons/scss/nebular-icons.scss", - "src/styles.scss" + "node_modules/nebular-icons/scss/nebular-icons.scss" ], "assets": [ "src/assets", diff --git a/docs/app/documentation/page/page.component.ts b/docs/app/documentation/page/page.component.ts index 75961a5945..3c22821d60 100644 --- a/docs/app/documentation/page/page.component.ts +++ b/docs/app/documentation/page/page.component.ts @@ -4,7 +4,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. */ -import { Component, Inject, NgZone, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core'; +import { Component, Inject, NgZone, OnDestroy, OnInit } from '@angular/core'; import { Title } from '@angular/platform-browser'; import { ActivatedRoute, Router } from '@angular/router'; import { filter, map, publishReplay, refCount, tap, takeWhile } from 'rxjs/operators'; diff --git a/docs/tsconfig.app.json b/docs/tsconfig.app.json index 52d70edd56..a228f78c30 100644 --- a/docs/tsconfig.app.json +++ b/docs/tsconfig.app.json @@ -16,10 +16,9 @@ "baseUrl": ".", "types": [], "paths": { - "@nebular/theme": ["../src/framework/theme"], - "@nebular/theme/*": ["../src/framework/theme/*"], - "@nebular/auth": ["../src/framework/auth"], - "@nebular/security": ["../src/framework/security"] + "@nebular/theme": ["../src/framework/theme/public_api.ts"], + "@nebular/auth": ["../src/framework/auth/public_api.ts"], + "@nebular/security": ["../src/framework/security/public_api.ts"] } }, "exclude": [ diff --git a/package-lock.json b/package-lock.json index 61c576b83f..401b76d063 100644 --- a/package-lock.json +++ b/package-lock.json @@ -443,7 +443,7 @@ }, "@google-cloud/common": { "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@google-cloud/common/-/common-0.17.0.tgz", + "resolved": "http://registry.npmjs.org/@google-cloud/common/-/common-0.17.0.tgz", "integrity": "sha512-HRZLSU762E6HaKoGfJGa8W95yRjb9rY7LePhjaHK9ILAnFacMuUGVamDbTHu1csZomm1g3tZTtXfX/aAhtie/Q==", "dev": true, "optional": true, @@ -1391,7 +1391,6 @@ "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", "dev": true, - "optional": true, "requires": { "event-target-shim": "^5.0.0" } @@ -1983,7 +1982,6 @@ "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.0.tgz", "integrity": "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=", "dev": true, - "optional": true, "requires": { "follow-redirects": "^1.3.0", "is-buffer": "^1.1.5" @@ -2884,15 +2882,6 @@ } } }, - "caller-id": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/caller-id/-/caller-id-0.1.0.tgz", - "integrity": "sha1-Wb2sCJPRLDhxQIJ5Ix+XRYNk8Hs=", - "dev": true, - "requires": { - "stack-trace": "~0.0.7" - } - }, "callsite": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", @@ -3606,13 +3595,13 @@ "dependencies": { "minimist": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -5489,7 +5478,7 @@ }, "yargs": { "version": "3.32.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", + "resolved": "http://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", "dev": true, "requires": { @@ -5977,11 +5966,6 @@ "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", "dev": true }, - "eva-icons": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/eva-icons/-/eva-icons-1.1.1.tgz", - "integrity": "sha512-Uf7JQMA1lWQLLtHuk1lbMlwP4i3W0jjTy5SCYBGeR6DLPub5Ls2QiJlVT59llphVObXSVwaMuofevwgUZWf1CQ==" - }, "event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", @@ -6022,8 +6006,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, - "optional": true + "dev": true }, "eventemitter3": { "version": "3.1.2", @@ -6736,7 +6719,7 @@ "dependencies": { "ansi-escapes": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "resolved": "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", "dev": true }, @@ -6771,7 +6754,7 @@ }, "inquirer": { "version": "0.12.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", + "resolved": "http://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", "dev": true, "requires": { @@ -6817,7 +6800,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -7145,8 +7128,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -7167,14 +7149,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -7189,20 +7169,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -7319,8 +7296,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -7332,7 +7308,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -7347,7 +7322,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -7355,14 +7329,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -7381,7 +7353,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -7462,8 +7433,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -7475,7 +7445,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -7561,8 +7530,7 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -7598,7 +7566,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -7618,7 +7585,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -7662,14 +7628,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -7757,7 +7721,6 @@ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-1.8.4.tgz", "integrity": "sha512-BoENMnu1Gav18HcpV9IleMPZ9exM+AvUjrAOV4Mzs/vfz2Lu/ABv451iEXByKiMPn2M140uul1txXCg83sAENw==", "dev": true, - "optional": true, "requires": { "abort-controller": "^3.0.0", "extend": "^3.0.2", @@ -7779,7 +7742,6 @@ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-0.6.3.tgz", "integrity": "sha512-MSmczZctbz91AxCvqp9GHBoZOSbJKAICV7Ow/AIWSJZRrRchUd5NL1b2P4OfP+4m490BEUPhhARfpHdqCxuCvg==", "dev": true, - "optional": true, "requires": { "axios": "^0.18.0", "extend": "^3.0.1", @@ -8715,7 +8677,6 @@ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-1.6.1.tgz", "integrity": "sha512-jYiWC8NA9n9OtQM7ANn0Tk464do9yhKEtaJ72pKcaBiEwn4LwcGYIYOfwtfsSm3aur/ed3tlSxbmg24IAT6gAg==", "dev": true, - "optional": true, "requires": { "axios": "^0.18.0", "gcp-metadata": "^0.6.3", @@ -8731,7 +8692,6 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "dev": true, - "optional": true, "requires": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" @@ -8741,8 +8701,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true, - "optional": true + "dev": true } } }, @@ -8808,7 +8767,6 @@ "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-1.0.4.tgz", "integrity": "sha512-SwLAUJqUfTB2iS+wFfSS/G9p7bt4eWcc2LyfvmUXe7cWp6p3mpxDo6LLI29MXdU6wvPcQ/up298X7GMC5ylAlA==", "dev": true, - "optional": true, "requires": { "node-forge": "^0.8.0", "pify": "^4.0.0" @@ -8818,15 +8776,13 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.2.tgz", "integrity": "sha512-mXQ9GBq1N3uDCyV1pdSzgIguwgtVpM7f5/5J4ipz12PKWElmPpVWLDuWl8iXmhysr21+WmX/OJ5UKx82wjomgg==", - "dev": true, - "optional": true + "dev": true }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true + "dev": true } } }, @@ -8956,7 +8912,6 @@ "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-2.3.3.tgz", "integrity": "sha512-EaB49bu/TCoNeQjhCYKI/CurooBKkGxIqFHsWABW0b25fobBYVTMe84A8EBVVZhl8emiUdNypil9huMOTmyAnw==", "dev": true, - "optional": true, "requires": { "gaxios": "^1.0.4", "google-p12-pem": "^1.0.0", @@ -8969,15 +8924,13 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.2.tgz", "integrity": "sha512-zJBfZDkwRu+j3Pdd2aHsR5GfH2jIWhmL1ZzBoc+X+3JEti2hbArWcyJ+1laC1D2/U/W1a/+Cegj0/OnEU2ybjg==", - "dev": true, - "optional": true + "dev": true }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true + "dev": true } } }, @@ -10527,13 +10480,13 @@ "dependencies": { "minimist": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -10639,13 +10592,13 @@ }, "minimist": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -10687,13 +10640,13 @@ }, "minimist": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -12335,8 +12288,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true, - "optional": true + "dev": true }, "min-document": { "version": "2.19.0", @@ -12497,15 +12449,6 @@ "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz", "integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4=" }, - "mock-require": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mock-require/-/mock-require-2.0.2.tgz", - "integrity": "sha1-HqpxqtIwE3c9En3H6Ro/u0g31g0=", - "dev": true, - "requires": { - "caller-id": "^0.1.0" - } - }, "modelo": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/modelo/-/modelo-4.2.3.tgz", @@ -12680,6 +12623,11 @@ "dev": true, "optional": true }, + "nebular-icons": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/nebular-icons/-/nebular-icons-1.1.0.tgz", + "integrity": "sha512-4TkJgDrjXw8qsOsc2NN6OBlRJYAJJpvqtjV+gpv+NV6amPgMPQNNuEvbenYXAMFmjs3uShgKOvmpnCX8Ua1oWQ==" + }, "negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", @@ -12708,8 +12656,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.4.1.tgz", "integrity": "sha512-P9UbpFK87NyqBZzUuDBDz4f6Yiys8xm8j7ACDbi6usvFm6KItklQUKjeoqTrYS/S1k6I8oaOC2YLLDr/gg26Mw==", - "dev": true, - "optional": true + "dev": true }, "node-fetch-npm": { "version": "2.0.2", @@ -13462,7 +13409,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -13565,7 +13512,7 @@ }, "p-cancelable": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", + "resolved": "http://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", "dev": true, "optional": true @@ -15328,8 +15275,7 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/retry-axios/-/retry-axios-0.3.2.tgz", "integrity": "sha512-jp4YlI0qyDFfXiXGhkCOliBN1G7fRH03Nqy8YdShzGqbY5/9S2x/IR6C88ls2DFkbWuL3ASkP7QD3pVrNpPgwQ==", - "dev": true, - "optional": true + "dev": true }, "retry-request": { "version": "3.3.2", @@ -15459,6 +15405,16 @@ "aproba": "^1.1.1" } }, + "run-sequence": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/run-sequence/-/run-sequence-1.2.2.tgz", + "integrity": "sha1-UJWgvr6YczsBQL0I3YDsAw3azes=", + "dev": true, + "requires": { + "chalk": "*", + "gulp-util": "*" + } + }, "rx-lite": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", @@ -16751,7 +16707,6 @@ "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz", "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==", "dev": true, - "optional": true, "requires": { "stubs": "^3.0.0" } @@ -16896,8 +16851,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=", - "dev": true, - "optional": true + "dev": true }, "style-loader": { "version": "0.23.1", @@ -18091,15 +18045,6 @@ } } }, - "tslint-language-service": { - "version": "0.9.9", - "resolved": "https://registry.npmjs.org/tslint-language-service/-/tslint-language-service-0.9.9.tgz", - "integrity": "sha1-9UbcOEg5eeb7PPpZWErYUls61No=", - "dev": true, - "requires": { - "mock-require": "^2.0.2" - } - }, "tsutils": { "version": "2.29.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", @@ -18488,7 +18433,7 @@ "dependencies": { "bluebird": { "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", + "resolved": "http://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=", "dev": true }, @@ -18887,13 +18832,13 @@ }, "minimist": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { @@ -19034,13 +18979,13 @@ }, "minimist": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { diff --git a/package.json b/package.json index d1836696d4..21f4b9c802 100644 --- a/package.json +++ b/package.json @@ -34,20 +34,14 @@ "build": "ng build", "build:prod": "npm run build -- --prod", "build:wp": "npm run build -- playground-wp --prod --aot", - "build:package": "npm-run-all -s clean:tmp:lib gulp build:ts build:schematics:package build:inline-resources build:bundle clean:tmp", - "build:ts": "tsc -p tsconfig.publish.json && ngc -p tsconfig.publish.json", - "build:schematics:package": "tsc -p tsconfig.schematics.publish.json", - "build:schematics:dev": "rimraf ./src/.lib && tsc -p tsconfig.schematics.json && npm run build:inline-schematics-resources", - "build:inline-schematics-resources": "gulp inline-schematics-resources", - "build:inline-resources": "gulp inline-resources", - "build:bundle": "gulp bundle", + "build:package": "npm-run-all -s clean:all \"gulp prepare-packages\" clean:tmp", "build:rename:dev": "gulp bundle:rename-dev", - "build:schematics": "rimraf ./schematics/dist && tsc -p ./schematics/tsconfig.json && gulp copy-schematics", + "build:dev-schematics": "rimraf ./schematics/dist && gulp build-development-schematics", "test": "ng test", "test:wp": "npm run test -- playground-wp", "test:watch": "ng test playground-wp --watch", "test:coverage": "rimraf coverage && ng test playground --code-coverage --watch=false", - "test:schematics": "npm run build:schematics:dev && jasmine ./src/.lib/**/*.spec.js", + "test:schematics": "rimraf ./src/.lib && gulp build-packages-schematics-for-test && jasmine ./src/.lib/**/*.spec.js", "lint": "ng lint playground --type-check", "lint:styles": "stylelint ./src/framework/**/*.scss && stylelint ./docs/**/*.scss", "lint:fix": "npm run lint -- --fix", @@ -55,12 +49,13 @@ "e2e": "ng e2e playground-e2e", "e2e:wp": "ng e2e playground-wp-e2e", "prepush": "npm run ci:lint", - "clean:tmp": "rimraf .ng_build .ng_compiled", - "clean:tmp:lib": "npm run clean:tmp && rimraf src/.lib", + "clean:tmp": "rimraf .ng_build .ng_compiled tsconfig-custom.publish.json tsconfig.build*", + "clean:lib": "rimraf src/.lib", + "clean:all": "npm-run-all -p clean:tmp clean:lib", "ci:lint": "npm run lint && npm run lint:styles", - "ci:docs": "npm-run-all docs:prepare docs:build ", + "ci:docs": "npm-run-all docs:prepare docs:build", "ci:dev-deploy": "npm run firebase use dev && npm run firebase deploy", - "ci:build": "npm-run-all build -- --prod --aot build:package build:wp", + "ci:build": "npm-run-all -s build:prod build:package build:wp", "ci:test": "rimraf coverage && npm run build:package && npm run test:wp -- --code-coverage --watch=false && npm run test:schematics", "ci:e2e": "npm-run-all build:package e2e:wp", "version:bump": "gulp version", @@ -73,7 +68,7 @@ "publish": "./scripts/publish.sh", "update-packages-smoke-lock": "./scripts/update-packages-smoke-lock.sh", "cli:firefox-fix": "rimraf node_modules/@angular-devkit/build-angular/node_modules/uglify-es && rimraf node_modules/@angular-devkit/build-angular/node_modules/uglifyjs-webpack-plugin", - "postinstall": "npm run cli:firefox-fix", + "postinstall": "npm-run-all -p cli:firefox-fix build:dev-schematics", "gen:playground": "ng g .:playground", "gen:playground-module": "ng g .:playground-module", "gen:playground-components": "ng g .:playground-components" @@ -165,11 +160,11 @@ "pump": "1.0.2", "rimraf": "2.6.1", "rollup-plugin-node-resolve": "3.0.0", + "run-sequence": "^1.2.2", "stylelint": "7.13.0", "through2": "^2.0.3", "ts-node": "8.1.0", "tslint": "5.8.0", - "tslint-language-service": "0.9.9", "typedoc": "^0.12.0", "typescript": "3.4.5", "uglify-es": "3.3.9", diff --git a/packages-smoke/angular.json b/packages-smoke/angular.json index c9c69ddd8d..72f53952f0 100644 --- a/packages-smoke/angular.json +++ b/packages-smoke/angular.json @@ -68,6 +68,24 @@ "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true + }, + "production-2015": { + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "aot": true, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "tsConfig": "./tsconfig.es2015.json" } } }, @@ -79,6 +97,9 @@ "configurations": { "production": { "browserTarget": "packages-smoke:build:production" + }, + "production-2015": { + "browserTarget": "packages-smoke:build:production-2015" } } }, @@ -132,6 +153,9 @@ "configurations": { "production": { "devServerTarget": "packages-smoke:serve:production" + }, + "production-2015": { + "devServerTarget": "packages-smoke:serve:production-2015" } } }, diff --git a/packages-smoke/tsconfig.es2015.json b/packages-smoke/tsconfig.es2015.json new file mode 100644 index 0000000000..1164c821d2 --- /dev/null +++ b/packages-smoke/tsconfig.es2015.json @@ -0,0 +1,6 @@ +{ + "extends": "./tsconfig", + "compilerOptions": { + "target": "es2015" + } +} diff --git a/schematics/tsconfig.json b/schematics/tsconfig.json index 5b8f878615..c300a2b4b9 100644 --- a/schematics/tsconfig.json +++ b/schematics/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "baseUrl": "tsconfig", + "baseUrl": ".", "lib": [ "es2017", "dom" @@ -15,7 +15,10 @@ "noImplicitThis": true, "noUnusedParameters": true, "noUnusedLocals": true, - "rootDir": "./", + "rootDir": ".", + "rootDirs": [ + "../src/framework/theme/schematics/util" + ], "skipDefaultLibCheck": true, "skipLibCheck": true, "sourceMap": true, @@ -27,13 +30,10 @@ ] }, "include": [ - "./**/*", - "../src/.lib/theme/schematics/util", - "../node_modules/@angular/cdk/schematics/utils", - "../node_modules/@schematics/angular/utility" + "./**/*" ], "exclude": [ - "./*/files/**/*", + "./**/files/**/*", "dist" ] } diff --git a/scripts/ci/packages-smoke.sh b/scripts/ci/packages-smoke.sh index c1a1371c92..64f44e6122 100755 --- a/scripts/ci/packages-smoke.sh +++ b/scripts/ci/packages-smoke.sh @@ -17,8 +17,10 @@ packages_smoke() { cp -r ../nebular/src/.lib/* node_modules/@nebular echo "Verifying application build" - npm run build --prod --aot + npm run build -- --prod + npm run build -- --configuration=production-2015 npm run e2e + npm run e2e -- --configuration=production-2015 echo "Clean" cd ..; rm -rf -- ${PROJECT} diff --git a/scripts/gulp/gulpfile.ts b/scripts/gulp/gulpfile.ts index b6f5e0c40b..1fcb73eb3d 100644 --- a/scripts/gulp/gulpfile.ts +++ b/scripts/gulp/gulpfile.ts @@ -1,9 +1,8 @@ -import { task } from 'gulp'; - -import './tasks/inline-resources/inline-resources'; -import './tasks/bundle/bundle'; -import './tasks/docs/docs'; -import './tasks/copy-sources'; +import './tasks/build/build'; +import './tasks/build/resources'; +import './tasks/build/compile/scss'; +import './tasks/build/compile/typescript'; +import './tasks/build/bundle/bundle'; +import './tasks/build/bundle/bundles-paths'; import './tasks/bump-versions'; - -task('default', ['copy-sources']); +import './tasks/docs/docs'; diff --git a/scripts/gulp/tasks/build/build.ts b/scripts/gulp/tasks/build/build.ts new file mode 100644 index 0000000000..64849d19ae --- /dev/null +++ b/scripts/gulp/tasks/build/build.ts @@ -0,0 +1,55 @@ +import { task, src, dest } from 'gulp'; +import * as runSequence from 'run-sequence'; + +import { BUILD_DIR, SOURCE_DIR } from '../config'; + +task('prepare-packages', (done) => { + runSequence( + 'copy-to-build-dir', + 'build-js-packages', + // copy non js packages + + 'build-packages-schematics', + + done, + ); +}); + +task('copy-to-build-dir', () => { + return src(`${SOURCE_DIR}/**/*`).pipe(dest(BUILD_DIR)); +}); + +task('build-js-packages', (done) => { + runSequence( + 'compile-scss', + 'compile-packages', + 'copy-packages-resources', + 'bundle', + 'set-bundles-paths', + done, + ); +}); + +task('build-packages-schematics', (done) => { + runSequence( + 'compile-packages-schematics', + 'copy-packages-schematics-resources', + done, + ); +}); + +task('build-packages-schematics-for-test', (done) => { + runSequence( + 'compile-packages-schematics-for-test', + 'copy-packages-schematics-resources-for-test', + done, + ); +}); + +task('build-development-schematics', (done) => { + runSequence( + 'compile-development-schematics', + 'copy-development-schematics-resources', + done, + ); +}); diff --git a/scripts/gulp/tasks/build/bundle/bundle.ts b/scripts/gulp/tasks/build/bundle/bundle.ts new file mode 100644 index 0000000000..aa6829a590 --- /dev/null +++ b/scripts/gulp/tasks/build/bundle/bundle.ts @@ -0,0 +1,74 @@ +import { dest, src, task } from 'gulp'; +import * as rollup from 'gulp-rollup'; +import * as rename from 'gulp-rename'; +import * as replace from 'gulp-replace'; + +import { JS_PACKAGES, LIB_DIR } from '../../config'; +import { ROLLUP_COMMON_CONFIG } from './rollup-config'; + +task('bundle', [ + ...JS_PACKAGES.map(packageName => `bundle:fesm2015:${packageName}`), + ...JS_PACKAGES.map(packageName => `bundle:fesm5:${packageName}`), + ...JS_PACKAGES.map(packageName => `bundle:umd:${packageName}`), +]); + +for (const packageName of JS_PACKAGES) { + task(`bundle:fesm2015:${packageName}`, () => bundleFesm2015Module(packageName)); + task(`bundle:fesm5:${packageName}`, () => bundleFesm5Module(packageName)); + task(`bundle:umd:${packageName}`, () => bundleUmdModule(packageName)); +} + +task('bundle:rename-dev', bundleRenameDev); + +function bundleFesm2015Module(name: string) { + return bundle({ + src: `${LIB_DIR}/${name}/esm2015/**/*.js`, + moduleName: `nb.${name}`, + entry: `${LIB_DIR}/${name}/esm2015/index.js`, + format: 'es', + output: `index.js`, + dest: `${LIB_DIR}/${name}/fesm2015`, + }); +} + +function bundleFesm5Module(name: string) { + return bundle({ + src: `${LIB_DIR}/${name}/esm5/**/*.js`, + moduleName: `nb.${name}`, + entry: `${LIB_DIR}/${name}/esm5/index.js`, + format: 'es', + output: `index.js`, + dest: `${LIB_DIR}/${name}/fesm5`, + }); +} + +function bundleUmdModule(name: string) { + return bundle({ + src: `${LIB_DIR}/${name}/esm5/**/*.js`, + moduleName: `nb.${name}`, + entry: `${LIB_DIR}/${name}/esm5/index.js`, + format: 'umd', + output: `${name}.umd.js`, + dest: `${LIB_DIR}/${name}/bundles`, + }); +} + +function bundle(config: any) { + return src(config.src) + .pipe(rollup(Object.assign({}, ROLLUP_COMMON_CONFIG, { + moduleName: config.moduleName, + entry: config.entry, + format: config.format, + }))) + .pipe(rename(config.output)) + .pipe(dest(config.dest)); +} + +function bundleRenameDev() { + return src([ + `${LIB_DIR}/**/*.*`, + ], { base: './' }) + .pipe(replace('@nebular', '@nebular-dev')) + .pipe(dest('./')); +} + diff --git a/scripts/gulp/tasks/build/bundle/bundles-paths.ts b/scripts/gulp/tasks/build/bundle/bundles-paths.ts new file mode 100644 index 0000000000..eb00366d8e --- /dev/null +++ b/scripts/gulp/tasks/build/bundle/bundles-paths.ts @@ -0,0 +1,34 @@ +import { basename, dirname } from 'path'; +import * as through from 'through2'; +import { dest, src, task } from 'gulp'; + +import { JS_PACKAGES, LIB_DIR } from '../../config'; + +task('set-bundles-paths', () => { + return src( + JS_PACKAGES.map(packageName => `${LIB_DIR}/${packageName}/package.json`), + { base: LIB_DIR }, + ) + .pipe(setBundlesPathStream()) + .pipe(dest(LIB_DIR)); +}); + +function setBundlesPathStream() { + return through.obj(function (file, encoding, callback) { + const packageName = basename(dirname(file.path)); + const packageJson = JSON.parse(file.contents.toString(encoding)); + + packageJson['main'] = `bundles/${packageName}.umd.js`; + packageJson['module'] = 'fesm5/index.js'; + packageJson['es2015'] = 'fesm2015/index.js'; + packageJson['esm5'] = 'esm5/index.js'; + packageJson['esm2015'] = 'esm2015/index.js'; + packageJson['fesm5'] = 'fesm5/index.js'; + packageJson['fesm2015'] = 'fesm2015/index.js'; + packageJson['typings'] = 'index.d.ts'; + packageJson['metadata'] = 'index.metadata.json'; + + file.contents = Buffer.from(JSON.stringify(packageJson, null, 2) + '\n'); + callback(null, file); + }); +} diff --git a/scripts/gulp/tasks/bundle/rollup-config.ts b/scripts/gulp/tasks/build/bundle/rollup-config.ts similarity index 100% rename from scripts/gulp/tasks/bundle/rollup-config.ts rename to scripts/gulp/tasks/build/bundle/rollup-config.ts diff --git a/scripts/gulp/tasks/build/compile/scss.ts b/scripts/gulp/tasks/build/compile/scss.ts new file mode 100644 index 0000000000..9fbc85befc --- /dev/null +++ b/scripts/gulp/tasks/build/compile/scss.ts @@ -0,0 +1,21 @@ +import * as path from 'path'; +import { dest, src, task } from 'gulp'; +import * as sass from 'gulp-sass'; + +import { BUILD_DIR } from '../../config'; + +task('compile-scss', () => { + return src(`${BUILD_DIR}/**/*.scss`) + .pipe(sass({ + outputStyle: 'compressed', + importer: function (url: any, _: any, done: any) { + if (url[0] === '~') { + url = path.resolve('node_modules', url.substr(1)); + } + done({ + file: url, + }); + }, + })) + .pipe(dest(BUILD_DIR)); +}); diff --git a/scripts/gulp/tasks/build/compile/ts-configs.ts b/scripts/gulp/tasks/build/compile/ts-configs.ts new file mode 100644 index 0000000000..ad301ec8bb --- /dev/null +++ b/scripts/gulp/tasks/build/compile/ts-configs.ts @@ -0,0 +1,64 @@ +import { writeFileSync } from 'fs'; + +export function createTsConfigEsm2015(packageName): string { + const config = `{ + "extends": "./tsconfig.publish", + "compilerOptions": { + "outDir": "./src/.lib/${packageName}/esm2015", + "declaration": true, + "declarationDir": "./src/.lib/${packageName}", + "rootDir": "./.ng_build/${packageName}" + }, + "files": ["./.ng_build/${packageName}/public_api.ts"], + "angularCompilerOptions": { + "skipTemplateCodegen": true, + "strictMetadataEmit": true, + "fullTemplateTypeCheck": true, + "strictInjectionParameters": true, + "enableResourceInlining": true, + "skipMetadataEmit": false, + "strictTypeChecks": true, + "flatModuleOutFile": "index.js", + "flatModuleId": "@nebular/${packageName}" + } +}`; + + const configName = `tsconfig.build-esm2015.${packageName}.json`; + writeConfig(configName, config); + + return configName; +} + +export function createTsConfigEsm5(packageName): string { + const config = ` +{ + "extends": "./tsconfig.publish", + "compilerOptions": { + "outDir": "./src/.lib/${packageName}/esm5", + "declaration": false, + "target": "es5", + "rootDir": "./.ng_build/${packageName}" + }, + "files": ["./.ng_build/${packageName}/public_api.ts"], + "angularCompilerOptions": { + "skipTemplateCodegen": true, + "strictMetadataEmit": false, + "fullTemplateTypeCheck": true, + "strictInjectionParameters": true, + "enableResourceInlining": true, + "skipMetadataEmit": true, + "strictTypeChecks": true, + "flatModuleOutFile": "index.js", + "flatModuleId": "@nebular/${packageName}" + } +}`; + + const configName = `tsconfig.build-esm5.${packageName}.json`; + writeConfig(configName, config); + + return configName; +} + +function writeConfig(fileName: string, config: string): void { + writeFileSync(fileName, config); +} diff --git a/scripts/gulp/tasks/build/compile/typescript.ts b/scripts/gulp/tasks/build/compile/typescript.ts new file mode 100644 index 0000000000..a3c71d6334 --- /dev/null +++ b/scripts/gulp/tasks/build/compile/typescript.ts @@ -0,0 +1,65 @@ +import { spawn } from 'child_process'; +import { resolve as resolvePath } from 'path'; +import { dest, src, task } from 'gulp'; +import * as replace from 'gulp-replace'; +import * as log from 'fancy-log'; +import * as runSequence from 'run-sequence'; + +import { createTsConfigEsm2015, createTsConfigEsm5 } from './ts-configs'; +import { BUILD_DIR, DEV_SCHEMATICS_PATH, JS_PACKAGES } from '../../config'; + +task('compile-packages-schematics', () => { + return tsCompile('tsc', ['-p', 'tsconfig.schematics.publish.json']); +}); + +task('compile-packages-schematics-for-test', () => { + return tsCompile('tsc', ['-p', 'tsconfig.schematics.json']); +}); + +task('compile-development-schematics', () => { + return tsCompile('tsc', ['-p', `${DEV_SCHEMATICS_PATH}/tsconfig.json`]); +}); + +task('compile-packages', ['replace-scss-with-css'], (done) => { + runSequence( + // theme package should be built first so then we can direct other dependant packages + // to the theme typings + 'compile-theme', + JS_PACKAGES.filter(p => p !== 'theme') + .map(p => `compile-${p}`), + + done, + ); +}); + +for (const packageName of JS_PACKAGES) { + task(`compile-${packageName}`, () => { + const esm2015configFileName = createTsConfigEsm2015(packageName); + const esm5configFileName = createTsConfigEsm5(packageName); + + return Promise.all([ + tsCompile('ngc', ['-p', esm2015configFileName]), + tsCompile('ngc', ['-p', esm5configFileName]), + ]); + }); +} + +task('replace-scss-with-css', () => { + return src(`${BUILD_DIR}/**/*.ts`) + .pipe(replace('.scss', '.css')) + .pipe(dest(BUILD_DIR)); +}); + +// github.com/angular/components/blob/3a237bd254cd3c02a913e3cd2faef8546203c252/tools/package-tools/ts-compile.ts#L11 +function tsCompile(binary: 'ngc' | 'tsc', flags: string[]): Promise { + return new Promise((resolve, reject) => { + const binaryPath = resolvePath(`./node_modules/.bin/${binary}`); + const childProcess = spawn(binaryPath, flags, {shell: true}); + + childProcess.stdout.on('data', (data: string|Buffer) => log(`${data}`)); + childProcess.stderr.on('data', (data: string|Buffer) => log.error(`${data}`)); + childProcess.on('exit', (exitCode: number) => { + exitCode === 0 ? resolve() : reject(`${binary} compilation failure`); + }); + }); +} diff --git a/scripts/gulp/tasks/build/resources.ts b/scripts/gulp/tasks/build/resources.ts new file mode 100644 index 0000000000..5e8753c304 --- /dev/null +++ b/scripts/gulp/tasks/build/resources.ts @@ -0,0 +1,44 @@ +import { dest, src, task } from 'gulp'; +import { BUILD_DIR, DEV_SCHEMATICS_PATH, JS_PACKAGES, LIB_DIR, SOURCE_DIR } from '../config'; + +task('copy-packages-resources', () => { + return src([ + `${BUILD_DIR}/**/*.html`, + `${BUILD_DIR}/**/*.css`, + `${SOURCE_DIR}/**/*.scss`, + `${SOURCE_DIR}/**/LICENSE.txt`, + `${SOURCE_DIR}/**/README.md`, + `${SOURCE_DIR}/**/package.json`, + '!./**/dist/**/*', + ]) + .pipe(dest(LIB_DIR)); +}); + +task('copy-packages-schematics-resources', () => { + const paths = JS_PACKAGES.reduce((allPaths: string[], packageName: string) => { + return allPaths.concat(schematicFilePaths(`${SOURCE_DIR}/${packageName}/schematics`)); + }, []); + + return src(paths, { base: SOURCE_DIR }).pipe(dest(LIB_DIR)); +}); + +task('copy-packages-schematics-resources-for-test', ['copy-packages-schematics-resources'], () => { + return src( + JS_PACKAGES.map(packageName => `${SOURCE_DIR}/${packageName}/package.json`), + { base: SOURCE_DIR }, + ) + .pipe(dest(LIB_DIR)); +}); + +task('copy-development-schematics-resources', () => { + return src(schematicFilePaths(DEV_SCHEMATICS_PATH)) + .pipe(dest(`${DEV_SCHEMATICS_PATH}/dist`)); +}); + +function schematicFilePaths(basePath: string): string[] { + return [ + `${basePath}/**/*.json`, + `${basePath}/**/files/**/*`, + '!./**/dist/**/*', + ]; +} diff --git a/scripts/gulp/tasks/bump-versions.ts b/scripts/gulp/tasks/bump-versions.ts index 480fb9dd2b..0e6c4f73af 100644 --- a/scripts/gulp/tasks/bump-versions.ts +++ b/scripts/gulp/tasks/bump-versions.ts @@ -41,7 +41,7 @@ function bumpVersionAndNebularPeers(pkgPath: string) { .forEach(peer => pkgJson.peerDependencies[peer] = VERSION); } - file.contents = Buffer.from(JSON.stringify(pkgJson, null, 2)); + file.contents = Buffer.from(JSON.stringify(pkgJson, null, 2) + '\n'); callback(null, file); })) .pipe(dest('./')); diff --git a/scripts/gulp/tasks/bundle/bundle.ts b/scripts/gulp/tasks/bundle/bundle.ts deleted file mode 100644 index fed2ee37be..0000000000 --- a/scripts/gulp/tasks/bundle/bundle.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { dest, src, task } from 'gulp'; -import { ROLLUP_COMMON_CONFIG } from './rollup-config'; -import { LIB_DIR } from '../config'; - -const rollup = require('gulp-rollup'); -const rename = require('gulp-rename'); -const replace = require('gulp-replace'); - -task('bundle', [ - 'bundle:umd:theme', - 'bundle:umd:auth', - 'bundle:umd:security', - 'bundle:umd:moment', - 'bundle:umd:date-fns', -]); - -task('bundle:umd:theme', () => bundleUmdModule('theme')); -task('bundle:umd:auth', () => bundleUmdModule('auth')); -task('bundle:umd:security', () => bundleUmdModule('security')); -task('bundle:umd:moment', () => bundleUmdModule('moment')); -task('bundle:umd:date-fns', () => bundleUmdModule('date-fns')); -task('bundle:rename-dev', bundleRenameDev); - -function bundleUmdModule(name: string) { - bundle({ - src: `${LIB_DIR}/${name}/**/*.js`, - moduleName: `nb.${name}`, - entry: `${LIB_DIR}/${name}/index.js`, - format: 'umd', - output: `${name}.umd.js`, - dest: `${LIB_DIR}/${name}/bundles`, - }); -} - -function bundle(config: any) { - src(config.src) - .pipe(rollup(Object.assign({}, ROLLUP_COMMON_CONFIG, { - moduleName: config.moduleName, - entry: config.entry, - format: config.format, - }))) - .pipe(rename(config.output)) - .pipe(dest(config.dest)); -} - -function bundleRenameDev() { - src([ - `${LIB_DIR}/**/*.*`, - ], { base: './' }) - .pipe(replace('@nebular', '@nebular-dev')) - .pipe(dest('./')); -} - diff --git a/scripts/gulp/tasks/config.ts b/scripts/gulp/tasks/config.ts index e4a4cd71e0..754573732c 100644 --- a/scripts/gulp/tasks/config.ts +++ b/scripts/gulp/tasks/config.ts @@ -1,6 +1,14 @@ +export const SOURCE_DIR = './src/framework'; export const BUILD_DIR = './.ng_build'; export const LIB_DIR = './src/.lib'; -export const PLAYGROUND_ROOT = './src/playground/'; export const DOCS_OUTPUT = './docs/output.json'; export const EXTENSIONS = ['ts', 'html', 'scss']; export const DOCS_DIST = './docs/dist'; +export const DEV_SCHEMATICS_PATH = './schematics'; +export const JS_PACKAGES = [ + 'auth', + 'date-fns', + 'moment', + 'security', + 'theme', +]; diff --git a/scripts/gulp/tasks/copy-sources.ts b/scripts/gulp/tasks/copy-sources.ts deleted file mode 100644 index b39c22dadc..0000000000 --- a/scripts/gulp/tasks/copy-sources.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { dest, src, task } from 'gulp'; -import * as path from 'path'; -import { BUILD_DIR } from './config'; - -const sass = require('gulp-sass'); -const replace = require('gulp-replace'); - -task('copy-sources', () => { - src('./src/framework/**/*') - .pipe(dest(BUILD_DIR)) - .on('end', replaceScssWithCss); -}); - -task('copy-schematics', () => { - src([ - './schematics/**/*.json', - './schematics/**/files/**/*', - '!./schematics/dist/**/*', - ]) - .pipe(dest('./schematics/dist/')); -}); - -function replaceScssWithCss() { - src(`${BUILD_DIR}/**/*.ts`) - .pipe(replace('.scss', '.css')) - .pipe(dest(BUILD_DIR)) - .on('end', compileSass); -} - -function compileSass() { - src(`${BUILD_DIR}/**/*.scss`) - .pipe(sass({ - outputStyle: 'compressed', - importer: function (url: any, _: any, done: any) { - if (url[0] === '~') { - url = path.resolve('node_modules', url.substr(1)); - } - done({ - file: url, - }); - }, - })) - .pipe(dest(BUILD_DIR)); -} - diff --git a/scripts/gulp/tasks/inline-resources/copy-resources.ts b/scripts/gulp/tasks/inline-resources/copy-resources.ts deleted file mode 100644 index 7413e4c156..0000000000 --- a/scripts/gulp/tasks/inline-resources/copy-resources.ts +++ /dev/null @@ -1,131 +0,0 @@ -import * as fs from 'fs'; -import * as path from 'path'; -import * as glob from 'glob'; - -/** - * Simple Promiseify function that takes a Node API and return a version that supports promises. - * We use promises instead of synchronized functions to make the process less I/O bound and - * faster. It also simplify the code. - */ -function promiseify(fn) { - return function (...args) { - return new Promise((resolve, reject) => { - fn.apply(this, args.concat([function (err, value) { - if (err) { - reject(err); - } else { - resolve(value); - } - }])); - }); - }; -} - -const readFile = promiseify(fs.readFile); -const writeFile = promiseify(fs.writeFile); - - -export function copyResources(globs) { - if (typeof globs === 'string') { - globs = [globs]; - } - - /** - * For every argument, inline the templates and styles under it and write the new file. - */ - return Promise.all(globs.map(pattern => { - if (pattern.indexOf('*') < 0) { - // Argument is a directory target, add glob patterns to include every files. - pattern = path.join(pattern, '**', '*'); - } - - const files = glob.sync(pattern, {}) - .filter(name => /\.js$/.test(name)); // Matches only JavaScript files. - - // Generate all files content with inlined templates. - return Promise.all(files.map(filePath => { - return readFile(filePath, 'utf-8') - .then(content => inlineResourcesFromString(content, url => { - return path.join(path.dirname(filePath), url); - })) - .then(content => writeFile(filePath, content)) - .catch(err => { - console.error('An error occurred: ', err); - }); - })); - })); -} - -/** - * Inline resources from a string content. - * @param content {string} The source file's content. - * @param urlResolver {Function} A resolver that takes a URL and return a path. - * @returns {string} The content with resources inlined. - */ -function inlineResourcesFromString(content, urlResolver) { - // Curry through the inlining functions. - return [ - inlineTemplate, - inlineStyle, - removeModuleId, - ].reduce((с, fn) => fn(с, urlResolver), content); -} - -if (require.main === module) { - copyResources(process.argv.slice(2)); -} - - -/** - * Inline the templates for a source file. Simply search for instances of `templateUrl: ...` and - * replace with `template: ...` (with the content of the file included). - * @param content {string} The source file's content. - * @param urlResolver {Function} A resolver that takes a URL and return a path. - * @return {string} The content with all templates inlined. - */ -function inlineTemplate(content, urlResolver) { - return content.replace(/templateUrl:\s*'([^']+?\.html)'/g, function (_, templateUrl) { - const templateFile = urlResolver(templateUrl); - const templateContent = fs.readFileSync(templateFile, 'utf-8'); - const shortenedTemplate = templateContent - .replace(/([\n\r]\s*)+/gm, ' ') - .replace(/"/g, '\\"'); - return `template: "${shortenedTemplate}"`; - }); -} - - -/** - * Inline the styles for a source file. Simply search for instances of `styleUrls: [...]` and - * replace with `styles: [...]` (with the content of the file included). - * @param urlResolver {Function} A resolver that takes a URL and return a path. - * @param content {string} The source file's content. - * @return {string} The content with all styles inlined. - */ -function inlineStyle(content, urlResolver) { - return content.replace(/styleUrls:\s*(\[[\s\S]*?\])/gm, function (_, styleUrls) { - // tslint:disable-next-line - const urls = eval(styleUrls); - return 'styles: [' + - urls.map(styleUrl => { - const styleFile = urlResolver(styleUrl); - const styleContent = fs.readFileSync(styleFile, 'utf-8'); - const shortenedStyle = styleContent - .replace(/([\n\r]\s*)+/gm, ' ') - .replace(/"/g, '\\"'); - return `"${shortenedStyle}"`; - }) - .join(',\n') + - ']'; - }); -} - - -/** - * Remove every mention of `moduleId: module.id`. - * @param content {string} The source file's content. - * @returns {string} The content with all moduleId: mentions removed. - */ -function removeModuleId(content) { - return content.replace(/\s*moduleId:\s*module\.id\s*,?\s*/gm, ''); -} diff --git a/scripts/gulp/tasks/inline-resources/inline-resources.ts b/scripts/gulp/tasks/inline-resources/inline-resources.ts deleted file mode 100644 index fd2af41dea..0000000000 --- a/scripts/gulp/tasks/inline-resources/inline-resources.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { dest, src, task } from 'gulp'; -import { copyResources } from './copy-resources'; -import { BUILD_DIR, LIB_DIR } from '../config'; - -task('inline-resources', ['inline-schematics-resources'], () => { - src([ - `${BUILD_DIR}/**/*.html`, - `${BUILD_DIR}/**/*.css`, - `${BUILD_DIR}/**/*.scss`, - `${BUILD_DIR}/**/LICENSE.txt`, - `${BUILD_DIR}/**/README.md`, - `${BUILD_DIR}/**/package.json`, - ]) - .pipe(dest(LIB_DIR)) - .on('end', () => copyResources(LIB_DIR)); -}); - -task('inline-schematics-resources', () => { - src([ - `./src/framework/**/schematics/**/*.json`, - `./src/framework/**/package.json`, - ]).pipe(dest(LIB_DIR)); -}); diff --git a/src/app/components-list/components-list.component.ts b/src/app/components-list/components-list.component.ts index a60baa02e0..2c4546bde9 100644 --- a/src/app/components-list/components-list.component.ts +++ b/src/app/components-list/components-list.component.ts @@ -2,9 +2,18 @@ import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input, QueryList, ViewChildren, } from '@angular/core'; import { RouterLinkActive } from '@angular/router'; -import { convertToBoolProperty } from '@nebular/theme/components/helpers'; import { ComponentLink } from '../playground-components'; +export function convertToBoolProperty(val: any): boolean { + if (typeof val === 'string') { + val = val.toLowerCase().trim(); + + return (val === 'true' || val === ''); + } + + return !!val; +} + @Component({ selector: 'nb-components-list', styleUrls: [ './components-list.component.scss' ], diff --git a/src/framework/auth/auth.module.ts b/src/framework/auth/auth.module.ts index b61fdaaff1..c805591f39 100644 --- a/src/framework/auth/auth.module.ts +++ b/src/framework/auth/auth.module.ts @@ -13,23 +13,16 @@ import { NbLayoutModule, } from '@nebular/theme'; -import { - NB_AUTH_FALLBACK_TOKEN, - NbAuthService, - NbAuthSimpleToken, - NbAuthTokenClass, - NbAuthTokenParceler, - NbTokenLocalStorage, - NbTokenService, - NbTokenStorage, -} from './services'; -import { - NbAuthStrategy, - NbAuthStrategyOptions, - NbDummyAuthStrategy, - NbOAuth2AuthStrategy, - NbPasswordAuthStrategy, -} from './strategies'; +import { NbAuthService } from './services/auth.service'; +import { NbAuthSimpleToken, NbAuthTokenClass } from './services/token/token'; +import { NbTokenLocalStorage, NbTokenStorage } from './services/token/token-storage'; +import { NbTokenService } from './services/token/token.service'; +import { NbAuthTokenParceler, NB_AUTH_FALLBACK_TOKEN } from './services/token/token-parceler'; +import { NbAuthStrategy } from './strategies/auth-strategy'; +import { NbAuthStrategyOptions } from './strategies/auth-strategy-options'; +import { NbDummyAuthStrategy } from './strategies/dummy/dummy-strategy'; +import { NbOAuth2AuthStrategy } from './strategies/oauth2/oauth2-strategy'; +import { NbPasswordAuthStrategy } from './strategies/password/password-strategy'; import { defaultAuthOptions, diff --git a/src/framework/auth/auth.options.ts b/src/framework/auth/auth.options.ts index 0898082402..4e2bc92e6d 100644 --- a/src/framework/auth/auth.options.ts +++ b/src/framework/auth/auth.options.ts @@ -1,6 +1,7 @@ import { InjectionToken } from '@angular/core'; import { HttpRequest } from '@angular/common/http'; -import { NbAuthStrategy, NbAuthStrategyOptions } from './strategies'; +import { NbAuthStrategy } from './strategies/auth-strategy'; +import { NbAuthStrategyOptions } from './strategies/auth-strategy-options'; import { NbAuthToken, NbAuthTokenClass } from './services/token/token'; export type NbAuthStrategyClass = new (...params: any[]) => NbAuthStrategy; diff --git a/src/framework/auth/components/index.ts b/src/framework/auth/components/index.ts deleted file mode 100644 index 45b2149af7..0000000000 --- a/src/framework/auth/components/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * from './auth.component'; -export * from './auth-block/auth-block.component'; -export * from './login/login.component'; -export * from './logout/logout.component'; -export * from './register/register.component'; -export * from './request-password/request-password.component'; -export * from './reset-password/reset-password.component'; diff --git a/src/framework/auth/index.ts b/src/framework/auth/index.ts deleted file mode 100644 index 7a6d823964..0000000000 --- a/src/framework/auth/index.ts +++ /dev/null @@ -1,12 +0,0 @@ -/** - * @license - * Copyright Akveo. All Rights Reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - */ -export * from './auth.options'; -export * from './auth.module'; -export * from './auth.routes'; - -export * from './components'; -export * from './services'; -export * from './strategies'; diff --git a/src/framework/auth/package.json b/src/framework/auth/package.json index 2546e37bb2..78e99e1237 100644 --- a/src/framework/auth/package.json +++ b/src/framework/auth/package.json @@ -2,9 +2,6 @@ "name": "@nebular/auth", "version": "3.5.0", "description": "@nebular/auth", - "main": "./bundles/auth.umd.js", - "module": "./index.js", - "typings": "./index.d.ts", "author": "akveo", "license": "MIT", "repository": { @@ -33,5 +30,6 @@ "@angular/forms": "^8.0.0-rc.2", "@nebular/theme": "3.5.0", "rxjs": "^6.5.1" - } + }, + "sideEffects": false } diff --git a/src/framework/auth/public_api.ts b/src/framework/auth/public_api.ts new file mode 100644 index 0000000000..4fecac9e6e --- /dev/null +++ b/src/framework/auth/public_api.ts @@ -0,0 +1,32 @@ +/** + * @license + * Copyright Akveo. All Rights Reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + */ +export * from './auth.options'; +export * from './auth.module'; +export * from './auth.routes'; + +export * from './components/auth.component'; +export * from './components/auth-block/auth-block.component'; +export * from './components/login/login.component'; +export * from './components/logout/logout.component'; +export * from './components/register/register.component'; +export * from './components/request-password/request-password.component'; +export * from './components/reset-password/reset-password.component'; +export * from './services/auth.service'; +export * from './services/auth-result'; +export * from './services/interceptors/jwt-interceptor'; +export * from './services/interceptors/simple-interceptor'; +export * from './services/token/token'; +export * from './services/token/token-storage'; +export * from './services/token/token.service'; +export * from './services/token/token-parceler'; +export * from './strategies/auth-strategy'; +export * from './strategies/auth-strategy-options'; +export * from './strategies/dummy/dummy-strategy'; +export * from './strategies/dummy/dummy-strategy-options'; +export * from './strategies/password/password-strategy'; +export * from './strategies/password/password-strategy-options'; +export * from './strategies/oauth2/oauth2-strategy'; +export * from './strategies/oauth2/oauth2-strategy.options'; diff --git a/src/framework/auth/services/auth.spec.ts b/src/framework/auth/services/auth.spec.ts index a332cf85c6..688932af34 100644 --- a/src/framework/auth/services/auth.spec.ts +++ b/src/framework/auth/services/auth.spec.ts @@ -11,7 +11,7 @@ import { of as observableOf } from 'rxjs'; import { delay, first } from 'rxjs/operators'; import { NB_AUTH_OPTIONS, NB_AUTH_USER_OPTIONS, NB_AUTH_STRATEGIES, NB_AUTH_TOKENS } from '../auth.options'; import { NbAuthService } from './auth.service'; -import { NbDummyAuthStrategy } from '../strategies'; +import { NbDummyAuthStrategy } from '../strategies/dummy/dummy-strategy'; import { nbStrategiesFactory, nbOptionsFactory } from '../auth.module'; import { NbAuthResult } from './auth-result'; import { NbTokenService } from './token/token.service'; diff --git a/src/framework/auth/services/index.ts b/src/framework/auth/services/index.ts deleted file mode 100644 index b9e23b78ce..0000000000 --- a/src/framework/auth/services/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -export * from './auth.service'; -export * from './auth-result'; -export * from './interceptors/jwt-interceptor'; -export * from './interceptors/simple-interceptor'; -export * from './token/token'; -export * from './token/token-storage'; -export * from './token/token.service'; -export * from './token/token-parceler'; diff --git a/src/framework/auth/services/interceptors/jwt-interceptor.spec.ts b/src/framework/auth/services/interceptors/jwt-interceptor.spec.ts index aca1a77de4..d3302b8360 100644 --- a/src/framework/auth/services/interceptors/jwt-interceptor.spec.ts +++ b/src/framework/auth/services/interceptors/jwt-interceptor.spec.ts @@ -16,7 +16,7 @@ import { NbAuthJWTInterceptor, NbAuthService } from '@nebular/auth'; import { NbTokenService } from '@nebular/auth/services/token/token.service'; import { NbTokenLocalStorage, NbTokenStorage } from '@nebular/auth/services/token/token-storage'; import { NB_AUTH_FALLBACK_TOKEN, NbAuthTokenParceler } from '@nebular/auth/services/token/token-parceler'; -import { NbDummyAuthStrategy } from '@nebular/auth/strategies'; +import { NbDummyAuthStrategy } from '@nebular/auth'; import { nbOptionsFactory, nbStrategiesFactory } from '@nebular/auth/auth.module'; import { NbAuthJWTToken, NbAuthSimpleToken} from '@nebular/auth/services/token/token'; diff --git a/src/framework/auth/strategies/auth-strategy-options.ts b/src/framework/auth/strategies/auth-strategy-options.ts index df2edc5fd4..8a6637a0db 100644 --- a/src/framework/auth/strategies/auth-strategy-options.ts +++ b/src/framework/auth/strategies/auth-strategy-options.ts @@ -3,7 +3,7 @@ * Copyright Akveo. All Rights Reserved. * Licensed under the MIT License. See License.txt in the project root for license information. */ -import { NbAuthTokenClass } from '../services/'; +import { NbAuthTokenClass } from '../services/token/token'; export class NbAuthStrategyOptions { name: string; diff --git a/src/framework/auth/strategies/dummy/dummy-strategy-options.ts b/src/framework/auth/strategies/dummy/dummy-strategy-options.ts index 04b28e2405..4e05f27c75 100644 --- a/src/framework/auth/strategies/dummy/dummy-strategy-options.ts +++ b/src/framework/auth/strategies/dummy/dummy-strategy-options.ts @@ -4,7 +4,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. */ import { NbAuthStrategyOptions } from '../auth-strategy-options'; -import { NbAuthSimpleToken } from '../../services/'; +import { NbAuthSimpleToken } from '../../services/token/token'; export class NbDummyAuthStrategyOptions extends NbAuthStrategyOptions { token? = { diff --git a/src/framework/auth/strategies/index.ts b/src/framework/auth/strategies/index.ts deleted file mode 100644 index d907090f3d..0000000000 --- a/src/framework/auth/strategies/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -export * from './auth-strategy'; -export * from './auth-strategy-options'; -export * from './dummy/dummy-strategy'; -export * from './dummy/dummy-strategy-options'; -export * from './password/password-strategy'; -export * from './password/password-strategy-options'; -export * from './oauth2/oauth2-strategy'; -export * from './oauth2/oauth2-strategy.options'; diff --git a/src/framework/auth/strategies/oauth2/oauth2-strategy.options.ts b/src/framework/auth/strategies/oauth2/oauth2-strategy.options.ts index 413f39abfe..69461ecbdf 100644 --- a/src/framework/auth/strategies/oauth2/oauth2-strategy.options.ts +++ b/src/framework/auth/strategies/oauth2/oauth2-strategy.options.ts @@ -4,7 +4,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. */ -import { NbAuthOAuth2Token, NbAuthTokenClass } from '../../services'; +import { NbAuthOAuth2Token, NbAuthTokenClass } from '../../services/token/token'; import { NbAuthStrategyOptions } from '../auth-strategy-options'; export enum NbOAuth2ResponseType { diff --git a/src/framework/auth/strategies/oauth2/oauth2-strategy.spec.ts b/src/framework/auth/strategies/oauth2/oauth2-strategy.spec.ts index f31836df2d..ec93945193 100644 --- a/src/framework/auth/strategies/oauth2/oauth2-strategy.spec.ts +++ b/src/framework/auth/strategies/oauth2/oauth2-strategy.spec.ts @@ -11,8 +11,8 @@ import { ActivatedRoute } from '@angular/router'; import { NB_WINDOW } from '@nebular/theme'; import { NbOAuth2AuthStrategy } from './oauth2-strategy'; import { NbOAuth2ClientAuthMethod, NbOAuth2GrantType, NbOAuth2ResponseType } from './oauth2-strategy.options'; -import { NbAuthResult, nbAuthCreateToken, NbAuthOAuth2Token } from '../../services'; - +import { NbAuthResult } from '../../services/auth-result'; +import { nbAuthCreateToken, NbAuthOAuth2Token } from '../../services/token/token'; function createURL(params: any) { return Object.keys(params).map((k) => { return `${encodeURIComponent(k)}=${encodeURIComponent(params[k])}`; diff --git a/src/framework/auth/strategies/oauth2/oauth2-strategy.ts b/src/framework/auth/strategies/oauth2/oauth2-strategy.ts index 8bc208c550..0ae6e4e4ac 100644 --- a/src/framework/auth/strategies/oauth2/oauth2-strategy.ts +++ b/src/framework/auth/strategies/oauth2/oauth2-strategy.ts @@ -11,12 +11,8 @@ import { switchMap, map, catchError } from 'rxjs/operators'; import { NB_WINDOW } from '@nebular/theme'; import { NbAuthStrategy } from '../auth-strategy'; -import { - NbAuthIllegalTokenError, - NbAuthRefreshableToken, - NbAuthResult, - NbAuthToken, -} from '../../services/'; +import { NbAuthIllegalTokenError, NbAuthRefreshableToken, NbAuthToken } from '../../services/token/token'; +import { NbAuthResult } from '../../services/auth-result'; import { NbOAuth2AuthStrategyOptions, NbOAuth2ResponseType, diff --git a/src/framework/auth/strategies/password/password-strategy-options.ts b/src/framework/auth/strategies/password/password-strategy-options.ts index f731323534..b1af9e72b0 100644 --- a/src/framework/auth/strategies/password/password-strategy-options.ts +++ b/src/framework/auth/strategies/password/password-strategy-options.ts @@ -4,7 +4,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. */ -import { NbAuthSimpleToken, NbAuthTokenClass } from '../../services'; +import { NbAuthSimpleToken, NbAuthTokenClass } from '../../services/token/token'; import { NbAuthStrategyOptions } from '../auth-strategy-options'; import { getDeepFromObject } from '../../helpers'; import { HttpErrorResponse, HttpResponse } from '@angular/common/http'; diff --git a/src/framework/auth/strategies/password/password-strategy.spec.ts b/src/framework/auth/strategies/password/password-strategy.spec.ts index 1e6a50d0d8..707f9332f8 100644 --- a/src/framework/auth/strategies/password/password-strategy.spec.ts +++ b/src/framework/auth/strategies/password/password-strategy.spec.ts @@ -11,7 +11,7 @@ import { NbAuthResult } from '../../services/auth-result'; import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing'; import { RouterTestingModule } from '@angular/router/testing'; import { HttpErrorResponse, HttpResponse } from '@angular/common/http'; -import { nbAuthCreateToken, NbAuthSimpleToken } from '../../services'; +import { nbAuthCreateToken, NbAuthSimpleToken } from '../../services/token/token'; const ownerStrategyName = 'strategy'; diff --git a/src/framework/date-fns/package.json b/src/framework/date-fns/package.json index 2ab05d63b3..a1e5dfd943 100644 --- a/src/framework/date-fns/package.json +++ b/src/framework/date-fns/package.json @@ -2,9 +2,6 @@ "name": "@nebular/date-fns", "version": "3.5.0", "description": "@nebular/date-fns", - "main": "./bundles/theme.umd.js", - "module": "./index.js", - "typings": "./index.d.ts", "author": "akveo", "license": "MIT", "repository": { @@ -26,5 +23,6 @@ "peerDependencies": { "@nebular/theme": "3.5.0", "date-fns": ">=2.0.0-alpha.16 <=2.0.0-alpha.27" - } -} \ No newline at end of file + }, + "sideEffects": false +} diff --git a/src/framework/date-fns/index.ts b/src/framework/date-fns/public_api.ts similarity index 100% rename from src/framework/date-fns/index.ts rename to src/framework/date-fns/public_api.ts diff --git a/src/framework/moment/package.json b/src/framework/moment/package.json index 3c2a235f8c..44f55a4ea8 100644 --- a/src/framework/moment/package.json +++ b/src/framework/moment/package.json @@ -2,9 +2,6 @@ "name": "@nebular/moment", "version": "3.5.0", "description": "@nebular/moment", - "main": "./bundles/theme.umd.js", - "module": "./index.js", - "typings": "./index.d.ts", "author": "akveo", "license": "MIT", "repository": { @@ -26,5 +23,6 @@ "peerDependencies": { "@nebular/theme": "3.5.0", "moment": "^2.22.2" - } -} \ No newline at end of file + }, + "sideEffects": false +} diff --git a/src/framework/moment/index.ts b/src/framework/moment/public_api.ts similarity index 100% rename from src/framework/moment/index.ts rename to src/framework/moment/public_api.ts diff --git a/src/framework/security/package.json b/src/framework/security/package.json index fb721954a2..0898fe08cc 100644 --- a/src/framework/security/package.json +++ b/src/framework/security/package.json @@ -2,9 +2,6 @@ "name": "@nebular/security", "version": "3.5.0", "description": "@nebular/security", - "main": "./bundles/security.umd.js", - "module": "./index.js", - "typings": "./index.d.ts", "author": "akveo", "license": "MIT", "repository": { @@ -33,5 +30,6 @@ "@angular/core": "^8.0.0-rc.2", "@angular/router": "^8.0.0-rc.2", "rxjs": "^6.5.1" - } + }, + "sideEffects": false } diff --git a/src/framework/security/index.ts b/src/framework/security/public_api.ts similarity index 100% rename from src/framework/security/index.ts rename to src/framework/security/public_api.ts diff --git a/src/framework/theme/components/calendar-kit/calendar-kit.module.ts b/src/framework/theme/components/calendar-kit/calendar-kit.module.ts index 5825aeccc2..0f72d55805 100644 --- a/src/framework/theme/components/calendar-kit/calendar-kit.module.ts +++ b/src/framework/theme/components/calendar-kit/calendar-kit.module.ts @@ -10,22 +10,24 @@ import { DatePipe } from '@angular/common'; import { NbSharedModule } from '../shared/shared.module'; import { NbButtonModule } from '../button/button.module'; -import { NbCalendarMonthModelService, NbDateService } from './services'; +import { NbCalendarMonthModelService } from './services/calendar-month-model.service'; +import { NbDateService } from './services/date.service'; +import { NbCalendarDayCellComponent } from './components/calendar-day-picker/calendar-day-cell.component'; +import { NbCalendarDayPickerComponent } from './components/calendar-day-picker/calendar-day-picker.component'; +import { NbCalendarDaysNamesComponent } from './components/calendar-days-names/calendar-days-names.component'; +import { NbCalendarHeaderComponent } from './components/calendar-header/calendar-header.component'; +import { NbCalendarMonthCellComponent } from './components/calendar-month-picker/calendar-month-cell.component'; +import { NbCalendarMonthPickerComponent } from './components/calendar-month-picker/calendar-month-picker.component'; +import { NbCalendarNavigationComponent } from './components/calendar-navigation/calendar-navigation.component'; import { - NbCalendarDayCellComponent, - NbCalendarDayPickerComponent, - NbCalendarDaysNamesComponent, - NbCalendarHeaderComponent, - NbCalendarMonthCellComponent, - NbCalendarMonthPickerComponent, - NbCalendarNavigationComponent, NbCalendarPageableNavigationComponent, - NbCalendarPickerComponent, - NbCalendarPickerRowComponent, - NbCalendarYearCellComponent, - NbCalendarYearPickerComponent, -} from './components'; +} from './components/calendar-navigation/calendar-pageable-navigation.component'; +import { NbCalendarPickerComponent } from './components/calendar-picker/calendar-picker.component'; +import { NbCalendarPickerRowComponent } from './components/calendar-picker/calendar-picker-row.component'; +import { NbCalendarYearCellComponent } from './components/calendar-year-picker/calendar-year-cell.component'; +import { NbCalendarYearPickerComponent } from './components/calendar-year-picker/calendar-year-picker.component'; + import { NbNativeDateService } from './services/native-date.service'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.spec.ts index 81485eae88..9723a170e0 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.spec.ts @@ -8,7 +8,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { DatePipe } from '@angular/common'; import { NbCalendarDayCellComponent } from './calendar-day-cell.component'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; describe('Component: NbCalendarDayCell', () => { diff --git a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.ts index 85dd3ab6f4..0e704866db 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component.ts @@ -15,7 +15,7 @@ import { } from '@angular/core'; import { NbCalendarCell } from '../../model'; -import { NbDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; @Component({ diff --git a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.spec.ts index c0bc150966..e27290010a 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.spec.ts @@ -10,7 +10,7 @@ import { By } from '@angular/platform-browser'; import { NbCalendarDayPickerComponent } from './calendar-day-picker.component'; import { NbCalendarDayCellComponent } from './calendar-day-cell.component'; -import { NbCalendarMonthModelService } from '../../services'; +import { NbCalendarMonthModelService } from '../../services/calendar-month-model.service'; import { NbCalendarKitModule } from '../../calendar-kit.module'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.ts index a82c42c1ee..c1054e7f58 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component.ts @@ -16,7 +16,7 @@ import { Type, } from '@angular/core'; -import { NbCalendarMonthModelService } from '../../services'; +import { NbCalendarMonthModelService } from '../../services/calendar-month-model.service'; import { NbCalendarDayCellComponent } from './calendar-day-cell.component'; import { NbCalendarCell, NbCalendarSize } from '../../model'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.spec.ts index 32a95e5e2b..432fb00b27 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.spec.ts @@ -7,7 +7,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { NbCalendarDaysNamesComponent } from './calendar-days-names.component'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; import { DatePipe } from '@angular/common'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.ts index 7a7a3c2ff6..17619660e5 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-days-names/calendar-days-names.component.ts @@ -6,7 +6,7 @@ import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core'; import { NbCalendarDay } from '../../model'; -import { NbDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; @Component({ diff --git a/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.spec.ts index 677853f5f7..291f1bd747 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.spec.ts @@ -8,7 +8,8 @@ import { DebugElement } from '@angular/core'; import { By } from '@angular/platform-browser'; import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; import { NbCalendarHeaderComponent } from '../calendar-header/calendar-header.component'; import { NbThemeModule } from '../../../../theme.module'; import { DatePipe } from '@angular/common'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.ts index 450db34843..98971a906c 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-header/calendar-header.component.ts @@ -7,7 +7,7 @@ import { Component, EventEmitter, Input, Output } from '@angular/core'; import { NbLayoutDirectionService } from '../../../../services/direction.service'; -import { NbDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; @Component({ diff --git a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.spec.ts index a0e7b12d29..fe2042e9f7 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.spec.ts @@ -7,7 +7,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { NbCalendarMonthCellComponent } from './calendar-month-cell.component'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; import { DatePipe } from '@angular/common'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.ts index 0386419db6..a3aa522568 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component.ts @@ -14,7 +14,7 @@ import { Output, } from '@angular/core'; import { NbCalendarCell } from '../../model'; -import { NbDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; @Component({ diff --git a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.spec.ts index 0ea32b128c..ac5630cdcf 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.spec.ts @@ -9,7 +9,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NbCalendarMonthPickerComponent } from './calendar-month-picker.component'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; import { NbCalendarMonthCellComponent } from './calendar-month-cell.component'; import { DatePipe } from '@angular/common'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.ts index eff33a5fd6..a021d54711 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component.ts @@ -17,7 +17,7 @@ import { import { batch } from '../../helpers'; import { NbCalendarCell, NbCalendarSize } from '../../model'; import { NbCalendarMonthCellComponent } from './calendar-month-cell.component'; -import { NbDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; export const MONTHS_IN_VIEW = 12; export const MONTHS_IN_COLUMN = 4; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-navigation.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-navigation.component.spec.ts index aa60280e41..50d91aa6ca 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-navigation.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-navigation.component.spec.ts @@ -7,7 +7,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { NbCalendarNavigationComponent } from './calendar-navigation.component'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; import { DatePipe } from '@angular/common'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-pageable-navigation.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-pageable-navigation.component.spec.ts index 73f0188847..c715a77aa8 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-pageable-navigation.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-navigation/calendar-pageable-navigation.component.spec.ts @@ -8,7 +8,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { NbCalendarNavigationComponent } from './calendar-navigation.component'; import { NbCalendarPageableNavigationComponent } from './calendar-pageable-navigation.component'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; import { NbThemeModule } from '../../../../theme.module'; import { DatePipe } from '@angular/common'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker-row.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker-row.component.spec.ts index 3274a765df..1ae797b6e5 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker-row.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker-row.component.spec.ts @@ -11,7 +11,8 @@ import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core'; import { NbCalendarPickerRowComponent } from './calendar-picker-row.component'; import { NbCalendarDayCellComponent } from '../calendar-day-picker/calendar-day-cell.component'; import { DatePipe } from '@angular/common'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; @NgModule({ diff --git a/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker.component.spec.ts index a68593355d..d9642c72e6 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-picker/calendar-picker.component.spec.ts @@ -12,7 +12,8 @@ import { NbCalendarPickerComponent } from './calendar-picker.component'; import { NbCalendarPickerRowComponent } from './calendar-picker-row.component'; import { NbCalendarDayCellComponent } from '../calendar-day-picker/calendar-day-cell.component'; import { DatePipe } from '@angular/common'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; @NgModule({ diff --git a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.spec.ts index af9bbab959..daa2ab201f 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.spec.ts @@ -6,7 +6,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; import { NbCalendarYearCellComponent } from './calendar-year-cell.component'; import { DatePipe } from '@angular/common'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.ts index 3f58cf6cca..31c64a524d 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component.ts @@ -13,7 +13,7 @@ import { Input, Output, } from '@angular/core'; -import { NbDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; import { NbCalendarCell } from '../../model'; diff --git a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.spec.ts b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.spec.ts index b781273d95..7779bfb466 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.spec.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.spec.ts @@ -9,7 +9,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { DatePipe } from '@angular/common'; import { NbCalendarYearPickerComponent } from './calendar-year-picker.component'; -import { NbDateService, NbNativeDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; +import { NbNativeDateService } from '../../services/native-date.service'; describe('Component: NbCalendarYearPicker', () => { diff --git a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.ts b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.ts index 5a37ed964c..9ddd576289 100644 --- a/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.ts +++ b/src/framework/theme/components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component.ts @@ -17,7 +17,7 @@ import { import { batch, range } from '../../helpers'; import { NbCalendarCell, NbCalendarSize } from '../../model'; import { NbCalendarYearCellComponent } from './calendar-year-cell.component'; -import { NbDateService } from '../../services'; +import { NbDateService } from '../../services/date.service'; export const YEARS_IN_VIEW = 20; export const YEARS_IN_COLUMN = 4; diff --git a/src/framework/theme/components/calendar-kit/components/index.ts b/src/framework/theme/components/calendar-kit/components/index.ts deleted file mode 100644 index f6cf40df6f..0000000000 --- a/src/framework/theme/components/calendar-kit/components/index.ts +++ /dev/null @@ -1,26 +0,0 @@ -/** - * @license - * Copyright Akveo. All Rights Reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - */ - -export { NbCalendarHeaderComponent } from './calendar-header/calendar-header.component'; -export { NbCalendarDayCellComponent } from './calendar-day-picker/calendar-day-cell.component'; -export { - NbCalendarYearPickerComponent, - YEARS_IN_VIEW, - YEARS_IN_COLUMN, -} from './calendar-year-picker/calendar-year-picker.component'; -export { - NbCalendarMonthPickerComponent, - MONTHS_IN_VIEW, - MONTHS_IN_COLUMN, -} from './calendar-month-picker/calendar-month-picker.component'; -export { NbCalendarDayPickerComponent } from './calendar-day-picker/calendar-day-picker.component'; -export { NbCalendarNavigationComponent } from './calendar-navigation/calendar-navigation.component'; -export { NbCalendarPageableNavigationComponent } from './calendar-navigation/calendar-pageable-navigation.component'; -export { NbCalendarDaysNamesComponent } from './calendar-days-names/calendar-days-names.component'; -export { NbCalendarMonthCellComponent } from './calendar-month-picker/calendar-month-cell.component'; -export { NbCalendarYearCellComponent } from './calendar-year-picker/calendar-year-cell.component'; -export { NbCalendarPickerRowComponent } from './calendar-picker/calendar-picker-row.component'; -export { NbCalendarPickerComponent }from './calendar-picker/calendar-picker.component'; diff --git a/src/framework/theme/components/calendar-kit/index.ts b/src/framework/theme/components/calendar-kit/index.ts deleted file mode 100644 index 4c70ccf09e..0000000000 --- a/src/framework/theme/components/calendar-kit/index.ts +++ /dev/null @@ -1,10 +0,0 @@ -/** - * @license - * Copyright Akveo. All Rights Reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - */ - -export * from './components'; -export * from './services'; -export * from './model'; -export * from './calendar-kit.module'; diff --git a/src/framework/theme/components/calendar-kit/services/index.ts b/src/framework/theme/components/calendar-kit/services/index.ts deleted file mode 100644 index 8cef5f1c29..0000000000 --- a/src/framework/theme/components/calendar-kit/services/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -/** - * @license - * Copyright Akveo. All Rights Reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - */ - -export { NbCalendarMonthModelService } from './calendar-month-model.service'; -export { NbNativeDateService } from './native-date.service'; -export { NbDateService } from './date.service'; diff --git a/src/framework/theme/components/calendar/base-calendar.component.ts b/src/framework/theme/components/calendar/base-calendar.component.ts index 851cf6533b..cb7739a681 100644 --- a/src/framework/theme/components/calendar/base-calendar.component.ts +++ b/src/framework/theme/components/calendar/base-calendar.component.ts @@ -6,7 +6,9 @@ import { Component, EventEmitter, HostBinding, Input, OnInit, Output, Type } from '@angular/core'; -import { NbDateService, NbCalendarCell, NbCalendarSize, NbCalendarViewMode, YEARS_IN_VIEW } from '../calendar-kit'; +import { YEARS_IN_VIEW } from '../calendar-kit/components/calendar-year-picker/calendar-year-picker.component'; +import { NbCalendarCell, NbCalendarSize, NbCalendarViewMode } from '../calendar-kit/model'; +import { NbDateService } from '../calendar-kit/services/date.service'; /** * The basis for calendar and range calendar components. diff --git a/src/framework/theme/components/calendar/base-calendar.module.ts b/src/framework/theme/components/calendar/base-calendar.module.ts index e9549bba15..47095cdff4 100644 --- a/src/framework/theme/components/calendar/base-calendar.module.ts +++ b/src/framework/theme/components/calendar/base-calendar.module.ts @@ -7,7 +7,7 @@ import { NgModule } from '@angular/core'; import { NbSharedModule } from '../shared/shared.module'; -import { NbCalendarKitModule } from '../calendar-kit'; +import { NbCalendarKitModule } from '../calendar-kit/calendar-kit.module'; import { NbCardModule } from '../card/card.module'; import { NbBaseCalendarComponent } from './base-calendar.component'; diff --git a/src/framework/theme/components/calendar/calendar-range-cells.ts b/src/framework/theme/components/calendar/calendar-range-cells.ts index 71cc4ac53c..3534aabbe9 100644 --- a/src/framework/theme/components/calendar/calendar-range-cells.ts +++ b/src/framework/theme/components/calendar/calendar-range-cells.ts @@ -8,10 +8,10 @@ import { Output, } from '@angular/core'; -import { NbCalendarCell, NbDateService } from '../calendar-kit'; +import { NbCalendarCell } from '../calendar-kit/model'; +import { NbDateService } from '../calendar-kit/services/date.service'; import { NbCalendarRange } from './calendar-range.component'; - @Component({ selector: 'nb-calendar-range-day-cell', template: ` diff --git a/src/framework/theme/components/calendar/calendar-range.component.ts b/src/framework/theme/components/calendar/calendar-range.component.ts index 4ce97212f2..25021e5d00 100644 --- a/src/framework/theme/components/calendar/calendar-range.component.ts +++ b/src/framework/theme/components/calendar/calendar-range.component.ts @@ -6,7 +6,8 @@ import { Component, EventEmitter, Input, Output, Type } from '@angular/core'; -import { NbCalendarCell, NbCalendarSize, NbCalendarViewMode, NbDateService } from '../calendar-kit'; +import { NbCalendarCell, NbCalendarSize, NbCalendarViewMode } from '../calendar-kit/model'; +import { NbDateService } from '../calendar-kit/services/date.service'; import { NbCalendarRangeDayCellComponent, NbCalendarRangeYearCellComponent } from './calendar-range-cells'; diff --git a/src/framework/theme/components/calendar/calendar.component.ts b/src/framework/theme/components/calendar/calendar.component.ts index 91bd53a638..935b0a2295 100644 --- a/src/framework/theme/components/calendar/calendar.component.ts +++ b/src/framework/theme/components/calendar/calendar.component.ts @@ -6,7 +6,7 @@ import { Component, EventEmitter, Input, Output, Type } from '@angular/core'; -import { NbCalendarCell, NbCalendarSize, NbCalendarViewMode } from '../calendar-kit'; +import { NbCalendarCell, NbCalendarSize, NbCalendarViewMode } from '../calendar-kit/model'; /** @@ -26,7 +26,7 @@ import { NbCalendarCell, NbCalendarSize, NbCalendarViewMode } from '../calendar- * ```ts * @NgModule({ * imports: [ - * // ... + * // ... * NbCalendarModule, * ], * }) diff --git a/src/framework/theme/components/cdk/bidi/bidi.ts b/src/framework/theme/components/cdk/bidi/bidi-service.ts similarity index 100% rename from src/framework/theme/components/cdk/bidi/bidi.ts rename to src/framework/theme/components/cdk/bidi/bidi-service.ts diff --git a/src/framework/theme/components/cdk/bidi/bidi.module.ts b/src/framework/theme/components/cdk/bidi/bidi.module.ts index b151de1e1d..3527d0eaae 100644 --- a/src/framework/theme/components/cdk/bidi/bidi.module.ts +++ b/src/framework/theme/components/cdk/bidi/bidi.module.ts @@ -1,6 +1,6 @@ import { NgModule } from '@angular/core'; import { BidiModule, Directionality } from '@angular/cdk/bidi'; -import { NbDirectionality } from './bidi'; +import { NbDirectionality } from './bidi-service'; @NgModule({ providers: [ diff --git a/src/framework/theme/components/cdk/bidi/index.ts b/src/framework/theme/components/cdk/bidi/index.ts deleted file mode 100644 index 5174b8f036..0000000000 --- a/src/framework/theme/components/cdk/bidi/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './bidi'; -export * from './bidi.module'; diff --git a/src/framework/theme/components/cdk/collections/index.ts b/src/framework/theme/components/cdk/collections/index.ts deleted file mode 100644 index 9a98464a40..0000000000 --- a/src/framework/theme/components/cdk/collections/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './collection-viewer'; diff --git a/src/framework/theme/components/cdk/index.ts b/src/framework/theme/components/cdk/index.ts deleted file mode 100644 index 3eebe8a106..0000000000 --- a/src/framework/theme/components/cdk/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * from './overlay'; -export * from './a11y/a11y.module'; -export * from './a11y/focus-trap'; -export * from './adapter/overlay-container-adapter'; -export * from './adapter/scroll-dispatcher-adapter'; -export * from './adapter/viewport-ruler-adapter'; diff --git a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.spec.ts b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.spec.ts index 4ec602f9d3..b0cf01757a 100644 --- a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.spec.ts +++ b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.spec.ts @@ -19,7 +19,7 @@ import { NbPositionBuilderService, } from '../overlay-position'; import { NbDynamicOverlay } from './dynamic-overlay'; -import { NbOverlayContent } from '../overlay'; +import { NbOverlayContent } from '../overlay-service'; import { NbDynamicOverlayChange, NbDynamicOverlayHandler } from './dynamic-overlay-handler'; import { NbTrigger, NbTriggerStrategy, NbTriggerStrategyBuilderService } from '../overlay-trigger'; diff --git a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.ts b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.ts index 278f75d0b7..86a4638777 100644 --- a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.ts +++ b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay-handler.ts @@ -8,7 +8,7 @@ import { NbPositionBuilderService, } from '../overlay-position'; import { NbRenderableContainer } from '../overlay-container'; -import { NbOverlayContent } from '../overlay'; +import { NbOverlayContent } from '../overlay-service'; import { NbDynamicOverlay } from './dynamic-overlay'; export class NbDynamicOverlayChange extends SimpleChange { diff --git a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.spec.ts b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.spec.ts index e29c4e96b7..3225760db9 100644 --- a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.spec.ts +++ b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.spec.ts @@ -4,7 +4,7 @@ import { Subject } from 'rxjs'; import { ScrollStrategy } from '@angular/cdk/overlay'; import { NbDynamicOverlay } from './dynamic-overlay'; -import { NbOverlayService } from '../overlay'; +import { NbOverlayService } from '../overlay-service'; import { NbRenderableContainer } from '../overlay-container'; import { NbComponentPortal, NbOverlayConfig } from '../mapping'; diff --git a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.ts b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.ts index 59ed48d5ce..4c4462431a 100644 --- a/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.ts +++ b/src/framework/theme/components/cdk/overlay/dynamic/dynamic-overlay.ts @@ -8,7 +8,7 @@ import { } from '../overlay-position'; import { NbRenderableContainer } from '../overlay-container'; -import { createContainer, NbOverlayContent, NbOverlayService, patch } from '../overlay'; +import { createContainer, NbOverlayContent, NbOverlayService, patch } from '../overlay-service'; import { NbOverlayRef } from '../mapping'; export interface NbDynamicOverlayController { diff --git a/src/framework/theme/components/cdk/overlay/index.ts b/src/framework/theme/components/cdk/overlay/index.ts deleted file mode 100644 index 8e1a1e868c..0000000000 --- a/src/framework/theme/components/cdk/overlay/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * from './overlay.module'; -export * from './overlay'; -export * from './overlay-position'; -export * from './overlay-container'; -export * from './overlay-trigger'; -export * from './mapping'; -export * from './position-helper'; -export * from './dynamic/dynamic-overlay'; -export * from './dynamic/dynamic-overlay-handler'; diff --git a/src/framework/theme/components/cdk/overlay/overlay.ts b/src/framework/theme/components/cdk/overlay/overlay-service.ts similarity index 100% rename from src/framework/theme/components/cdk/overlay/overlay.ts rename to src/framework/theme/components/cdk/overlay/overlay-service.ts diff --git a/src/framework/theme/components/cdk/overlay/overlay.module.ts b/src/framework/theme/components/cdk/overlay/overlay.module.ts index f881d78f89..908b9be657 100644 --- a/src/framework/theme/components/cdk/overlay/overlay.module.ts +++ b/src/framework/theme/components/cdk/overlay/overlay.module.ts @@ -5,7 +5,7 @@ import { NbA11yModule } from '../a11y/a11y.module'; import { NbCdkMappingModule } from './mapping'; import { NbPositionBuilderService } from './overlay-position'; import { NbOverlayContainerComponent } from './overlay-container'; -import { NbOverlayService } from './overlay'; +import { NbOverlayService } from './overlay-service'; import { NbCdkAdapterModule } from '../adapter/adapter.module'; import { NbPositionHelper } from './position-helper'; import { NbTriggerStrategyBuilderService } from './overlay-trigger'; diff --git a/src/framework/theme/components/cdk/platform/index.ts b/src/framework/theme/components/cdk/platform/index.ts deleted file mode 100644 index 9c1fc28142..0000000000 --- a/src/framework/theme/components/cdk/platform/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './platform.module'; -export * from './platform'; diff --git a/src/framework/theme/components/cdk/platform/platform.ts b/src/framework/theme/components/cdk/platform/platform-service.ts similarity index 100% rename from src/framework/theme/components/cdk/platform/platform.ts rename to src/framework/theme/components/cdk/platform/platform-service.ts diff --git a/src/framework/theme/components/cdk/platform/platform.module.ts b/src/framework/theme/components/cdk/platform/platform.module.ts index a5977602ae..4b327cc641 100644 --- a/src/framework/theme/components/cdk/platform/platform.module.ts +++ b/src/framework/theme/components/cdk/platform/platform.module.ts @@ -1,6 +1,6 @@ import { NgModule } from '@angular/core'; import { Platform, PlatformModule } from '@angular/cdk/platform'; -import { NbPlatform } from './platform'; +import { NbPlatform } from './platform-service'; @NgModule({ providers: [ diff --git a/src/framework/theme/components/cdk/table/index.ts b/src/framework/theme/components/cdk/table/index.ts deleted file mode 100644 index 1388a2d9d9..0000000000 --- a/src/framework/theme/components/cdk/table/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -export * from './table.module'; -export * from './cell'; -export * from './row'; -export * from './data-source'; -export * from './type-mappings'; diff --git a/src/framework/theme/components/cdk/table/table.module.ts b/src/framework/theme/components/cdk/table/table.module.ts index 5395dfc74e..675c06aaa0 100644 --- a/src/framework/theme/components/cdk/table/table.module.ts +++ b/src/framework/theme/components/cdk/table/table.module.ts @@ -1,7 +1,9 @@ import { Attribute, ChangeDetectorRef, ElementRef, Inject, IterableDiffers, NgModule } from '@angular/core'; import { CdkTable, CdkTableModule } from '@angular/cdk/table'; -import { NbBidiModule, NbDirectionality } from '../bidi'; -import { NbPlatformModule, NbPlatform } from '../platform'; +import { NbBidiModule } from '../bidi/bidi.module'; +import { NbDirectionality } from '../bidi/bidi-service'; +import { NbPlatformModule } from '../platform/platform.module'; +import { NbPlatform } from '../platform/platform-service'; import { NB_DOCUMENT } from '../../../theme.options'; import { NbCellDefDirective, diff --git a/src/framework/theme/components/context-menu/context-menu.component.ts b/src/framework/theme/components/context-menu/context-menu.component.ts index 5c04559257..94a796ee7a 100644 --- a/src/framework/theme/components/context-menu/context-menu.component.ts +++ b/src/framework/theme/components/context-menu/context-menu.component.ts @@ -7,7 +7,7 @@ import { Component, Input } from '@angular/core'; import { NbMenuItem } from '../../components/menu/menu.service'; -import { NbPositionedContainer, NbRenderableContainer } from '../cdk'; +import { NbPositionedContainer, NbRenderableContainer } from '../cdk/overlay/overlay-container'; /** * Context menu component used as content within NbContextMenuDirective. diff --git a/src/framework/theme/components/context-menu/context-menu.directive.ts b/src/framework/theme/components/context-menu/context-menu.directive.ts index 840fa65de6..7c654d866d 100644 --- a/src/framework/theme/components/context-menu/context-menu.directive.ts +++ b/src/framework/theme/components/context-menu/context-menu.directive.ts @@ -16,16 +16,11 @@ import { } from '@angular/core'; import { filter, takeWhile } from 'rxjs/operators'; -import { - NbAdjustableConnectedPositionStrategy, - NbAdjustment, - NbDynamicOverlay, - NbDynamicOverlayController, - NbDynamicOverlayHandler, - NbOverlayRef, - NbPosition, - NbTrigger, -} from '../cdk'; +import { NbDynamicOverlay, NbDynamicOverlayController } from '../cdk/overlay/dynamic/dynamic-overlay'; +import { NbDynamicOverlayHandler } from '../cdk/overlay/dynamic/dynamic-overlay-handler'; +import { NbOverlayRef } from '../cdk/overlay/mapping'; +import { NbAdjustableConnectedPositionStrategy, NbAdjustment, NbPosition } from '../cdk/overlay/overlay-position'; +import { NbTrigger } from '../cdk/overlay/overlay-trigger'; import { NbContextMenuComponent } from './context-menu.component'; import { NbMenuItem, NbMenuService } from '../menu/menu.service'; diff --git a/src/framework/theme/components/context-menu/context-menu.module.ts b/src/framework/theme/components/context-menu/context-menu.module.ts index 09cdeb0276..7ec691783c 100644 --- a/src/framework/theme/components/context-menu/context-menu.module.ts +++ b/src/framework/theme/components/context-menu/context-menu.module.ts @@ -7,7 +7,7 @@ import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; -import { NbOverlayModule } from '../cdk'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; import { NbContextMenuDirective } from './context-menu.directive'; import { NbContextMenuComponent } from './context-menu.component'; import { NbMenuModule } from '../menu/menu.module'; diff --git a/src/framework/theme/components/context-menu/context-menu.spec.ts b/src/framework/theme/components/context-menu/context-menu.spec.ts index 243c32c9ba..564dff2145 100644 --- a/src/framework/theme/components/context-menu/context-menu.spec.ts +++ b/src/framework/theme/components/context-menu/context-menu.spec.ts @@ -5,14 +5,11 @@ import { RouterTestingModule } from '@angular/router/testing'; import { NbThemeModule } from '../../theme.module'; import { NbLayoutModule } from '../layout/layout.module'; -import { - NbAdjustment, - NbDynamicOverlayHandler, - NbOverlayContent, - NbPosition, - NbRenderableContainer, - NbTrigger, -} from '../cdk'; +import { NbAdjustment, NbPosition } from '../cdk/overlay/overlay-position'; +import { NbDynamicOverlayHandler } from '../cdk/overlay/dynamic/dynamic-overlay-handler'; +import { NbOverlayContent } from '../cdk/overlay/overlay-service'; +import { NbRenderableContainer } from '../cdk/overlay/overlay-container'; +import { NbTrigger } from '../cdk/overlay/overlay-trigger'; import { NbMenuModule } from '../menu/menu.module'; import { NbContextMenuDirective } from './context-menu.directive'; import { NbContextMenuComponent } from './context-menu.component'; diff --git a/src/framework/theme/components/datepicker/datepicker-adapter.ts b/src/framework/theme/components/datepicker/datepicker-adapter.ts index 2e99a97b85..a89423965d 100644 --- a/src/framework/theme/components/datepicker/datepicker-adapter.ts +++ b/src/framework/theme/components/datepicker/datepicker-adapter.ts @@ -9,7 +9,7 @@ import { Injectable, Type } from '@angular/core'; import { NbCalendarRange } from '../calendar/calendar-range.component'; import { NbDatepickerComponent, NbRangepickerComponent } from './datepicker.component'; import { NbDatepickerAdapter } from './datepicker.directive'; -import { NbDateService } from '../calendar-kit'; +import { NbDateService } from '../calendar-kit/services/date.service'; @Injectable() diff --git a/src/framework/theme/components/datepicker/datepicker-container.component.ts b/src/framework/theme/components/datepicker/datepicker-container.component.ts index fdb1e157af..31a61d8eb6 100644 --- a/src/framework/theme/components/datepicker/datepicker-container.component.ts +++ b/src/framework/theme/components/datepicker/datepicker-container.component.ts @@ -6,7 +6,8 @@ import { Component, ComponentRef, ViewChild } from '@angular/core'; -import { NbComponentPortal, NbOverlayContainerComponent, NbPositionedContainer } from '../cdk'; +import { NbComponentPortal } from '../cdk/overlay/mapping'; +import { NbOverlayContainerComponent, NbPositionedContainer } from '../cdk/overlay/overlay-container'; @Component({ diff --git a/src/framework/theme/components/datepicker/datepicker.component.ts b/src/framework/theme/components/datepicker/datepicker.component.ts index d72f9922a8..082e42b5d8 100644 --- a/src/framework/theme/components/datepicker/datepicker.component.ts +++ b/src/framework/theme/components/datepicker/datepicker.component.ts @@ -24,19 +24,15 @@ import { import { takeWhile } from 'rxjs/operators'; import { Observable, ReplaySubject, Subject } from 'rxjs'; +import { NbComponentPortal, NbOverlayRef } from '../cdk/overlay/mapping'; import { NbAdjustableConnectedPositionStrategy, NbAdjustment, - NbComponentPortal, - NbOverlayRef, - NbOverlayService, NbPosition, NbPositionBuilderService, - NbTrigger, - NbTriggerStrategy, - NbTriggerStrategyBuilderService, - patch, -} from '../cdk'; +} from '../cdk/overlay/overlay-position'; +import { NbOverlayService, patch } from '../cdk/overlay/overlay-service'; +import { NbTrigger, NbTriggerStrategy, NbTriggerStrategyBuilderService } from '../cdk/overlay/overlay-trigger'; import { NbDatepickerContainerComponent } from './datepicker-container.component'; import { NB_DOCUMENT } from '../../theme.options'; import { NbCalendarRange, NbCalendarRangeComponent } from '../calendar/calendar-range.component' @@ -45,8 +41,8 @@ import { NbCalendarCell, NbCalendarSize, NbCalendarViewMode, - NbDateService, -} from '../calendar-kit'; +} from '../calendar-kit/model'; +import { NbDateService } from '../calendar-kit/services/date.service'; import { NB_DATE_SERVICE_OPTIONS, NbDatepicker, NbPickerValidatorConfig } from './datepicker.directive'; diff --git a/src/framework/theme/components/datepicker/datepicker.directive.ts b/src/framework/theme/components/datepicker/datepicker.directive.ts index 741c6b3257..a0d180491b 100644 --- a/src/framework/theme/components/datepicker/datepicker.directive.ts +++ b/src/framework/theme/components/datepicker/datepicker.directive.ts @@ -28,7 +28,7 @@ import { fromEvent, Observable, merge } from 'rxjs'; import { map, takeWhile, filter, take, tap } from 'rxjs/operators'; import { NB_DOCUMENT } from '../../theme.options'; -import { NbDateService } from '../calendar-kit'; +import { NbDateService } from '../calendar-kit/services/date.service'; /** diff --git a/src/framework/theme/components/datepicker/datepicker.module.ts b/src/framework/theme/components/datepicker/datepicker.module.ts index 34e105e1b1..b8f721a27c 100644 --- a/src/framework/theme/components/datepicker/datepicker.module.ts +++ b/src/framework/theme/components/datepicker/datepicker.module.ts @@ -8,7 +8,7 @@ import { ModuleWithProviders, NgModule } from '@angular/core'; import { DatePipe } from '@angular/common'; import { NB_DATE_ADAPTER, NbDatepickerDirective } from './datepicker.directive'; -import { NbOverlayModule } from '../cdk'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; import { NbCalendarModule } from '../calendar/calendar.module'; import { NbCalendarComponent } from '../calendar/calendar.component'; import { NbDatepickerContainerComponent } from './datepicker-container.component'; diff --git a/src/framework/theme/components/dialog/dialog-container.ts b/src/framework/theme/components/dialog/dialog-container.ts index cb945b73a9..f84d97464c 100644 --- a/src/framework/theme/components/dialog/dialog-container.ts +++ b/src/framework/theme/components/dialog/dialog-container.ts @@ -6,13 +6,8 @@ import { Component, ComponentRef, ElementRef, EmbeddedViewRef, OnDestroy, OnInit, ViewChild } from '@angular/core'; -import { - NbComponentPortal, - NbFocusTrap, - NbFocusTrapFactoryService, - NbPortalOutletDirective, - NbTemplatePortal, -} from '../cdk'; +import { NbComponentPortal, NbPortalOutletDirective, NbTemplatePortal } from '../cdk/overlay/mapping'; +import { NbFocusTrap, NbFocusTrapFactoryService } from '../cdk/a11y/focus-trap'; import { NbDialogConfig } from './dialog-config'; diff --git a/src/framework/theme/components/dialog/dialog-ref.ts b/src/framework/theme/components/dialog/dialog-ref.ts index 4e06e74896..53017c2175 100644 --- a/src/framework/theme/components/dialog/dialog-ref.ts +++ b/src/framework/theme/components/dialog/dialog-ref.ts @@ -7,7 +7,7 @@ import { ComponentRef } from '@angular/core'; import { Observable, Subject } from 'rxjs'; -import { NbOverlayRef } from '../cdk'; +import { NbOverlayRef } from '../cdk/overlay/mapping'; /** diff --git a/src/framework/theme/components/dialog/dialog.module.ts b/src/framework/theme/components/dialog/dialog.module.ts index 8e95e3e5d3..5d318c4da3 100644 --- a/src/framework/theme/components/dialog/dialog.module.ts +++ b/src/framework/theme/components/dialog/dialog.module.ts @@ -7,7 +7,7 @@ import { ModuleWithProviders, NgModule } from '@angular/core'; import { NbSharedModule } from '../shared/shared.module'; -import { NbOverlayModule } from '../cdk'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; import { NbDialogService } from './dialog.service'; import { NbDialogContainerComponent } from './dialog-container'; import { NB_DIALOG_CONFIG, NbDialogConfig } from './dialog-config'; diff --git a/src/framework/theme/components/dialog/dialog.service.spec.ts b/src/framework/theme/components/dialog/dialog.service.spec.ts index a3b75262b2..6253ffe924 100644 --- a/src/framework/theme/components/dialog/dialog.service.spec.ts +++ b/src/framework/theme/components/dialog/dialog.service.spec.ts @@ -1,7 +1,9 @@ import { Component, NgModule } from '@angular/core'; import { fakeAsync, TestBed, tick } from '@angular/core/testing'; -import { NbOverlayContainerAdapter, NbOverlayService, NbViewportRulerAdapter } from '../cdk'; +import { NbOverlayContainerAdapter } from '../cdk/adapter/overlay-container-adapter'; +import { NbViewportRulerAdapter } from '../cdk/adapter/viewport-ruler-adapter'; +import { NbOverlayService } from '../cdk/overlay/overlay-service'; import { NbDialogService } from './dialog.service'; import { NbDialogModule } from './dialog.module'; import { NbThemeModule } from '../../theme.module'; diff --git a/src/framework/theme/components/dialog/dialog.service.ts b/src/framework/theme/components/dialog/dialog.service.ts index 04ac77f655..efa1199c44 100644 --- a/src/framework/theme/components/dialog/dialog.service.ts +++ b/src/framework/theme/components/dialog/dialog.service.ts @@ -10,14 +10,13 @@ import { filter } from 'rxjs/operators'; import { NbComponentPortal, - NbGlobalPositionStrategy, NbOverlayRef, - NbOverlayService, NbPortalInjector, - NbPositionBuilderService, NbScrollStrategy, NbTemplatePortal, -} from '../cdk'; +} from '../cdk/overlay/mapping'; +import { NbGlobalPositionStrategy, NbPositionBuilderService } from '../cdk/overlay/overlay-position'; +import { NbOverlayService } from '../cdk/overlay/overlay-service'; import { NB_DOCUMENT } from '../../theme.options'; import { NB_DIALOG_CONFIG, NbDialogConfig } from './dialog-config'; import { NbDialogRef } from './dialog-ref'; diff --git a/src/framework/theme/components/dialog/index.ts b/src/framework/theme/components/dialog/index.ts deleted file mode 100644 index 70a4c20a75..0000000000 --- a/src/framework/theme/components/dialog/index.ts +++ /dev/null @@ -1,10 +0,0 @@ -/** - * @license - * Copyright Akveo. All Rights Reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - */ - -export * from './dialog-config'; -export * from './dialog-ref'; -export * from './dialog.service'; -export * from './dialog.module'; diff --git a/src/framework/theme/components/layout/layout.component.ts b/src/framework/theme/components/layout/layout.component.ts index b29d83b841..14f0ef50bb 100644 --- a/src/framework/theme/components/layout/layout.component.ts +++ b/src/framework/theme/components/layout/layout.component.ts @@ -6,7 +6,7 @@ import { AfterViewInit, Component, ElementRef, HostBinding, HostListener, Input, OnDestroy, - Renderer2, ViewChild, ViewContainerRef, Inject, PLATFORM_ID, forwardRef, + Renderer2, ViewChild, ViewContainerRef, Inject, PLATFORM_ID, } from '@angular/core'; import { isPlatformBrowser } from '@angular/common'; import { BehaviorSubject } from 'rxjs'; @@ -22,154 +22,6 @@ import { NbLayoutDimensions, NbLayoutRulerService } from '../../services/ruler.s import { NB_WINDOW, NB_DOCUMENT } from '../../theme.options'; import { NbOverlayContainerAdapter } from '../cdk/adapter/overlay-container-adapter'; -/** - * A container component which determines a content position inside of the layout. - * The layout could contain unlimited columns (not including the sidebars). - * - * By default the columns are ordered from the left to the right, - * but it's also possible to overwrite this behavior by setting a `left` attribute to the column, - * moving it to the very first position: - * - * @stacked-example(Column Left, layout/layout-column-left.component) - */ -@Component({ - selector: 'nb-layout-column', - template: ` - - `, -}) -export class NbLayoutColumnComponent { - - @HostBinding('class.left') leftValue: boolean; - @HostBinding('class.start') startValue: boolean; - - /** - * Move the column to the very left position in the layout. - * @param {boolean} val - */ - @Input() - set left(val: boolean) { - this.leftValue = convertToBoolProperty(val); - this.startValue = false; - } - - /** - * Make columnt first in the layout. - * @param {boolean} val - */ - @Input() - set start(val: boolean) { - this.startValue = convertToBoolProperty(val); - this.leftValue = false; - } -} - -/** - * Page header component. - * Located on top of the page above the layout columns and sidebars. - * Could be made `fixed` by setting the corresponding property. In the fixed mode the header becomes - * sticky to the top of the nb-layout (to of the page). Here's an example: - * - * @stacked-example(Fixed Header, layout/layout-fixed-header.component) - * - * In a pair with sidebar it is possible to setup a configuration when header is placed on a side of the sidebar - * and not on top of it. To achieve this simply put a `subheader` property to the header like this: - * ```html - * - * ``` - * @stacked-example(Subheader, layout/layout-sidebar-subheader.component) - * Note that in such configuration sidebar shadow is removed and header cannot be make `fixed`. - * - * Same way you can put both `fixed` and `clipped` headers adding creating a sub-header for your app: - * - * @stacked-example(Subheader, layout/layout-subheader.component) - * - * @styles - * - * header-font-family - * header-line-height - * header-fg - * header-bg - * header-height - * header-padding - * header-shadow - */ -@Component({ - selector: 'nb-layout-header', - template: ` - - `, -}) -export class NbLayoutHeaderComponent { - - @HostBinding('class.fixed') fixedValue: boolean; - @HostBinding('class.subheader') subheaderValue: boolean; - - // tslint:disable-next-line - constructor(@Inject(forwardRef(() => NbLayoutComponent)) private layout: NbLayoutComponent) { - } - - /** - * Makes the header sticky to the top of the nb-layout. - * @param {boolean} val - */ - @Input() - set fixed(val: boolean) { - this.fixedValue = convertToBoolProperty(val); - } - - /** - * Places header on a side of the sidebar, and not above. - * Disables fixed mode for this header and remove a shadow from the sidebar. - * @param {boolean} val - */ - @Input() - set subheader(val: boolean) { - this.subheaderValue = convertToBoolProperty(val); - this.fixedValue = false; - this.layout.withSubheader = this.subheaderValue; - } -} - -/** - * Page footer. - * Located under the nb-layout content (specifically, under the columns). - * Could be made `fixed`, becoming sticky to the bottom of the view port (window). - * - * @styles - * - * footer-height - * footer-padding - * footer-fg - * footer-bg - * footer-separator - * footer-shadow - */ -@Component({ - selector: 'nb-layout-footer', - template: ` - - `, -}) -export class NbLayoutFooterComponent { - - @HostBinding('class.fixed') fixedValue: boolean; - - /** - * Makes the footer sticky to the bottom of the window. - * @param {boolean} val - */ - @Input() - set fixed(val: boolean) { - this.fixedValue = convertToBoolProperty(val); - } - -} - /** * Layout container component. * When using with Nebular Theme System it is required that all child components should be placed inside. @@ -587,3 +439,149 @@ export class NbLayoutComponent implements AfterViewInit, OnDestroy { } } } + +/** + * A container component which determines a content position inside of the layout. + * The layout could contain unlimited columns (not including the sidebars). + * + * By default the columns are ordered from the left to the right, + * but it's also possible to overwrite this behavior by setting a `left` attribute to the column, + * moving it to the very first position: + * + * @stacked-example(Column Left, layout/layout-column-left.component) + */ +@Component({ + selector: 'nb-layout-column', + template: ` + + `, +}) +export class NbLayoutColumnComponent { + + @HostBinding('class.left') leftValue: boolean; + @HostBinding('class.start') startValue: boolean; + + /** + * Move the column to the very left position in the layout. + * @param {boolean} val + */ + @Input() + set left(val: boolean) { + this.leftValue = convertToBoolProperty(val); + this.startValue = false; + } + + /** + * Make columnt first in the layout. + * @param {boolean} val + */ + @Input() + set start(val: boolean) { + this.startValue = convertToBoolProperty(val); + this.leftValue = false; + } +} + +/** + * Page header component. + * Located on top of the page above the layout columns and sidebars. + * Could be made `fixed` by setting the corresponding property. In the fixed mode the header becomes + * sticky to the top of the nb-layout (to of the page). Here's an example: + * + * @stacked-example(Fixed Header, layout/layout-fixed-header.component) + * + * In a pair with sidebar it is possible to setup a configuration when header is placed on a side of the sidebar + * and not on top of it. To achieve this simply put a `subheader` property to the header like this: + * ```html + * + * ``` + * @stacked-example(Subheader, layout/layout-sidebar-subheader.component) + * Note that in such configuration sidebar shadow is removed and header cannot be make `fixed`. + * + * Same way you can put both `fixed` and `clipped` headers adding creating a sub-header for your app: + * + * @stacked-example(Subheader, layout/layout-subheader.component) + * + * @styles + * + * header-font-family + * header-line-height + * header-fg + * header-bg + * header-height + * header-padding + * header-shadow + */ +@Component({ + selector: 'nb-layout-header', + template: ` + + `, +}) +export class NbLayoutHeaderComponent { + + @HostBinding('class.fixed') fixedValue: boolean; + @HostBinding('class.subheader') subheaderValue: boolean; + + constructor(private layout: NbLayoutComponent) {} + + /** + * Makes the header sticky to the top of the nb-layout. + * @param {boolean} val + */ + @Input() + set fixed(val: boolean) { + this.fixedValue = convertToBoolProperty(val); + } + + /** + * Places header on a side of the sidebar, and not above. + * Disables fixed mode for this header and remove a shadow from the sidebar. + * @param {boolean} val + */ + @Input() + set subheader(val: boolean) { + this.subheaderValue = convertToBoolProperty(val); + this.fixedValue = false; + this.layout.withSubheader = this.subheaderValue; + } +} + +/** + * Page footer. + * Located under the nb-layout content (specifically, under the columns). + * Could be made `fixed`, becoming sticky to the bottom of the view port (window). + * + * @styles + * + * footer-height + * footer-padding + * footer-fg + * footer-bg + * footer-separator + * footer-shadow + */ +@Component({ + selector: 'nb-layout-footer', + template: ` + + `, +}) +export class NbLayoutFooterComponent { + + @HostBinding('class.fixed') fixedValue: boolean; + + /** + * Makes the footer sticky to the bottom of the window. + * @param {boolean} val + */ + @Input() + set fixed(val: boolean) { + this.fixedValue = convertToBoolProperty(val); + } + +} diff --git a/src/framework/theme/components/popover/popover.component.ts b/src/framework/theme/components/popover/popover.component.ts index 31d40f383e..9547768872 100644 --- a/src/framework/theme/components/popover/popover.component.ts +++ b/src/framework/theme/components/popover/popover.component.ts @@ -12,13 +12,12 @@ import { Type, ViewChild, } from '@angular/core'; +import { NbComponentPortal, NbTemplatePortal } from '../cdk/overlay/mapping'; import { - NbComponentPortal, NbOverlayContainerComponent, NbPositionedContainer, NbRenderableContainer, - NbTemplatePortal, -} from '../cdk'; +} from '../cdk/overlay/overlay-container'; /** diff --git a/src/framework/theme/components/popover/popover.directive.ts b/src/framework/theme/components/popover/popover.directive.ts index 2b749b5fd9..d3ad727c1c 100644 --- a/src/framework/theme/components/popover/popover.directive.ts +++ b/src/framework/theme/components/popover/popover.directive.ts @@ -13,15 +13,11 @@ import { OnDestroy, OnInit, } from '@angular/core'; -import { - NbAdjustment, - NbOverlayContent, - NbPosition, - NbTrigger, - NbDynamicOverlayHandler, - NbDynamicOverlay, - NbDynamicOverlayController, -} from '../cdk'; +import { NbDynamicOverlay, NbDynamicOverlayController } from '../cdk/overlay/dynamic/dynamic-overlay'; +import { NbDynamicOverlayHandler } from '../cdk/overlay/dynamic/dynamic-overlay-handler'; +import { NbAdjustment, NbPosition } from '../cdk/overlay/overlay-position'; +import { NbOverlayContent } from '../cdk/overlay/overlay-service'; +import { NbTrigger } from '../cdk/overlay/overlay-trigger'; import { NbPopoverComponent } from './popover.component'; diff --git a/src/framework/theme/components/popover/popover.module.ts b/src/framework/theme/components/popover/popover.module.ts index b155ac7bb6..7da07bcacc 100644 --- a/src/framework/theme/components/popover/popover.module.ts +++ b/src/framework/theme/components/popover/popover.module.ts @@ -6,7 +6,7 @@ import { NgModule } from '@angular/core'; -import { NbOverlayModule } from '../cdk'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; import { NbPopoverDirective } from './popover.directive'; import { NbPopoverComponent } from './popover.component'; diff --git a/src/framework/theme/components/popover/popover.spec.ts b/src/framework/theme/components/popover/popover.spec.ts index 73e3826a24..cb2b3699db 100644 --- a/src/framework/theme/components/popover/popover.spec.ts +++ b/src/framework/theme/components/popover/popover.spec.ts @@ -4,14 +4,11 @@ import { RouterTestingModule } from '@angular/router/testing'; import { NbThemeModule } from '../../theme.module'; import { NbLayoutModule } from '../layout/layout.module'; -import { - NbAdjustment, - NbDynamicOverlayHandler, - NbOverlayContent, - NbPosition, - NbRenderableContainer, - NbTrigger, -} from '../cdk'; +import { NbAdjustment, NbPosition } from '../cdk/overlay/overlay-position'; +import { NbDynamicOverlayHandler } from '../cdk/overlay/dynamic/dynamic-overlay-handler'; +import { NbOverlayContent } from '../cdk/overlay/overlay-service'; +import { NbRenderableContainer } from '../cdk/overlay/overlay-container'; +import { NbTrigger } from '../cdk/overlay/overlay-trigger'; import { NbPopoverDirective } from './popover.directive'; import { NbPopoverComponent } from './popover.component'; import { NbPopoverModule } from './popover.module'; diff --git a/src/framework/theme/components/search/search.component.ts b/src/framework/theme/components/search/search.component.ts index e51b435cce..726687560b 100644 --- a/src/framework/theme/components/search/search.component.ts +++ b/src/framework/theme/components/search/search.component.ts @@ -27,7 +27,8 @@ import { filter, delay, takeWhile } from 'rxjs/operators'; import { NbSearchService } from './search.service'; import { NbThemeService } from '../../services/theme.service'; -import { NbOverlayService, NbOverlayRef, NbPortalDirective } from '../cdk'; +import { NbOverlayService } from '../cdk/overlay/overlay-service'; +import { NbOverlayRef, NbPortalDirective } from '../cdk/overlay/mapping'; /** * search-field-component is used under the hood by nb-search component diff --git a/src/framework/theme/components/select/option.component.ts b/src/framework/theme/components/select/option.component.ts index 72871748f4..005c626329 100644 --- a/src/framework/theme/components/select/option.component.ts +++ b/src/framework/theme/components/select/option.component.ts @@ -10,7 +10,6 @@ import { Component, ElementRef, EventEmitter, - forwardRef, HostBinding, HostListener, Inject, @@ -20,6 +19,7 @@ import { } from '@angular/core'; import { Observable, Subject } from 'rxjs'; import { convertToBoolProperty } from '../helpers'; +import { NB_SELECT_INJECTION_TOKEN } from './select-injection-tokens'; import { NbSelectComponent } from './select.component'; @@ -67,11 +67,13 @@ export class NbOptionComponent implements OnDestroy { selected: boolean = false; disabled: boolean = false; + protected parent: NbSelectComponent; private alive: boolean = true; - constructor(@Inject(forwardRef(() => NbSelectComponent)) protected parent, + constructor(@Inject(NB_SELECT_INJECTION_TOKEN) parent, protected elementRef: ElementRef, protected cd: ChangeDetectorRef) { + this.parent = parent; } ngOnDestroy() { diff --git a/src/framework/theme/components/select/select-injection-tokens.ts b/src/framework/theme/components/select/select-injection-tokens.ts new file mode 100644 index 0000000000..39eee03d55 --- /dev/null +++ b/src/framework/theme/components/select/select-injection-tokens.ts @@ -0,0 +1,3 @@ +import { InjectionToken } from '@angular/core'; + +export const NB_SELECT_INJECTION_TOKEN = new InjectionToken('NB_SELECT_INJECTION_TOKEN'); diff --git a/src/framework/theme/components/select/select.component.ts b/src/framework/theme/components/select/select.component.ts index d0dd92876e..b4e033a8bd 100644 --- a/src/framework/theme/components/select/select.component.ts +++ b/src/framework/theme/components/select/select.component.ts @@ -31,20 +31,17 @@ import { startWith, switchMap, takeWhile } from 'rxjs/operators'; import { NbAdjustableConnectedPositionStrategy, NbAdjustment, - NbOverlayRef, - NbOverlayService, - NbPortalDirective, NbPosition, NbPositionBuilderService, - NbScrollStrategy, - NbTrigger, - NbTriggerStrategy, - NbTriggerStrategyBuilderService, -} from '../cdk'; +} from '../cdk/overlay/overlay-position'; +import { NbOverlayRef, NbPortalDirective, NbScrollStrategy } from '../cdk/overlay/mapping'; +import { NbOverlayService } from '../cdk/overlay/overlay-service'; +import { NbTrigger, NbTriggerStrategy, NbTriggerStrategyBuilderService } from '../cdk/overlay/overlay-trigger'; import { NbOptionComponent } from './option.component'; import { NbButtonComponent } from '../button/button.component'; import { NB_DOCUMENT } from '../../theme.options'; import { convertToBoolProperty } from '../helpers'; +import { NB_SELECT_INJECTION_TOKEN } from './select-injection-tokens'; @Component({ @@ -153,6 +150,7 @@ export class NbSelectLabelComponent { useExisting: forwardRef(() => NbSelectComponent), multi: true, }, + { provide: NB_SELECT_INJECTION_TOKEN, useExisting: NbSelectComponent }, ], }) export class NbSelectComponent implements OnInit, AfterViewInit, AfterContentInit, OnDestroy, ControlValueAccessor { diff --git a/src/framework/theme/components/select/select.module.ts b/src/framework/theme/components/select/select.module.ts index 21cacbe794..1075fef8a0 100644 --- a/src/framework/theme/components/select/select.module.ts +++ b/src/framework/theme/components/select/select.module.ts @@ -1,6 +1,6 @@ import { NgModule } from '@angular/core'; -import { NbOverlayModule } from '../cdk'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; import { NbSharedModule } from '../shared/shared.module'; import { NbInputModule } from '../input/input.module'; import { NbCardModule } from '../card/card.module'; diff --git a/src/framework/theme/components/stepper/step.component.ts b/src/framework/theme/components/stepper/step.component.ts index 83265bdd0e..2bfa8c8bb8 100644 --- a/src/framework/theme/components/stepper/step.component.ts +++ b/src/framework/theme/components/stepper/step.component.ts @@ -1,6 +1,5 @@ import { Component, - forwardRef, Inject, Input, TemplateRef, @@ -8,6 +7,7 @@ import { } from '@angular/core'; import { AbstractControl } from '@angular/forms'; import { NbStepperComponent } from './stepper.component'; +import { NB_STEPPER } from './stepper-tokens'; import { convertToBoolProperty } from '../helpers'; /** @@ -24,6 +24,8 @@ import { convertToBoolProperty } from '../helpers'; }) export class NbStepComponent { + protected stepper: NbStepperComponent; + /** * Step content * @@ -83,7 +85,8 @@ export class NbStepComponent { interacted = false; - constructor(@Inject(forwardRef(() => NbStepperComponent)) private stepper: NbStepperComponent) { + constructor(@Inject(NB_STEPPER) stepper) { + this.stepper = stepper; } /** diff --git a/src/framework/theme/components/stepper/stepper-tokens.ts b/src/framework/theme/components/stepper/stepper-tokens.ts new file mode 100644 index 0000000000..1732976b6a --- /dev/null +++ b/src/framework/theme/components/stepper/stepper-tokens.ts @@ -0,0 +1,3 @@ +import { InjectionToken } from '@angular/core'; + +export const NB_STEPPER = new InjectionToken('Nebular Stepper Component'); diff --git a/src/framework/theme/components/toastr/toastr-config.ts b/src/framework/theme/components/toastr/toastr-config.ts index 98d7b77ddf..c322c2509c 100644 --- a/src/framework/theme/components/toastr/toastr-config.ts +++ b/src/framework/theme/components/toastr/toastr-config.ts @@ -7,7 +7,7 @@ import { InjectionToken } from '@angular/core'; import { NbToastStatus } from './model'; -import { NbGlobalLogicalPosition, NbGlobalPosition } from '../cdk'; +import { NbGlobalLogicalPosition, NbGlobalPosition } from '../cdk/overlay/position-helper'; export const NB_TOASTR_CONFIG = new InjectionToken('Default toastr options'); diff --git a/src/framework/theme/components/toastr/toastr-container.component.ts b/src/framework/theme/components/toastr/toastr-container.component.ts index 1232ac318a..4d7f7b5fb8 100644 --- a/src/framework/theme/components/toastr/toastr-container.component.ts +++ b/src/framework/theme/components/toastr/toastr-container.component.ts @@ -10,7 +10,7 @@ import { animate, style, transition, trigger } from '@angular/animations'; import { NbToastComponent } from './toast.component'; import { NbToast } from './model'; import { NbLayoutDirectionService } from '../../services/direction.service'; -import { NbGlobalPosition, NbPositionHelper } from '../cdk'; +import { NbGlobalPosition, NbPositionHelper } from '../cdk/overlay/position-helper'; import { takeWhile } from 'rxjs/operators'; diff --git a/src/framework/theme/components/toastr/toastr.module.ts b/src/framework/theme/components/toastr/toastr.module.ts index 58a24f5d56..d2e3078434 100644 --- a/src/framework/theme/components/toastr/toastr.module.ts +++ b/src/framework/theme/components/toastr/toastr.module.ts @@ -6,7 +6,7 @@ import { ModuleWithProviders, NgModule } from '@angular/core'; -import { NbOverlayModule } from '../cdk'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; import { NbSharedModule } from '../shared/shared.module'; import { NbToastrContainerRegistry, NbToastrService } from './toastr.service'; diff --git a/src/framework/theme/components/toastr/toastr.service.spec.ts b/src/framework/theme/components/toastr/toastr.service.spec.ts index e0ee59139f..389f76e1b5 100644 --- a/src/framework/theme/components/toastr/toastr.service.spec.ts +++ b/src/framework/theme/components/toastr/toastr.service.spec.ts @@ -1,5 +1,5 @@ import { NbToastrContainerRegistry, NbToastrService } from './toastr.service'; -import { NbGlobalLogicalPosition, NbGlobalPhysicalPosition } from '../cdk'; +import { NbGlobalLogicalPosition, NbGlobalPhysicalPosition } from '../cdk/overlay/position-helper'; import { NbToastStatus } from './model'; import { TestBed } from '@angular/core/testing'; import { ComponentFactoryResolver } from '@angular/core'; diff --git a/src/framework/theme/components/toastr/toastr.service.ts b/src/framework/theme/components/toastr/toastr.service.ts index 272dafc09c..882014ee7b 100644 --- a/src/framework/theme/components/toastr/toastr.service.ts +++ b/src/framework/theme/components/toastr/toastr.service.ts @@ -6,15 +6,11 @@ import { ComponentFactoryResolver, ComponentRef, Inject, Injectable } from '@angular/core'; -import { - NbComponentPortal, - NbGlobalLogicalPosition, - NbGlobalPosition, - NbOverlayService, - NbPositionBuilderService, - NbPositionHelper, - patch, -} from '../cdk'; +import { NbComponentPortal } from '../cdk/overlay/mapping'; +import { NbOverlayService } from '../cdk/overlay/overlay-service'; +import { NbPositionBuilderService } from '../cdk/overlay/overlay-position'; +import { NbGlobalLogicalPosition, NbGlobalPosition, NbPositionHelper } from '../cdk/overlay/position-helper'; +import { patch } from '../cdk/overlay/overlay-service'; import { NbToastrContainerComponent } from './toastr-container.component'; import { NB_TOASTR_CONFIG, NbToastrConfig } from './toastr-config'; import { NbToast, NbToastStatus } from './model'; diff --git a/src/framework/theme/components/tooltip/tooltip.component.ts b/src/framework/theme/components/tooltip/tooltip.component.ts index 25deaec704..8beb835c14 100644 --- a/src/framework/theme/components/tooltip/tooltip.component.ts +++ b/src/framework/theme/components/tooltip/tooltip.component.ts @@ -6,7 +6,8 @@ import { Component, HostBinding, Input } from '@angular/core'; -import { NbPosition, NbRenderableContainer } from '../cdk'; +import { NbRenderableContainer } from '../cdk/overlay/overlay-container'; +import { NbPosition } from '../cdk/overlay/overlay-position'; import { animate, state, style, transition, trigger } from '@angular/animations'; diff --git a/src/framework/theme/components/tooltip/tooltip.directive.ts b/src/framework/theme/components/tooltip/tooltip.directive.ts index 6d49e87b96..8e27025725 100644 --- a/src/framework/theme/components/tooltip/tooltip.directive.ts +++ b/src/framework/theme/components/tooltip/tooltip.directive.ts @@ -6,7 +6,10 @@ import { AfterViewInit, Directive, ElementRef, Input, OnChanges, OnDestroy, OnInit } from '@angular/core'; -import { NbAdjustment, NbDynamicOverlay, NbDynamicOverlayHandler, NbPosition, NbTrigger } from '../cdk'; +import { NbAdjustment, NbPosition } from '../cdk/overlay/overlay-position'; +import { NbTrigger } from '../cdk/overlay/overlay-trigger'; +import { NbDynamicOverlay } from '../cdk/overlay/dynamic/dynamic-overlay'; +import { NbDynamicOverlayHandler } from '../cdk/overlay/dynamic/dynamic-overlay-handler'; import { NbTooltipComponent } from './tooltip.component'; /** diff --git a/src/framework/theme/components/tooltip/tooltip.module.ts b/src/framework/theme/components/tooltip/tooltip.module.ts index dba81f2bf1..3a71898e34 100644 --- a/src/framework/theme/components/tooltip/tooltip.module.ts +++ b/src/framework/theme/components/tooltip/tooltip.module.ts @@ -9,7 +9,8 @@ import { NgModule } from '@angular/core'; import { NbTooltipComponent } from './tooltip.component'; import { NbSharedModule } from '../shared/shared.module'; import { NbTooltipDirective } from './tooltip.directive'; -import { NbOverlayModule } from '../cdk'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; + @NgModule({ diff --git a/src/framework/theme/components/tooltip/tooltip.spec.ts b/src/framework/theme/components/tooltip/tooltip.spec.ts index 56d1b7e81a..8a05e5a505 100644 --- a/src/framework/theme/components/tooltip/tooltip.spec.ts +++ b/src/framework/theme/components/tooltip/tooltip.spec.ts @@ -5,14 +5,11 @@ import { RouterTestingModule } from '@angular/router/testing'; import { NbThemeModule } from '../../theme.module'; import { NbLayoutModule } from '../layout/layout.module'; -import { - NbAdjustment, - NbDynamicOverlayHandler, - NbOverlayContent, - NbPosition, - NbRenderableContainer, - NbTrigger, -} from '../cdk'; +import { NbAdjustment, NbPosition } from '../cdk/overlay/overlay-position'; +import { NbDynamicOverlayHandler } from '../cdk/overlay/dynamic/dynamic-overlay-handler'; +import { NbOverlayContent } from '../cdk/overlay/overlay-service'; +import { NbRenderableContainer } from '../cdk/overlay/overlay-container'; +import { NbTrigger } from '../cdk/overlay/overlay-trigger'; import { NbTooltipDirective } from './tooltip.directive'; import { NbTooltipModule } from './tooltip.module'; import { NbTooltipComponent } from './tooltip.component'; diff --git a/src/framework/theme/components/tree-grid/data-source/tree-grid-data-source.ts b/src/framework/theme/components/tree-grid/data-source/tree-grid-data-source.ts index d195232d7a..c06871711f 100644 --- a/src/framework/theme/components/tree-grid/data-source/tree-grid-data-source.ts +++ b/src/framework/theme/components/tree-grid/data-source/tree-grid-data-source.ts @@ -8,8 +8,8 @@ import { Injectable } from '@angular/core'; import { BehaviorSubject, combineLatest, Observable } from 'rxjs'; import { map } from 'rxjs/operators'; -import { NbCollectionViewer } from '../../cdk/collections'; -import { NbDataSource } from '../../cdk/table'; +import { NbCollectionViewer } from '../../cdk/collections/collection-viewer'; +import { NbDataSource } from '../../cdk/table/data-source'; import { NbSortable, NbSortRequest } from '../tree-grid-sort.component'; import { NbTreeGridDataService } from './tree-grid-data.service'; import { NbTreeGridFilterService } from './tree-grid-filter.service'; diff --git a/src/framework/theme/components/tree-grid/tree-grid-cell.component.ts b/src/framework/theme/components/tree-grid/tree-grid-cell.component.ts index 8a91aca739..bd6d10baab 100644 --- a/src/framework/theme/components/tree-grid/tree-grid-cell.component.ts +++ b/src/framework/theme/components/tree-grid/tree-grid-cell.component.ts @@ -20,14 +20,8 @@ import { filter, takeWhile } from 'rxjs/operators'; import { NbLayoutDirectionService } from '../../services/direction.service'; import { NB_WINDOW } from '../../theme.options'; -import { - NbCdkCell, - NbCdkFooterCell, - NbCellDirective, - NbFooterCellDirective, - NbHeaderCellDirective, - NbCdkHeaderCell, -} from '../cdk/table'; +import { NbCellDirective, NbFooterCellDirective, NbHeaderCellDirective } from '../cdk/table/cell'; +import { NbCdkCell, NbCdkFooterCell, NbCdkHeaderCell } from '../cdk/table/type-mappings'; import { NB_TREE_GRID } from './tree-grid-injection-tokens'; import { NbTreeGridComponent } from './tree-grid.component'; import { NbTreeGridColumnDefDirective } from './tree-grid-column-def.directive'; diff --git a/src/framework/theme/components/tree-grid/tree-grid-column-def.directive.ts b/src/framework/theme/components/tree-grid/tree-grid-column-def.directive.ts index 3268496e6f..0dfc0f46d7 100644 --- a/src/framework/theme/components/tree-grid/tree-grid-column-def.directive.ts +++ b/src/framework/theme/components/tree-grid/tree-grid-column-def.directive.ts @@ -1,5 +1,6 @@ import { Directive, Input, OnChanges } from '@angular/core'; -import { NbCdkColumnDef, NB_SORT_HEADER_COLUMN_DEF, NbColumnDefDirective } from '../cdk/table'; +import { NbCdkColumnDef } from '../cdk/table/type-mappings'; +import { NB_SORT_HEADER_COLUMN_DEF, NbColumnDefDirective } from '../cdk/table/cell'; /** * Column definition for the tree-grid. diff --git a/src/framework/theme/components/tree-grid/tree-grid-def.component.ts b/src/framework/theme/components/tree-grid/tree-grid-def.component.ts index c109a7462e..def9d8aa50 100644 --- a/src/framework/theme/components/tree-grid/tree-grid-def.component.ts +++ b/src/framework/theme/components/tree-grid/tree-grid-def.component.ts @@ -6,13 +6,9 @@ import { NbCdkHeaderCellDef, NbCdkHeaderRowDef, NbCdkRowDef, - NbCellDefDirective, - NbFooterCellDefDirective, - NbFooterRowDefDirective, - NbHeaderCellDefDirective, - NbHeaderRowDefDirective, - NbRowDefDirective, -} from '../cdk/table'; +} from '../cdk/table/type-mappings'; +import { NbCellDefDirective, NbFooterCellDefDirective, NbHeaderCellDefDirective } from '../cdk/table/cell'; +import { NbFooterRowDefDirective, NbHeaderRowDefDirective, NbRowDefDirective } from '../cdk/table/row'; import { NbColumnsService } from './tree-grid-columns.service'; export interface NbTreeGridResponsiveRowDef { diff --git a/src/framework/theme/components/tree-grid/tree-grid-row.component.ts b/src/framework/theme/components/tree-grid/tree-grid-row.component.ts index ee5bcf9403..f6a3bbc893 100644 --- a/src/framework/theme/components/tree-grid/tree-grid-row.component.ts +++ b/src/framework/theme/components/tree-grid/tree-grid-row.component.ts @@ -1,14 +1,8 @@ import { ChangeDetectionStrategy, Component, ElementRef, HostListener, Inject, Input, OnDestroy } from '@angular/core'; import { Subject, timer } from 'rxjs'; import { take, takeUntil } from 'rxjs/operators'; -import { - NbCdkFooterRow, - NbCdkHeaderRow, - NbCdkRow, - NbFooterRowComponent, - NbHeaderRowComponent, - NbRowComponent, -} from '../cdk/table'; +import { NbCdkFooterRow, NbCdkHeaderRow, NbCdkRow } from '../cdk/table/type-mappings'; +import { NbFooterRowComponent, NbHeaderRowComponent, NbRowComponent } from '../cdk/table/row'; import { NbTreeGridComponent } from './tree-grid.component'; import { NB_TREE_GRID } from './tree-grid-injection-tokens'; diff --git a/src/framework/theme/components/tree-grid/tree-grid-sort.component.ts b/src/framework/theme/components/tree-grid/tree-grid-sort.component.ts index 7adcfa0045..2e339d34bc 100644 --- a/src/framework/theme/components/tree-grid/tree-grid-sort.component.ts +++ b/src/framework/theme/components/tree-grid/tree-grid-sort.component.ts @@ -19,7 +19,7 @@ import { } from '@angular/core'; import { convertToBoolProperty } from '../helpers'; -import { NB_SORT_HEADER_COLUMN_DEF } from '../cdk/table'; +import { NB_SORT_HEADER_COLUMN_DEF } from '../cdk/table/cell'; /** Column definition associated with a `NbSortHeaderDirective`. */ interface NbSortHeaderColumnDef { diff --git a/src/framework/theme/components/tree-grid/tree-grid.component.ts b/src/framework/theme/components/tree-grid/tree-grid.component.ts index fb16b23e1f..8ce2ac76d9 100644 --- a/src/framework/theme/components/tree-grid/tree-grid.component.ts +++ b/src/framework/theme/components/tree-grid/tree-grid.component.ts @@ -23,9 +23,9 @@ import { fromEvent, merge } from 'rxjs'; import { debounceTime, takeWhile } from 'rxjs/operators'; import { NB_DOCUMENT, NB_WINDOW } from '../../theme.options'; -import { NbPlatform } from '../cdk/platform'; -import { NbDirectionality } from '../cdk/bidi'; -import { NB_TABLE_TEMPLATE, NbTable } from '../cdk/table'; +import { NbPlatform } from '../cdk/platform/platform-service'; +import { NbDirectionality } from '../cdk/bidi/bidi-service'; +import { NB_TABLE_TEMPLATE, NbTable } from '../cdk/table/table.module'; import { NbTreeGridDataSource, NbTreeGridDataSourceBuilder } from './data-source/tree-grid-data-source'; import { NB_DEFAULT_ROW_LEVEL, NbTreeGridPresentationNode } from './data-source/tree-grid.model'; import { NbToggleOptions } from './data-source/tree-grid.service'; diff --git a/src/framework/theme/components/tree-grid/tree-grid.module.ts b/src/framework/theme/components/tree-grid/tree-grid.module.ts index bce3456b62..352a30d458 100644 --- a/src/framework/theme/components/tree-grid/tree-grid.module.ts +++ b/src/framework/theme/components/tree-grid/tree-grid.module.ts @@ -7,7 +7,7 @@ import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; -import { NbTableModule } from '../cdk/table'; +import { NbTableModule } from '../cdk/table/table.module'; import { NbTreeGridComponent } from './tree-grid.component'; import { NbTreeGridCellDefDirective, diff --git a/src/framework/theme/components/window/index.ts b/src/framework/theme/components/window/index.ts deleted file mode 100644 index 4f01efc42d..0000000000 --- a/src/framework/theme/components/window/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from './window.module'; -export * from './window.service'; -export * from './window-ref'; -export { NbWindowConfig, NbWindowState, NB_WINDOW_CONFIG, NbWindowStateChange } from './window.options'; diff --git a/src/framework/theme/components/window/window.component.ts b/src/framework/theme/components/window/window.component.ts index 4aace950f5..43a7dbf9dd 100644 --- a/src/framework/theme/components/window/window.component.ts +++ b/src/framework/theme/components/window/window.component.ts @@ -13,14 +13,9 @@ import { Input, AfterViewChecked, } from '@angular/core'; -import { - NbComponentPortal, - NbFocusTrap, - NbFocusTrapFactoryService, - NbOverlayContainerComponent, - NbTemplatePortal, -} from '../cdk'; -import { NbComponentType } from '../cdk/overlay'; +import { NbFocusTrap, NbFocusTrapFactoryService } from '../cdk/a11y/focus-trap'; +import { NbComponentPortal, NbComponentType, NbTemplatePortal } from '../cdk/overlay/mapping'; +import { NbOverlayContainerComponent } from '../cdk/overlay/overlay-container'; import { NB_WINDOW_CONTENT, NbWindowConfig, NbWindowState, NB_WINDOW_CONTEXT } from './window.options'; import { NbWindowRef } from './window-ref'; diff --git a/src/framework/theme/components/window/window.module.ts b/src/framework/theme/components/window/window.module.ts index 505cb45c33..8b41e97871 100644 --- a/src/framework/theme/components/window/window.module.ts +++ b/src/framework/theme/components/window/window.module.ts @@ -1,6 +1,6 @@ import { ModuleWithProviders, NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; -import { NbOverlayModule } from '../cdk/overlay'; +import { NbOverlayModule } from '../cdk/overlay/overlay.module'; import { NbCardModule } from '../card/card.module'; import { NbWindowService } from './window.service'; import { NbWindowsContainerComponent } from './windows-container.component'; diff --git a/src/framework/theme/components/window/window.options.ts b/src/framework/theme/components/window/window.options.ts index 0826ab55ad..e9af8d5526 100644 --- a/src/framework/theme/components/window/window.options.ts +++ b/src/framework/theme/components/window/window.options.ts @@ -2,7 +2,7 @@ import { TemplateRef, InjectionToken, ViewContainerRef } from '@angular/core'; // Do not remove (TS4023). // tslint:disable-next-line import { ComponentType } from '@angular/cdk/overlay'; -import { NbComponentType } from '../cdk/overlay'; +import { NbComponentType } from '../cdk/overlay/mapping'; export enum NbWindowState { MINIMIZED = 'minimized', diff --git a/src/framework/theme/components/window/window.service.spec.ts b/src/framework/theme/components/window/window.service.spec.ts index 0b0a2ef2e0..41cc14a3bb 100644 --- a/src/framework/theme/components/window/window.service.spec.ts +++ b/src/framework/theme/components/window/window.service.spec.ts @@ -2,7 +2,8 @@ import { Component, ElementRef, NgModule, ViewChild, TemplateRef } from '@angula import { TestBed } from '@angular/core/testing'; import { NB_DOCUMENT } from '../../theme.options'; import { NbThemeModule } from '../../theme.module'; -import { NbOverlayContainerAdapter, NbViewportRulerAdapter } from '../cdk'; +import { NbOverlayContainerAdapter } from '../cdk/adapter/overlay-container-adapter'; +import { NbViewportRulerAdapter } from '../cdk/adapter/viewport-ruler-adapter'; import { NbWindowModule } from './window.module'; import { NbWindowService } from './window.service'; import createSpy = jasmine.createSpy; diff --git a/src/framework/theme/components/window/window.service.ts b/src/framework/theme/components/window/window.service.ts index 90bfaabeb7..fe849d6c95 100644 --- a/src/framework/theme/components/window/window.service.ts +++ b/src/framework/theme/components/window/window.service.ts @@ -13,8 +13,8 @@ import { NbComponentType, NbOverlayPositionBuilder, NbOverlayRef, - NbOverlayService, -} from '../cdk/overlay'; +} from '../cdk/overlay/mapping'; +import { NbOverlayService } from '../cdk/overlay/overlay-service'; import { NbBlockScrollStrategyAdapter } from '../cdk/adapter/block-scroll-strategy-adapter'; import { NB_WINDOW_CONFIG, diff --git a/src/framework/theme/package.json b/src/framework/theme/package.json index e6489fb76a..a7f3e15379 100644 --- a/src/framework/theme/package.json +++ b/src/framework/theme/package.json @@ -2,9 +2,6 @@ "name": "@nebular/theme", "version": "3.5.0", "description": "@nebular/theme", - "main": "./bundles/theme.umd.js", - "module": "./index.js", - "typings": "./index.d.ts", "author": "akveo", "license": "MIT", "repository": { @@ -35,5 +32,6 @@ "dependencies": { "intersection-observer": "0.5.0" }, - "schematics": "./schematics/collection.json" + "schematics": "./schematics/collection.json", + "sideEffects": false } diff --git a/src/framework/theme/index.ts b/src/framework/theme/public_api.ts similarity index 58% rename from src/framework/theme/index.ts rename to src/framework/theme/public_api.ts index 7a3157b809..13235f36aa 100644 --- a/src/framework/theme/index.ts +++ b/src/framework/theme/public_api.ts @@ -14,24 +14,57 @@ export * from './services/color.helper'; export * from './services/direction.service'; export * from './services/scroll.service'; export * from './services/ruler.service'; +export * from './services/js-themes-registry.service'; export * from './components/card/card.module'; +export * from './components/card/card.component'; +export * from './components/card/flip-card/flip-card.component'; +export * from './components/card/reveal-card/reveal-card.component'; export * from './components/calendar/calendar.module'; export * from './components/calendar/calendar.component'; export * from './components/calendar/calendar-range.module'; export * from './components/calendar/calendar-range.component'; -export * from './components/calendar-kit'; +// tslint:disable:max-line-length +export { NbCalendarHeaderComponent } from './components/calendar-kit/components/calendar-header/calendar-header.component'; +export { NbCalendarDayCellComponent } from './components/calendar-kit/components/calendar-day-picker/calendar-day-cell.component'; +export { + NbCalendarYearPickerComponent, + YEARS_IN_VIEW, + YEARS_IN_COLUMN, +} from './components/calendar-kit/components/calendar-year-picker/calendar-year-picker.component'; +export { + NbCalendarMonthPickerComponent, + MONTHS_IN_VIEW, + MONTHS_IN_COLUMN, +} from './components/calendar-kit/components/calendar-month-picker/calendar-month-picker.component'; +export { NbCalendarDayPickerComponent } from './components/calendar-kit/components/calendar-day-picker/calendar-day-picker.component'; +export { NbCalendarNavigationComponent } from './components/calendar-kit/components/calendar-navigation/calendar-navigation.component'; +export { NbCalendarPageableNavigationComponent } from './components/calendar-kit/components/calendar-navigation/calendar-pageable-navigation.component'; +export { NbCalendarDaysNamesComponent } from './components/calendar-kit/components/calendar-days-names/calendar-days-names.component'; +export { NbCalendarMonthCellComponent } from './components/calendar-kit/components/calendar-month-picker/calendar-month-cell.component'; +export { NbCalendarYearCellComponent } from './components/calendar-kit/components/calendar-year-picker/calendar-year-cell.component'; +export { NbCalendarPickerRowComponent } from './components/calendar-kit/components/calendar-picker/calendar-picker-row.component'; +export { NbCalendarPickerComponent }from './components/calendar-kit/components/calendar-picker/calendar-picker.component'; +// tslint:enable:max-line-length +export { NbCalendarMonthModelService } from './components/calendar-kit/services/calendar-month-model.service'; +export { NbNativeDateService } from './components/calendar-kit/services/native-date.service'; +export { NbDateService } from './components/calendar-kit/services/date.service'; +export * from './components/calendar-kit/model'; +export * from './components/calendar-kit/calendar-kit.module'; export * from './components/layout/layout.module'; export * from './components/layout/layout.component'; export * from './components/layout/restore-scroll-top.service'; export * from './components/menu/menu.module'; export { NbMenuService, NbMenuItem } from './components/menu/menu.service'; export * from './components/route-tabset/route-tabset.module'; +export * from './components/route-tabset/route-tabset.component'; export * from './components/sidebar/sidebar.module'; export * from './components/sidebar/sidebar.service'; export * from './components/tabset/tabset.module'; export * from './components/tabset/tabset.component'; export * from './components/user/user.module'; +export * from './components/user/user.component'; export * from './components/actions/actions.module'; +export * from './components/actions/actions.component'; export * from './components/search/search.module'; export * from './components/search/search.service'; export * from './components/search/search.component'; @@ -59,7 +92,10 @@ export * from './components/chat/chat.module'; export * from './components/spinner/spinner.component'; export * from './components/spinner/spinner.directive'; export * from './components/spinner/spinner.module'; +export * from './components/stepper/stepper-tokens'; export * from './components/stepper/stepper.component'; +export * from './components/stepper/step.component'; +export * from './components/stepper/stepper-button.directive'; export * from './components/stepper/stepper.module'; export * from './components/accordion/accordion.component'; export * from './components/accordion/accordion-item.component'; @@ -74,14 +110,33 @@ export * from './components/list/list-page-tracker.directive'; export * from './components/list/infinite-list.directive'; export * from './components/input/input.directive'; export * from './components/input/input.module'; -export * from './components/cdk/overlay'; -export * from './components/dialog'; +export * from './components/cdk/overlay/overlay.module'; +export * from './components/cdk/overlay/overlay-service'; +export * from './components/cdk/overlay/overlay-position'; +export * from './components/cdk/overlay/overlay-container'; +export * from './components/cdk/overlay/overlay-trigger'; +export * from './components/cdk/overlay/mapping'; +export * from './components/cdk/overlay/position-helper'; +export * from './components/cdk/overlay/dynamic/dynamic-overlay'; +export * from './components/cdk/overlay/dynamic/dynamic-overlay-handler'; +export * from './components/dialog/dialog-config'; +export * from './components/dialog/dialog-ref'; +export * from './components/dialog/dialog.service'; +export * from './components/dialog/dialog.module'; export * from './components/toastr/toastr.module'; export * from './components/toastr/toastr.service'; export * from './components/tooltip/tooltip.module'; export * from './components/tooltip/tooltip.directive'; export * from './components/select/select.module'; -export * from './components/window'; +export * from './components/select/select.component'; +export * from './components/select/option.component'; +export * from './components/select/option-group.component'; +export * from './components/window/window.module'; +export * from './components/window/window.service'; +export * from './components/window/window-ref'; +export { + NbWindowConfig, NbWindowState, NB_WINDOW_CONFIG, NbWindowStateChange, +} from './components/window/window.options'; export * from './components/datepicker/datepicker.module'; export * from './components/datepicker/datepicker.directive'; export * from './components/radio/radio.module'; diff --git a/src/framework/theme/theme.module.ts b/src/framework/theme/theme.module.ts index 9344925b28..16d7333435 100644 --- a/src/framework/theme/theme.module.ts +++ b/src/framework/theme/theme.module.ts @@ -28,7 +28,7 @@ import { import { NbLayoutDirectionService, NbLayoutDirection, NB_LAYOUT_DIRECTION } from './services/direction.service'; import { NbLayoutScrollService } from './services/scroll.service'; import { NbLayoutRulerService } from './services/ruler.service'; -import { NbOverlayModule } from './components/cdk'; +import { NbOverlayModule } from './components/cdk/overlay/overlay.module'; export function nbWindowFactory() { return window; diff --git a/src/playground/with-layout/infinite-list/infinite-news-list.component.ts b/src/playground/with-layout/infinite-list/infinite-news-list.component.ts index a71bb2a64d..d8159abd43 100644 --- a/src/playground/with-layout/infinite-list/infinite-news-list.component.ts +++ b/src/playground/with-layout/infinite-list/infinite-news-list.component.ts @@ -3,7 +3,6 @@ import { isPlatformBrowser } from '@angular/common'; import { ActivatedRoute, Router } from '@angular/router'; import { take, filter, map } from 'rxjs/operators'; import { NbListItemComponent, NbLayoutScrollService, NB_WINDOW } from '@nebular/theme'; -import { getElementHeight } from '@nebular/theme/components/helpers'; import { NewsService } from './news.service'; @Component({ @@ -127,9 +126,16 @@ export class InfiniteNewsListComponent implements OnInit, OnDestroy { let heightOfAddedItems = 0; for (const { nativeElement } of this.listItems.toArray()) { if (nativeElement === previousFirstItem) { break } - heightOfAddedItems += getElementHeight(nativeElement); + heightOfAddedItems += getElementHeight(this.window, nativeElement); } this.scrollService.scrollTo(null, heightOfAddedItems); }); } } + +export function getElementHeight(window, el) { + const style = window.getComputedStyle(el); + const marginTop = parseInt(style.getPropertyValue('margin-top'), 10); + const marginBottom = parseInt(style.getPropertyValue('margin-bottom'), 10); + return el.offsetHeight + marginTop + marginBottom; +} diff --git a/src/styles.scss b/src/styles.scss deleted file mode 100644 index b00dc6ca7f..0000000000 --- a/src/styles.scss +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @license - * Copyright Akveo. All Rights Reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - */ - -/* You can add global styles to this file, and also import other style files */ diff --git a/src/tsconfig.app.json b/src/tsconfig.app.json index be43d56442..9564c0341e 100644 --- a/src/tsconfig.app.json +++ b/src/tsconfig.app.json @@ -7,7 +7,7 @@ "types": [], "paths": { "@nebular/*": [ - "./framework/*" + "./framework/*/public_api.ts" ] } }, diff --git a/src/tsconfig.spec.json b/src/tsconfig.spec.json index f346814d54..568f86fc72 100644 --- a/src/tsconfig.spec.json +++ b/src/tsconfig.spec.json @@ -11,7 +11,13 @@ ], "paths": { "@nebular/*": [ - "./framework/*" + "./framework/*/public_api.ts" + ], + "@nebular/theme/*": [ + "./framework/theme/*" + ], + "@nebular/auth/*": [ + "./framework/auth/*" ] } }, diff --git a/tsconfig.json b/tsconfig.json index d82d78b66a..a6c016bf38 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -14,9 +14,6 @@ "lib": [ "es2017", "dom" - ], - "plugins": [ - { "name": "tslint-language-service"} ] } } diff --git a/tsconfig.publish.json b/tsconfig.publish.json index d717d17ee7..5105f124a3 100644 --- a/tsconfig.publish.json +++ b/tsconfig.publish.json @@ -4,30 +4,26 @@ "emitDecoratorMetadata": true, "experimentalDecorators": true, "lib": [ - "es2017", - "dom" + "dom", + "es2018" ], - "module": "es2015", + "module": "esnext", "moduleResolution": "node", "noEmitOnError": true, - "outDir": "./src/.lib", "rootDir": "./.ng_build", "sourceMap": true, - "target": "es5", + "target": "es2015", "inlineSources": true, "stripInternal": true, "baseUrl": ".", "paths": { - "@nebular/theme": ["./.ng_build/theme"] + "@nebular/theme": ["./src/.lib/theme"] }, "skipLibCheck": true, "typeRoots": [ "node_modules/@types" ] }, - "include": [ - "./.ng_build/**/*" - ], "exclude": [ "./.ng_build/**/*.e2e.ts", "./.ng_build/**/*.spec.ts", @@ -37,6 +33,9 @@ "skipTemplateCodegen": true, "strictMetadataEmit": true, "fullTemplateTypeCheck": true, - "genDir": "./.ng_compiled" + "strictInjectionParameters": true, + "enableResourceInlining": true, + "skipMetadataEmit": false, + "strictTypeChecks": true } } diff --git a/tsconfig.schematics.publish.json b/tsconfig.schematics.publish.json index 8abc9a6745..1b2ee9a646 100644 --- a/tsconfig.schematics.publish.json +++ b/tsconfig.schematics.publish.json @@ -18,7 +18,7 @@ "noUnusedLocals": true, "skipDefaultLibCheck": true, "skipLibCheck": true, - "sourceMap": true, + "sourceMap": false, "strictNullChecks": true, "target": "es5", "typeRoots": [ @@ -29,6 +29,7 @@ "./src/framework/**/schematics/**/*" ], "exclude": [ - "./src/framework/**/schematics/**/files/**/*" + "./src/framework/**/schematics/**/files/**/*", + "./src/framework/**/schematics/**/*.spec.ts" ] }