diff --git a/.npmrc b/.npmrc new file mode 100644 index 00000000..0a60c475 --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +save-prefix='' \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 03e33e58..7ca8f2f9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "fuse2", - "version": "1.0.0", + "version": "1.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -16,17 +16,17 @@ } }, "@angular/animations": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-4.3.5.tgz", - "integrity": "sha1-hapFTIh8x8zhFjfqX26a+tiEkOE=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-4.3.6.tgz", + "integrity": "sha1-v5KD7HyMmLMvVp2E3NoQiQ/cAmI=", "requires": { "tslib": "1.7.1" } }, "@angular/cdk": { - "version": "2.0.0-beta.8", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-2.0.0-beta.8.tgz", - "integrity": "sha512-OOtK+AA14cmRG9AbUgvoKC9Tooz0N37GTaRSV+xziC8GxXHgwvTu4PFSFHlBnHPipOYC/tB2oP39j3KuurEMPA==", + "version": "2.0.0-beta.10", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-2.0.0-beta.10.tgz", + "integrity": "sha512-G0RvzxItfPy8JEdnyV/10GryE3zHehm3bUJ7U9dwYKhAzhye+MX0P6rs8VEmbClJb5SuZDr0ZZ53vbHhHsUh6A==", "requires": { "tslib": "1.7.1" } @@ -103,41 +103,32 @@ } }, "@angular/common": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-4.3.5.tgz", - "integrity": "sha1-X2sRNH6uHfw0YjzP1MBsj0xIji0=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-4.3.6.tgz", + "integrity": "sha1-7TfpMHx1Bt2DR5fBps9nXlK1tu4=", "requires": { "tslib": "1.7.1" } }, "@angular/compiler": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-4.3.5.tgz", - "integrity": "sha1-UNPJhmV77/H+9Pbdmj+ljiSr1Ug=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-4.3.6.tgz", + "integrity": "sha1-vhcN8Ji3HoNczt8WjV+3sj5QRbg=", "requires": { "tslib": "1.7.1" } }, "@angular/compiler-cli": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-4.3.5.tgz", - "integrity": "sha1-JOmbNsCQk2P/gke/MxqLiert/mM=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-4.3.6.tgz", + "integrity": "sha1-avpq72jdaB5hs5i+TWJw5choCxI=", "dev": true, "requires": { - "@angular/tsc-wrapped": "4.3.5", + "@angular/tsc-wrapped": "4.3.6", "minimist": "1.2.0", "reflect-metadata": "0.1.10" }, "dependencies": { - "@angular/tsc-wrapped": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/tsc-wrapped/-/tsc-wrapped-4.3.5.tgz", - "integrity": "sha1-lf2qgTz8VyYvx+9f6nJtYorvq6w=", - "dev": true, - "requires": { - "tsickle": "0.21.6" - } - }, "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", @@ -147,72 +138,84 @@ } }, "@angular/core": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-4.3.5.tgz", - "integrity": "sha1-vR79vx68+5wnojjiqkxIFZsIlbs=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-4.3.6.tgz", + "integrity": "sha1-u6xj1o0Pe8s4nRKzQghlK+MofpY=", "requires": { "tslib": "1.7.1" } }, "@angular/flex-layout": { - "version": "2.0.0-beta.8", - "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.8.tgz", - "integrity": "sha1-uc9XhlqTyhWP5W2FCVJCPySNEDs=" + "version": "2.0.0-beta.9", + "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.9.tgz", + "integrity": "sha1-PlT4mOgF0LFCbRXmE520FdBO518=", + "requires": { + "tslib": "1.7.1" + } }, "@angular/forms": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-4.3.5.tgz", - "integrity": "sha1-UZqtCtgqG4cBmTf6k/wUdzRzd4c=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-4.3.6.tgz", + "integrity": "sha1-DyDEWXwWoVJ0XXzZVVmFWgpcZoc=", "requires": { "tslib": "1.7.1" } }, "@angular/http": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/http/-/http-4.3.5.tgz", - "integrity": "sha1-gdSwdhyO8DXLC3NjAMI382KG8fA=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-4.3.6.tgz", + "integrity": "sha1-Vjgn0afV6J47fYa3f7vTZ7LAhZE=", "requires": { "tslib": "1.7.1" } }, "@angular/language-service": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-4.3.5.tgz", - "integrity": "sha1-ttiC6kDRjVE/w6A1p5h1Ap/jjwE=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-4.3.6.tgz", + "integrity": "sha1-cc8tu0ZhVo89EqnA5LngQ++TvTo=", "dev": true }, "@angular/material": { - "version": "2.0.0-beta.8", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-2.0.0-beta.8.tgz", - "integrity": "sha512-4+OecvjU15i+l/vXBP2qEHdlsU9taK6kBhsWKsxNLK3+TAVoV5qjc2rjOucHtTwI/oOjyBXnLJP6pl4tuLEUQw==", + "version": "2.0.0-beta.10", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-2.0.0-beta.10.tgz", + "integrity": "sha512-KAQ2t9wenI55oXkjjT6E4VGUSVu7AZmR+ytnaP96VBFk18wxcGnVaTbQmCvVm/vkbcdeoSF09D6ic94DHAE+1A==", "requires": { "tslib": "1.7.1" } }, "@angular/platform-browser": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-4.3.5.tgz", - "integrity": "sha1-wNA0CUmcwp+BZ3qrYjyQhnYNhO8=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-4.3.6.tgz", + "integrity": "sha1-YVKx87eNAkb8XhUOL3ue1DN+O6Y=", "requires": { "tslib": "1.7.1" } }, "@angular/platform-browser-dynamic": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.3.5.tgz", - "integrity": "sha1-Sml7OwrsgFsziE/UqbNHMGW6seA=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.3.6.tgz", + "integrity": "sha1-nqv4JvEZyY+Fwqlu3LGKsAtO+xw=", "requires": { "tslib": "1.7.1" } }, "@angular/router": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-4.3.5.tgz", - "integrity": "sha1-GICCdHvJtpdPnUs/VVe0NGRdI80=", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-4.3.6.tgz", + "integrity": "sha1-ZAM+20/NoIoyPnUztKGCDA8o0TA=", "requires": { "tslib": "1.7.1" } }, + "@angular/tsc-wrapped": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@angular/tsc-wrapped/-/tsc-wrapped-4.3.6.tgz", + "integrity": "sha1-GqZuCrLEeZpK0UtnXhOVOqX81DY=", + "dev": true, + "requires": { + "tsickle": "0.21.6" + } + }, "@ngtools/json-schema": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@ngtools/json-schema/-/json-schema-1.1.0.tgz", @@ -255,18 +258,18 @@ "dev": true }, "@types/jasminewd2": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.2.tgz", - "integrity": "sha1-X2jh5pe/ELxv2Mvy4Aaj1nEsW2Q=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.3.tgz", + "integrity": "sha512-hYDVmQZT5VA2kigd4H4bv7vl/OhlympwREUemqBdOqtrYTo5Ytm12a5W5/nGgGYdanGVxj0x/VhZ7J3hOg/YKg==", "dev": true, "requires": { "@types/jasmine": "2.5.54" } }, "@types/node": { - "version": "6.0.87", - "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.87.tgz", - "integrity": "sha512-Xo0pYENOBaGtJUhi50KH6gdBNQmZQQxAwBArsJpBd15ncoz+LZD5Ev14vuezcw62CsQ1q6bM++7jA6jfwaAbfQ==", + "version": "6.0.88", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.88.tgz", + "integrity": "sha512-bYDPZTX0/s1aihdjLuAgogUAT5M+TpoWChEMea2p0yOcfn5bu3k6cJb9cp6nw268XeSNIGGr+4+/8V5K6BGzLQ==", "dev": true }, "@types/q": { @@ -6192,6 +6195,11 @@ "resolved": "https://registry.npmjs.org/ngx-color-picker/-/ngx-color-picker-4.3.1.tgz", "integrity": "sha512-/Gn3XvOgaAK/ZnXA0ej9ivYm6uIvHwvZaSzx04ZUtG1Vw5RCKzw84dK0Ru9Ylnnq1xJU4WmdA63REkJb8cvYXg==" }, + "ngx-cookie-service": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/ngx-cookie-service/-/ngx-cookie-service-1.0.7.tgz", + "integrity": "sha1-NdQzt3WloqgIxUl19Pr1AKzFL2g=" + }, "ngx-perfect-scrollbar": { "version": "4.5.6", "resolved": "https://registry.npmjs.org/ngx-perfect-scrollbar/-/ngx-perfect-scrollbar-4.5.6.tgz", @@ -7415,7 +7423,7 @@ "integrity": "sha1-myIXQXCaTGLVzVPGqt1UpxE36V8=", "dev": true, "requires": { - "@types/node": "6.0.87", + "@types/node": "6.0.88", "@types/q": "0.0.32", "@types/selenium-webdriver": "2.53.42", "blocking-proxy": "0.0.5", diff --git a/package.json b/package.json index 6b204900..ebfe1c25 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "fuse2", - "version": "1.0.1", - "license": "MIT", + "version": "1.0.2", + "license": "", "scripts": { "ng": "ng", "start": "ng serve", @@ -12,44 +12,45 @@ }, "private": true, "dependencies": { - "@angular/animations": "4.3.5", - "@angular/cdk": "^2.0.0-beta.8", - "@angular/common": "4.3.5", - "@angular/compiler": "4.3.5", - "@angular/core": "4.3.5", - "@angular/flex-layout": "2.0.0-beta.8", - "@angular/forms": "4.3.5", - "@angular/http": "4.3.5", - "@angular/material": "^2.0.0-beta.8", - "@angular/platform-browser": "4.3.5", - "@angular/platform-browser-dynamic": "4.3.5", - "@angular/router": "4.3.5", - "@swimlane/ngx-charts": "^6.0.2", - "@swimlane/ngx-datatable": "^9.3.1", - "@swimlane/ngx-dnd": "^3.0.0", - "angular-calendar": "^0.19.0", - "angular-in-memory-web-api": "^0.3.2", - "classlist.js": "^1.1.20150312", - "core-js": "^2.5.0", - "d3": "^4.10.0", - "hammerjs": "^2.0.8", - "highlight.js": "^9.12.0", - "intl": "^1.2.5", - "moment": "^2.18.1", - "ngx-color-picker": "^4.3.1", - "ngx-perfect-scrollbar": "^4.5.6", - "rxjs": "^5.4.3", - "web-animations-js": "^2.3.1", - "zone.js": "^0.8.17" + "@angular/animations": "4.3.6", + "@angular/cdk": "2.0.0-beta.10", + "@angular/common": "4.3.6", + "@angular/compiler": "4.3.6", + "@angular/core": "4.3.6", + "@angular/flex-layout": "2.0.0-beta.9", + "@angular/forms": "4.3.6", + "@angular/http": "4.3.6", + "@angular/material": "2.0.0-beta.10", + "@angular/platform-browser": "4.3.6", + "@angular/platform-browser-dynamic": "4.3.6", + "@angular/router": "4.3.6", + "@swimlane/ngx-charts": "6.0.2", + "@swimlane/ngx-datatable": "9.3.1", + "@swimlane/ngx-dnd": "3.0.0", + "angular-calendar": "0.19.0", + "angular-in-memory-web-api": "0.3.2", + "classlist.js": "1.1.20150312", + "core-js": "2.5.0", + "d3": "4.10.0", + "hammerjs": "2.0.8", + "highlight.js": "9.12.0", + "intl": "1.2.5", + "moment": "2.18.1", + "ngx-color-picker": "4.3.1", + "ngx-cookie-service": "1.0.7", + "ngx-perfect-scrollbar": "4.5.6", + "rxjs": "5.4.3", + "web-animations-js": "2.3.1", + "zone.js": "0.8.17" }, "devDependencies": { "@angular/cli": "^1.3.2", - "@angular/compiler-cli": "4.3.5", - "@angular/language-service": "4.3.5", + "@angular/compiler-cli": "4.3.6", + "@angular/language-service": "4.3.6", "@ngtools/webpack": "^1.6.2", "@types/jasmine": "^2.5.54", "@types/jasminewd2": "^2.0.2", - "@types/node": "^6.0.87", + "@types/node": "^6.0.88", "codelyzer": "~3.0.1", "jasmine-core": "~2.6.2", "jasmine-spec-reporter": "~4.1.0", diff --git a/src/app/core/components/countdown/countdown.component.scss b/src/app/core/components/countdown/countdown.component.scss index b09ceb86..96c1e072 100644 --- a/src/app/core/components/countdown/countdown.component.scss +++ b/src/app/core/components/countdown/countdown.component.scss @@ -9,6 +9,7 @@ flex-direction: row; align-items: center; justify-content: center; + text-align: center; .time { display: flex; diff --git a/src/app/core/components/shortcuts/shortcuts.component.ts b/src/app/core/components/shortcuts/shortcuts.component.ts index e44c49ff..fd6f9652 100644 --- a/src/app/core/components/shortcuts/shortcuts.component.ts +++ b/src/app/core/components/shortcuts/shortcuts.component.ts @@ -4,6 +4,7 @@ import { Subscription } from 'rxjs/Subscription'; import { ObservableMedia } from '@angular/flex-layout'; import { FuseMatchMedia } from '../../services/match-media.service'; import { FuseConfigService } from '../../services/config.service'; +import { CookieService } from 'ngx-cookie-service'; @Component({ selector : 'fuse-shortcuts', @@ -29,7 +30,8 @@ export class FuseShortcutsComponent implements OnInit, OnDestroy private observableMedia: ObservableMedia, private fuseMatchMedia: FuseMatchMedia, private fuseNavigationService: FuseNavigationService, - private fuseConfig: FuseConfigService + private fuseConfig: FuseConfigService, + private cookieService: CookieService ) { this.filteredNavigationItems = this.navigationItems = this.fuseNavigationService.getFlatNavigation(); @@ -45,33 +47,42 @@ export class FuseShortcutsComponent implements OnInit, OnDestroy ngOnInit() { - // User's shortcut items - this.shortcutItems = [ - { - 'title': 'Calendar', - 'type' : 'nav-item', - 'icon' : 'today', - 'url' : '/apps/calendar' - }, - { - 'title': 'Mail', - 'type' : 'nav-item', - 'icon' : 'email', - 'url' : '/apps/mail' - }, - { - 'title': 'Contacts', - 'type' : 'nav-item', - 'icon' : 'account_box', - 'url' : '/apps/contacts' - }, - { - 'title': 'To-Do', - 'type' : 'nav-item', - 'icon' : 'check_box', - 'url' : '/apps/todo' - } - ]; + const cookieExists = this.cookieService.check('FUSE2.shortcuts'); + + if ( cookieExists ) + { + this.shortcutItems = JSON.parse(this.cookieService.get('FUSE2.shortcuts')); + } + else + { + // User's shortcut items + this.shortcutItems = [ + { + 'title': 'Calendar', + 'type' : 'nav-item', + 'icon' : 'today', + 'url' : '/apps/calendar' + }, + { + 'title': 'Mail', + 'type' : 'nav-item', + 'icon' : 'email', + 'url' : '/apps/mail' + }, + { + 'title': 'Contacts', + 'type' : 'nav-item', + 'icon' : 'account_box', + 'url' : '/apps/contacts' + }, + { + 'title': 'To-Do', + 'type' : 'nav-item', + 'icon' : 'check_box', + 'url' : '/apps/todo' + } + ]; + } this.matchMediaSubscription = this.fuseMatchMedia.onMediaChange.subscribe(() => { @@ -115,12 +126,18 @@ export class FuseShortcutsComponent implements OnInit, OnDestroy if ( this.shortcutItems[i].url === itemToToggle.url ) { this.shortcutItems.splice(i, 1); + + // Save to the cookies + this.cookieService.set('FUSE2.shortcuts', JSON.stringify(this.shortcutItems)); + return; } - } this.shortcutItems.push(itemToToggle); + + // Save to the cookies + this.cookieService.set('FUSE2.shortcuts', JSON.stringify(this.shortcutItems)); } isInShortcuts(navigationItem) diff --git a/src/app/core/directives/md-sidenav-helper/md-sidenav-helper.directive.ts b/src/app/core/directives/md-sidenav-helper/md-sidenav-helper.directive.ts index 5d1fe774..f0e8a398 100644 --- a/src/app/core/directives/md-sidenav-helper/md-sidenav-helper.directive.ts +++ b/src/app/core/directives/md-sidenav-helper/md-sidenav-helper.directive.ts @@ -35,13 +35,17 @@ export class FuseMdSidenavHelperDirective implements OnInit, AfterViewInit, OnDe { this.isLockedOpen = true; this.mdSidenav.mode = 'side'; - this.mdSidenav.open(); + setTimeout(() => { + this.mdSidenav.open(); + }); } else { this.isLockedOpen = false; this.mdSidenav.mode = 'over'; - this.mdSidenav.close(); + setTimeout(() => { + this.mdSidenav.close(); + }); } this.matchMediaSubscription = this.fuseMatchMedia.onMediaChange.subscribe(() => { diff --git a/src/app/core/modules/material.module.ts b/src/app/core/modules/material.module.ts index adeef984..dd36d87c 100644 --- a/src/app/core/modules/material.module.ts +++ b/src/app/core/modules/material.module.ts @@ -32,7 +32,7 @@ import { MdTableModule, MdTabsModule } from '@angular/material'; -import { CdkTableModule } from '@angular/cdk'; +import { CdkTableModule } from '@angular/cdk/table'; @NgModule({ imports: [ diff --git a/src/app/core/modules/shared.module.ts b/src/app/core/modules/shared.module.ts index f9c6acea..da733728 100644 --- a/src/app/core/modules/shared.module.ts +++ b/src/app/core/modules/shared.module.ts @@ -20,6 +20,7 @@ import { FuseMdSidenavHelperService } from '../directives/md-sidenav-helper/md-s import { FuseHljsComponent } from '../components/hljs/hljs.component'; import { FuseIfOnDomDirective } from '../directives/fuse-if-on-dom/fuse-if-on-dom.directive'; import { FuseMaterialColorPickerComponent } from '../components/material-color-picker/material-color-picker.component'; +import { CookieService } from 'ngx-cookie-service'; @NgModule({ declarations : [ @@ -65,6 +66,7 @@ import { FuseMaterialColorPickerComponent } from '../components/material-color-p FuseConfirmDialogComponent ], providers : [ + CookieService, FuseNavigationService, FuseMatchMedia, FuseNavbarService, diff --git a/src/app/core/scss/core.scss b/src/app/core/scss/core.scss index cc972b4f..728a51b7 100644 --- a/src/app/core/scss/core.scss +++ b/src/app/core/scss/core.scss @@ -28,6 +28,7 @@ @import "partials/navigation"; @import "partials/forms"; @import "partials/toolbar"; +@import "partials/print"; // Plugins @import "partials/plugins/plugins"; diff --git a/src/app/core/scss/partials/_page-layouts.scss b/src/app/core/scss/partials/_page-layouts.scss index 3bf274b5..87322fce 100644 --- a/src/app/core/scss/partials/_page-layouts.scss +++ b/src/app/core/scss/partials/_page-layouts.scss @@ -144,7 +144,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); &.md-stop-transition { - ~ .mat-sidenav-content { + ~ .mat-sidenav-content, + ~ .mat-drawer-content { transition: none; } } @@ -161,7 +162,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); } } - > .mat-sidenav-content { + > .mat-sidenav-content, + > .mat-drawer-content { display: flex; flex: 1; height: auto; @@ -229,7 +231,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); &.md-is-locked-open { - ~ .mat-sidenav-content { + ~ .mat-sidenav-content, + ~ .mat-drawer-content { margin-left: 0 !important; .center { @@ -252,7 +255,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); &.md-is-locked-open { - ~ .mat-sidenav-content { + ~ .mat-sidenav-content, + ~ .mat-drawer-content { margin-right: 0 !important; .center { @@ -301,7 +305,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); > md-sidenav-container { flex: 1 0 auto; - > .mat-sidenav-content { + > .mat-sidenav-content, + > .mat-drawer-content { flex: 1 0 auto; max-height: none; @@ -325,7 +330,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); } } - > .mat-sidenav-content { + > .mat-sidenav-content, + > .mat-drawer-content { display: flex; height: auto; @@ -368,7 +374,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); &.md-stop-transition { - ~ .mat-sidenav-content { + ~ .mat-sidenav-content, + ~ .mat-drawer-content { transition: none; } } @@ -378,7 +385,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); } } - > .mat-sidenav-content { + > .mat-sidenav-content, + > .mat-drawer-content { display: flex; flex: 1; height: auto; @@ -472,7 +480,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); > md-sidenav-container { flex: 1 0 auto !important; - > .mat-sidenav-content { + > .mat-sidenav-content, + > .mat-drawer-content { flex: 1 0 auto; > .center { @@ -499,7 +508,8 @@ $top-bg-image: url('assets/images/backgrounds/header-bg.png'); > md-sidenav-container { - > .mat-sidenav-content { + > .mat-sidenav-content, + > .mat-drawer-content { .center { margin: 0 16px; diff --git a/src/app/core/scss/partials/_print.scss b/src/app/core/scss/partials/_print.scss new file mode 100644 index 00000000..ca03b476 --- /dev/null +++ b/src/app/core/scss/partials/_print.scss @@ -0,0 +1,51 @@ +/*----------------------------------------------------------------*/ +/* Print +/*----------------------------------------------------------------*/ + +@media all { + + /* Never show page break in normal view */ + .page-break { + display: none; + } + +} + +@media print { + + /* Page Styles */ + @page { + //margin: 0.5cm; + } + + /* Page break */ + .page-break { + display: block; + break-after: always; + page-break-after: always; + } + + /* General styles */ + fuse-root { + + fuse-navbar, + fuse-toolbar, + fuse-footer, + fuse-quick-panel, + fuse-theme-options, + .ps > .ps__scrollbar-x-rail, + .ps > .ps__scrollbar-y-rail { + display: none !important; + } + + .ps { + overflow: visible !important; + } + } + + /* Printable page specific styles */ + .printable { + overflow: visible !important; + height: auto !important; + } +} \ No newline at end of file diff --git a/src/app/core/services/config.service.ts b/src/app/core/services/config.service.ts index 795b31dd..8d73e08a 100644 --- a/src/app/core/services/config.service.ts +++ b/src/app/core/services/config.service.ts @@ -1,7 +1,7 @@ import { Injectable } from '@angular/core'; import { BehaviorSubject } from 'rxjs/BehaviorSubject'; import { NavigationStart, Router } from '@angular/router'; -import { Platform } from '@angular/cdk'; +import { Platform } from '@angular/cdk/platform'; @Injectable() export class FuseConfigService @@ -12,6 +12,7 @@ export class FuseConfigService /** * @param router + * @param platform */ constructor( private router: Router, diff --git a/src/app/main/content/content.component.ts b/src/app/main/content/content.component.ts index 3f70d99c..1d05e904 100644 --- a/src/app/main/content/content.component.ts +++ b/src/app/main/content/content.component.ts @@ -3,6 +3,8 @@ import { ActivatedRoute, NavigationEnd, Router } from '@angular/router'; import { Animations } from '../../core/animations'; import { FuseConfigService } from '../../core/services/config.service'; import { Subscription } from 'rxjs/Subscription'; +import 'rxjs/add/operator/filter'; +import 'rxjs/add/operator/map'; @Component({ selector : 'fuse-content', diff --git a/src/app/main/main.component.scss b/src/app/main/main.component.scss index 28eda747..9fb34571 100644 --- a/src/app/main/main.component.scss +++ b/src/app/main/main.component.scss @@ -23,7 +23,8 @@ fuse-main { display: flex; flex: 1; - > .mat-sidenav-content { + > .mat-sidenav-content, + > .mat-drawer-content { display: flex; flex: 1; overflow: hidden; diff --git a/src/environments/environment.ts b/src/environments/environment.ts index 19f0b9cd..6f30aa44 100644 --- a/src/environments/environment.ts +++ b/src/environments/environment.ts @@ -4,13 +4,5 @@ // The list of which env maps to which file can be found in `.angular-cli.json`. export const environment = { - production: false, - firebase : { - apiKey : 'AIzaSyDYFfhaC5QaKPgPhh8YqohjhfUpcYlg33c', - // authDomain : '', - databaseURL: 'https://fuse2-demo.firebaseio.com/', - projectId : 'fuse2-demo' - // storageBucket : '', - // messagingSenderId: '' - } + production: false };