diff --git a/src/app/app.module.ts b/src/app/app.module.ts index c1d570fc..fcc335bb 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -10,44 +10,17 @@ import 'hammerjs'; import { SharedModule } from './core/modules/shared.module'; import { AppComponent } from './app.component'; -import { ProjectModule } from './main/content/apps/dashboards/project/project.module'; -import { PerfectScrollbarConfigInterface, PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; +import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; import { FuseFakeDbService } from './fuse-fake-db/fuse-fake-db.service'; import { FuseMainModule } from './main/main.module'; -import { PagesModule } from './main/content/pages/pages.module'; -import { UIModule } from './main/content/ui/ui.module'; -import { ComponentsModule } from './main/content/components/components.module'; import { FuseSplashScreenService } from './core/services/splash-screen.service'; import { FuseConfigService } from './core/services/config.service'; +import { FuseSampleModule } from './main/content/sample/sample.module'; const appRoutes: Routes = [ - { - path : 'apps/mail', - loadChildren: './main/content/apps/mail/mail.module#FuseMailModule' - }, - { - path : 'apps/chat', - loadChildren: './main/content/apps/chat/chat.module#FuseChatModule' - }, - { - path : 'apps/calendar', - loadChildren: './main/content/apps/calendar/calendar.module#FuseCalendarModule' - }, - { - path : 'apps/todo', - loadChildren: './main/content/apps/todo/todo.module#FuseTodoModule' - }, - { - path : 'apps/file-manager', - loadChildren: './main/content/apps/file-manager/file-manager.module#FuseFileManagerModule' - }, - { - path : 'apps/contacts', - loadChildren: './main/content/apps/contacts/contacts.module#FuseContactsModule' - }, { path : '**', - redirectTo: 'apps/dashboards/project' + redirectTo: 'sample' } ]; @@ -62,20 +35,12 @@ const appRoutes: Routes = [ BrowserAnimationsModule, RouterModule.forRoot(appRoutes), SharedModule, - InMemoryWebApiModule.forRoot(FuseFakeDbService, {delay: 125}), - PerfectScrollbarModule.forRoot(), - FuseMainModule, - - ProjectModule, - - PagesModule, - UIModule, - ComponentsModule + FuseSampleModule ], - providers: [ + providers : [ FuseSplashScreenService, FuseConfigService ], diff --git a/src/app/core/components/navigation/navigation.model.ts b/src/app/core/components/navigation/navigation.model.ts deleted file mode 100644 index 7e3ea57c..00000000 --- a/src/app/core/components/navigation/navigation.model.ts +++ /dev/null @@ -1,413 +0,0 @@ -export class FuseNavigation -{ - public items: any[]; - - constructor() - { - this.items = [ - { - 'title': 'APPS', - 'type' : 'subheader' - }, - { - 'title' : 'Dashboards', - 'type' : 'nav-collapse', - 'icon' : 'dashboard', - 'children': [ - { - 'type' : 'nav-item', - 'title': 'Project', - 'url' : '/apps/dashboards/project' - } - ] - }, - { - 'title': 'Calendar', - 'type' : 'nav-item', - 'icon' : 'today', - 'url' : '/apps/calendar' - }, - { - 'title': 'Mail', - 'type' : 'nav-item', - 'icon' : 'email', - 'url' : '/apps/mail', - 'badge': { - 'title': 25, - 'bg' : '#F44336', - 'fg' : '#FFFFFF' - } - }, - { - 'title': 'Chat', - 'type' : 'nav-item', - 'icon' : 'chat', - 'url' : '/apps/chat', - 'badge': { - 'title': 13, - 'bg' : '#09d261', - 'fg' : '#FFFFFF' - } - }, - { - 'title': 'File Manager', - 'type' : 'nav-item', - 'icon' : 'folder', - 'url' : '/apps/file-manager' - }, - { - 'title': 'Contacts', - 'type' : 'nav-item', - 'icon' : 'account_box', - 'url' : '/apps/contacts' - }, - { - 'title': 'To-Do', - 'type' : 'nav-item', - 'icon' : 'check_box', - 'url' : '/apps/todo', - 'badge': { - 'title': 3, - 'bg' : '#FF6F00', - 'fg' : '#FFFFFF' - } - }, - { - 'title': 'PAGES', - 'type' : 'subheader' - }, - { - 'title' : 'Authentication', - 'type' : 'nav-collapse', - 'icon' : 'lock', - 'children': [ - { - 'title': 'Login', - 'type' : 'nav-item', - 'url' : '/pages/auth/login' - }, - { - 'title': 'Login v2', - 'type' : 'nav-item', - 'url' : '/pages/auth/login-2' - }, - { - 'title': 'Register', - 'type' : 'nav-item', - 'url' : '/pages/auth/register' - }, - { - 'title': 'Register v2', - 'type' : 'nav-item', - 'url' : '/pages/auth/register-2' - }, - { - 'title': 'Forgot Password', - 'type' : 'nav-item', - 'url' : '/pages/auth/forgot-password' - }, - { - 'title': 'Reset Password', - 'type' : 'nav-item', - 'url' : '/pages/auth/reset-password' - }, - { - 'title': 'Lock Screen', - 'type' : 'nav-item', - 'url' : '/pages/auth/lock' - } - ] - }, - { - 'title': 'Coming Soon', - 'type' : 'nav-item', - 'icon' : 'alarm', - 'url' : '/pages/coming-soon' - }, - { - 'title' : 'Errors', - 'type' : 'nav-collapse', - 'icon' : 'error', - 'children': [ - { - 'title': '404', - 'type' : 'nav-item', - 'url' : '/pages/errors/error-404' - }, - { - 'title': '500', - 'type' : 'nav-item', - 'url' : '/pages/errors/error-500' - } - ] - }, - { - 'title' : 'Invoice', - 'type' : 'nav-collapse', - 'icon' : 'receipt', - 'children': [ - { - 'title': 'Modern', - 'type' : 'nav-item', - 'url' : '/pages/invoices/modern' - }, - { - 'title': 'Compact', - 'type' : 'nav-item', - 'url' : '/pages/invoices/compact' - } - ] - }, - { - 'title': 'Maintenance', - 'type' : 'nav-item', - 'icon' : 'build', - 'url' : '/pages/maintenance' - }, - { - 'title': 'Profile', - 'type' : 'nav-item', - 'icon' : 'person', - 'url' : '/pages/profile' - }, - { - 'title': 'Search', - 'type' : 'nav-item', - 'icon' : 'search', - 'url' : '/pages/search' - }, - { - 'title': 'USER INTERFACE', - 'type' : 'subheader' - }, - /*{ - 'title' : 'Elements', - 'type' : 'nav-collapse', - 'icon' : 'layers', - 'children': [ - { - 'title': 'Alerts', - 'type' : 'nav-item', - 'url' : '/ui/elements/alerts' - }, - { - 'title': 'Badges', - 'type' : 'nav-item', - 'url' : '/ui/elements/badges' - }, - { - 'title': 'Breadcrumb', - 'type' : 'nav-item', - 'url' : '/ui/elements/breadcrumb' - }, - { - 'title': 'Buttons', - 'type' : 'nav-item', - 'url' : '/ui/elements/buttons' - }, - { - 'title': 'Button Group', - 'type' : 'nav-item', - 'url' : '/ui/elements/button-group' - }, - { - 'title': 'Cards', - 'type' : 'nav-item', - 'url' : '/ui/elements/cards' - }, - { - 'title': 'Dropdowns', - 'type' : 'nav-item', - 'url' : '/ui/elements/dropdowns' - }, - { - 'title': 'Forms', - 'type' : 'nav-item', - 'url' : '/ui/elements/forms' - }, - { - 'title': 'Input Group', - 'type' : 'nav-item', - 'url' : '/ui/elements/input-group' - }, - { - 'title': 'Jumbotron', - 'type' : 'nav-item', - 'url' : '/ui/elements/jumbotron' - }, - { - 'title': 'List Group', - 'type' : 'nav-item', - 'url' : '/ui/elements/list-group' - }, - { - 'title': 'Navs', - 'type' : 'nav-item', - 'url' : '/ui/elements/navs' - }, - { - 'title': 'Navbar', - 'type' : 'nav-item', - 'url' : '/ui/elements/navbar' - }, - { - 'title': 'Pagination', - 'type' : 'nav-item', - 'url' : '/ui/elements/pagination' - }, - { - 'title': 'Progress', - 'type' : 'nav-item', - 'url' : '/ui/elements/progress' - } - ] - },*/ - { - 'title': 'Forms', - 'type' : 'nav-item', - 'icon' : 'web_asset', - 'url' : '/ui/forms' - }, - { - 'title': 'Icons', - 'type' : 'nav-item', - 'icon' : 'photo', - 'url' : '/ui/icons' - }, - { - 'title': 'Typography', - 'type' : 'nav-item', - 'icon' : 'text_fields', - 'url' : '/ui/typography' - }, - { - 'title': 'Helper Classes', - 'type' : 'nav-item', - 'icon' : 'help', - 'url' : '/ui/helper-classes' - }, - { - 'title' : 'Page Layouts', - 'type' : 'nav-collapse', - 'icon' : 'view_quilt', - 'children': [ - { - 'title' : 'Carded', - 'type' : 'nav-collapse', - 'children': [ - { - 'title': 'Full Width', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/carded/full-width' - }, - { - 'title': 'Full Width 2', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/carded/full-width-2' - }, - { - 'title': 'Left Sidenav', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/carded/left-sidenav' - }, - { - 'title': 'Left Sidenav 2', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/carded/left-sidenav-2' - }, - { - 'title': 'Right Sidenav', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/carded/right-sidenav' - }, - { - 'title': 'Right Sidenav 2', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/carded/right-sidenav-2' - } - ] - }, - { - 'title' : 'Simple', - 'type' : 'nav-collapse', - 'children': [ - { - 'title': 'Full Width', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/full-width' - }, - { - 'title': 'Left Sidenav', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/left-sidenav' - }, - { - 'title': 'Left Sidenav 2', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/left-sidenav-2' - }, - { - 'title': 'Left Sidenav 3', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/left-sidenav-3' - }, - { - 'title': 'Right Sidenav', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/right-sidenav' - }, - { - 'title': 'Right Sidenav 2', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/right-sidenav-2' - }, - { - 'title': 'Right Sidenav 3', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/right-sidenav-3' - }, - { - 'title': 'Tabbed', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/simple/tabbed' - } - ] - }, - { - 'title': 'Blank', - 'type' : 'nav-item', - 'url' : '/ui/page-layouts/blank' - } - ] - }, - { - 'title': 'Colors', - 'type' : 'nav-item', - 'icon' : 'color_lens', - 'url' : '/ui/colors' - }, - { - 'title': 'COMPONENTS', - 'type' : 'subheader' - }, - { - 'title' : 'Datatables', - 'type' : 'nav-collapse', - 'icon' : 'border_all', - 'children': [ - { - 'title': 'ngx-datatable', - 'type' : 'nav-item', - 'url' : '/components/datatables/ngx-datatable' - } - ] - }, - { - 'title': 'Price Tables', - 'type' : 'nav-item', - 'icon' : 'view_carousel', - 'url' : '/components/price-tables' - } - ]; - } -} diff --git a/src/app/core/components/navigation/navigation.service.ts b/src/app/core/components/navigation/navigation.service.ts index 09d4dcd2..b4f9adc4 100644 --- a/src/app/core/components/navigation/navigation.service.ts +++ b/src/app/core/components/navigation/navigation.service.ts @@ -1,5 +1,5 @@ import { EventEmitter, Injectable } from '@angular/core'; -import { FuseNavigation } from './navigation.model'; +import { FuseNavigation } from '../../../navigation.model'; @Injectable() export class FuseNavigationService diff --git a/src/app/main/content/apps/calendar/calendar.component.html b/src/app/main/content/apps/calendar/calendar.component.html deleted file mode 100644 index 22f6c51b..00000000 --- a/src/app/main/content/apps/calendar/calendar.component.html +++ /dev/null @@ -1,125 +0,0 @@ -
- - -
- -
- -
- - - - -
- - - - - - - - - - -
-
- - - -
- - - -
- {{ viewDate | calendarDate:(view + 'ViewTitle'):'en' }} -
- - -
- -
- - - - -
- - - -
-
- - - - - - -
-
- -
diff --git a/src/app/main/content/apps/calendar/calendar.component.scss b/src/app/main/content/apps/calendar/calendar.component.scss deleted file mode 100644 index 626b6b85..00000000 --- a/src/app/main/content/apps/calendar/calendar.component.scss +++ /dev/null @@ -1,307 +0,0 @@ -@import "src/app/core/scss/fuse"; -@import "node_modules/angular-calendar/scss/angular-calendar"; - -.cal-month-view { - - .cal-header { - - .cal-cell { - font-weight: 500; - } - } - - .cal-day-cell { - - @include media-breakpoint(lg) { - min-height: 150px; - } - - @include media-breakpoint(gt-lg) { - min-height: 200px; - } - - &.cal-open { - @include mat-elevation(3); - } - } - - .cal-open-day-events { - background: whitesmoke; - box-shadow: inset 0 0 15px 0 rgba(0, 0, 0, 0.13); - padding: 0; - display: flex; - flex-direction: column; - - > div { - padding: 0 16px; - margin: 8px 16px; - display: flex; - flex-direction: row; - align-items: center; - justify-content: start; - background-color: white; - @include mat-elevation(1); - transition: box-shadow 300ms ease; - - &:first-of-type { - margin-top: 24px; - } - - &:last-of-type { - margin-bottom: 24px; - } - - &:hover { - @include mat-elevation(3); - } - - .cal-event { - top: 0; - margin: 0; - } - - mwl-calendar-event-title { - flex: 1; - - .cal-event-title { - display: block; - padding: 21px 24px; - line-height: 1; - text-decoration: none; - color: black; - } - } - - mwl-calendar-event-actions { - - .cal-event-actions { - display: flex; - flex-direction: row; - align-items: center; - - .cal-event-action { - display: block; - line-height: 1; - padding: 8px; - } - } - } - - } - } -} - -.cal-week-view { - - .cal-header > b { - font-weight: 500; - } - - .cal-event { - display: flex; - flex-direction: row; - align-items: center; - - mwl-calendar-event-title { - display: block; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - flex: 1; - order: 0; - - .cal-event-title { - display: block; - //padding: 21px 24px; - line-height: 1; - text-decoration: none; - color: black; - } - } - - mwl-calendar-event-actions { - order: 1; - - .cal-event-actions { - display: flex; - flex-direction: row; - align-items: center; - - .cal-event-action { - display: block; - line-height: 1; - padding: 8px; - } - } - } - } -} - -.cal-day-view { - - .cal-time { - font-weight: 500; - } - - .cal-event { - display: flex; - flex-direction: row; - - mwl-calendar-event-title { - display: block; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - flex: 1; - order: 0; - - .cal-event-title { - display: block; - height: 26px; - line-height: 26px; - text-decoration: none; - color: black; - } - } - - mwl-calendar-event-actions { - order: 1; - - .cal-event-actions { - display: flex; - flex-direction: row; - align-items: center; - - .cal-event-action { - display: block; - line-height: 1; - padding: 4px; - } - } - } - } -} - -#calendar { - background: #FFFFFF; - - .header { - height: 200px; - min-height: 200px; - max-height: 200px; - padding: 24px; - position: relative; - background-size: 100% auto; - background-position: 0 50%; - background-repeat: no-repeat; - background-color: #FAFAFA; - color: #FFFFFF; - - &:before { - content: ''; - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1; - background: rgba(0, 0, 0, 0.45); - } - - &.Jan { - background-image: url('/assets/images/backgrounds/january.jpg'); - background-position: 0 45%; - } - &.Feb { - background-image: url('/assets/images/backgrounds/february.jpg'); - background-position: 0 50%; - } - &.Mar { - background-image: url('/assets/images/backgrounds/march.jpg'); - background-position: 0 45%; - } - &.Apr { - background-image: url('/assets/images/backgrounds/april.jpg'); - background-position: 0 48%; - } - &.May { - background-image: url('/assets/images/backgrounds/may.jpg'); - background-position: 0 47%; - } - &.Jun { - background-image: url('/assets/images/backgrounds/june.jpg'); - background-position: 0 48%; - } - &.Jul { - background-image: url('/assets/images/backgrounds/july.jpg'); - background-position: 0 3%; - } - &.Aug { - background-image: url('/assets/images/backgrounds/august.jpg'); - background-position: 0 61%; - } - &.Sep { - background-image: url('/assets/images/backgrounds/september.jpg'); - background-position: 0 58%; - } - &.Oct { - background-image: url('/assets/images/backgrounds/october.jpg'); - background-position: 0 50%; - } - &.Nov { - background-image: url('/assets/images/backgrounds/november.jpg'); - background-position: 0 46%; - } - &.Dec { - background-image: url('/assets/images/backgrounds/december.jpg'); - background-position: 0 43%; - } - - .header-content { - height: 100%; - - .header-top { - position: relative; - z-index: 2; - - .logo { - - .logo-icon { - margin-right: 16px; - } - - .logo-text { - font-size: 24px; - } - } - } - - .header-bottom { - position: relative; - z-index: 2; - - .title { - font-size: 20px; - min-width: 160px; - text-align: center; - font-weight: 500; - } - } - } - - .add-event-button { - position: absolute; - right: 18px; - bottom: -32px; - z-index: 10; - } - - md-icon { - color: #FFFFFF; - } - } - - .content { - padding: 24px; - } -} diff --git a/src/app/main/content/apps/calendar/calendar.component.ts b/src/app/main/content/apps/calendar/calendar.component.ts deleted file mode 100644 index 067c0b0f..00000000 --- a/src/app/main/content/apps/calendar/calendar.component.ts +++ /dev/null @@ -1,267 +0,0 @@ -import { startOfDay, endOfDay, subDays, addDays, endOfMonth, isSameDay, isSameMonth, addHours } from 'date-fns'; -import { ChangeDetectionStrategy, Component, OnInit, ViewEncapsulation } from '@angular/core'; -import { Subject } from 'rxjs/Subject'; -import { MdDialog, MdDialogRef } from '@angular/material'; -import { FuseCalendarEventFormDialogComponent } from './event-form/event-form.component'; -import { FormGroup } from '@angular/forms'; -import { CalendarEventModel } from './event.model'; -import { CalendarService } from './calendar.service'; -import { - CalendarEvent, - CalendarEventAction, - CalendarEventTimesChangedEvent, - CalendarMonthViewDay -} from 'angular-calendar'; -import { FuseConfirmDialogComponent } from '../../../../core/components/confirm-dialog/confirm-dialog.component'; - -@Component({ - selector : 'fuse-calendar', - changeDetection: ChangeDetectionStrategy.OnPush, - templateUrl : './calendar.component.html', - styleUrls : ['./calendar.component.scss'], - encapsulation : ViewEncapsulation.None -}) -export class FuseCalendarComponent implements OnInit -{ - view: string; - - viewDate: Date; - - events: CalendarEvent[]; - - public actions: CalendarEventAction[]; - - activeDayIsOpen: boolean; - - refresh: Subject = new Subject(); - - dialogRef: any; - - confirmDialogRef: MdDialogRef; - - selectedDay: any; - - constructor( - public dialog: MdDialog, - public calendarService: CalendarService - ) - { - this.view = 'month'; - this.viewDate = new Date(); - this.activeDayIsOpen = true; - this.selectedDay = {date: startOfDay(new Date())}; - - this.actions = [ - { - label : 'edit', - onClick: ({event}: { event: CalendarEvent }): void => { - this.editEvent('edit', event); - } - }, - { - label : 'delete', - onClick: ({event}: { event: CalendarEvent }): void => { - this.deleteEvent(event); - } - } - ]; - - /** - * Get events from service/server - */ - this.setEvents(); - } - - ngOnInit() - { - /** - * Watch re-render-refresh for updating db - */ - this.refresh.subscribe(updateDB => { - // console.warn('REFRESH'); - if ( updateDB ) - { - // console.warn('UPDATE DB'); - this.calendarService.updateEvents(this.events); - } - }); - - this.calendarService.onEventsUpdated.subscribe(events => { - this.setEvents(); - this.refresh.next(); - }); - } - - setEvents() - { - this.events = this.calendarService.events.map(item => { - item.actions = this.actions; - return new CalendarEventModel(item); - }); - } - - /** - * Before View Renderer - * @param {any} header - * @param {any} body - */ - beforeMonthViewRender({header, body}) - { - // console.info('beforeMonthViewRender'); - /** - * Get the selected day - */ - const _selectedDay = body.find((_day) => { - return _day.date.getTime() === this.selectedDay.date.getTime(); - }); - - if ( _selectedDay ) - { - /** - * Set selectedday style - * @type {string} - */ - _selectedDay.cssClass = 'mat-elevation-z3'; - } - - } - - /** - * Day clicked - * @param {MonthViewDay} day - */ - dayClicked(day: CalendarMonthViewDay): void - { - const date: Date = day.date; - const events: CalendarEvent[] = day.events; - - if ( isSameMonth(date, this.viewDate) ) - { - if ( (isSameDay(this.viewDate, date) && this.activeDayIsOpen === true) || events.length === 0 ) - { - this.activeDayIsOpen = false; - } - else - { - this.activeDayIsOpen = true; - this.viewDate = date; - } - } - this.selectedDay = day; - this.refresh.next(); - } - - /** - * Event times changed - * Event dropped or resized - * @param {CalendarEvent} event - * @param {Date} newStart - * @param {Date} newEnd - */ - eventTimesChanged({event, newStart, newEnd}: CalendarEventTimesChangedEvent): void - { - event.start = newStart; - event.end = newEnd; - // console.warn('Dropped or resized', event); - this.refresh.next(true); - } - - /** - * Delete Event - * @param event - */ - deleteEvent(event) - { - this.confirmDialogRef = this.dialog.open(FuseConfirmDialogComponent, { - disableClose: false - }); - - this.confirmDialogRef.componentInstance.confirmMessage = 'Are you sure you want to delete?'; - - this.confirmDialogRef.afterClosed().subscribe(result => { - if ( result ) - { - const eventIndex = this.events.indexOf(event); - this.events.splice(eventIndex, 1); - this.refresh.next(true); - } - this.confirmDialogRef = null; - }); - - } - - /** - * Edit Event - * @param {string} action - * @param {CalendarEvent} event - */ - editEvent(action: string, event: CalendarEvent) - { - const eventIndex = this.events.indexOf(event); - - this.dialogRef = this.dialog.open(FuseCalendarEventFormDialogComponent, { - panelClass: 'event-form-dialog', - data : { - event : event, - action: action - } - }); - - this.dialogRef.afterClosed() - .subscribe(response => { - if ( !response ) - { - return; - } - const actionType: string = response[0]; - const formData: FormGroup = response[1]; - switch ( actionType ) - { - /** - * Save - */ - case 'save': - - this.events[eventIndex] = Object.assign(this.events[eventIndex], formData.getRawValue()); - this.refresh.next(true); - - break; - /** - * Delete - */ - case 'delete': - - this.deleteEvent(event); - - break; - } - }); - } - - /** - * Add Event - */ - addEvent(): void - { - this.dialogRef = this.dialog.open(FuseCalendarEventFormDialogComponent, { - panelClass: 'event-form-dialog', - data : { - action: 'new', - date : this.selectedDay.date - } - }); - this.dialogRef.afterClosed() - .subscribe((response: FormGroup) => { - if ( !response ) - { - return; - } - const newEvent = response.getRawValue(); - newEvent.actions = this.actions; - this.events.push(newEvent); - this.refresh.next(true); - }); - } -} - - diff --git a/src/app/main/content/apps/calendar/calendar.module.ts b/src/app/main/content/apps/calendar/calendar.module.ts deleted file mode 100644 index 6897a25b..00000000 --- a/src/app/main/content/apps/calendar/calendar.module.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseCalendarComponent } from './calendar.component'; -import { CalendarService } from './calendar.service'; -import { CalendarModule } from 'angular-calendar'; -import { FuseCalendarEventFormDialogComponent } from './event-form/event-form.component'; - -const routes: Routes = [ - { - path : '**', - component: FuseCalendarComponent, - children : [], - resolve : { - chat: CalendarService - } - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes), - CalendarModule.forRoot() - ], - declarations : [ - FuseCalendarComponent, - FuseCalendarEventFormDialogComponent - ], - providers : [ - CalendarService - ], - entryComponents: [FuseCalendarEventFormDialogComponent] -}) -export class FuseCalendarModule -{ -} diff --git a/src/app/main/content/apps/calendar/calendar.service.ts b/src/app/main/content/apps/calendar/calendar.service.ts deleted file mode 100644 index 6774fb45..00000000 --- a/src/app/main/content/apps/calendar/calendar.service.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { Subject } from 'rxjs/Subject'; - -@Injectable() -export class CalendarService implements Resolve -{ - events: any; - onEventsUpdated = new Subject(); - - constructor(private http: Http) - { - - } - - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - return new Promise((resolve, reject) => { - Promise.all([ - this.getEvents() - ]).then( - ([events]: [any]) => { - resolve(); - }, - reject - ); - }); - } - - getEvents() - { - return new Promise((resolve, reject) => { - - this.http.get('api/calendar/events') - .subscribe(response => { - this.events = response.json().data.data; - this.onEventsUpdated.next(this.events); - resolve(this.events); - }, reject); - }); - } - - updateEvents(events) - { - return new Promise((resolve, reject) => { - this.http.post('api/calendar/events', { - id : 'events', - data: [...events] - }) - .subscribe(response => { - this.getEvents(); - }, reject); - }); - } - -} diff --git a/src/app/main/content/apps/calendar/event-form/event-form.component.html b/src/app/main/content/apps/calendar/event-form/event-form.component.html deleted file mode 100644 index afd93db7..00000000 --- a/src/app/main/content/apps/calendar/event-form/event-form.component.html +++ /dev/null @@ -1,141 +0,0 @@ - -
- {{dialogTitle}} - -
-
- -
- -
- - - - - -
- - All Day - -
- -
- - - - - - -
- -
- - - - - - - -
- -
- - - - - - - - - - - -
- - - - - - - - - - -
- -
- -
- - - - - - - -
diff --git a/src/app/main/content/apps/calendar/event-form/event-form.component.scss b/src/app/main/content/apps/calendar/event-form/event-form.component.scss deleted file mode 100644 index b0e6b5e6..00000000 --- a/src/app/main/content/apps/calendar/event-form/event-form.component.scss +++ /dev/null @@ -1,12 +0,0 @@ -.event-form-dialog { - - .mat-dialog-container { - padding: 0; - width: 720px; - } -} - -:host { - display: flex; - flex-direction: column; -} diff --git a/src/app/main/content/apps/calendar/event-form/event-form.component.ts b/src/app/main/content/apps/calendar/event-form/event-form.component.ts deleted file mode 100644 index af0add84..00000000 --- a/src/app/main/content/apps/calendar/event-form/event-form.component.ts +++ /dev/null @@ -1,71 +0,0 @@ -import { Component, Inject, OnInit, ViewEncapsulation } from '@angular/core'; -import { MD_DIALOG_DATA, MdDialogRef } from '@angular/material'; -import { CalendarEvent } from 'angular-calendar'; -import { FormBuilder, FormControl, FormGroup } from '@angular/forms'; -import { CalendarEventModel } from '../event.model'; -import { MatColors } from '../../../../../core/matColors'; -import 'rxjs/Rx'; - -@Component({ - selector : 'fuse-calendar-event-form-dialog', - templateUrl : './event-form.component.html', - styleUrls : ['./event-form.component.scss'], - encapsulation: ViewEncapsulation.None -}) - -export class FuseCalendarEventFormDialogComponent implements OnInit -{ - event: CalendarEvent; - dialogTitle: string; - eventForm: FormGroup; - action: string; - presetColors = MatColors.presets; - - constructor( - public dialogRef: MdDialogRef, - @Inject(MD_DIALOG_DATA) private data: any, - private formBuilder: FormBuilder - ) - { - this.event = data.event; - this.action = data.action; - - if ( this.action === 'edit' ) - { - this.dialogTitle = this.event.title; - } - else - { - this.dialogTitle = 'New Event'; - this.event = new CalendarEventModel({ - start: data.date, - end : data.date - }); - } - - this.eventForm = this.createEventForm(); - } - - ngOnInit() - { - } - - createEventForm() - { - return new FormGroup({ - title : new FormControl(this.event.title), - start : new FormControl(this.event.start), - end : new FormControl(this.event.end), - allDay: new FormControl(this.event.allDay), - color : this.formBuilder.group({ - primary : new FormControl(this.event.color.primary), - secondary: new FormControl(this.event.color.secondary) - }), - meta : - this.formBuilder.group({ - location: new FormControl(this.event.meta.location), - notes : new FormControl(this.event.meta.notes) - }) - }); - } -} diff --git a/src/app/main/content/apps/calendar/event.model.ts b/src/app/main/content/apps/calendar/event.model.ts deleted file mode 100644 index 30c9d329..00000000 --- a/src/app/main/content/apps/calendar/event.model.ts +++ /dev/null @@ -1,74 +0,0 @@ -import { - CalendarEventAction -} from 'angular-calendar'; - -import { - startOfDay, - endOfDay, - subDays, - addDays, - endOfMonth, - isSameDay, - isSameMonth, - addHours -} from 'date-fns'; -// import { CalendarEvent } from 'calendar-utils/dist/calendar-utils'; - -/* -export interface EventAction -{ - label: string; - cssClass?: string; - - onClick({event}: { - event: CalendarEvent; - }): any; -}*/ - -export class CalendarEventModel -{ - start: Date; - end?: Date; - title: string; - color: { - primary: string; - secondary: string; - }; - actions?: CalendarEventAction[]; - allDay?: boolean; - cssClass?: string; - resizable?: { - beforeStart?: boolean; - afterEnd?: boolean; - }; - draggable?: boolean; - meta?: { - location: string, - notes: string - }; - - constructor(data?) - { - data = data || {}; - this.start = new Date(data.start) || startOfDay(new Date()); - this.end = new Date(data.end) || endOfDay(new Date()); - this.title = data.title || ''; - this.color = { - primary : data.color && data.color.primary || '#1e90ff', - secondary: data.color && data.color.secondary || '#D1E8FF' - }; - this.draggable = data.draggable || true; - this.resizable = { - beforeStart: data.resizable && data.resizable.beforeStart || true, - afterEnd : data.resizable && data.resizable.afterEnd || true - }; - this.actions = data.actions || []; - this.allDay = data.allDay || false; - this.cssClass = data.cssClass || ''; - this.meta = { - location: data.meta && data.meta.location || '', - notes : data.meta && data.meta.notes || '' - }; - } - -} diff --git a/src/app/main/content/apps/chat/chat-start/chat-start.component.html b/src/app/main/content/apps/chat/chat-start/chat-start.component.html deleted file mode 100644 index f51a7779..00000000 --- a/src/app/main/content/apps/chat/chat-start/chat-start.component.html +++ /dev/null @@ -1,17 +0,0 @@ -
- -
- - chat - -
- - Chat App - - Select contact to start the chat!.. - - - -
diff --git a/src/app/main/content/apps/chat/chat-start/chat-start.component.scss b/src/app/main/content/apps/chat/chat-start/chat-start.component.scss deleted file mode 100644 index 7934fd4b..00000000 --- a/src/app/main/content/apps/chat/chat-start/chat-start.component.scss +++ /dev/null @@ -1,35 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - display: flex; - flex: 1; - background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.6) 20%, rgba(255, 255, 255, 0.8)); - - .big-circle { - background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.6) 20%, rgba(255, 255, 255, 0.8)); - border-radius: 50%; - width: 300px; - height: 300px; - line-height: 300px; - text-align: center; - - @include media-breakpoint-down('sm') { - width: 160px; - height: 160px; - line-height: 160px; - } - - md-icon { - color: mat-color($accent); - } - } - - .app-title { - font-weight: 500; - font-size: 32px; - } - - .secondary-text { - font-size: 16px; - } -} diff --git a/src/app/main/content/apps/chat/chat-start/chat-start.component.ts b/src/app/main/content/apps/chat/chat-start/chat-start.component.ts deleted file mode 100644 index 4fe1e7b0..00000000 --- a/src/app/main/content/apps/chat/chat-start/chat-start.component.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector : 'fuse-chat-start', - templateUrl: './chat-start.component.html', - styleUrls : ['./chat-start.component.scss'] -}) -export class FuseChatStartComponent implements OnInit -{ - - constructor() - { - } - - ngOnInit() - { - } - -} diff --git a/src/app/main/content/apps/chat/chat-view/chat-view.component.html b/src/app/main/content/apps/chat/chat-view/chat-view.component.html deleted file mode 100644 index 7168346f..00000000 --- a/src/app/main/content/apps/chat/chat-view/chat-view.component.html +++ /dev/null @@ -1,115 +0,0 @@ - -
- - - - -
- -
- - -
- chat -
- - - -
- -
- - {{contact.name}} - - - -
- -
- {{contact.name}} -
- -
- -
- -
- - - - - -
- -
-
- - - -
- - -
- - -
- - {{contact.name}} - - - -
-
{{message.message}}
-
{{message.time | date:'medium'}}
-
- -
- - -
- - -
- - - - - -
- diff --git a/src/app/main/content/apps/chat/chat-view/chat-view.component.scss b/src/app/main/content/apps/chat/chat-view/chat-view.component.scss deleted file mode 100644 index 9e0e496b..00000000 --- a/src/app/main/content/apps/chat/chat-view/chat-view.component.scss +++ /dev/null @@ -1,133 +0,0 @@ -:host { - display: flex; - flex: 1 0 auto; - background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.6) 20%, rgba(255, 255, 255, 0.8)); - overflow: hidden; - - .chat { - - .chat-toolbar { - min-height: 64px; - background-color: #F3F4F5; - color: rgba(0, 0, 0, 0.87); - border-bottom: 1px solid rgba(0, 0, 0, .08); - - .responsive-chats-button { - padding: 0; - } - - .chat-contact { - cursor: pointer; - - .avatar { - margin-right: 16px; - } - - .chat-contact-name { - - } - } - } - - #chat-content { - background: transparent; - - .message-row { - padding: 16px; - - .bubble { - position: relative; - padding: 6px 7px 8px 9px; - background-color: #FFF; - box-shadow: 0 1px .5px rgba(0, 0, 0, .13); - border-radius: 6px; - - &:before { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAmCAMAAADp2asXAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAADGUExURQAAAP////b29vn5+f///wAAAP///wAAAAAAAP///9ra2v////j4+PHx8fv7++Hh4fHx8f////////////////39/QAAAP////////z8/P////39/f39/fz8/P////////////z8/P////////////z8/P////////////v7+/Hx8f///9bW1vz8/K2trf////39/f39/WJiYgAAAExMTFtbWwAAAN3d3cjIyPr6+vX19QAAAO7u7vz8/NTU1Ofn5zMzM////zGPlXsAAABBdFJOUwAcm/kREh4CCDWL1SneR6TfAQffhMYK/A5nRrLWfRc5DW2ih5f+19Kn+9v4g/1LCJuXHwQUKgahcXS6DNnlDMMKKzPoTgAAAKBJREFUKM+V08USwmAQA+C/0NIWd3d3d8/7vxTMcIPkQK7f7CG7s8bQAOY/SCuwFYQU1P+eiCqIK2gpWCmoCrAgoKQgJ8CHgIqAMjg0MxxSQ3DogEMWFBZtUPAHYGB1CyDQWE6AH7BrfXzlAxGAQhECTGAmwN1Okz0Gb/LW4fEItIfrOfNELMh3tck7u+PhcT2zQ7l77/K8iY8yJwV3BeYFqpc/uSyPGdAAAAAASUVORK5CYII=); - content: ''; - position: absolute; - left: -11px; - bottom: 3px; - width: 12px; - height: 19px; - background-position: 50% 50%; - background-repeat: no-repeat; - background-size: contain; - } - - .message { - white-space: pre-wrap; - } - - .time { - font-size: 11px; - margin-top: 8px; - text-align: right; - } - } - - &.contact { - - .avatar { - margin: 0 16px 0 0; - } - } - - &.user { - align-items: flex-end; - - .avatar { - order: 2; - margin: 0 0 0 16px; - } - - .bubble { - margin-left: auto; - background-color: #E8F5E9; - border: 1px solid #DFEBE0; - order: 1; - &:before { - right: -11px; - left: auto; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAmCAMAAADp2asXAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAD2UExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRsXAAAANzwzNPmxNrtyau5oIWRedDkwNntyczgwdfpyJ+/n97wzsLWtNjsytvwzczfvtPmxau6nNjqxtrtyio1KtzwzNjryAAAANzwzgAAANzwzK7Aor/Us9Lnw8vevAAAAMzevtbpxrvMrX+IdwAAAEROOi45Lr3MrZGjf9LoxX+MctnqydLkwhgYGMzfv9vuyQAAANzwzNvuy9zxy7vMu7XGqNvtzKKykwAAANruzKq6nLnMriQkGMXXuL3PsNjsySgzKAAAANLkw83fvd3vy9z4xtzwzRpFmIEAAABQdFJOUwAXChEGBAMBAgwhDvJ7k0YqMc0Zmwj6apf2kjU0+dkw/swh/CP9j2Wr2gndvaYeBRoxQg6gUPt/FaHJGdTj9A9k7XQLeE6iFcN12xkSt9r4NKizowAAAMFJREFUKM+V0sdywlAMBVDbMX7PQCihQ+iQ0HsJvfem/P/PwBIzugu0PXNnNNJVyPmhsIPhhoB2COwIGuLdhAcl3AhCBoBoHUC6BCBbA0C/EkBFB5D/FjxQwQYg1RI8UKINgDoSAPUlAPqUAMgfAEBfXsEDBV0+Hogi4Zhg4THj9YwHoqEBYOrgYTI3GVgMNn8r+Qq94k9yZNosW/3Hy9VuTjWfHkOX6367bGZUU7de66ieHZrO1OGg8Z1WTgYAFLgD5S1PCkzo1B0AAAAASUVORK5CYII=); - } - } - } - } - } - - .chat-footer { - min-height: 64px; - max-height: 96px; - background-color: #F3F4F5; - color: rgba(0, 0, 0, 0.87); - border-top: 1px solid rgba(0, 0, 0, .08); - padding: 8px 8px 8px 16px; - - .reply-form { - - md-input-container { - margin: 0; - padding-right: 16px; - - textarea { - overflow: auto; - max-height: 80px; - transition: height 200ms ease; - &.grow { - height: 80px; - } - } - - .md-errors-spacer { - display: none; - } - } - - .md-button { - margin: 0; - } - } - } - } -} diff --git a/src/app/main/content/apps/chat/chat-view/chat-view.component.ts b/src/app/main/content/apps/chat/chat-view/chat-view.component.ts deleted file mode 100644 index ba15972e..00000000 --- a/src/app/main/content/apps/chat/chat-view/chat-view.component.ts +++ /dev/null @@ -1,100 +0,0 @@ -import { AfterViewInit, Component, OnInit, ViewChild, ViewChildren } from '@angular/core'; -import { ChatService } from '../chat.service'; -import { NgForm } from '@angular/forms'; -import { PerfectScrollbarDirective } from 'ngx-perfect-scrollbar'; - -@Component({ - selector : 'fuse-chat-view', - templateUrl: './chat-view.component.html', - styleUrls : ['./chat-view.component.scss'] -}) -export class FuseChatViewComponent implements OnInit, AfterViewInit -{ - user: any; - chat: any; - dialog: any; - contact: any; - replyInput: any; - selectedChat: any; - @ViewChild(PerfectScrollbarDirective) directiveScroll: PerfectScrollbarDirective; - @ViewChildren('replyInput') replyInputField; - @ViewChild('replyForm') replyForm: NgForm; - - constructor(private chatService: ChatService) - { - } - - ngOnInit() - { - this.user = this.chatService.user; - this.chatService.onChatSelected - .subscribe(chatData => { - if ( chatData ) - { - this.selectedChat = chatData; - this.contact = chatData.contact; - this.dialog = chatData.dialog; - this.readyToReply(); - } - }); - } - - ngAfterViewInit() - { - this.replyInput = this.replyInputField.first.nativeElement; - this.readyToReply(); - } - - selectContact() - { - this.chatService.selectContact(this.contact); - } - - readyToReply() - { - setTimeout(() => { - this.replyForm.reset(); - this.focusReplyInput(); - this.scrollToBottom(); - }); - - } - - focusReplyInput() - { - setTimeout(() => { - this.replyInput.focus(); - }); - } - - scrollToBottom(speed?: number) - { - speed = speed || 400; - if ( this.directiveScroll ) - { - setTimeout(() => { - this.directiveScroll.scrollToBottom(0, speed); - }); - } - - } - - reply(event) - { - // Message - const message = { - who : this.user.id, - message: this.replyForm.form.value.message, - time : new Date().toISOString() - }; - - // Add the message to the chat - this.dialog.push(message); - - // Update the server - this.chatService.updateDialog(this.selectedChat.chatId, this.dialog).then(response => { - this.readyToReply(); - }); - - } -} diff --git a/src/app/main/content/apps/chat/chat.component.html b/src/app/main/content/apps/chat/chat.component.html deleted file mode 100644 index b335d9ed..00000000 --- a/src/app/main/content/apps/chat/chat.component.html +++ /dev/null @@ -1,43 +0,0 @@ -
- - -
- - - -
- - -
- - - - - - - - - - - - - - - - - - - - - - - -
- - -
- - -
diff --git a/src/app/main/content/apps/chat/chat.component.scss b/src/app/main/content/apps/chat/chat.component.scss deleted file mode 100644 index add7d911..00000000 --- a/src/app/main/content/apps/chat/chat.component.scss +++ /dev/null @@ -1,40 +0,0 @@ -#calendar { - display: flex; - flex: 1; - - .center { - padding: 32px !important; - max-width: 1400px; - margin: 0 auto; - - .content-card { - display: flex; - flex: 1; - position: relative; - background: url('/assets/images/patterns/rain-grey.png') repeat; - - .mat-sidenav-container { - display: flex; - flex: 1; - width: 100%; - background: transparent; - - .mat-sidenav-content { - display: flex; - flex: 1 0 auto; - min-height: 100%; - height: auto; - } - - md-sidenav { - display: flex; - flex-direction: column; - width: 400px; - max-width: 90%; - box-shadow: 0 0 1px rgba(0, 0, 0, .37); - overflow: hidden; - } - } - } - } -} diff --git a/src/app/main/content/apps/chat/chat.component.ts b/src/app/main/content/apps/chat/chat.component.ts deleted file mode 100644 index c7f5ee60..00000000 --- a/src/app/main/content/apps/chat/chat.component.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; -import { ChatService } from './chat.service'; - -@Component({ - selector : 'fuse-chat', - templateUrl : './chat.component.html', - styleUrls : ['./chat.component.scss'], - encapsulation: ViewEncapsulation.None -}) -export class FuseChatComponent implements OnInit -{ - selectedChat: any; - - constructor(private chatService: ChatService) - { - } - - ngOnInit() - { - this.chatService.onChatSelected - .subscribe(chatData => { - this.selectedChat = chatData; - }); - } - -} diff --git a/src/app/main/content/apps/chat/chat.module.ts b/src/app/main/content/apps/chat/chat.module.ts deleted file mode 100644 index 60ce7f57..00000000 --- a/src/app/main/content/apps/chat/chat.module.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseChatComponent } from './chat.component'; -import { ChatService } from './chat.service'; -import { FuseChatViewComponent } from './chat-view/chat-view.component'; -import { FuseChatStartComponent } from './chat-start/chat-start.component'; -import { FuseChatChatsSidenavComponent } from './sidenavs/left/chats/chats.component'; -import { FuseChatUserSidenavComponent } from './sidenavs/left/user/user.component'; -import { FuseChatLeftSidenavComponent } from './sidenavs/left/left.component'; -import { FuseChatRightSidenavComponent } from './sidenavs/right/right.component'; -import { FuseChatContactSidenavComponent } from './sidenavs/right/contact/contact.component'; - -const routes: Routes = [ - { - path : '**', - component: FuseChatComponent, - children : [], - resolve : { - chat: ChatService - } - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations: [ - FuseChatComponent, - FuseChatViewComponent, - FuseChatStartComponent, - FuseChatChatsSidenavComponent, - FuseChatUserSidenavComponent, - FuseChatLeftSidenavComponent, - FuseChatRightSidenavComponent, - FuseChatContactSidenavComponent - ], - providers : [ - ChatService - ] -}) -export class FuseChatModule -{ -} diff --git a/src/app/main/content/apps/chat/chat.service.ts b/src/app/main/content/apps/chat/chat.service.ts deleted file mode 100644 index e06d4eaa..00000000 --- a/src/app/main/content/apps/chat/chat.service.ts +++ /dev/null @@ -1,247 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { Subject } from 'rxjs/Subject'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { FuseUtils } from '../../../../core/fuseUtils'; - -@Injectable() -export class ChatService implements Resolve -{ - contacts: any[]; - chats: any[]; - user: any; - onChatSelected = new BehaviorSubject(null); - onContactSelected = new BehaviorSubject(null); - onChatsUpdated = new Subject(); - onUserUpdated = new Subject(); - onLeftSidenavViewChanged = new Subject(); - onRightSidenavViewChanged = new Subject(); - - constructor(private http: Http) - { - } - - /** - * Get chat - * @param contactId - * @returns {Promise} - */ - getChat(contactId) - { - const chatItem = this.user.chatList.find((item) => { - return item.contactId === contactId; - }); - - /** - * Create new chat, if it's not created yet. - */ - if ( !chatItem ) - { - this.createNewChat(contactId).then((newChats) => { - this.getChat(contactId); - }); - return; - } - - return new Promise((resolve, reject) => { - this.http.get('api/chat-chats/' + chatItem.id) - .subscribe(response => { - const chat = response.json().data; - - const chatContact = this.contacts.find((contact) => { - return contact.id === contactId; - }); - - const chatData = { - chatId : chat.id, - dialog : chat.dialog, - contact: chatContact - }; - - this.onChatSelected.next({...chatData}); - - }, reject); - - }); - - } - - /** - * Create New Chat - * @param contactId - * @returns {Promise} - */ - createNewChat(contactId) - { - return new Promise((resolve, reject) => { - - const contact = this.contacts.find((item) => { - return item.id === contactId; - }); - - const chatId = FuseUtils.generateGUID(); - - const chat = { - id : chatId, - dialog: [] - }; - - const chatListItem = { - contactId : contactId, - id : chatId, - lastMessageTime: '2017-02-18T10:30:18.931Z', - name : contact.name, - unread : null - }; - - /** - * Add new chat list item to the user's chat list - */ - this.user.chatList.push(chatListItem); - - /** - * Post the created chat - */ - this.http.post('api/chat-chats', {...chat}) - .subscribe(response => { - - /** - * Post the new the user data - */ - this.http.post('api/chat-user/' + this.user.id, this.user) - .subscribe(newUserData => { - - /** - * Update the user data from server - */ - this.getUser().then(updatedUser => { - this.onUserUpdated.next(updatedUser); - resolve(updatedUser); - }); - }); - }, reject); - }); - } - - /** - * Select Contact - * @param contact - */ - selectContact(contact) - { - this.onContactSelected.next(contact); - } - - /** - * Set user status - * @param status - */ - setUserStatus(status) - { - this.user.status = status; - } - - /** - * Update user data - * @param userData - */ - updateUserData(userData) - { - this.http.post('api/chat-user/' + this.user.id, userData) - .subscribe(response => { - this.user = userData; - } - ); - } - - /** - * Update the chat dialog - * @param chatId - * @param dialog - * @returns {Promise} - */ - updateDialog(chatId, dialog): Promise - { - return new Promise((resolve, reject) => { - - const newData = { - id : chatId, - dialog: dialog - }; - - this.http.post('api/chat-chats/' + chatId, newData) - .subscribe(updatedChat => { - resolve(updatedChat); - }, reject); - }); - } - - /** - * The Chat App Main Resolver - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - return new Promise((resolve, reject) => { - Promise.all([ - this.getContacts(), - this.getChats(), - this.getUser() - ]).then( - ([contacts, chats, user]) => { - this.contacts = contacts; - this.chats = chats; - this.user = user; - resolve(); - }, - reject - ); - }); - } - - /** - * Get Contacts - * @returns {Promise} - */ - getContacts(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/chat-contacts') - .subscribe(response => { - resolve(response.json().data); - }, reject); - }); - } - - /** - * Get Chats - * @returns {Promise} - */ - getChats(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/chat-chats') - .subscribe(response => { - resolve(response.json().data); - }, reject); - }); - } - - /** - * Get User - * @returns {Promise} - */ - getUser(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/chat-user') - .subscribe(response => { - resolve(response.json().data[0]); - }, reject); - }); - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.html b/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.html deleted file mode 100644 index be018d5c..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.html +++ /dev/null @@ -1,182 +0,0 @@ - -
- - - - -
- - -
- - - {{user.name}} - - - - - - - - - - - - - - - - - -
- - -
- - - - - -
-
- - - - - - -
- - -
- - -
- - -
- - -
- - - -
- - -
- - -
- -
- Chats -
- - - -
- - - -
- -
- Contacts -
- - -
- - - -
- No results.. -
- - -
- - -
- diff --git a/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.scss b/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.scss deleted file mode 100644 index dc41f360..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.scss +++ /dev/null @@ -1,113 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - display: flex; - flex: 1; - flex-direction: column; - - .sidenav-header { - - md-toolbar { - border-bottom: 1px solid rgba(0, 0, 0, .08); - - .avatar-wrapper { - - .avatar, .status { - cursor: pointer; - } - } - - .search { - height: 36px; - line-height: 36px; - padding: 8px; - background: #FFFFFF; - font-size: 13px; - @include mat-elevation(1); - - .icon { - margin: 0; - color: rgba(0, 0, 0, 0.54); - } - - input { - padding-left: 12px; - height: 36px; - color: rgba(0, 0, 0, 0.54); - border: none; - } - } - } - } - - .sidenav-content { - overflow: auto; - - .contact-list, .chat-list { - - .mat-subheader { - padding-left: 16px; - font-size: 20px; - font-weight: 300; - height: 88px; - line-height: 88px; - color: mat-color($accent); - } - - .contact { - white-space: normal; - text-align: left; - letter-spacing: .010em; - min-height: 88px; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - padding: 16px; - font-weight: 400; - - .avatar-wrapper { - - .avatar { - margin-right: 16px; - } - } - - .contact-name { - font-size: 16px; - white-space: nowrap; - text-overflow: ellipsis; - } - - .contact-last-message { - line-height: 1.6em; - margin: 0; - font-weight: 500; - color: rgba(0, 0, 0, 0.54); - } - - .contact-mood { - line-height: normal; - margin-top: 0; - } - - .unread-message-count { - border-radius: 50%; - text-align: center; - width: 24px; - height: 24px; - line-height: 24px; - background-color: mat-color($accent); - color: map-get($accent, default-contrast); - } - } - } - - .no-results-message { - position: absolute; - width: 100%; - height: 88px; - padding: 16px; - background: #FFFFFF; - font-size: 15px; - font-weight: 400; - } - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.ts b/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.ts deleted file mode 100644 index 0cdd0bae..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/chats/chats.component.ts +++ /dev/null @@ -1,69 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { ChatService } from '../../../chat.service'; -import { FuseMdSidenavHelperService } from '../../../../../../../core/directives/md-sidenav-helper/md-sidenav-helper.service'; -import { ObservableMedia } from '@angular/flex-layout'; - -@Component({ - selector : 'fuse-chat-chats-sidenav', - templateUrl: './chats.component.html', - styleUrls : ['./chats.component.scss'] -}) -export class FuseChatChatsSidenavComponent implements OnInit -{ - user: any; - chats: any[]; - contacts: any[]; - chatSearch: any; - searchText = ''; - - constructor( - private chatService: ChatService, - private fuseMdSidenavService: FuseMdSidenavHelperService, - public media: ObservableMedia - ) - { - this.chatSearch = { - name: '' - }; - } - - ngOnInit() - { - this.user = this.chatService.user; - this.chats = this.chatService.chats; - this.contacts = this.chatService.contacts; - - this.chatService.onChatsUpdated.subscribe(updatedChats => { - this.chats = updatedChats; - }); - - this.chatService.onUserUpdated.subscribe(updatedUser => { - this.user = updatedUser; - }); - } - - getChat(contact) - { - this.chatService.getChat(contact); - - if ( !this.media.isActive('gt-md') ) - { - this.fuseMdSidenavService.getSidenav('chat-left-sidenav').toggle(); - } - } - - setUserStatus(status) - { - this.chatService.setUserStatus(status); - } - - changeLeftSidenavView(view) - { - this.chatService.onLeftSidenavViewChanged.next(view); - } - - logout() - { - console.log('logout triggered'); - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/left/left.component.html b/src/app/main/content/apps/chat/sidenavs/left/left.component.html deleted file mode 100644 index 5595a45f..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/left.component.html +++ /dev/null @@ -1,11 +0,0 @@ -
- - - - - -
diff --git a/src/app/main/content/apps/chat/sidenavs/left/left.component.scss b/src/app/main/content/apps/chat/sidenavs/left/left.component.scss deleted file mode 100644 index 3661f0ce..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/left.component.scss +++ /dev/null @@ -1,20 +0,0 @@ -:host { - display: flex; - flex-direction: column; - height: 100%; - - .views { - display: flex; - flex-direction: column; - height: 100%; - - .view { - position: absolute; - height: 100%; - bottom: 0; - left: 0; - right: 0; - top: 0; - } - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/left/left.component.ts b/src/app/main/content/apps/chat/sidenavs/left/left.component.ts deleted file mode 100644 index d12d63ba..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/left.component.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { Animations } from '../../../../../../core/animations'; -import { ChatService } from '../../chat.service'; - -@Component({ - selector : 'fuse-chat-left-sidenav', - templateUrl: './left.component.html', - styleUrls : ['./left.component.scss'], - animations : [Animations.slideInLeft, Animations.slideInRight] -}) -export class FuseChatLeftSidenavComponent implements OnInit -{ - view: string; - - constructor(private chatService: ChatService) - { - this.view = 'chats'; - } - - ngOnInit() - { - this.chatService.onLeftSidenavViewChanged.subscribe(view => { - this.view = view; - }); - } - -} diff --git a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.html b/src/app/main/content/apps/chat/sidenavs/left/user/user.component.html deleted file mode 100644 index 4b40de6d..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.html +++ /dev/null @@ -1,78 +0,0 @@ - -
- - - - - -
- - - -
- - - - - - {{user.name}} - -
{{user.name}}
- -
- - -
- -
- - -
- - - - -
- - - - - - - - -
- - Online -
-
- - -
- - Away -
-
- - -
- - Do not disturb -
-
- - -
- - Offline -
-
-
- -
-
- -
diff --git a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.scss b/src/app/main/content/apps/chat/sidenavs/left/user/user.component.scss deleted file mode 100644 index 5b1ce733..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.scss +++ /dev/null @@ -1,21 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - display: flex; - flex: 1; - flex-direction: column; - - md-toolbar { - background-color: mat-color($accent); - color: map-get($accent, default-contrast); - - .toolbar-bottom { - height: 240px; - } - - } - - .sidenav-content { - background: whitesmoke; - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.ts b/src/app/main/content/apps/chat/sidenavs/left/user/user.component.ts deleted file mode 100644 index 263be716..00000000 --- a/src/app/main/content/apps/chat/sidenavs/left/user/user.component.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { ChatService } from '../../../chat.service'; -import { FormControl, FormGroup } from '@angular/forms'; -import 'rxjs/Rx'; - -@Component({ - selector : 'fuse-chat-user-sidenav', - templateUrl: './user.component.html', - styleUrls : ['./user.component.scss'] -}) -export class FuseChatUserSidenavComponent implements OnInit, OnDestroy -{ - user: any; - onFormChange: any; - userForm: FormGroup; - - constructor(private chatService: ChatService) - { - this.user = this.chatService.user; - this.userForm = new FormGroup({ - mood : new FormControl(this.user.mood), - status: new FormControl(this.user.status) - }); - } - - ngOnInit() - { - this.onFormChange = this.userForm.valueChanges - .debounceTime(500) - .distinctUntilChanged() - .subscribe(data => { - this.user.mood = data.mood; - this.user.status = data.status; - this.chatService.updateUserData(this.user); - }); - } - - changeLeftSidenavView(view) - { - this.chatService.onLeftSidenavViewChanged.next(view); - } - - ngOnDestroy() - { - this.onFormChange.unsubscribe(); - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.html b/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.html deleted file mode 100644 index 2677e347..00000000 --- a/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.html +++ /dev/null @@ -1,47 +0,0 @@ - -
- - - - - -
- -
Contact Info
- - - -
- - - - - - {{contact.name}} - -
{{contact.name}}
- -
- - -
- -
- - -
- - - - - - - - - - -
diff --git a/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.scss b/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.scss deleted file mode 100644 index 5b1ce733..00000000 --- a/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.scss +++ /dev/null @@ -1,21 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - display: flex; - flex: 1; - flex-direction: column; - - md-toolbar { - background-color: mat-color($accent); - color: map-get($accent, default-contrast); - - .toolbar-bottom { - height: 240px; - } - - } - - .sidenav-content { - background: whitesmoke; - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.ts b/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.ts deleted file mode 100644 index 834f0299..00000000 --- a/src/app/main/content/apps/chat/sidenavs/right/contact/contact.component.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { ChatService } from '../../../chat.service'; - -@Component({ - selector : 'fuse-chat-contact-sidenav', - templateUrl: './contact.component.html', - styleUrls : ['./contact.component.scss'] -}) -export class FuseChatContactSidenavComponent implements OnInit -{ - contact: any; - - constructor(private chatService: ChatService) - { - - } - - ngOnInit() - { - this.chatService.onContactSelected.subscribe(contact => { - this.contact = contact; - }); - } - -} diff --git a/src/app/main/content/apps/chat/sidenavs/right/right.component.html b/src/app/main/content/apps/chat/sidenavs/right/right.component.html deleted file mode 100644 index 35e7b937..00000000 --- a/src/app/main/content/apps/chat/sidenavs/right/right.component.html +++ /dev/null @@ -1,8 +0,0 @@ -
- - - - -
diff --git a/src/app/main/content/apps/chat/sidenavs/right/right.component.scss b/src/app/main/content/apps/chat/sidenavs/right/right.component.scss deleted file mode 100644 index 3661f0ce..00000000 --- a/src/app/main/content/apps/chat/sidenavs/right/right.component.scss +++ /dev/null @@ -1,20 +0,0 @@ -:host { - display: flex; - flex-direction: column; - height: 100%; - - .views { - display: flex; - flex-direction: column; - height: 100%; - - .view { - position: absolute; - height: 100%; - bottom: 0; - left: 0; - right: 0; - top: 0; - } - } -} diff --git a/src/app/main/content/apps/chat/sidenavs/right/right.component.ts b/src/app/main/content/apps/chat/sidenavs/right/right.component.ts deleted file mode 100644 index 9f7b1515..00000000 --- a/src/app/main/content/apps/chat/sidenavs/right/right.component.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { Animations } from '../../../../../../core/animations'; -import { ChatService } from '../../chat.service'; - -@Component({ - selector : 'fuse-chat-right-sidenav', - templateUrl: './right.component.html', - styleUrls : ['./right.component.scss'], - animations : [Animations.slideInLeft, Animations.slideInRight] -}) -export class FuseChatRightSidenavComponent implements OnInit -{ - view: string; - - constructor(private chatService: ChatService) - { - this.view = 'contact'; - } - - ngOnInit() - { - this.chatService.onRightSidenavViewChanged.subscribe(view => { - this.view = view; - }); - } - -} diff --git a/src/app/main/content/apps/contacts/contact-form/contact-form.component.html b/src/app/main/content/apps/contacts/contact-form/contact-form.component.html deleted file mode 100644 index 4e930385..00000000 --- a/src/app/main/content/apps/contacts/contact-form/contact-form.component.html +++ /dev/null @@ -1,129 +0,0 @@ - -
- {{dialogTitle}} - -
- - - -
{{contact.name}}
-
-
- -
- -
- -
- account_circle - - - -
- -
- - - - -
- -
- star - - - -
- -
- phone - - - -
- -
- email - - - -
- -
- domain - - - -
- -
- work - - - -
- -
- - - - - -
- -
- home - - - -
- -
- note - - - -
- -
- -
- -
- - - - - - - -
diff --git a/src/app/main/content/apps/contacts/contact-form/contact-form.component.scss b/src/app/main/content/apps/contacts/contact-form/contact-form.component.scss deleted file mode 100644 index 9ad953f9..00000000 --- a/src/app/main/content/apps/contacts/contact-form/contact-form.component.scss +++ /dev/null @@ -1,16 +0,0 @@ -.contact-form-dialog { - - .mat-dialog-container { - padding: 0; - width: 400px; - - .toolbar-bottom { - height: 200px; - } - } -} - -:host { - display: flex; - flex-direction: column; -} diff --git a/src/app/main/content/apps/contacts/contact-form/contact-form.component.ts b/src/app/main/content/apps/contacts/contact-form/contact-form.component.ts deleted file mode 100644 index 7124e272..00000000 --- a/src/app/main/content/apps/contacts/contact-form/contact-form.component.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { Component, Inject, OnInit, ViewEncapsulation } from '@angular/core'; -import { MD_DIALOG_DATA, MdDialogRef } from '@angular/material'; -import { CalendarEvent } from 'angular-calendar'; -import { FormBuilder, FormGroup } from '@angular/forms'; -import 'rxjs/Rx'; -import { Contact } from '../contact.model'; - -@Component({ - selector : 'fuse-contacts-contact-form-dialog', - templateUrl : './contact-form.component.html', - styleUrls : ['./contact-form.component.scss'], - encapsulation: ViewEncapsulation.None -}) - -export class FuseContactsContactFormDialogComponent implements OnInit -{ - event: CalendarEvent; - dialogTitle: string; - contactForm: FormGroup; - action: string; - contact: Contact; - - constructor( - public dialogRef: MdDialogRef, - @Inject(MD_DIALOG_DATA) private data: any, - private formBuilder: FormBuilder - ) - { - this.action = data.action; - - if ( this.action === 'edit' ) - { - this.dialogTitle = 'Edit Contact'; - this.contact = data.contact; - } - else - { - this.dialogTitle = 'New Contact'; - this.contact = new Contact({}); - } - - this.contactForm = this.createContactForm(); - } - - ngOnInit() - { - } - - createContactForm() - { - return this.formBuilder.group({ - id : [this.contact.id], - name : [this.contact.name], - lastName: [this.contact.lastName], - avatar : [this.contact.avatar], - nickname: [this.contact.nickname], - company : [this.contact.company], - jobTitle: [this.contact.jobTitle], - email : [this.contact.email], - phone : [this.contact.phone], - address : [this.contact.address], - birthday: [this.contact.birthday], - notes : [this.contact.notes] - }); - } -} diff --git a/src/app/main/content/apps/contacts/contact-list/contact-list.component.html b/src/app/main/content/apps/contacts/contact-list/contact-list.component.html deleted file mode 100644 index bccbfdd6..00000000 --- a/src/app/main/content/apps/contacts/contact-list/contact-list.component.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - Name - -

{{contact.name}} {{contact.lastName}}

-
-
- - - - Email - - - - - - - - Phone - -

- {{contact.phone}} -

-
-
- - - - Job title - -

- {{contact.jobTitle}} -

-
-
- - - - Company - -

- {{contact.company}} -

-
-
- - - - - -
- - - - - - - -
- -
-
- - - - -
- - - - - diff --git a/src/app/main/content/apps/contacts/contact-list/contact-list.component.scss b/src/app/main/content/apps/contacts/contact-list/contact-list.component.scss deleted file mode 100644 index 78fd80ee..00000000 --- a/src/app/main/content/apps/contacts/contact-list/contact-list.component.scss +++ /dev/null @@ -1,50 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - flex: 1; - - .mat-table { - background: transparent; - box-shadow: none; - - .mat-column-checkbox { - flex: 0 1 64px; - } - - .mat-column-avatar { - flex: 0 1 64px; - } - - .mat-column-buttons { - flex: 0 1 80px; - } - - .mat-row { - position: relative; - cursor: pointer; - - .mat-cell { - min-width: 0; - - &.mat-column-detail-button { - flex: 0 1 auto; - padding: 0 24px 0 0; - @include media-breakpoint('gt-md') { - display: none; - } - } - } - } - } -} - -#add-contact-button { - position: fixed; - bottom: 12px; - right: 12px; - padding: 0; - - @include media-breakpoint-down('xs') { - top: 12px; - } -} diff --git a/src/app/main/content/apps/contacts/contact-list/contact-list.component.ts b/src/app/main/content/apps/contacts/contact-list/contact-list.component.ts deleted file mode 100644 index 710c4d98..00000000 --- a/src/app/main/content/apps/contacts/contact-list/contact-list.component.ts +++ /dev/null @@ -1,183 +0,0 @@ -import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core'; -import { ContactsService } from '../contacts.service'; -import { DataSource } from '@angular/cdk'; -import { Observable } from 'rxjs/Observable'; -import { FuseContactsContactFormDialogComponent } from '../contact-form/contact-form.component'; -import { MdDialog, MdDialogRef } from '@angular/material'; -import { FuseConfirmDialogComponent } from '../../../../../core/components/confirm-dialog/confirm-dialog.component'; -import { FormGroup } from '@angular/forms'; - -@Component({ - selector : 'fuse-contacts-contact-list', - templateUrl: './contact-list.component.html', - styleUrls : ['./contact-list.component.scss'] -}) -export class FuseContactsContactListComponent implements OnInit -{ - @ViewChild('dialogContent') dialogContent: TemplateRef; - - contacts: any; - user: any; - dataSource: FilesDataSource | null; - displayedColumns = ['checkbox', 'avatar', 'name', 'email', 'phone', 'jobTitle', 'buttons']; - selectedContacts: any[]; - checkboxes: {}; - - dialogRef: any; - - confirmDialogRef: MdDialogRef; - - constructor( - private contactsService: ContactsService, - public dialog: MdDialog - ) - { - this.contactsService.onContactsChanged.subscribe(contacts => { - - this.contacts = contacts; - - this.checkboxes = {}; - contacts.map(contact => { - this.checkboxes[contact.id] = false; - }); - }); - - this.contactsService.onSelectedContactsChanged.subscribe(selectedContacts => { - for ( const id in this.checkboxes ) - { - this.checkboxes[id] = selectedContacts.includes(id); - } - this.selectedContacts = selectedContacts; - }); - - this.contactsService.onUserDataChanged.subscribe(user => { - this.user = user; - }); - - } - - ngOnInit() - { - this.dataSource = new FilesDataSource(this.contactsService); - } - - newContact() - { - this.dialogRef = this.dialog.open(FuseContactsContactFormDialogComponent, { - panelClass: 'contact-form-dialog', - data : { - action: 'new' - } - }); - - this.dialogRef.afterClosed() - .subscribe((response: FormGroup) => { - if ( !response ) - { - return; - } - - this.contactsService.updateContact(response.getRawValue()); - - }); - - } - - editContact(contact) - { - this.dialogRef = this.dialog.open(FuseContactsContactFormDialogComponent, { - panelClass: 'contact-form-dialog', - data : { - contact: contact, - action : 'edit' - } - }); - - this.dialogRef.afterClosed() - .subscribe(response => { - if ( !response ) - { - return; - } - const actionType: string = response[0]; - const formData: FormGroup = response[1]; - switch ( actionType ) - { - /** - * Save - */ - case 'save': - - this.contactsService.updateContact(formData.getRawValue()); - - break; - /** - * Delete - */ - case 'delete': - - this.deleteContact(contact); - - break; - } - }); - } - - /** - * Delete Contact - */ - deleteContact(contact) - { - this.confirmDialogRef = this.dialog.open(FuseConfirmDialogComponent, { - disableClose: false - }); - - this.confirmDialogRef.componentInstance.confirmMessage = 'Are you sure you want to delete?'; - - this.confirmDialogRef.afterClosed().subscribe(result => { - if ( result ) - { - this.contactsService.deleteContact(contact); - } - this.confirmDialogRef = null; - }); - - } - - onSelectedChange(contactId) - { - this.contactsService.toggleSelectedContact(contactId); - } - - toggleStar(contactId) - { - if ( this.user.starred.includes(contactId) ) - { - this.user.starred.splice(this.user.starred.indexOf(contactId), 1); - } - else - { - this.user.starred.push(contactId); - } - - this.contactsService.updateUserData(this.user); - } -} - -export class FilesDataSource extends DataSource -{ - constructor(private contactsService: ContactsService) - { - super(); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable - { - return this.contactsService.onContactsChanged; - } - - disconnect() - { - } -} diff --git a/src/app/main/content/apps/contacts/contact.model.ts b/src/app/main/content/apps/contacts/contact.model.ts deleted file mode 100644 index bb2fa64e..00000000 --- a/src/app/main/content/apps/contacts/contact.model.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { FuseUtils } from '../../../../core/fuseUtils'; - -export class Contact -{ - id: string; - name: string; - lastName: string; - avatar: string; - nickname: string; - company: string; - jobTitle: string; - email: string; - phone: string; - address: string; - birthday: string; - notes: string; - - constructor(contact) - { - { - this.id = contact.id || FuseUtils.generateGUID(); - this.name = contact.name || ''; - this.lastName = contact.lastName || ''; - this.avatar = contact.avatar || 'assets/images/avatars/profile.jpg'; - this.nickname = contact.nickname || ''; - this.company = contact.company || ''; - this.jobTitle = contact.jobTitle || ''; - this.email = contact.email || ''; - this.phone = contact.phone || ''; - this.address = contact.address || ''; - this.birthday = contact.birhday || ''; - this.notes = contact.notes || ''; - } - } -} diff --git a/src/app/main/content/apps/contacts/contacts.component.html b/src/app/main/content/apps/contacts/contacts.component.html deleted file mode 100644 index 06b5cee1..00000000 --- a/src/app/main/content/apps/contacts/contacts.component.html +++ /dev/null @@ -1,69 +0,0 @@ -
- - -
- - -
- - - - - -
- - - -
- - - - -
- - -
- - - - - - - - - - - - - - - - - -
- - -
- - - -
- - -
- - -
- -
diff --git a/src/app/main/content/apps/contacts/contacts.component.scss b/src/app/main/content/apps/contacts/contacts.component.scss deleted file mode 100644 index 4ac7a3d9..00000000 --- a/src/app/main/content/apps/contacts/contacts.component.scss +++ /dev/null @@ -1,8 +0,0 @@ -@import "src/app/core/scss/fuse"; - -#contacts { - - .content { - overflow: hidden; - } -} diff --git a/src/app/main/content/apps/contacts/contacts.component.ts b/src/app/main/content/apps/contacts/contacts.component.ts deleted file mode 100644 index dcc4f8f6..00000000 --- a/src/app/main/content/apps/contacts/contacts.component.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; -import { ContactsService } from './contacts.service'; -import { Animations } from '../../../../core/animations'; -import { FormControl } from '@angular/forms'; - -@Component({ - selector : 'fuse-contacts', - templateUrl : './contacts.component.html', - styleUrls : ['./contacts.component.scss'], - encapsulation: ViewEncapsulation.None, - animations : [Animations.slideInTop] -}) -export class FuseContactsComponent implements OnInit -{ - hasSelectedContacts: boolean; - searchInput: FormControl; - - constructor(private contactsService: ContactsService) - { - this.searchInput = new FormControl(''); - } - - ngOnInit() - { - - this.contactsService.onSelectedContactsChanged - .subscribe(selectedContacts => { - this.hasSelectedContacts = selectedContacts.length > 0; - }); - - this.searchInput.valueChanges - .debounceTime(300) - .distinctUntilChanged() - .subscribe(searchText => { - this.contactsService.onSearchTextChanged.next(searchText); - }); - } - -} diff --git a/src/app/main/content/apps/contacts/contacts.module.ts b/src/app/main/content/apps/contacts/contacts.module.ts deleted file mode 100644 index 55d5ab98..00000000 --- a/src/app/main/content/apps/contacts/contacts.module.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseContactsMainSidenavComponent } from './sidenavs/main/main.component'; -import { FuseContactsComponent } from './contacts.component'; -import { ContactsService } from './contacts.service'; -import { FuseContactsContactListComponent } from './contact-list/contact-list.component'; -import { FuseContactsSelectedBarComponent } from './selected-bar/selected-bar.component'; -import { FuseContactsContactFormDialogComponent } from './contact-form/contact-form.component'; - -const routes: Routes = [ - { - path : '**', - component: FuseContactsComponent, - children : [], - resolve : { - contacts: ContactsService - } - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations : [ - FuseContactsComponent, - FuseContactsContactListComponent, - FuseContactsSelectedBarComponent, - FuseContactsMainSidenavComponent, - FuseContactsContactFormDialogComponent - ], - providers : [ - ContactsService - ], - entryComponents: [FuseContactsContactFormDialogComponent] -}) -export class FuseContactsModule -{ -} diff --git a/src/app/main/content/apps/contacts/contacts.service.ts b/src/app/main/content/apps/contacts/contacts.service.ts deleted file mode 100644 index 09a372b9..00000000 --- a/src/app/main/content/apps/contacts/contacts.service.ts +++ /dev/null @@ -1,243 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { Contact } from './contact.model'; -import { FuseUtils } from '../../../../core/fuseUtils'; -import { Subject } from 'rxjs/Subject'; - -@Injectable() -export class ContactsService implements Resolve -{ - onContactsChanged: BehaviorSubject = new BehaviorSubject({}); - - onSelectedContactsChanged: BehaviorSubject = new BehaviorSubject([]); - - onUserDataChanged: BehaviorSubject = new BehaviorSubject([]); - - onSearchTextChanged: Subject = new Subject(); - - onFilterChanged: Subject = new Subject(); - - contacts: Contact[]; - user: any; - selectedContacts: string[] = []; - - searchText: string; - filterBy: string; - - constructor(private http: Http) - { - } - - /** - * The Contacts App Main Resolver - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - - return new Promise((resolve, reject) => { - - Promise.all([ - this.getContacts(), - this.getUserData() - ]).then( - ([files]) => { - - this.onSearchTextChanged.subscribe(searchText => { - this.searchText = searchText; - this.getContacts(); - }); - - this.onFilterChanged.subscribe(filter => { - this.filterBy = filter; - this.getContacts(); - }); - - resolve(); - - }, - reject - ); - }); - } - - getContacts(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/contacts-contacts') - .subscribe(response => { - - this.contacts = response.json().data; - - if ( this.filterBy === 'starred' ) - { - this.contacts = this.contacts.filter(_contact => { - return this.user.starred.includes(_contact.id); - }); - } - - if ( this.filterBy === 'frequent' ) - { - this.contacts = this.contacts.filter(_contact => { - return this.user.frequentContacts.includes(_contact.id); - }); - } - - if ( this.searchText && this.searchText !== '' ) - { - this.contacts = FuseUtils.filterArrayByString(this.contacts, this.searchText); - } - - this.contacts = this.contacts.map(contact => { - return new Contact(contact); - }); - - this.onContactsChanged.next(this.contacts); - resolve(this.contacts); - }, reject); - } - ); - } - - getUserData(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/contacts-user/5725a6802d10e277a0f35724') - .subscribe(response => { - this.user = response.json().data; - this.onUserDataChanged.next(this.user); - resolve(this.user); - }, reject); - } - ); - } - - /** - * Toggle selected contact by id - * @param id - */ - toggleSelectedContact(id) - { - // First, check if we already have that todo as selected... - if ( this.selectedContacts.length > 0 ) - { - const index = this.selectedContacts.indexOf(id); - - if ( index !== -1 ) - { - this.selectedContacts.splice(index, 1); - - // Trigger the next event - this.onSelectedContactsChanged.next(this.selectedContacts); - - // Return - return; - } - } - - // If we don't have it, push as selected - this.selectedContacts.push(id); - - // Trigger the next event - this.onSelectedContactsChanged.next(this.selectedContacts); - } - - /** - * Toggle select all - */ - toggleSelectAll() - { - if ( this.selectedContacts.length > 0 ) - { - this.deselectContacts(); - } - else - { - this.selectContacts(); - } - } - - selectContacts(filterParameter?, filterValue?) - { - this.selectedContacts = []; - - // If there is no filter, select all todos - if ( filterParameter === undefined || filterValue === undefined ) - { - this.selectedContacts = []; - this.contacts.map(contact => { - this.selectedContacts.push(contact.id); - }); - } - else - { - /* this.selectedContacts.push(... - this.contacts.filter(todo => { - return todo[filterParameter] === filterValue; - }) - );*/ - } - - // Trigger the next event - this.onSelectedContactsChanged.next(this.selectedContacts); - } - - updateContact(contact) - { - return new Promise((resolve, reject) => { - - this.http.post('api/contacts-contacts/' + contact.id, {...contact}) - .subscribe(response => { - this.getContacts(); - resolve(response); - }); - }); - } - - updateUserData(userData) - { - return new Promise((resolve, reject) => { - this.http.post('api/contacts-user/' + this.user.id, {...userData}) - .subscribe(response => { - this.getUserData(); - this.getContacts(); - resolve(response); - }); - }); - } - - deselectContacts() - { - this.selectedContacts = []; - - // Trigger the next event - this.onSelectedContactsChanged.next(this.selectedContacts); - } - - deleteContact(contact) - { - const contactIndex = this.contacts.indexOf(contact); - this.contacts.splice(contactIndex, 1); - this.onContactsChanged.next(this.contacts); - } - - deleteSelectedContacts() - { - for ( const contactId of this.selectedContacts ) - { - const contact = this.contacts.find(_contact => { - return _contact.id === contactId; - }); - const contactIndex = this.contacts.indexOf(contact); - this.contacts.splice(contactIndex, 1); - } - this.onContactsChanged.next(this.contacts); - this.deselectContacts(); - } - -} diff --git a/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.html b/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.html deleted file mode 100644 index 59d35f3c..00000000 --- a/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.html +++ /dev/null @@ -1,37 +0,0 @@ -
- -
- -
- -
- -
- - {{selectedContacts.length}} - selected - - - - - - - - -
- -
- -
- -
- -
diff --git a/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.scss b/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.scss deleted file mode 100644 index 40c33970..00000000 --- a/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.scss +++ /dev/null @@ -1,11 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - flex: 1; - position: absolute; - top: 0; - right: 0; - left: 0; - height: 120px; - z-index: 99; -} diff --git a/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.ts b/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.ts deleted file mode 100644 index f3053c66..00000000 --- a/src/app/main/content/apps/contacts/selected-bar/selected-bar.component.ts +++ /dev/null @@ -1,65 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { ContactsService } from '../contacts.service'; -import { MdDialog, MdDialogRef } from '@angular/material'; -import { FuseConfirmDialogComponent } from '../../../../../core/components/confirm-dialog/confirm-dialog.component'; - -@Component({ - selector : 'fuse-selected-bar', - templateUrl: './selected-bar.component.html', - styleUrls : ['./selected-bar.component.scss'] -}) -export class FuseContactsSelectedBarComponent implements OnInit -{ - selectedContacts: string[]; - hasSelectedContacts: boolean; - isIndeterminate: boolean; - confirmDialogRef: MdDialogRef; - - constructor( - private contactsService: ContactsService, - public dialog: MdDialog - ) - { - this.contactsService.onSelectedContactsChanged - .subscribe(selectedContacts => { - this.selectedContacts = selectedContacts; - setTimeout(() => { - this.hasSelectedContacts = selectedContacts.length > 0; - this.isIndeterminate = (selectedContacts.length !== this.contactsService.contacts.length && selectedContacts.length > 0); - }, 0); - }); - - } - - ngOnInit() - { - } - - selectAll() - { - this.contactsService.selectContacts(); - } - - deselectAll() - { - this.contactsService.deselectContacts(); - } - - deleteSelectedContacts() - { - this.confirmDialogRef = this.dialog.open(FuseConfirmDialogComponent, { - disableClose: false - }); - - this.confirmDialogRef.componentInstance.confirmMessage = 'Are you sure you want to delete all selected contacts?'; - - this.confirmDialogRef.afterClosed().subscribe(result => { - if ( result ) - { - this.contactsService.deleteSelectedContacts(); - } - this.confirmDialogRef = null; - }); - } - -} diff --git a/src/app/main/content/apps/contacts/sidenavs/main/main.component.html b/src/app/main/content/apps/contacts/sidenavs/main/main.component.html deleted file mode 100644 index b0d07b8b..00000000 --- a/src/app/main/content/apps/contacts/sidenavs/main/main.component.html +++ /dev/null @@ -1,42 +0,0 @@ -
- -
- -
- - - - {{user.name}} - - -
- - - - -
-
- diff --git a/src/app/main/content/apps/contacts/sidenavs/main/main.component.scss b/src/app/main/content/apps/contacts/sidenavs/main/main.component.scss deleted file mode 100644 index 5c6b97f8..00000000 --- a/src/app/main/content/apps/contacts/sidenavs/main/main.component.scss +++ /dev/null @@ -1,39 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - display: flex; - flex-direction: column; - flex: 1 0 auto; - height: 100%; - - .sidenav-content { - display: flex; - flex-direction: column; - padding: 0; - - @include media-breakpoint(gt-md) { - padding: 24px 4px 24px 24px; - } - - .card { - display: flex; - flex-direction: column; - flex: 0 1 auto; - padding: 0; - - @include media-breakpoint(gt-md) { - @include mat-elevation(4); - } - - > .header { - flex: 0 1 auto; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - } - - > .content { - flex: 0 1 auto; - } - } - - } -} diff --git a/src/app/main/content/apps/contacts/sidenavs/main/main.component.ts b/src/app/main/content/apps/contacts/sidenavs/main/main.component.ts deleted file mode 100644 index 262dfa7d..00000000 --- a/src/app/main/content/apps/contacts/sidenavs/main/main.component.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { ContactsService } from '../../contacts.service'; - -@Component({ - selector : 'fuse-contacts-main-sidenav', - templateUrl: './main.component.html', - styleUrls : ['./main.component.scss'] -}) -export class FuseContactsMainSidenavComponent implements OnInit -{ - user: any; - filterBy: string; - - constructor(private contactsService: ContactsService) - { - this.filterBy = 'all'; - this.contactsService.onUserDataChanged.subscribe(user => { - this.user = user; - }); - } - - ngOnInit() - { - } - - changeFilter(filter) - { - this.filterBy = filter; - this.contactsService.onFilterChanged.next(this.filterBy); - } -} diff --git a/src/app/main/content/apps/dashboards/project/project.component.html b/src/app/main/content/apps/dashboards/project/project.component.html deleted file mode 100644 index f57508d1..00000000 --- a/src/app/main/content/apps/dashboards/project/project.component.html +++ /dev/null @@ -1,831 +0,0 @@ -
- - - - -
- - -
- -
- - Welcome back, John! - - -
- -
- -
{{selectedProject.name}}
- - - - - - -
-
- - - -
- - - - - -
- - - - - -
-
- - - {{range.value}} - - - - - -
- -
-
- {{widgets.widget1.data.count[widgets.widget1.currentRange]}} -
-
{{widgets.widget1.data.label}}
-
- -
- {{widgets.widget1.data.extra.label}}: - {{widgets.widget1.data.extra.count[widgets.widget1.currentRange]}} -
-
- - - -
- - -
- {{widgets.widget1.detail}} -
-
- - -
- - - - - - -
-
-
{{widgets.widget2.title}}
- - -
- -
-
- {{widgets.widget2.data.count}} -
-
{{widgets.widget2.data.label}}
-
- -
- {{widgets.widget2.data.extra.label}}: - {{widgets.widget2.data.extra.count}} -
-
- - - -
- - -
- {{widgets.widget2.detail}} -
-
- - -
- - - - - - -
-
-
{{widgets.widget3.title}}
- - -
- -
-
- {{widgets.widget3.data.count}} -
-
{{widgets.widget3.data.label}}
-
- -
- {{widgets.widget3.data.extra.label}}: - {{widgets.widget3.data.extra.count}} -
-
- - - -
- - -
- {{widgets.widget3.detail}} -
-
- - -
- - - - - - -
-
-
{{widgets.widget4.title}}
- - -
- -
-
{{widgets.widget4.data.count}} -
-
{{widgets.widget4.data.label}}
-
- -
- {{widgets.widget4.data.extra.label}}: - {{widgets.widget4.data.extra.count}} -
-
- - - -
- - -
- {{widgets.widget4.detail}} -
-
- - -
- - - - - - - -
- -
- -
{{widgets.widget5.title}}
- -
- -
-
- -
-
- - -
- -
- -
- -
-
{{widget.value.label}}
-
- {{widget.value.count[widget5.currentRange]}} -
-
- -
- - > - -
-
-
-
-
- - -
- - - - - - - -
- -
-
{{widgets.widget6.title}}
-
- - - {{range.value}} - - -
-
- -
- - -
- -
-
- {{widgets.widget6.footerLeft.count[widget6.currentRange]}} - {{widgets.widget6.footerLeft.title}} -
- -
- {{widgets.widget6.footerRight.count[widget6.currentRange]}} - {{widgets.widget6.footerRight.title}} -
-
- -
- - -
- - - - - - -
- -
-
{{widgets.widget7.title}}
- -
- - - {{range.value}} - - -
-
- -
-
-
{{event.title}}
-
- {{event.time}} - , {{event.location}} -
-
- - -
- -
- - -
- - -
- - - -
- - - - -
- - - - - -
-
- {{widgets.widget8.title}} -
- - - -
- - -
- -
- - -
- - - - - - -
-
-
{{widgets.widget9.title}}
- -
- - - {{range.value}} - - - -
-
- -
-
-
{{widgets.widget9.weeklySpent.title}}
-
- $ - {{widgets.widget9.weeklySpent.count[widget9.currentRange]}} -
-
-
- - -
-
- -
-
-
{{widgets.widget9.totalSpent.title}}
-
- $ - {{widgets.widget9.totalSpent.count[widget9.currentRange]}} -
-
-
- - -
-
- -
-
-
{{widgets.widget9.remaining.title}}
-
- $ - {{widgets.widget9.remaining.count[widget9.currentRange]}} -
-
-
- - -
-
- -
-
{{widgets.widget9.totalBudget.title}}
-
- $ - {{widgets.widget9.totalBudget.count}} -
-
- -
- - -
- - - - - - -
- -
-
- {{widgets.widget10.title}} -
- - - - - - - - - - - - - - -
- {{column.title}} -
- - {{cell.value}} - - {{cell.icon}} -
-
- -
- - -
- - -
- - -
- - - - -
- - - - - -
- -
-
{{widgets.widget11.title}}
-
{{widgets.widget11.table.rows.length}} - members -
-
- - - - - - - - - - - - - - Name - -

{{contact.name}} {{contact.lastName}}

-
-
- - - - Position - -

- {{contact.position}} -

-
-
- - - - Office - -

- {{contact.office}} -

-
-
- - - - - Email - - - - - - - - Phone - -

- {{contact.phone}} -

-
-
- - - - -
-
- - -
- - -
- - -
-
- -
- - -
- - - - - -
- -
- - - - - -
- -
- -
{{dateNow | date: 'EEEE, h:m:ss'}}
- -
- - - - - -
-
- -
-
- {{dateNow | date: 'MMMM'}} -
- -
- {{dateNow | date: 'd'}} -
- -
- {{dateNow | date: 'y'}} -
-
- - -
- - -
- - - - - - - -
- -
- -
- place - {{widgets.weatherWidget.locations[widgets.weatherWidget.currentLocation].name}} -
- -
- - - - - -
-
- -
- -
- - - {{widgets.weatherWidget.locations[widgets.weatherWidget.currentLocation].temp[widgets.weatherWidget.tempUnit]}} - - ° - C -
-
- -
-
- - - {{widgets.weatherWidget.locations[widgets.weatherWidget.currentLocation].windSpeed[widgets.weatherWidget.speedUnit]}} - - {{widgets.weatherWidget.speedUnit}} -
- -
- - {{widgets.weatherWidget.locations[widgets.weatherWidget.currentLocation].windDirection}} -
- -
- - {{widgets.weatherWidget.locations[widgets.weatherWidget.currentLocation].rainProbability}} -
-
- -
-
- {{day.name}} -
- - {{day.temp[widgets.weatherWidget.tempUnit]}} - ° - {{widgets.weatherWidget.tempUnit}} -
-
-
- - - -
- - -
- - -
- -
- -
- - -
- -
diff --git a/src/app/main/content/apps/dashboards/project/project.component.scss b/src/app/main/content/apps/dashboards/project/project.component.scss deleted file mode 100644 index 4e52524e..00000000 --- a/src/app/main/content/apps/dashboards/project/project.component.scss +++ /dev/null @@ -1,46 +0,0 @@ -#dashboard-project { - - md-sidenav-container { - - .center { - - > .header { - height: 160px; - min-height: 160px; - max-height: 160px; - - .selected-project { - background: rgba(0, 0, 0, 0.12); - color: #FFFFFF; - padding: 8px 16px; - height: 40px; - line-height: 24px; - font-size: 16px; - } - - .project-selector { - margin-left: 1px; - border-radius: 0; - background: rgba(0, 0, 0, 0.12); - - md-icon { - color: #FFFFFF; - } - } - } - - > .content { - - .mat-tab-label-container { - padding: 0 24px; - } - } - } - - .sidenav { - width: 250px !important; - min-width: 250px !important; - max-width: 250px !important; - } - } -} diff --git a/src/app/main/content/apps/dashboards/project/project.component.ts b/src/app/main/content/apps/dashboards/project/project.component.ts deleted file mode 100644 index 7ccf16ed..00000000 --- a/src/app/main/content/apps/dashboards/project/project.component.ts +++ /dev/null @@ -1,173 +0,0 @@ -import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core'; -import { ProjectsDashboardService } from './projects.service'; -import * as shape from 'd3-shape'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { Observable } from 'rxjs/Observable'; -import { DataSource } from '@angular/cdk'; - -@Component({ - selector : 'fuse-project', - templateUrl : './project.component.html', - styleUrls : ['./project.component.scss'], - encapsulation: ViewEncapsulation.None -}) -export class FuseProjectComponent implements OnInit, OnDestroy -{ - projects: any[]; - selectedProject: any; - - widgets: any; - widget5: any = {}; - widget6: any = {}; - widget7: any = {}; - widget8: any = {}; - widget9: any = {}; - widget11: any = {}; - - dateNow = Date.now(); - - constructor(private projectsDashboardService: ProjectsDashboardService) - { - this.projects = this.projectsDashboardService.projects; - - this.selectedProject = this.projects[0]; - - this.widgets = this.projectsDashboardService.widgets; - - /** - * Widget 5 - */ - this.widget5 = { - currentRange : 'TW', - xAxis : true, - yAxis : true, - gradient : false, - legend : false, - showXAxisLabel: false, - xAxisLabel : 'Days', - showYAxisLabel: false, - yAxisLabel : 'Isues', - scheme : { - domain: ['#42BFF7', '#C6ECFD', '#C7B42C', '#AAAAAA'] - }, - onSelect : (ev) => { - console.log(ev); - }, - supporting : { - currentRange : '', - xAxis : false, - yAxis : false, - gradient : false, - legend : false, - showXAxisLabel: false, - xAxisLabel : 'Days', - showYAxisLabel: false, - yAxisLabel : 'Isues', - scheme : { - domain: ['#42BFF7', '#C6ECFD', '#C7B42C', '#AAAAAA'] - }, - curve : shape.curveBasis - } - }; - - /** - * Widget 6 - */ - this.widget6 = { - currentRange : 'TW', - legend : false, - explodeSlices: false, - labels : true, - doughnut : true, - gradient : false, - scheme : { - domain: ['#f44336', '#9c27b0', '#03a9f4', '#e91e63'] - }, - onSelect : (ev) => { - console.log(ev); - } - }; - - /** - * Widget 7 - */ - this.widget7 = { - currentRange: 'T' - }; - - /** - * Widget 8 - */ - this.widget8 = { - legend : false, - explodeSlices: false, - labels : true, - doughnut : false, - gradient : false, - scheme : { - domain: ['#f44336', '#9c27b0', '#03a9f4', '#e91e63', '#ffc107'] - }, - onSelect : (ev) => { - console.log(ev); - } - }; - - /** - * Widget 9 - */ - this.widget9 = { - currentRange : 'TW', - xAxis : false, - yAxis : false, - gradient : false, - legend : false, - showXAxisLabel: false, - xAxisLabel : 'Days', - showYAxisLabel: false, - yAxisLabel : 'Isues', - scheme : { - domain: ['#42BFF7', '#C6ECFD', '#C7B42C', '#AAAAAA'] - }, - curve : shape.curveBasis - }; - - setInterval(() => { - this.dateNow = Date.now(); - }, 1000); - - } - - ngOnInit() - { - /** - * Widget 11 - */ - this.widget11.onContactsChanged = new BehaviorSubject({}); - this.widget11.onContactsChanged.next(this.widgets.widget11.table.rows); - this.widget11.dataSource = new FilesDataSource(this.widget11); - } - - ngOnDestroy() - { - } - -} - -export class FilesDataSource extends DataSource -{ - constructor(private widget11) - { - super(); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable - { - return this.widget11.onContactsChanged; - } - - disconnect() - { - } -} - diff --git a/src/app/main/content/apps/dashboards/project/project.module.ts b/src/app/main/content/apps/dashboards/project/project.module.ts deleted file mode 100644 index c9d229e9..00000000 --- a/src/app/main/content/apps/dashboards/project/project.module.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseProjectComponent } from './project.component'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { ProjectsDashboardService } from './projects.service'; -import { FuseWidgetModule } from '../../../../../core/components/widget/widget.module'; -import { NgxChartsModule } from '@swimlane/ngx-charts'; - -const routes: Routes = [ - { - path : 'apps/dashboards/project', - component: FuseProjectComponent, - resolve : { - data: ProjectsDashboardService - } - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes), - FuseWidgetModule, - NgxChartsModule - ], - declarations: [ - FuseProjectComponent - ], - providers : [ - ProjectsDashboardService - ] -}) -export class ProjectModule -{ -} - diff --git a/src/app/main/content/apps/dashboards/project/projects.service.ts b/src/app/main/content/apps/dashboards/project/projects.service.ts deleted file mode 100644 index f267d028..00000000 --- a/src/app/main/content/apps/dashboards/project/projects.service.ts +++ /dev/null @@ -1,62 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; - -@Injectable() -export class ProjectsDashboardService implements Resolve -{ - projects: any[]; - widgets: any[]; - - constructor( - private http: Http - ) - { - } - - /** - * Resolve - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - - return new Promise((resolve, reject) => { - - Promise.all([ - this.getProjects(), - this.getWidgets() - ]).then( - () => { - resolve(); - }, - reject - ); - }); - } - - getProjects(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/projects-dashboard-projects') - .subscribe(response => { - this.projects = response.json().data; - resolve(response.json().data); - }, reject); - }); - } - - getWidgets(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/projects-dashboard-widgets') - .subscribe(response => { - this.widgets = response.json().data; - resolve(response.json().data); - }, reject); - }); - } -} diff --git a/src/app/main/content/apps/file-manager/file-list/file-list.component.html b/src/app/main/content/apps/file-manager/file-list/file-list.component.html deleted file mode 100644 index fe89ad27..00000000 --- a/src/app/main/content/apps/file-manager/file-list/file-list.component.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - Name - {{row.name}} - - - - - Type - {{row.type}} - - - - - Owner - {{row.owner}} - - - - - Size - {{row.size === '' ? '-': row.size}} - - - - - Modified - {{row.modified}} - - - - - - - - - - - - - - diff --git a/src/app/main/content/apps/file-manager/file-list/file-list.component.scss b/src/app/main/content/apps/file-manager/file-list/file-list.component.scss deleted file mode 100644 index 6d735122..00000000 --- a/src/app/main/content/apps/file-manager/file-list/file-list.component.scss +++ /dev/null @@ -1,24 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - width: 100%; - - .mat-table { - background: transparent; - box-shadow: none; - - .mat-row { - position: relative; - cursor: pointer; - - .mat-cell { - - &.mat-column-icon { - } - - &.mat-column-detail-button { - } - } - } - } -} diff --git a/src/app/main/content/apps/file-manager/file-list/file-list.component.ts b/src/app/main/content/apps/file-manager/file-list/file-list.component.ts deleted file mode 100644 index a0d8dca7..00000000 --- a/src/app/main/content/apps/file-manager/file-list/file-list.component.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { FileManagerService } from '../file-manager.service'; -import { DataSource } from '@angular/cdk'; -import { Observable } from 'rxjs/Observable'; - -@Component({ - selector : 'fuse-file-list', - templateUrl: './file-list.component.html', - styleUrls : ['./file-list.component.scss'] -}) -export class FuseFileManagerFileListComponent implements OnInit -{ - files: any; - dataSource: FilesDataSource | null; - displayedColumns = ['icon', 'name', 'type', 'owner', 'size', 'modified', 'detail-button']; - selected: any; - - constructor(private fileManagerService: FileManagerService) - { - this.fileManagerService.onFilesChanged.subscribe(files => { - this.files = files; - }); - this.fileManagerService.onFileSelected.subscribe(selected => { - this.selected = selected; - }); - } - - ngOnInit() - { - this.dataSource = new FilesDataSource(this.fileManagerService); - } - - onSelect(selected) - { - this.fileManagerService.onFileSelected.next(selected); - } -} - -export class FilesDataSource extends DataSource -{ - constructor(private fileManagerService: FileManagerService) - { - super(); - } - - /** Connect function called by the table to retrieve one stream containing the data to render. */ - connect(): Observable - { - return this.fileManagerService.onFilesChanged; - } - - disconnect() - { - } -} diff --git a/src/app/main/content/apps/file-manager/file-manager.component.html b/src/app/main/content/apps/file-manager/file-manager.component.html deleted file mode 100644 index 40926094..00000000 --- a/src/app/main/content/apps/file-manager/file-manager.component.html +++ /dev/null @@ -1,77 +0,0 @@ -
- - - - - - - - - - -
- - -
- - -
- -
- -
- -
- -
-
- - - - - - - -
- - -
- - -
- - - -
- -
- - -
- - - - - - - - -
-
diff --git a/src/app/main/content/apps/file-manager/file-manager.component.scss b/src/app/main/content/apps/file-manager/file-manager.component.scss deleted file mode 100644 index 7e0555a0..00000000 --- a/src/app/main/content/apps/file-manager/file-manager.component.scss +++ /dev/null @@ -1,76 +0,0 @@ -@import "src/app/core/scss/fuse"; - -#file-manager { - - md-sidenav-container { - - .sidenav { - width: 320px !important; - min-width: 320px !important; - max-width: 320px !important; - - &.left-sidenav { - } - - &.right-sidenav { - @include media-breakpoint('gt-md') { - z-index: 0; - } - } - } - - .mat-sidenav-content { - z-index: 1; - - .center { - - .header { - position: relative; - height: 160px; - min-height: 160px; - max-height: 160px; - - @include media-breakpoint-down('sm'){ - height: 120px; - min-height: 120px; - max-height: 120px; - } - - .add-file-button { - position: absolute; - bottom: -28px; - left: 16px; - z-index: 999; - } - } - - .content { - } - } - } - } - - .type-icon { - - &.folder { - &:before { - content: 'folder'; - color: #FFB300; - } - } - - &.document { - &:before { - content: 'insert_drive_file'; - color: #1565C0; - } - } - - &.spreadsheet { - &:before { - content: 'insert_chart'; - color: #4CAF50; - } - } - } -} diff --git a/src/app/main/content/apps/file-manager/file-manager.component.ts b/src/app/main/content/apps/file-manager/file-manager.component.ts deleted file mode 100644 index 0fd30a5f..00000000 --- a/src/app/main/content/apps/file-manager/file-manager.component.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; -import { FileManagerService } from './file-manager.service'; - -@Component({ - selector : 'fuse-file-manager', - templateUrl : './file-manager.component.html', - styleUrls : ['./file-manager.component.scss'], - encapsulation: ViewEncapsulation.None -}) -export class FuseFileManagerComponent implements OnInit -{ - - selected: any; - pathArr: string[]; - - constructor(private fileManagerService: FileManagerService) - { - - } - - ngOnInit() - { - this.fileManagerService.onFileSelected.subscribe(selected => { - this.selected = selected; - this.pathArr = selected.location.split('>'); - }); - } - -} diff --git a/src/app/main/content/apps/file-manager/file-manager.module.ts b/src/app/main/content/apps/file-manager/file-manager.module.ts deleted file mode 100644 index b5676630..00000000 --- a/src/app/main/content/apps/file-manager/file-manager.module.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseFileManagerComponent } from './file-manager.component'; -import { FileManagerService } from './file-manager.service'; -import { FuseFileManagerFileListComponent } from './file-list/file-list.component'; -import { FuseFileManagerMainSidenavComponent } from './sidenavs/main/main.component'; -import { FuseFileManagerDetailsSidenavComponent } from './sidenavs/details/details.component'; - -const routes: Routes = [ - { - path : '**', - component: FuseFileManagerComponent, - children : [], - resolve : { - files: FileManagerService - } - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations: [ - FuseFileManagerComponent, - FuseFileManagerFileListComponent, - FuseFileManagerMainSidenavComponent, - FuseFileManagerDetailsSidenavComponent - ], - providers : [ - FileManagerService - ] -}) -export class FuseFileManagerModule -{ -} diff --git a/src/app/main/content/apps/file-manager/file-manager.service.ts b/src/app/main/content/apps/file-manager/file-manager.service.ts deleted file mode 100644 index d2a72364..00000000 --- a/src/app/main/content/apps/file-manager/file-manager.service.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; - -@Injectable() -export class FileManagerService implements Resolve -{ - onFilesChanged: BehaviorSubject = new BehaviorSubject({}); - onFileSelected: BehaviorSubject = new BehaviorSubject({}); - - constructor(private http: Http) - { - } - - /** - * The File Manager App Main Resolver - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - - return new Promise((resolve, reject) => { - - Promise.all([ - this.getFiles() - ]).then( - ([files]) => { - resolve(); - }, - reject - ); - }); - } - - getFiles(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/file-manager') - .subscribe(response => { - this.onFilesChanged.next(response.json().data); - this.onFileSelected.next(response.json().data[0]); - resolve(response.json().data); - }, reject); - }); - } - -} diff --git a/src/app/main/content/apps/file-manager/sidenavs/details/details.component.html b/src/app/main/content/apps/file-manager/sidenavs/details/details.component.html deleted file mode 100644 index 77979f25..00000000 --- a/src/app/main/content/apps/file-manager/sidenavs/details/details.component.html +++ /dev/null @@ -1,83 +0,0 @@ - -
- -
- - - - - - -
- -
-
{{selected.name}}
-
- Edited - : {{selected.modified}} -
-
-
- - - -
- -
- -
- -
- -
- Available Offline -
- -
Info
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Type{{selected.type}}
Size{{selected.size === '' ? '-': selected.size}}
Location{{selected.location}}
Owner{{selected.owner}}
Modified{{selected.modified}}
Opened{{selected.opened}}
Created{{selected.created}}
-
- -
- diff --git a/src/app/main/content/apps/file-manager/sidenavs/details/details.component.scss b/src/app/main/content/apps/file-manager/sidenavs/details/details.component.scss deleted file mode 100644 index 26ea45b6..00000000 --- a/src/app/main/content/apps/file-manager/sidenavs/details/details.component.scss +++ /dev/null @@ -1,73 +0,0 @@ -:host { - display: flex; - flex-direction: column; - flex: 1 0 auto; - height: 100%; - - > .header { - flex: 0 1 auto; - height: 160px; - min-height: 160px; - max-height: 160px; - } - - > .content { - flex: 1; - - .file-details { - - .preview { - height: 240px; - } - - .offline-switch { - padding-bottom: 16px; - font-weight: 500; - } - - .title { - padding: 16px 0; - } - - table { - width: 100%; - text-align: left; - - tr { - - th, td { - padding: 16px 0; - } - - th { - - } - - td { - - } - - &.type { - text-transform: capitalize; - } - - &.size { - } - - &.location { - } - - &.owner { - text-transform: capitalize; - } - - &.opened { - } - - &.created { - } - } - } - } - } -} diff --git a/src/app/main/content/apps/file-manager/sidenavs/details/details.component.ts b/src/app/main/content/apps/file-manager/sidenavs/details/details.component.ts deleted file mode 100644 index cb08fb7b..00000000 --- a/src/app/main/content/apps/file-manager/sidenavs/details/details.component.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { FileManagerService } from '../../file-manager.service'; - -@Component({ - selector : 'fuse-file-manager-details-sidenav', - templateUrl: './details.component.html', - styleUrls : ['./details.component.scss'] -}) -export class FuseFileManagerDetailsSidenavComponent implements OnInit -{ - - selected: any; - - constructor(private fileManagerService: FileManagerService) - { - - } - - ngOnInit() - { - this.fileManagerService.onFileSelected.subscribe(selected => { - this.selected = selected; - }); - } - -} diff --git a/src/app/main/content/apps/file-manager/sidenavs/main/main.component.html b/src/app/main/content/apps/file-manager/sidenavs/main/main.component.html deleted file mode 100644 index d640990a..00000000 --- a/src/app/main/content/apps/file-manager/sidenavs/main/main.component.html +++ /dev/null @@ -1,54 +0,0 @@ - -
- - - -
- - - - - diff --git a/src/app/main/content/apps/file-manager/sidenavs/main/main.component.scss b/src/app/main/content/apps/file-manager/sidenavs/main/main.component.scss deleted file mode 100644 index 678b3c81..00000000 --- a/src/app/main/content/apps/file-manager/sidenavs/main/main.component.scss +++ /dev/null @@ -1,11 +0,0 @@ -:host { - display: flex; - flex-direction: column; - flex: 1 0 auto; - height: 100%; - - > .header { - flex: 0 1 auto; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - } -} diff --git a/src/app/main/content/apps/file-manager/sidenavs/main/main.component.ts b/src/app/main/content/apps/file-manager/sidenavs/main/main.component.ts deleted file mode 100644 index e865b97f..00000000 --- a/src/app/main/content/apps/file-manager/sidenavs/main/main.component.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector : 'fuse-file-manager-main-sidenav', - templateUrl: './main.component.html', - styleUrls : ['./main.component.scss'] -}) -export class FuseFileManagerMainSidenavComponent implements OnInit -{ - selected: any; - - constructor() - { - - } - - ngOnInit() - { - } - -} diff --git a/src/app/main/content/apps/mail/dialogs/compose/compose.component.html b/src/app/main/content/apps/mail/dialogs/compose/compose.component.html deleted file mode 100644 index 9f8be19d..00000000 --- a/src/app/main/content/apps/mail/dialogs/compose/compose.component.html +++ /dev/null @@ -1,108 +0,0 @@ - -
- New Message - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- attachment-2.doc - (12 Kb) -
- - -
- -
-
- attachment-1.jpg - (350 Kb) -
- - -
-
-
-
- -
-
- - - -
- - -
diff --git a/src/app/main/content/apps/mail/dialogs/compose/compose.component.scss b/src/app/main/content/apps/mail/dialogs/compose/compose.component.scss deleted file mode 100644 index ef5d242a..00000000 --- a/src/app/main/content/apps/mail/dialogs/compose/compose.component.scss +++ /dev/null @@ -1,32 +0,0 @@ -:host { - display: flex; - flex-direction: column; -} - -.mail-compose-dialog { - .mat-dialog-container { - padding: 0; - width: 720px; - - .attachment-list { - font-size: 13px; - padding-top: 16px; - - .attachment { - background-color: rgba(0, 0, 0, 0.08); - border: 1px solid rgba(0, 0, 0, 0.16); - padding-left: 16px; - margin-top: 8px; - border-radius: 2px; - - .filename { - font-weight: 500; - } - - &:last-child { - margin-bottom: 0; - } - } - } - } -} diff --git a/src/app/main/content/apps/mail/dialogs/compose/compose.component.ts b/src/app/main/content/apps/mail/dialogs/compose/compose.component.ts deleted file mode 100644 index 647cabdd..00000000 --- a/src/app/main/content/apps/mail/dialogs/compose/compose.component.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { Component, Inject, OnInit, ViewEncapsulation } from '@angular/core'; -import { MD_DIALOG_DATA, MdDialogRef } from '@angular/material'; -import { FormControl, FormGroup } from '@angular/forms'; - -@Component({ - selector : 'fuse-mail-compose', - templateUrl : './compose.component.html', - styleUrls : ['./compose.component.scss'], - encapsulation: ViewEncapsulation.None -}) -export class FuseMailComposeDialogComponent implements OnInit -{ - composeForm: FormGroup; - - constructor( - public dialogRef: MdDialogRef, - @Inject(MD_DIALOG_DATA) private data: any - ) - { - this.composeForm = this.createComposeForm(); - } - - ngOnInit() - { - } - - createComposeForm() - { - return new FormGroup({ - from : new FormControl({ - value : 'johndoe@creapond.com', - disabled: true - }), - to : new FormControl(''), - cc : new FormControl(''), - bcc : new FormControl(''), - subject: new FormControl(''), - message: new FormControl('') - }); - } - -} diff --git a/src/app/main/content/apps/mail/mail-details/mail-details.component.html b/src/app/main/content/apps/mail/mail-details/mail-details.component.html deleted file mode 100644 index 0927817a..00000000 --- a/src/app/main/content/apps/mail/mail-details/mail-details.component.html +++ /dev/null @@ -1,137 +0,0 @@ -
- email - Select a message to read -
- -
- -
- -
-
{{mail.subject}}
- -
-
-
-
{{labels | getById:labelId:'title'}}
-
-
- -
- -
- - - -
-
- -
- -
- -
- -
- -
- {{mail.from.name}} - -
- {{mail.from.name[0]}} -
-
- -
- -
- {{mail.from.name}} -
- -
-
to
-
{{mail.to[0].name}}
-
-
-
- - - Show Details - Hide Details - - -
- -
- From: - To: - Date: -
- -
- {{mail.from.email}} - {{mail.to[0].email}} - {{mail.time}} -
-
-
- - - - - - - - - - -
- -
- -
- -
- -
- Attachments - ({{mail.attachments.length}}) -
- -
- -
- - - -
- View - Download -
({{attachment.size}})
-
- -
-
-
-
diff --git a/src/app/main/content/apps/mail/mail-details/mail-details.component.scss b/src/app/main/content/apps/mail/mail-details/mail-details.component.scss deleted file mode 100644 index eaabb60a..00000000 --- a/src/app/main/content/apps/mail/mail-details/mail-details.component.scss +++ /dev/null @@ -1,118 +0,0 @@ -@import 'src/app/core/scss/fuse'; - -:host { - display: flex; - flex-direction: column; - flex: 1; - overflow-y: auto; - padding: 24px; - - .select-message-text { - font-size: 24px; - font-weight: 300; - } - - .mail-header { - padding-bottom: 16px; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - - .actions { - min-width: 88px; - } - - .subject { - font-size: 17px; - font-weight: 500; - } - - .label { - font-size: 11px; - border-radius: 2px; - margin: 4px 4px 4px 0; - padding: 3px 8px; - background-color: rgba(0, 0, 0, 0.08); - - .label-color { - width: 8px; - height: 8px; - margin-right: 8px; - border-radius: 50%; - } - } - } - - .mail-content { - padding: 24px 0; - - .to { - color: rgba(0, 0, 0, 0.54); - - .to-text { - margin-right: 4px; - text-transform: lowercase; - } - } - - .info { - padding-bottom: 16px; - - .avatar { - margin-right: 16px; - background-color: mat-color($accent); - } - - .name { - margin-right: 8px; - font-weight: 500; - } - - .toggle-details { - user-select: none; - text-decoration: underline; - padding-top: 16px; - cursor: pointer; - font-weight: 500; - } - - .details { - padding-top: 8px; - - .title { - font-weight: 500; - margin-right: 6px; - } - - .detail { - color: rgba(0, 0, 0, 0.54); - } - } - - } - } - - .mail-attachments { - padding: 24px 0; - border-top: 1px solid rgba(0, 0, 0, 0.12); - - .title { - margin-bottom: 16px; - font-weight: 500; - } - - .attachment { - - .preview { - width: 100px; - margin: 0 16px 8px 0; - } - - .link { - margin-bottom: 2px; - } - - .size { - font-size: 11px; - } - } - } -} diff --git a/src/app/main/content/apps/mail/mail-details/mail-details.component.ts b/src/app/main/content/apps/mail/mail-details/mail-details.component.ts deleted file mode 100644 index ca3d9165..00000000 --- a/src/app/main/content/apps/mail/mail-details/mail-details.component.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { MailService } from '../mail.service'; -import { Mail } from '../mail.model'; -import { Subscription } from 'rxjs/Subscription'; - -@Component({ - selector : 'fuse-mail-details', - templateUrl: './mail-details.component.html', - styleUrls : ['./mail-details.component.scss'] -}) -export class FuseMailDetailsComponent implements OnInit, OnDestroy -{ - mail: Mail; - labels: any[]; - showDetails = false; - - onCurrentMailChanged: Subscription; - onLabelsChanged: Subscription; - - constructor( - private mailService: MailService - ) - { - } - - ngOnInit() - { - // Subscribe to update the current mail - this.onCurrentMailChanged = - this.mailService.onCurrentMailChanged - .subscribe(currentMail => { - this.mail = currentMail; - }); - - // Subscribe to update on label change - this.onLabelsChanged = - this.mailService.onLabelsChanged - .subscribe(labels => { - this.labels = labels; - }); - } - - ngOnDestroy() - { - this.onCurrentMailChanged.unsubscribe(); - } - - toggleStar(event) - { - event.stopPropagation(); - - this.mail.toggleStar(); - - this.mailService.updateMail(this.mail); - } - - toggleImportant(event) - { - event.stopPropagation(); - - this.mail.toggleImportant(); - - this.mailService.updateMail(this.mail); - } - -} diff --git a/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.html b/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.html deleted file mode 100644 index 59a8858d..00000000 --- a/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.html +++ /dev/null @@ -1,52 +0,0 @@ -
- - - -
- -
- - {{mail.from?.name}} - -
{{mail.from?.name[0]}}
- - {{mail.from?.name}} - - attachment -
- -
- {{mail.subject}} -
- -
- - {{mail.message | htmlToPlaintext | slice:0:180}}{{mail.message.length > 180 ? '...' : ''}} -
- -
-
-
-
{{labels | getById:labelId:'title'}}
-
-
-
- -
- -
{{mail.time}}
- -
- - - -
-
-
diff --git a/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.scss b/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.scss deleted file mode 100644 index 0e58acde..00000000 --- a/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.scss +++ /dev/null @@ -1,124 +0,0 @@ -@import 'src/app/core/scss/fuse'; - -:host { - flex-shrink: 0; - position: relative; - padding: 16px 24px; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - cursor: pointer; - - &.unread { - background: #FFFFFF; - - .info { - - .name, - .subject { - font-weight: 700; - } - - .message { - } - - .labels { - background: #FFFFFF; - } - } - } - - &.selected { - background: #FFF8E1; - - .info { - - .message { - - } - - .labels { - background: #FFF8E1; - } - } - } - - &.current-mail { - background: #E3F2FD; - - .info { - - .message { - } - .labels { - background: #E3F2FD; - } - } - } - - .info { - overflow: hidden; - width: 0; - margin: 0 16px; - position: relative; - - .name { - font-size: 15px; - font-weight: 500; - padding-bottom: 8px; - - .avatar { - min-width: 32px; - width: 32px; - height: 32px; - line-height: 32px; - background-color: mat-color($accent); - } - } - - .subject { - - } - - .message { - position: relative; - color: rgba(0, 0, 0, 0.54); - } - - .labels { - position: absolute; - background: #FAFAFA; - bottom: 0; - right: 0; - padding-left: 6px; - - .label { - font-size: 11px; - border-radius: 2px; - margin: 0 4px 0 0; - padding: 3px 8px; - background-color: rgba(0, 0, 0, 0.08); - - .label-color { - width: 8px; - height: 8px; - margin-right: 8px; - border-radius: 50%; - } - } - } - } - - .time { - margin: 0 8px 6px 8px; - } - - .actions { - - .md-icon-button { - margin: 0; - padding: 0; - width: 32px; - height: 32px; - } - } - -} diff --git a/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.ts b/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.ts deleted file mode 100644 index 4d6d2762..00000000 --- a/src/app/main/content/apps/mail/mail-list/mail-list-item/mail-list-item.component.ts +++ /dev/null @@ -1,93 +0,0 @@ -import { Component, HostBinding, Input, OnDestroy, OnInit } from '@angular/core'; -import { Mail } from '../../mail.model'; -import { MailService } from '../../mail.service'; -import { Subscription } from 'rxjs/Subscription'; - -@Component({ - selector : 'fuse-mail-list-item', - templateUrl: './mail-list-item.component.html', - styleUrls : ['./mail-list-item.component.scss'] -}) -export class FuseMailListItemComponent implements OnInit, OnDestroy -{ - @Input() mail: Mail; - labels: any[]; - @HostBinding('class.selected') selected: boolean; - - onSelectedMailsChanged: Subscription; - onLabelsChanged: Subscription; - - constructor( - private mailService: MailService - ) - { - } - - ngOnInit() - { - // Set the initial values - this.mail = new Mail(this.mail); - - // Subscribe to update on selected mail change - this.onSelectedMailsChanged = - this.mailService.onSelectedMailsChanged - .subscribe(selectedMails => { - this.selected = false; - - if ( selectedMails.length > 0 ) - { - for ( const mail of selectedMails ) - { - if ( mail.id === this.mail.id ) - { - this.selected = true; - break; - } - } - } - }); - - // Subscribe to update on label change - this.onLabelsChanged = - this.mailService.onLabelsChanged - .subscribe(labels => { - this.labels = labels; - }); - } - - ngOnDestroy() - { - this.onSelectedMailsChanged.unsubscribe(); - } - - onSelectedChange() - { - this.mailService.toggleSelectedMail(this.mail.id); - } - - /** - * Toggle star - * @param event - */ - toggleStar(event) - { - event.stopPropagation(); - - this.mail.toggleStar(); - - this.mailService.updateMail(this.mail); - } - - /** - * Toggle Important - * @param event - */ - toggleImportant(event) - { - event.stopPropagation(); - - this.mail.toggleImportant(); - - this.mailService.updateMail(this.mail); - } -} diff --git a/src/app/main/content/apps/mail/mail-list/mail-list.component.html b/src/app/main/content/apps/mail/mail-list/mail-list.component.html deleted file mode 100644 index 713a359c..00000000 --- a/src/app/main/content/apps/mail/mail-list/mail-list.component.html +++ /dev/null @@ -1,7 +0,0 @@ -
- There are no messages! -
- - - diff --git a/src/app/main/content/apps/mail/mail-list/mail-list.component.scss b/src/app/main/content/apps/mail/mail-list/mail-list.component.scss deleted file mode 100644 index 6451a90e..00000000 --- a/src/app/main/content/apps/mail/mail-list/mail-list.component.scss +++ /dev/null @@ -1,14 +0,0 @@ -:host { - position: relative; - display: flex; - flex-direction: column; - flex: 1; - overflow-y: auto; - padding: 0; - border-right: 1px solid rgba(0, 0, 0, .12); - - .no-messages-text { - font-size: 24px; - font-weight: 300; - } -} diff --git a/src/app/main/content/apps/mail/mail-list/mail-list.component.ts b/src/app/main/content/apps/mail/mail-list/mail-list.component.ts deleted file mode 100644 index 1059f2be..00000000 --- a/src/app/main/content/apps/mail/mail-list/mail-list.component.ts +++ /dev/null @@ -1,105 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { Mail } from '../mail.model'; -import { ActivatedRoute } from '@angular/router'; -import { MailService } from '../mail.service'; -import { Location } from '@angular/common'; -import { Subscription } from 'rxjs/Subscription'; - -@Component({ - selector : 'fuse-mail-list', - templateUrl: './mail-list.component.html', - styleUrls : ['./mail-list.component.scss'] -}) -export class FuseMailListComponent implements OnInit, OnDestroy -{ - mails: Mail[]; - currentMail: Mail; - - onMailsChanged: Subscription; - onCurrentMailChanged: Subscription; - - constructor( - private route: ActivatedRoute, - private mailService: MailService, - private location: Location - ) - { - } - - ngOnInit() - { - // Subscribe to update mails on changes - this.onMailsChanged = - this.mailService.onMailsChanged - .subscribe(mails => { - this.mails = mails; - }); - - // Subscribe to update current mail on changes - this.onCurrentMailChanged = - this.mailService.onCurrentMailChanged - .subscribe(currentMail => { - if ( !currentMail ) - { - // Set the current mail id to null to deselect the current mail - this.currentMail = null; - - // Handle the location changes - const labelHandle = this.route.snapshot.params.labelHandle, - filterHandle = this.route.snapshot.params.filterHandle, - folderHandle = this.route.snapshot.params.folderHandle; - - if ( labelHandle ) - { - this.location.go('apps/mail/label/' + labelHandle); - } - else if ( filterHandle ) - { - this.location.go('apps/mail/filter/' + filterHandle); - } - else - { - this.location.go('apps/mail/' + folderHandle); - } - } - else - { - this.currentMail = currentMail; - } - }); - } - - ngOnDestroy() - { - this.onMailsChanged.unsubscribe(); - this.onCurrentMailChanged.unsubscribe(); - } - - /** - * Read mail - * @param mailId - */ - readMail(mailId) - { - const labelHandle = this.route.snapshot.params.labelHandle, - filterHandle = this.route.snapshot.params.filterHandle, - folderHandle = this.route.snapshot.params.folderHandle; - - if ( labelHandle ) - { - this.location.go('apps/mail/label/' + labelHandle + '/' + mailId); - } - else if ( filterHandle ) - { - this.location.go('apps/mail/filter/' + filterHandle + '/' + mailId); - } - else - { - this.location.go('apps/mail/' + folderHandle + '/' + mailId); - } - - // Set current mail - this.mailService.setCurrentMail(mailId); - } - -} diff --git a/src/app/main/content/apps/mail/mail.component.html b/src/app/main/content/apps/mail/mail.component.html deleted file mode 100644 index b4bbc8ee..00000000 --- a/src/app/main/content/apps/mail/mail.component.html +++ /dev/null @@ -1,114 +0,0 @@ -
- - -
- - - - - - - - - - - -
- - -
- -
- - - - -
- -
- - - -
- - -
- -
- - - - - - - - - - - - - - -
- - - - - - - - - - - - -
- -
- -
-
- - - -
- - - - - -
- - -
- - -
- - -
- -
diff --git a/src/app/main/content/apps/mail/mail.component.scss b/src/app/main/content/apps/mail/mail.component.scss deleted file mode 100644 index b29cdab3..00000000 --- a/src/app/main/content/apps/mail/mail.component.scss +++ /dev/null @@ -1,69 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - width: 100%; - - .center { - - .header { - - .search-wrapper { - @include mat-elevation(7); - - .sidenav-toggle { - margin: 0; - width: 56px; - height: 56px; - background: #FFF; - border-radius: 0; - border-right: 1px solid rgba(0, 0, 0, .12); - } - - .search { - width: 100%; - height: 56px; - line-height: 56px; - padding: 18px; - - input { - height: 56px; - padding-left: 16px; - color: rgba(0, 0, 0, 0.54); - border: none; - outline: none; - } - } - } - } - - .content-card { - - @include media-breakpoint(xs) { - - fuse-mail-list, - fuse-mail-details { - flex: 1 0 100%; - } - - fuse-mail-details { - display: none !important; - } - - &.current-mail-selected { - - .content { - - fuse-mail-list { - display: none !important; - } - - fuse-mail-details { - display: flex !important; - } - } - } - } - } - } -} - diff --git a/src/app/main/content/apps/mail/mail.component.ts b/src/app/main/content/apps/mail/mail.component.ts deleted file mode 100644 index cbee6a70..00000000 --- a/src/app/main/content/apps/mail/mail.component.ts +++ /dev/null @@ -1,123 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { MailService } from './mail.service'; -import { Subscription } from 'rxjs/Subscription'; -import { FormControl } from '@angular/forms'; -import { Mail } from './mail.model'; - -@Component({ - selector : 'fuse-mail', - templateUrl: './mail.component.html', - styleUrls : ['./mail.component.scss'] -}) -export class FuseMailComponent implements OnInit, OnDestroy -{ - hasSelectedMails: boolean; - isIndeterminate: boolean; - folders: any[]; - filters: any[]; - labels: any[]; - searchInput: FormControl; - currentMail: Mail; - - onSelectedMailsChanged: Subscription; - onFoldersChanged: Subscription; - onFiltersChanged: Subscription; - onLabelsChanged: Subscription; - onCurrentMailChanged: Subscription; - - constructor(private mailService: MailService) - { - this.searchInput = new FormControl(''); - } - - ngOnInit() - { - this.onSelectedMailsChanged = - this.mailService.onSelectedMailsChanged - .subscribe(selectedMails => { - - setTimeout(() => { - this.hasSelectedMails = selectedMails.length > 0; - this.isIndeterminate = (selectedMails.length !== this.mailService.mails.length && selectedMails.length > 0); - }, 0); - }); - - this.onFoldersChanged = - this.mailService.onFoldersChanged - .subscribe(folders => { - this.folders = this.mailService.folders; - }); - - this.onFiltersChanged = - this.mailService.onFiltersChanged - .subscribe(folders => { - this.filters = this.mailService.filters; - }); - - this.onLabelsChanged = - this.mailService.onLabelsChanged - .subscribe(labels => { - this.labels = this.mailService.labels; - }); - - this.onCurrentMailChanged = - this.mailService.onCurrentMailChanged - .subscribe(currentMail => { - if ( !currentMail ) - { - this.currentMail = null; - } - else - { - this.currentMail = currentMail; - } - }); - - /*this.searchInput.valueChanges - .debounceTime(300) - .distinctUntilChanged() - .subscribe(searchText => { - this.mailService.onSearchTextChanged.next(searchText); - });*/ - } - - ngOnDestroy() - { - this.onSelectedMailsChanged.unsubscribe(); - this.onFoldersChanged.unsubscribe(); - this.onFiltersChanged.unsubscribe(); - this.onLabelsChanged.unsubscribe(); - this.onCurrentMailChanged.unsubscribe(); - - } - - toggleSelectAll() - { - this.mailService.toggleSelectAll(); - } - - selectMails(filterParameter?, filterValue?) - { - this.mailService.selectMails(filterParameter, filterValue); - } - - deselectMails() - { - this.mailService.deselectMails(); - } - - deSelectCurrentMail() - { - this.mailService.onCurrentMailChanged.next(null); - } - - toggleLabelOnSelectedMails(labelId) - { - this.mailService.toggleLabelOnSelectedMails(labelId); - } - - setFolderOnSelectedMails(folderId) - { - this.mailService.setFolderOnSelectedMails(folderId); - } -} diff --git a/src/app/main/content/apps/mail/mail.model.ts b/src/app/main/content/apps/mail/mail.model.ts deleted file mode 100644 index 42ff6cf5..00000000 --- a/src/app/main/content/apps/mail/mail.model.ts +++ /dev/null @@ -1,56 +0,0 @@ -export class Mail -{ - id: string; - from: { - name: string, - avatar: string, - email: string - }; - to: { - name: string, - email: string - }[]; - subject: string; - message: string; - time: string; - read: boolean; - starred: boolean; - important: boolean; - hasAttachments: boolean; - attachments: { - type: string, - fileName: string, - preview: string, - url: string, - size: string - }[]; - labels: string[]; - folder: string; - - constructor(mail) - { - this.id = mail.id; - this.from = mail.from; - this.to = mail.to; - this.subject = mail.subject; - this.message = mail.message; - this.time = mail.time; - this.read = mail.read; - this.starred = mail.starred; - this.important = mail.important; - this.hasAttachments = mail.hasAttachments; - this.attachments = mail.attachments; - this.labels = mail.labels; - this.folder = mail.folder; - } - - toggleStar() - { - this.starred = !this.starred; - } - - toggleImportant() - { - this.important = !this.important; - } -} diff --git a/src/app/main/content/apps/mail/mail.module.ts b/src/app/main/content/apps/mail/mail.module.ts deleted file mode 100644 index 9c202bf2..00000000 --- a/src/app/main/content/apps/mail/mail.module.ts +++ /dev/null @@ -1,81 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseMailComponent } from './mail.component'; -import { FuseMailMainSidenavComponent } from './sidenavs/main/main-sidenav.component'; -import { FuseMailListItemComponent } from './mail-list/mail-list-item/mail-list-item.component'; -import { FuseMailListComponent } from './mail-list/mail-list.component'; -import { FuseMailDetailsComponent } from './mail-details/mail-details.component'; -import { MailService } from './mail.service'; -import { FuseMailComposeDialogComponent } from './dialogs/compose/compose.component'; - -const routes: Routes = [ - { - path : 'label/:labelHandle', - component: FuseMailComponent, - resolve : { - mail: MailService - } - }, - { - path : 'label/:labelHandle/:mailId', - component: FuseMailComponent, - resolve : { - mail: MailService - } - }, - { - path : 'filter/:filterHandle', - component: FuseMailComponent, - resolve : { - mail: MailService - } - }, - { - path : 'filter/:filterHandle/:mailId', - component: FuseMailComponent, - resolve : { - mail: MailService - } - }, - { - path : ':folderHandle', - component: FuseMailComponent, - resolve : { - mail: MailService - } - }, - { - path : ':folderHandle/:mailId', - component: FuseMailComponent, - resolve : { - mail: MailService - } - }, - { - path : '**', - redirectTo: 'inbox' - } -]; - -@NgModule({ - declarations : [ - FuseMailComponent, - FuseMailListComponent, - FuseMailListItemComponent, - FuseMailDetailsComponent, - FuseMailMainSidenavComponent, - FuseMailComposeDialogComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - providers : [ - MailService - ], - entryComponents: [FuseMailComposeDialogComponent] -}) -export class FuseMailModule -{ -} diff --git a/src/app/main/content/apps/mail/mail.service.ts b/src/app/main/content/apps/mail/mail.service.ts deleted file mode 100644 index d789da52..00000000 --- a/src/app/main/content/apps/mail/mail.service.ts +++ /dev/null @@ -1,403 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { Mail } from './mail.model'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { FuseUtils } from 'app/core/fuseUtils'; - -@Injectable() -export class MailService implements Resolve -{ - mails: Mail[]; - selectedMails: Mail[]; - currentMail: Mail; - searchText = ''; - - folders: any[]; - filters: any[]; - labels: any[]; - routeParams: any; - - onMailsChanged: BehaviorSubject = new BehaviorSubject([]); - onSelectedMailsChanged: BehaviorSubject = new BehaviorSubject([]); - onCurrentMailChanged: BehaviorSubject = new BehaviorSubject([]); - - onFoldersChanged: BehaviorSubject = new BehaviorSubject([]); - onFiltersChanged: BehaviorSubject = new BehaviorSubject([]); - onLabelsChanged: BehaviorSubject = new BehaviorSubject([]); - onSearchTextChanged: BehaviorSubject = new BehaviorSubject(''); - - constructor(private http: Http) - { - this.selectedMails = []; - } - - /** - * Resolve - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - this.routeParams = route.params; - - return new Promise((resolve, reject) => { - Promise.all([ - this.getFolders(), - this.getFilters(), - this.getLabels(), - this.getMails() - ]).then( - () => { - if ( this.routeParams.mailId ) - { - this.setCurrentMail(this.routeParams.mailId); - } - else - { - this.setCurrentMail(null); - } - - this.onSearchTextChanged.subscribe(searchText => { - if ( searchText !== '' ) - { - this.searchText = searchText; - this.getMails(); - } - else - { - this.searchText = searchText; - this.getMails(); - } - }); - - resolve(); - }, - reject - ); - }); - } - - /** - * Get all folders - * @returns {Promise} - */ - getFolders(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/mail-folders') - .subscribe(response => { - this.folders = response.json().data; - this.onFoldersChanged.next(this.folders); - resolve(this.folders); - }, reject); - }); - } - - /** - * Get all filters - * @returns {Promise} - */ - getFilters(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/mail-filters') - .subscribe(response => { - this.filters = response.json().data; - this.onFiltersChanged.next(this.filters); - resolve(this.filters); - }, reject); - }); - } - - /** - * Get all labels - * @returns {Promise} - */ - getLabels(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/mail-labels') - .subscribe(response => { - this.labels = response.json().data; - this.onLabelsChanged.next(this.labels); - resolve(this.labels); - }, reject); - }); - } - - /** - * Get all mails - * @returns {Promise} - */ - getMails(): Promise - { - if ( this.routeParams.labelHandle ) - { - return this.getMailsByLabel(this.routeParams.labelHandle); - } - - if ( this.routeParams.filterHandle ) - { - return this.getMailsByFilter(this.routeParams.filterHandle); - } - - return this.getMailsByFolder(this.routeParams.folderHandle); - } - - /** - * Get mails by folder - * @param handle - * @returns {Promise} - */ - getMailsByFolder(handle): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/mail-folders?handle=' + handle) - .subscribe(folders => { - - const folderId = folders.json().data[0].id; - - this.http.get('api/mail-mails?folder=' + folderId) - .subscribe(mails => { - - this.mails = mails.json().data.map(mail => { - return new Mail(mail); - }); - - this.mails = FuseUtils.filterArrayByString(this.mails, this.searchText); - - this.onMailsChanged.next(this.mails); - - resolve(this.mails); - - }, reject); - }); - }); - } - - /** - * Get mails by filter - * @param handle - * @returns {Promise} - */ - getMailsByFilter(handle): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/mail-mails?' + handle + '=true') - .subscribe(mails => { - - this.mails = mails.json().data.map(mail => { - return new Mail(mail); - }); - - this.mails = FuseUtils.filterArrayByString(this.mails, this.searchText); - - this.onMailsChanged.next(this.mails); - - resolve(this.mails); - - }, reject); - }); - } - - /** - * Get mails by label - * @param handle - * @returns {Promise} - */ - getMailsByLabel(handle): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/mail-labels?handle=' + handle) - .subscribe(labels => { - - const labelId = labels.json().data[0].id; - - this.http.get('api/mail-mails?labels=' + labelId) - .subscribe(mails => { - - this.mails = mails.json().data.map(mail => { - return new Mail(mail); - }); - - this.mails = FuseUtils.filterArrayByString(this.mails, this.searchText); - - this.onMailsChanged.next(this.mails); - - resolve(this.mails); - - }, reject); - }); - }); - } - - /** - * Toggle selected mail by id - * @param id - */ - toggleSelectedMail(id) - { - // First, check if we already have that mail as selected... - if ( this.selectedMails.length > 0 ) - { - for ( const mail of this.selectedMails ) - { - // ...delete the selected mail - if ( mail.id === id ) - { - const index = this.selectedMails.indexOf(mail); - - if ( index !== -1 ) - { - this.selectedMails.splice(index, 1); - - // Trigger the next event - this.onSelectedMailsChanged.next(this.selectedMails); - - // Return - return; - } - } - } - } - - // If we don't have it, push as selected - this.selectedMails.push( - this.mails.find(mail => { - return mail.id === id; - }) - ); - - // Trigger the next event - this.onSelectedMailsChanged.next(this.selectedMails); - } - - /** - * Toggle select all - */ - toggleSelectAll() - { - if ( this.selectedMails.length > 0 ) - { - this.deselectMails(); - } - else - { - this.selectMails(); - } - - } - - selectMails(filterParameter?, filterValue?) - { - this.selectedMails = []; - - // If there is no filter, select all mails - if ( filterParameter === undefined || filterValue === undefined ) - { - this.selectedMails = this.mails; - } - else - { - this.selectedMails.push(... - this.mails.filter(mail => { - return mail[filterParameter] === filterValue; - }) - ); - } - - // Trigger the next event - this.onSelectedMailsChanged.next(this.selectedMails); - } - - deselectMails() - { - this.selectedMails = []; - - // Trigger the next event - this.onSelectedMailsChanged.next(this.selectedMails); - } - - /** - * Set current mail by id - * @param id - */ - setCurrentMail(id) - { - this.currentMail = this.mails.find(mail => { - return mail.id === id; - }); - - this.onCurrentMailChanged.next(this.currentMail); - } - - /** - * Toggle label on selected mails - * @param labelId - */ - toggleLabelOnSelectedMails(labelId) - { - this.selectedMails.map(mail => { - - const index = mail.labels.indexOf(labelId); - - if ( index !== -1 ) - { - mail.labels.splice(index, 1); - } - else - { - mail.labels.push(labelId); - } - - this.updateMail(mail); - }); - } - - /** - * Set folder on selected mails - * @param folderId - */ - setFolderOnSelectedMails(folderId) - { - this.selectedMails.map(mail => { - mail.folder = folderId; - - this.updateMail(mail); - }); - - this.deselectMails(); - } - - /** - * Update the mail - * @param mail - * @returns {Promise} - */ - updateMail(mail) - { - return new Promise((resolve, reject) => { - - this.http.post('api/mail-mails/' + mail.id, {...mail}) - .subscribe(response => { - - this.getMails().then(mails => { - - if ( mails && this.currentMail ) - { - this.setCurrentMail(this.currentMail.id); - } - - resolve(mails); - - }, reject); - }); - }); - } - -} diff --git a/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.html b/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.html deleted file mode 100644 index 616f2fb3..00000000 --- a/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.html +++ /dev/null @@ -1,67 +0,0 @@ - -
- - - - -
- - - -
- -
- -
- - - -
- diff --git a/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.scss b/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.scss deleted file mode 100644 index 633e6083..00000000 --- a/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.scss +++ /dev/null @@ -1,30 +0,0 @@ -:host { - display: flex; - flex: 1 0 auto; - flex-direction: column; - height: 100%; - - .header { - - .logo { - - .logo-icon { - margin: 0 16px 0 0; - } - - .logo-text { - font-size: 24px; - line-height: 24px; - } - } - - .account { - width: 100%; - } - } - .content { - - .compose-dialog-button { - } - } -} diff --git a/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.ts b/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.ts deleted file mode 100644 index 2e92d113..00000000 --- a/src/app/main/content/apps/mail/sidenavs/main/main-sidenav.component.ts +++ /dev/null @@ -1,98 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { MailService } from '../../mail.service'; -import { Subscription } from 'rxjs/Subscription'; -import { FuseMailComposeDialogComponent } from '../../dialogs/compose/compose.component'; -import { MdDialog } from '@angular/material'; -import { FormGroup } from '@angular/forms'; - -@Component({ - selector : 'fuse-mail-main-sidenav', - templateUrl: './main-sidenav.component.html', - styleUrls : ['./main-sidenav.component.scss'] -}) -export class FuseMailMainSidenavComponent implements OnInit, OnDestroy -{ - folders: any[]; - filters: any[]; - labels: any[]; - accounts: object; - selectedAccount: string; - dialogRef: any; - - onFoldersChanged: Subscription; - onFiltersChanged: Subscription; - onLabelsChanged: Subscription; - - constructor( - private mailService: MailService, - public dialog: MdDialog - ) - { - // Data - this.accounts = { - 'creapond' : 'johndoe@creapond.com', - 'withinpixels': 'johndoe@withinpixels.com' - }; - - this.selectedAccount = 'creapond'; - } - - ngOnInit() - { - this.onFoldersChanged = - this.mailService.onFoldersChanged - .subscribe(folders => { - this.folders = folders; - }); - - this.onFiltersChanged = - this.mailService.onFiltersChanged - .subscribe(filters => { - this.filters = filters; - }); - - this.onLabelsChanged = - this.mailService.onLabelsChanged - .subscribe(labels => { - this.labels = labels; - }); - } - - composeDialog() - { - this.dialogRef = this.dialog.open(FuseMailComposeDialogComponent, { - panelClass: 'mail-compose-dialog' - }); - this.dialogRef.afterClosed() - .subscribe(response => { - if ( !response ) - { - return; - } - const actionType: string = response[0]; - const formData: FormGroup = response[1]; - switch ( actionType ) - { - /** - * Send - */ - case 'send': - console.log('new Mail', formData.getRawValue()); - break; - /** - * Delete - */ - case 'delete': - console.log('delete Mail'); - break; - } - }); - } - - ngOnDestroy() - { - this.onFoldersChanged.unsubscribe(); - this.onFiltersChanged.unsubscribe(); - this.onLabelsChanged.unsubscribe(); - } -} diff --git a/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.html b/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.html deleted file mode 100644 index 849f77f0..00000000 --- a/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.html +++ /dev/null @@ -1,65 +0,0 @@ - -
- - - - -
- - - -
- -
- -
- - - -
- diff --git a/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.scss b/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.scss deleted file mode 100644 index 7b2e1ffb..00000000 --- a/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.scss +++ /dev/null @@ -1,33 +0,0 @@ -:host { - display: flex; - flex: 1 0 auto; - flex-direction: column; - height: 100%; - - .header { - - .logo { - - .logo-icon { - margin: 0 16px 0 0; - } - - .logo-text { - font-size: 24px; - line-height: 24px; - } - } - - .account { - width: 100%; - .account-selection { - } - } - } - - .content { - - .add-todo-button { - } - } -} diff --git a/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.ts b/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.ts deleted file mode 100644 index c81f88f1..00000000 --- a/src/app/main/content/apps/todo/sidenavs/main/main-sidenav.component.ts +++ /dev/null @@ -1,62 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { TodoService } from '../../todo.service'; -import { Subscription } from 'rxjs/Subscription'; -import { Router } from '@angular/router'; - -@Component({ - selector : 'fuse-todo-main-sidenav', - templateUrl: './main-sidenav.component.html', - styleUrls : ['./main-sidenav.component.scss'] -}) -export class FuseTodoMainSidenavComponent implements OnInit, OnDestroy -{ - folders: any[]; - filters: any[]; - tags: any[]; - accounts: object; - selectedAccount: string; - - onFiltersChanged: Subscription; - onTagsChanged: Subscription; - - constructor(private todoService: TodoService, private router: Router) - { - // Data - this.accounts = { - 'creapond' : 'johndoe@creapond.com', - 'withinpixels': 'johndoe@withinpixels.com' - }; - - this.selectedAccount = 'creapond'; - } - - ngOnInit() - { - this.onFiltersChanged = - this.todoService.onFiltersChanged - .subscribe(filters => { - this.filters = filters; - }); - - this.onTagsChanged = - this.todoService.onTagsChanged - .subscribe(tags => { - this.tags = tags; - }); - } - - ngOnDestroy() - { - this.onFiltersChanged.unsubscribe(); - this.onTagsChanged.unsubscribe(); - } - - newTodo() - { - this.router.navigate(['/apps/todo/all']).then(() => { - setTimeout(() => { - this.todoService.onNewTodoClicked.next(''); - }); - }); - } -} diff --git a/src/app/main/content/apps/todo/todo-details/todo-details.component.html b/src/app/main/content/apps/todo/todo-details/todo-details.component.html deleted file mode 100644 index 23b9397d..00000000 --- a/src/app/main/content/apps/todo/todo-details/todo-details.component.html +++ /dev/null @@ -1,112 +0,0 @@ -
- check_box - Select a todo -
- -
- -
- - - -
- - - - - - - - - - - - - -
-
- -
- -
- - - - - -
-
- -
- -
{{tags | getById:tagId:'title'}}
-
-
- -
- - - - - - - - - - - - -
- - - - - - -
- -
-
diff --git a/src/app/main/content/apps/todo/todo-details/todo-details.component.scss b/src/app/main/content/apps/todo/todo-details/todo-details.component.scss deleted file mode 100644 index 503982d1..00000000 --- a/src/app/main/content/apps/todo/todo-details/todo-details.component.scss +++ /dev/null @@ -1,112 +0,0 @@ -@import '../../../../../core/scss/fuse'; - -:host { - display: flex; - flex: 1 0 auto; - flex-direction: column; - overflow-y: auto; - padding: 24px; - - .todo-header { - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - - .actions { - min-width: 88px; - } - - } - - .todo-content { - - .title { - font-size: 17px; - font-weight: 500; - } - - .tag { - font-size: 11px; - border-radius: 2px; - margin: 8px 4px 0 0; - padding: 3px 8px; - background-color: rgba(0, 0, 0, 0.08); - - .tag-color { - width: 8px; - height: 8px; - margin-right: 8px; - border-radius: 50%; - } - } - - .to { - color: rgba(0, 0, 0, 0.54); - - .to-text { - margin-right: 4px; - text-transform: lowercase; - } - } - - .info { - padding-bottom: 16px; - - .avatar { - margin-right: 16px; - background-color: mat-color($accent); - } - - .name { - margin-right: 8px; - font-weight: 500; - } - - .toggle-details { - user-select: none; - text-decoration: underline; - padding-top: 16px; - cursor: pointer; - font-weight: 500; - } - - .details { - padding-top: 8px; - - .title { - font-weight: 500; - margin-right: 6px; - } - - .detail { - color: rgba(0, 0, 0, 0.54); - } - } - - } - } - - .todo-attachments { - padding: 24px 0; - border-top: 1px solid rgba(0, 0, 0, 0.12); - - .title { - margin-bottom: 16px; - font-weight: 500; - } - - .attachment { - - .preview { - width: 100px; - margin: 0 16px 8px 0; - } - - .link { - margin-bottom: 2px; - } - - .size { - font-size: 11px; - } - } - } -} diff --git a/src/app/main/content/apps/todo/todo-details/todo-details.component.ts b/src/app/main/content/apps/todo/todo-details/todo-details.component.ts deleted file mode 100644 index 9d9666b8..00000000 --- a/src/app/main/content/apps/todo/todo-details/todo-details.component.ts +++ /dev/null @@ -1,165 +0,0 @@ -import { Component, OnDestroy, OnInit, ViewChildren } from '@angular/core'; -import { TodoService } from '../todo.service'; -import { Todo } from '../todo.model'; -import { Subscription } from 'rxjs/Subscription'; -import { FormBuilder, FormGroup } from '@angular/forms'; -import { FuseUtils } from '../../../../../core/fuseUtils'; - -@Component({ - selector : 'fuse-todo-details', - templateUrl: './todo-details.component.html', - styleUrls : ['./todo-details.component.scss'] -}) -export class FuseTodoDetailsComponent implements OnInit, OnDestroy -{ - todo: Todo; - tags: any[]; - formType: string; - todoForm: FormGroup; - @ViewChildren('titleInput') titleInputField; - - onFormChange: any; - onCurrentTodoChanged: Subscription; - onTagsChanged: Subscription; - onNewTodoClicked: Subscription; - - constructor( - private todoService: TodoService, - private formBuilder: FormBuilder - ) - { - - } - - ngOnInit() - { - // Subscribe to update the current todo - this.onCurrentTodoChanged = - this.todoService.onCurrentTodoChanged - .subscribe(([todo, formType]) => { - - if ( todo && formType === 'edit' ) - { - this.formType = 'edit'; - - this.todo = todo; - - this.todoForm = this.createTodoForm(); - - this.onFormChange = this.todoForm.valueChanges - .debounceTime(500) - .distinctUntilChanged() - .subscribe(data => { - this.todoService.updateTodo(data); - }); - } - }); - - // Subscribe to update on tag change - this.onTagsChanged = - this.todoService.onTagsChanged - .subscribe(labels => { - this.tags = labels; - }); - - // Subscribe to update on tag change - this.onNewTodoClicked = this.todoService.onNewTodoClicked - .subscribe(() => { - this.todo = new Todo({}); - this.todo.id = FuseUtils.generateGUID(); - this.formType = 'new'; - this.todoForm = this.createTodoForm(); - this.focusTitleField(); - this.todoService.onCurrentTodoChanged.next([this.todo, 'new']); - }); - } - - focusTitleField() - { - setTimeout(() => { - this.titleInputField.first.nativeElement.focus(); - }); - } - - createTodoForm() - { - return this.formBuilder.group({ - 'id' : [this.todo.id], - 'title' : [this.todo.title], - 'notes' : [this.todo.notes], - 'startDate': [this.todo.startDate], - 'dueDate' : [this.todo.dueDate], - 'completed': [this.todo.completed], - 'starred' : [this.todo.starred], - 'important': [this.todo.important], - 'deleted' : [this.todo.deleted], - 'tags' : [this.todo.tags] - }); - } - - toggleStar(event) - { - event.stopPropagation(); - - this.todo.toggleStar(); - - this.todoService.updateTodo(this.todo); - } - - toggleImportant(event) - { - event.stopPropagation(); - - this.todo.toggleImportant(); - - this.todoService.updateTodo(this.todo); - } - - /** - * Toggle Completed - * @param event - */ - toggleCompleted(event) - { - event.stopPropagation(); - - this.todo.toggleCompleted(); - - this.todoService.updateTodo(this.todo); - } - - /** - * Toggle Deleted - * @param event - */ - toggleDeleted(event) - { - event.stopPropagation(); - - this.todo.toggleDeleted(); - - this.todoService.updateTodo(this.todo); - } - - toggleTagOnTodo(tagId) - { - this.todoService.toggleTagOnTodo(tagId, this.todo); - } - - addTodo() - { - this.todoService.updateTodo(this.todoForm.getRawValue()); - } - - ngOnDestroy() - { - if ( this.onFormChange ) - { - this.onFormChange.unsubscribe(); - } - - this.onCurrentTodoChanged.unsubscribe(); - - this.onNewTodoClicked.unsubscribe(); - } -} diff --git a/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.html b/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.html deleted file mode 100644 index 3782a525..00000000 --- a/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.html +++ /dev/null @@ -1,96 +0,0 @@ -
- - - drag_handle - - - - - -
- -
- -
- {{todo.title}} -
- -
- {{todo.notes}} -
- -
- -
- -
- -
{{tags | getById:tagId:'title'}}
-
- -
- -
- -
- - - - - - - - - - - - - - - -
- -
- -
diff --git a/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.scss b/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.scss deleted file mode 100644 index ed0db5c7..00000000 --- a/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.scss +++ /dev/null @@ -1,125 +0,0 @@ -@import '../../../../../../core/scss/fuse'; - -.todo-list-item { - display: block; - position: relative; - padding: 16px 16px 16px 24px; - border-bottom: 1px solid rgba(0, 0, 0, 0.08); - text-transform: none; - cursor: pointer; - flex-shrink: 0; - background: #FFFFFF; - - &.todo-item-placeholder { - background: rgba(0, 0, 0, 0.12); - * { - opacity: 0; - } - } - - .handle { - height: 48px; - line-height: 48px; - cursor: move; - user-select: none; - } - - &.move-disabled { - .handle { - display: none; - } - } - - .tags { - - .tag { - font-size: 11px; - border-radius: 2px; - margin: 8px 4px 0 0; - padding: 3px 8px; - background-color: rgba(0, 0, 0, 0.08); - - .tag-color { - width: 8px; - height: 8px; - margin-right: 8px; - border-radius: 50%; - } - } - } - - &.completed { - background: #EEEEEE; - - .title, - .notes { - color: rgba(0, 0, 0, 0.54); - text-decoration: line-through; - } - } - - &.selected { - background: #FFF8E1; - } - - .info { - margin: 0 16px 0 8px; - - .title { - font-size: 15px; - font-weight: 500; - } - - .notes { - margin-top: 4px; - } - } - - .buttons { - - .is-starred { - margin: 0 0 0 16px; - } - - .is-important { - margin: 0; - } - } - - &:not(.has-handle):not(.move-disabled), - &.has-handle [ngxdraghandle], - &.has-handle [ngxDragHandle] { - cursor: move; - } - - .ngx-dnd-content { - user-select: none; - } - - &.gu-mirror { - position: fixed !important; - margin: 0 !important; - z-index: 9999 !important; - opacity: 0.8; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; - filter: alpha(opacity=80); - @include mat-elevation(7); - } - - &.gu-hide { - display: none !important; - } - - &.gu-unselectable { - -webkit-user-select: none !important; - -moz-user-select: none !important; - -ms-user-select: none !important; - user-select: none !important; - } - - &.gu-transit { - opacity: 0.2; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)"; - filter: alpha(opacity=20); - } -} diff --git a/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.ts b/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.ts deleted file mode 100644 index 5a4c2c76..00000000 --- a/src/app/main/content/apps/todo/todo-list/todo-list-item/todo-list-item.component.ts +++ /dev/null @@ -1,117 +0,0 @@ -import { Component, HostBinding, Input, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core'; -import { Todo } from '../../todo.model'; -import { TodoService } from '../../todo.service'; -import { Subscription } from 'rxjs/Subscription'; -import { ActivatedRoute } from '@angular/router'; - -@Component({ - selector : 'fuse-todo-list-item', - templateUrl : './todo-list-item.component.html', - styleUrls : ['./todo-list-item.component.scss'], - encapsulation: ViewEncapsulation.None -}) -export class FuseTodoListItemComponent implements OnInit, OnDestroy -{ - @Input() todo: Todo; - tags: any[]; - @HostBinding('class.selected') selected: boolean; - @HostBinding('class.completed') completed: boolean; - @HostBinding('class.move-disabled') moveDisabled: boolean; - - onSelectedTodosChanged: Subscription; - onTagsChanged: Subscription; - - constructor( - private todoService: TodoService, - private route: ActivatedRoute - ) - { - // Disable move if path is not /all - if ( route.snapshot.url[0].path !== 'all' ) - { - this.moveDisabled = true; - } - } - - ngOnInit() - { - // Set the initial values - this.todo = new Todo(this.todo); - this.completed = this.todo.completed; - - // Subscribe to update on selected todo change - this.onSelectedTodosChanged = - this.todoService.onSelectedTodosChanged - .subscribe(selectedTodos => { - this.selected = false; - - if ( selectedTodos.length > 0 ) - { - for ( const todo of selectedTodos ) - { - if ( todo.id === this.todo.id ) - { - this.selected = true; - break; - } - } - } - }); - - // Subscribe to update on tag change - this.onTagsChanged = - this.todoService.onTagsChanged - .subscribe(tags => { - this.tags = tags; - }); - } - - ngOnDestroy() - { - this.onSelectedTodosChanged.unsubscribe(); - } - - onSelectedChange() - { - this.todoService.toggleSelectedTodo(this.todo.id); - } - - /** - * Toggle star - * @param event - */ - toggleStar(event) - { - event.stopPropagation(); - - this.todo.toggleStar(); - - this.todoService.updateTodo(this.todo); - } - - /** - * Toggle Important - * @param event - */ - toggleImportant(event) - { - event.stopPropagation(); - - this.todo.toggleImportant(); - - this.todoService.updateTodo(this.todo); - } - - /** - * Toggle Completed - * @param event - */ - toggleCompleted(event) - { - event.stopPropagation(); - - this.todo.toggleCompleted(); - - this.todoService.updateTodo(this.todo); - } -} diff --git a/src/app/main/content/apps/todo/todo-list/todo-list.component.html b/src/app/main/content/apps/todo/todo-list/todo-list.component.html deleted file mode 100644 index 460c949f..00000000 --- a/src/app/main/content/apps/todo/todo-list/todo-list.component.html +++ /dev/null @@ -1,13 +0,0 @@ -
- There are no todos! -
-
- - -
diff --git a/src/app/main/content/apps/todo/todo-list/todo-list.component.scss b/src/app/main/content/apps/todo/todo-list/todo-list.component.scss deleted file mode 100644 index 676c4aa9..00000000 --- a/src/app/main/content/apps/todo/todo-list/todo-list.component.scss +++ /dev/null @@ -1,14 +0,0 @@ -:host { - display: flex; - flex: 1 0 auto; - flex-direction: column; - overflow-y: auto; - position: relative; - padding: 0; - border-right: 1px solid rgba(0, 0, 0, .12); -} - -.todo-list { - -} - diff --git a/src/app/main/content/apps/todo/todo-list/todo-list.component.ts b/src/app/main/content/apps/todo/todo-list/todo-list.component.ts deleted file mode 100644 index dac030cd..00000000 --- a/src/app/main/content/apps/todo/todo-list/todo-list.component.ts +++ /dev/null @@ -1,91 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { Todo } from '../todo.model'; -import { ActivatedRoute } from '@angular/router'; -import { TodoService } from '../todo.service'; -import { Location } from '@angular/common'; -import { Subscription } from 'rxjs/Subscription'; - -@Component({ - selector : 'fuse-todo-list', - templateUrl: './todo-list.component.html', - styleUrls : ['./todo-list.component.scss'] -}) -export class FuseTodoListComponent implements OnInit, OnDestroy -{ - todos: Todo[]; - currentTodo: Todo; - - onTodosChanged: Subscription; - onCurrentTodoChanged: Subscription; - - constructor( - private route: ActivatedRoute, - private todoService: TodoService, - private location: Location - ) - { - } - - ngOnInit() - { - // Subscribe to update todos on changes - this.onTodosChanged = - this.todoService.onTodosChanged - .subscribe(todos => { - this.todos = todos; - }); - - // Subscribe to update current todo on changes - this.onCurrentTodoChanged = - this.todoService.onCurrentTodoChanged - .subscribe(currentTodo => { - if ( !currentTodo ) - { - // Set the current todo id to null to deselect the current todo - this.currentTodo = null; - - // Handle the location changes - const tagHandle = this.route.snapshot.params.tagHandle, - filterHandle = this.route.snapshot.params.filterHandle; - - if ( tagHandle ) - { - this.location.go('apps/todo/tag/' + tagHandle); - } - else if ( filterHandle ) - { - this.location.go('apps/todo/filter/' + filterHandle); - } - else - { - this.location.go('apps/todo/all'); - } - } - else - { - this.currentTodo = currentTodo; - } - }); - } - - ngOnDestroy() - { - this.onTodosChanged.unsubscribe(); - this.onCurrentTodoChanged.unsubscribe(); - } - - /** - * Read todo - * @param todoId - */ - readTodo(todoId) - { - // Set current todo - this.todoService.setCurrentTodo(todoId); - } - - onDrop(ev) - { - this.todoService.updateTodos(this.todos); - } -} diff --git a/src/app/main/content/apps/todo/todo.component.html b/src/app/main/content/apps/todo/todo.component.html deleted file mode 100644 index e53cb3a5..00000000 --- a/src/app/main/content/apps/todo/todo.component.html +++ /dev/null @@ -1,100 +0,0 @@ -
- - -
- - - - - - - - - - - -
- - -
- -
- - - - -
- -
- - - -
- - -
-
- - - - - - - - - - - - - - -
- - - - - -
- -
- -
-
- - - -
- - - - - -
- - -
- - -
- - -
- -
diff --git a/src/app/main/content/apps/todo/todo.component.scss b/src/app/main/content/apps/todo/todo.component.scss deleted file mode 100644 index 219ab321..00000000 --- a/src/app/main/content/apps/todo/todo.component.scss +++ /dev/null @@ -1,67 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - width: 100%; - - .center { - - .header { - - .search-wrapper { - @include mat-elevation(7); - - .sidenav-toggle { - margin: 0; - width: 56px; - height: 56px; - border-radius: 0; - border-right: 1px solid rgba(0, 0, 0, .12); - } - - .search { - width: 100%; - height: 56px; - line-height: 56px; - padding: 18px; - - input { - height: 56px; - padding-left: 16px; - color: rgba(0, 0, 0, 0.54); - border: none; - outline: none; - } - } - } - } - - .content-card { - @include media-breakpoint-down(lg) { - - fuse-todo-list, - fuse-todo-details { - flex: 1 0 100%; - } - - fuse-todo-details { - display: none !important; - } - - &.current-todo-selected { - - .content { - - fuse-todo-list { - display: none !important; - } - - fuse-todo-details { - display: flex !important; - } - } - } - } - } - } -} - diff --git a/src/app/main/content/apps/todo/todo.component.ts b/src/app/main/content/apps/todo/todo.component.ts deleted file mode 100644 index 31661447..00000000 --- a/src/app/main/content/apps/todo/todo.component.ts +++ /dev/null @@ -1,110 +0,0 @@ -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { Subscription } from 'rxjs/Subscription'; -import { TodoService } from './todo.service'; -import { FormControl } from '@angular/forms'; -import { Todo } from './todo.model'; - -@Component({ - selector : 'fuse-todo', - templateUrl: './todo.component.html', - styleUrls : ['./todo.component.scss'] -}) -export class FuseTodoComponent implements OnInit, OnDestroy -{ - hasSelectedTodos: boolean; - isIndeterminate: boolean; - filters: any[]; - tags: any[]; - searchInput: FormControl; - currentTodo: Todo; - - onSelectedTodosChanged: Subscription; - onFiltersChanged: Subscription; - onTagsChanged: Subscription; - onCurrentTodoChanged: Subscription; - - constructor(private todoService: TodoService) - { - this.searchInput = new FormControl(''); - } - - ngOnInit() - { - - this.onSelectedTodosChanged = - this.todoService.onSelectedTodosChanged - .subscribe(selectedTodos => { - - setTimeout(() => { - this.hasSelectedTodos = selectedTodos.length > 0; - this.isIndeterminate = (selectedTodos.length !== this.todoService.todos.length && selectedTodos.length > 0); - }, 0); - }); - - this.onFiltersChanged = - this.todoService.onFiltersChanged - .subscribe(folders => { - this.filters = this.todoService.filters; - }); - - this.onTagsChanged = - this.todoService.onTagsChanged - .subscribe(tags => { - this.tags = this.todoService.tags; - }); - - this.searchInput.valueChanges - .debounceTime(300) - .distinctUntilChanged() - .subscribe(searchText => { - this.todoService.onSearchTextChanged.next(searchText); - }); - - this.onCurrentTodoChanged = - this.todoService.onCurrentTodoChanged - .subscribe(([currentTodo, formType]) => { - if ( !currentTodo ) - { - this.currentTodo = null; - } - else - { - this.currentTodo = currentTodo; - } - }); - } - - deSelectCurrentTodo() - { - this.todoService.onCurrentTodoChanged.next([null, null]); - } - - ngOnDestroy() - { - this.onSelectedTodosChanged.unsubscribe(); - this.onFiltersChanged.unsubscribe(); - this.onTagsChanged.unsubscribe(); - this.onCurrentTodoChanged.unsubscribe(); - } - - toggleSelectAll() - { - this.todoService.toggleSelectAll(); - } - - selectTodos(filterParameter?, filterValue?) - { - this.todoService.selectTodos(filterParameter, filterValue); - } - - deselectTodos() - { - this.todoService.deselectTodos(); - } - - toggleTagOnSelectedTodos(tagId) - { - this.todoService.toggleTagOnSelectedTodos(tagId); - } - -} diff --git a/src/app/main/content/apps/todo/todo.model.ts b/src/app/main/content/apps/todo/todo.model.ts deleted file mode 100644 index 4dba7f5f..00000000 --- a/src/app/main/content/apps/todo/todo.model.ts +++ /dev/null @@ -1,56 +0,0 @@ -export class Todo -{ - id: string; - title: string; - notes: string; - startDate: string; - dueDate: boolean; - completed: boolean; - starred: boolean; - important: boolean; - deleted: boolean; - tags: [ - { - 'id': number, - 'name': string, - 'label': string, - 'color': string - } - ]; - - constructor(todo) - { - { - this.id = todo.id; - this.title = todo.title; - this.notes = todo.notes; - this.startDate = todo.startDate; - this.dueDate = todo.dueDate; - this.completed = todo.completed; - this.starred = todo.starred; - this.important = todo.important; - this.deleted = todo.deleted; - this.tags = todo.tags; - } - } - - toggleStar() - { - this.starred = !this.starred; - } - - toggleImportant() - { - this.important = !this.important; - } - - toggleCompleted() - { - this.completed = !this.completed; - } - - toggleDeleted() - { - this.deleted = !this.deleted; - } -} diff --git a/src/app/main/content/apps/todo/todo.module.ts b/src/app/main/content/apps/todo/todo.module.ts deleted file mode 100644 index 1681b761..00000000 --- a/src/app/main/content/apps/todo/todo.module.ts +++ /dev/null @@ -1,78 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseTodoComponent } from './todo.component'; -import { TodoService } from './todo.service'; -import { FuseTodoMainSidenavComponent } from './sidenavs/main/main-sidenav.component'; -import { FuseTodoListItemComponent } from './todo-list/todo-list-item/todo-list-item.component'; -import { FuseTodoListComponent } from './todo-list/todo-list.component'; -import { FuseTodoDetailsComponent } from './todo-details/todo-details.component'; - -const routes: Routes = [ - { - path : 'all', - component: FuseTodoComponent, - resolve : { - todo: TodoService - } - }, - { - path : 'all/:todoId', - component: FuseTodoComponent, - resolve : { - todo: TodoService - } - }, - { - path : 'tag/:tagHandle', - component: FuseTodoComponent, - resolve : { - todo: TodoService - } - }, - { - path : 'tag/:tagHandle/:todoId', - component: FuseTodoComponent, - resolve : { - todo: TodoService - } - }, - { - path : 'filter/:filterHandle', - component: FuseTodoComponent, - resolve : { - todo: TodoService - } - }, - { - path : 'filter/:filterHandle/:todoId', - component: FuseTodoComponent, - resolve : { - todo: TodoService - } - }, - { - path : '**', - redirectTo: 'all' - } -]; - -@NgModule({ - declarations: [ - FuseTodoComponent, - FuseTodoMainSidenavComponent, - FuseTodoListItemComponent, - FuseTodoListComponent, - FuseTodoDetailsComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - providers : [ - TodoService - ] -}) -export class FuseTodoModule -{ -} diff --git a/src/app/main/content/apps/todo/todo.service.ts b/src/app/main/content/apps/todo/todo.service.ts deleted file mode 100644 index e91d84f1..00000000 --- a/src/app/main/content/apps/todo/todo.service.ts +++ /dev/null @@ -1,415 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { Todo } from './todo.model'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { FuseUtils } from '../../../../core/fuseUtils'; -import { Subject } from 'rxjs/Subject'; -import { Location } from '@angular/common'; - -@Injectable() -export class TodoService implements Resolve -{ - todos: Todo[]; - selectedTodos: Todo[]; - currentTodo: Todo; - searchText = ''; - - filters: any[]; - tags: any[]; - routeParams: any; - - onTodosChanged: BehaviorSubject = new BehaviorSubject([]); - onSelectedTodosChanged: BehaviorSubject = new BehaviorSubject([]); - onCurrentTodoChanged: BehaviorSubject = new BehaviorSubject([]); - - onFiltersChanged: BehaviorSubject = new BehaviorSubject([]); - onTagsChanged: BehaviorSubject = new BehaviorSubject([]); - onSearchTextChanged: BehaviorSubject = new BehaviorSubject(''); - onNewTodoClicked: Subject = new Subject(); - - constructor( - private http: Http, - private location: Location // Set current todo - ) - { - this.selectedTodos = []; - } - - /** - * Resolve - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - this.routeParams = route.params; - - return new Promise((resolve, reject) => { - - Promise.all([ - this.getFilters(), - this.getTags(), - this.getTodos() - ]).then( - () => { - if ( this.routeParams.todoId ) - { - this.setCurrentTodo(this.routeParams.todoId); - } - else - { - this.setCurrentTodo(null); - } - - this.onSearchTextChanged.subscribe(searchText => { - if ( searchText !== '' ) - { - this.searchText = searchText; - this.getTodos(); - } - else - { - this.searchText = searchText; - this.getTodos(); - } - }); - resolve(); - }, - reject - ); - }); - } - - /** - * Get all filters - * @returns {Promise} - */ - getFilters(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/todo-filters') - .subscribe(response => { - this.filters = response.json().data; - this.onFiltersChanged.next(this.filters); - resolve(this.filters); - }, reject); - }); - } - - /** - * Get all tags - * @returns {Promise} - */ - getTags(): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/todo-tags') - .subscribe(response => { - this.tags = response.json().data; - this.onTagsChanged.next(this.tags); - resolve(this.tags); - }, reject); - }); - } - - /** - * Get todos - * @returns {Promise} - */ - getTodos(): Promise - { - if ( this.routeParams.tagHandle ) - { - return this.getTodosByTag(this.routeParams.tagHandle); - } - - if ( this.routeParams.filterHandle ) - { - return this.getTodosByFilter(this.routeParams.filterHandle); - } - - return this.getTodosByParams(this.routeParams); - } - - /** - * Get todos by params - * @param handle - * @returns {Promise} - */ - getTodosByParams(handle): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/todo-todos') - .subscribe(todos => { - this.todos = todos.json().data.map(todo => { - return new Todo(todo); - }); - - this.todos = FuseUtils.filterArrayByString(this.todos, this.searchText); - - this.onTodosChanged.next(this.todos); - - resolve(this.todos); - }); - }); - } - - /** - * Get todos by filter - * @param handle - * @returns {Promise} - */ - getTodosByFilter(handle): Promise - { - - let param = handle + '=true'; - - if ( handle === 'dueDate' ) - { - param = handle + '=^$|\\s+'; - } - - return new Promise((resolve, reject) => { - - this.http.get('api/todo-todos?' + param) - .subscribe(todos => { - - this.todos = todos.json().data.map(todo => { - return new Todo(todo); - }); - - this.todos = FuseUtils.filterArrayByString(this.todos, this.searchText); - - this.onTodosChanged.next(this.todos); - - resolve(this.todos); - - }, reject); - }); - } - - /** - * Get todos by tag - * @param handle - * @returns {Promise} - */ - getTodosByTag(handle): Promise - { - return new Promise((resolve, reject) => { - this.http.get('api/todo-tags?handle=' + handle) - .subscribe(tags => { - - const tagId = tags.json().data[0].id; - - this.http.get('api/todo-todos?tags=' + tagId) - .subscribe(todos => { - - this.todos = todos.json().data.map(todo => { - return new Todo(todo); - }); - - this.todos = FuseUtils.filterArrayByString(this.todos, this.searchText); - - this.onTodosChanged.next(this.todos); - - resolve(this.todos); - - }, reject); - }); - }); - } - - /** - * Toggle selected todo by id - * @param id - */ - toggleSelectedTodo(id) - { - // First, check if we already have that todo as selected... - if ( this.selectedTodos.length > 0 ) - { - for ( const todo of this.selectedTodos ) - { - // ...delete the selected todo - if ( todo.id === id ) - { - const index = this.selectedTodos.indexOf(todo); - - if ( index !== -1 ) - { - this.selectedTodos.splice(index, 1); - - // Trigger the next event - this.onSelectedTodosChanged.next(this.selectedTodos); - - // Return - return; - } - } - } - } - - // If we don't have it, push as selected - this.selectedTodos.push( - this.todos.find(todo => { - return todo.id === id; - }) - ); - - // Trigger the next event - this.onSelectedTodosChanged.next(this.selectedTodos); - } - - /** - * Toggle select all - */ - toggleSelectAll() - { - if ( this.selectedTodos.length > 0 ) - { - this.deselectTodos(); - } - else - { - this.selectTodos(); - } - - } - - selectTodos(filterParameter?, filterValue?) - { - this.selectedTodos = []; - - // If there is no filter, select all todos - if ( filterParameter === undefined || filterValue === undefined ) - { - this.selectedTodos = this.todos; - } - else - { - this.selectedTodos.push(... - this.todos.filter(todo => { - return todo[filterParameter] === filterValue; - }) - ); - } - - // Trigger the next event - this.onSelectedTodosChanged.next(this.selectedTodos); - } - - deselectTodos() - { - this.selectedTodos = []; - - // Trigger the next event - this.onSelectedTodosChanged.next(this.selectedTodos); - } - - /** - * Set current todo by id - * @param id - */ - setCurrentTodo(id) - { - this.currentTodo = this.todos.find(todo => { - return todo.id === id; - }); - - this.onCurrentTodoChanged.next([this.currentTodo, 'edit']); - - const tagHandle = this.routeParams.tagHandle, - filterHandle = this.routeParams.filterHandle; - - if ( tagHandle ) - { - this.location.go('apps/todo/tag/' + tagHandle + '/' + id); - } - else if ( filterHandle ) - { - this.location.go('apps/todo/filter/' + filterHandle + '/' + id); - } - else - { - this.location.go('apps/todo/all/' + id); - } - - } - - /** - * Toggle tag on selected todos - * @param tagId - */ - toggleTagOnSelectedTodos(tagId) - { - this.selectedTodos.map(todo => { - this.toggleTagOnTodo(tagId, todo); - }); - } - - toggleTagOnTodo(tagId, todo) - { - - const index = todo.tags.indexOf(tagId); - - if ( index !== -1 ) - { - todo.tags.splice(index, 1); - } - else - { - todo.tags.push(tagId); - } - this.updateTodo(todo); - } - - /** - * Update the todo - * @param todo - * @returns {Promise} - */ - updateTodo(todo) - { - return new Promise((resolve, reject) => { - - this.http.post('api/todo-todos/' + todo.id, {...todo}) - .subscribe(response => { - - this.getTodos().then(todos => { - - this.setCurrentTodo(todo.id); - - resolve(todos); - - }, reject); - }); - }); - } - - /** - * Update the todo - * @param todos - * @returns {Promise} - */ - updateTodos(todos) - { - - /* return new Promise((resolve, reject) => { - - this.http.post('api/todo-todos/', {...todos}) - - .subscribe(response => { - - this.getTodos().then(_todos => { - console.log(response); - resolve(_todos); - }, reject); - }); - });*/ - - } -} diff --git a/src/app/main/content/components/components.module.ts b/src/app/main/content/components/components.module.ts deleted file mode 100644 index 49d9026b..00000000 --- a/src/app/main/content/components/components.module.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; -import { FuseNgxDatatableComponent } from './datatable/ngx-datatable.component'; -import { FusePriceTablesComponent } from './price-tables/price-tables.component'; - -const routes = [ - { - path : 'components/datatables/ngx-datatable', - component: FuseNgxDatatableComponent - }, - { - path : 'components/price-tables', - component: FusePriceTablesComponent - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations: [ - FuseNgxDatatableComponent, - FusePriceTablesComponent - ] -}) -export class ComponentsModule -{ -} diff --git a/src/app/main/content/components/datatable/ngx-datatable.component.html b/src/app/main/content/components/datatable/ngx-datatable.component.html deleted file mode 100644 index ccc416a1..00000000 --- a/src/app/main/content/components/datatable/ngx-datatable.component.html +++ /dev/null @@ -1,75 +0,0 @@ -
- - -
-
-
- home - chevron_right - Tables -
-
ngx-datatable
-
- - -
- - - -
- -

- ngx-datatable is a Angular component for presenting large and complex data. - It has all the features you would expect from any other table but in a light package with no external - dependencies. The table was designed to be extremely flexible and light; it doesn't make any assumptions - about your data or how you: filter, sort or page it. -

- - - - - - - - - - - - - - - - - - - - - - - -
- -
- diff --git a/src/app/main/content/components/datatable/ngx-datatable.component.scss b/src/app/main/content/components/datatable/ngx-datatable.component.scss deleted file mode 100644 index 8fdbe2d4..00000000 --- a/src/app/main/content/components/datatable/ngx-datatable.component.scss +++ /dev/null @@ -1,3 +0,0 @@ -:host { - -} \ No newline at end of file diff --git a/src/app/main/content/components/datatable/ngx-datatable.component.ts b/src/app/main/content/components/datatable/ngx-datatable.component.ts deleted file mode 100644 index 1de22a63..00000000 --- a/src/app/main/content/components/datatable/ngx-datatable.component.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { Http } from '@angular/http'; - -@Component({ - selector : 'fuse-ngx-datatable', - templateUrl: './ngx-datatable.component.html', - styleUrls : ['./ngx-datatable.component.scss'] -}) -export class FuseNgxDatatableComponent implements OnInit -{ - rows: any[]; - loadingIndicator = true; - reorderable = true; - - constructor(private http: Http) - { - - } - - ngOnInit() - { - this.http.get('api/contacts-contacts') - .subscribe(contacts => { - this.rows = contacts.json().data; - this.loadingIndicator = false; - }); - } -} diff --git a/src/app/main/content/components/price-tables/price-tables.component.html b/src/app/main/content/components/price-tables/price-tables.component.html deleted file mode 100644 index e636ab8a..00000000 --- a/src/app/main/content/components/price-tables/price-tables.component.html +++ /dev/null @@ -1,320 +0,0 @@ -
- - -
-
-
- home - chevron_right - Tables -
-
Price Tables
-
-
- - - -
- - -
- -
Style 1
- -
-
-
- BASIC -
- -
-
$
-
-
4
-
/ month
-
-
- - - -
-
- 10 - Projects -
-
- 10 - Pages -
-
- 100 - Mb Disk Space -
-
- - -
- -
-
- STANDARD - Save 15% -
- -
-
$
-
-
8
-
/ month
-
-
- - - -
-
- 20 - Projects -
-
- 20 - Pages -
-
- 200 - Mb Disk Space -
-
- - -
- -
-
- ADVANCED -
- -
-
$
-
-
12
-
/ month
-
-
- - - -
-
- 40 - Projects -
-
- 40 - Pages -
-
- 500 - Mb Disk Space -
-
- - -
-
- -
- - - -
- -
Style 2
- -
-
-
SILVER PACKAGE
- -
-
$
-
99
-
- -
PER MONTH
- -
-
- 10 - Projects -
-
- 10 - Pages -
-
- 100 - Mb Disk Space -
-
- - -
- -
-
BEST VALUE
- -
GOLD PACKAGE
- -
-
$
-
299
-
- -
PER MONTH
- -
-
- 20 - Projects -
-
- 20 - Pages -
-
- 200 - Mb Disk Space -
-
- - -
- -
-
PLATINUM PACKAGE
- -
-
$
-
499
-
- -
PER MONTH
- -
-
- 40 - Projects -
-
- 40 - Pages -
-
- 500 - Mb Disk Space -
-
- - - -
-
- -
- - - -
- -
Style 3
- -
-
-
-
Starter
-
For small teams
-
- -
-
$
-
-
29
-
monthly per user
-
-
- -
-
Unlimited projects
-
Unlimited pages
-
Unlimited disk space
-
24 / 7 Free support
-
- - - -
7 day free trial to start
-
- -
-
-
Pro
-
For larger teams
-
- -
-
$
-
-
59
-
monthly per user
-
-
- -
-
Unlimited projects
-
Unlimited pages
-
Unlimited disk space
-
24 / 7 Free support
-
Advanced reporting
-
Customizable interface
-
CRM Integration
-
- - - -
30 day free trial to start
-
- -
-
-
Enterprise
-
For big teams
-
- -
-
$
-
-
99
-
monthly per user
-
-
- -
-
Unlimited projects
-
Unlimited pages
-
Unlimited disk space
-
For full feature list, call us
-
- - - -
90 day free trial to start
-
-
- -
- - -
- -
- diff --git a/src/app/main/content/components/price-tables/price-tables.component.scss b/src/app/main/content/components/price-tables/price-tables.component.scss deleted file mode 100644 index 8fdbe2d4..00000000 --- a/src/app/main/content/components/price-tables/price-tables.component.scss +++ /dev/null @@ -1,3 +0,0 @@ -:host { - -} \ No newline at end of file diff --git a/src/app/main/content/components/price-tables/price-tables.component.ts b/src/app/main/content/components/price-tables/price-tables.component.ts deleted file mode 100644 index 1b543a25..00000000 --- a/src/app/main/content/components/price-tables/price-tables.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-price-tables', - templateUrl: './price-tables.component.html', - styleUrls : ['./price-tables.component.scss'] -}) -export class FusePriceTablesComponent -{ - constructor() - { - - } -} diff --git a/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.html b/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.html deleted file mode 100644 index f95e311b..00000000 --- a/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.html +++ /dev/null @@ -1,39 +0,0 @@ -
- -
- -
- - - -
RECOVER YOUR PASSWORD
- -
- - - - - Email is required - - - Please enter a valid email address - - - - -
- - - -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.scss b/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.scss deleted file mode 100644 index 12c789e0..00000000 --- a/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.scss +++ /dev/null @@ -1,80 +0,0 @@ -@import "../../../../../core/scss/fuse"; - -:host { - - #forgot-password { - width: 100%; - overflow: auto; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #forgot-password-form-wrapper { - flex: 1 0 auto; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 16px; - } - - #forgot-password-form { - width: 384px; - max-width: 384px; - padding: 32px; - text-align: center; - background: #FFFFFF; - @include mat-elevation(7); - - @include media-breakpoint('xs') { - padding: 24px; - width: 100%; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin: 32px auto; - color: #FFFFFF; - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 20px; - margin: 16px 0 32px 0; - } - - form { - width: 100%; - text-align: left; - - md-input-container { - width: 100%; - } - - .submit-button { - width: 220px; - margin: 16px auto; - display: block; - - @include media-breakpoint('xs') { - width: 90%; - } - } - } - - .login { - margin: 32px auto 24px auto; - width: 250px; - font-weight: 500; - - .text { - margin-right: 8px; - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.ts b/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.ts deleted file mode 100644 index cdd9f2d6..00000000 --- a/src/app/main/content/pages/authentication/forgot-password/forgot-password.component.ts +++ /dev/null @@ -1,65 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-forgot-password', - templateUrl: './forgot-password.component.html', - styleUrls : ['./forgot-password.component.scss'] -}) -export class FuseForgotPasswordComponent implements OnInit -{ - forgotPasswordForm: FormGroup; - forgotPasswordFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.forgotPasswordFormErrors = { - email: {} - }; - } - - ngOnInit() - { - this.forgotPasswordForm = this.formBuilder.group({ - email: ['', [Validators.required, Validators.email]] - }); - - this.forgotPasswordForm.valueChanges.subscribe(() => { - this.onForgotPasswordFormValuesChanged(); - }); - } - - onForgotPasswordFormValuesChanged() - { - for ( const field in this.forgotPasswordFormErrors ) - { - if ( !this.forgotPasswordFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.forgotPasswordFormErrors[field] = {}; - - // Get the control - const control = this.forgotPasswordFormErrors.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.forgotPasswordFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/authentication/forgot-password/forgot-password.module.ts b/src/app/main/content/pages/authentication/forgot-password/forgot-password.module.ts deleted file mode 100644 index 40554f80..00000000 --- a/src/app/main/content/pages/authentication/forgot-password/forgot-password.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseForgotPasswordComponent } from './forgot-password.component'; - -const routes = [ - { - path : 'pages/auth/forgot-password', - component: FuseForgotPasswordComponent - } -]; - -@NgModule({ - declarations: [ - FuseForgotPasswordComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class ForgotPasswordModule -{ - -} diff --git a/src/app/main/content/pages/authentication/lock/lock.component.html b/src/app/main/content/pages/authentication/lock/lock.component.html deleted file mode 100644 index dcdd83fa..00000000 --- a/src/app/main/content/pages/authentication/lock/lock.component.html +++ /dev/null @@ -1,48 +0,0 @@ -
- -
- -
- -
-
- - lock -
- -
-
YOUR SESSION IS LOCKED
-
- Due to inactivity, your session is locked. Enter your password to continue. -
-
-
- -
- - - - - - - - - Password is required - - - - -
- - - -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/pages/authentication/lock/lock.component.scss b/src/app/main/content/pages/authentication/lock/lock.component.scss deleted file mode 100644 index bdfbafd3..00000000 --- a/src/app/main/content/pages/authentication/lock/lock.component.scss +++ /dev/null @@ -1,78 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - - #lock { - width: 100%; - overflow: auto; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #lock-form-wrapper { - flex: 1 0 auto; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 16px; - } - - #lock-form { - width: 384px; - max-width: 384px; - padding: 48px 32px 32px 32px; - background: #FFFFFF; - @include mat-elevation(7); - - @include media-breakpoint('xs') { - padding: 24px; - width: 100%; - } - - .title { - font-size: 20px; - margin-bottom: 8px; - } - - .subtitle { - color: rgba(0, 0, 0, 0.54); - } - - .avatar-container { - position: relative; - margin-right: 16px; - - md-icon { - position: absolute; - bottom: 0; - right: 0; - color: mat-color($mat-red, 500); - } - } - - form { - width: 100%; - margin: 32px 0 0 0; - - md-input-container { - width: 100%; - } - - .submit-button { - width: 220px; - margin: 16px auto; - display: block; - - @include media-breakpoint('xs') { - width: 90%; - } - } - } - - .message { - font-weight: 500; - text-align: center; - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/authentication/lock/lock.component.ts b/src/app/main/content/pages/authentication/lock/lock.component.ts deleted file mode 100644 index bbd3fe12..00000000 --- a/src/app/main/content/pages/authentication/lock/lock.component.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector: 'fuse-lock', - templateUrl: './lock.component.html', - styleUrls: ['./lock.component.scss'] -}) -export class FuseLockComponent implements OnInit -{ - lockForm: FormGroup; - lockFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.lockFormErrors = { - username: {}, - password: {} - }; - } - - ngOnInit() - { - this.lockForm = this.formBuilder.group({ - username: [ - { - value : 'Katherine', - disabled: true - }, Validators.required - ], - password: ['', Validators.required] - }); - - this.lockForm.valueChanges.subscribe(() => { - this.onLockFormValuesChanged(); - }); - } - - onLockFormValuesChanged() - { - for ( const field in this.lockFormErrors ) - { - if ( this.lockFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.lockFormErrors[field] = {}; - - // Get the control - const control = this.lockForm.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.lockFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/authentication/lock/lock.module.ts b/src/app/main/content/pages/authentication/lock/lock.module.ts deleted file mode 100644 index 6a7def37..00000000 --- a/src/app/main/content/pages/authentication/lock/lock.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseLockComponent } from './lock.component'; - -const routes = [ - { - path : 'pages/auth/lock', - component: FuseLockComponent - } -]; - -@NgModule({ - declarations: [ - FuseLockComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class LockModule -{ - -} diff --git a/src/app/main/content/pages/authentication/login-2/login-2.component.html b/src/app/main/content/pages/authentication/login-2/login-2.component.html deleted file mode 100644 index 2a39a8d7..00000000 --- a/src/app/main/content/pages/authentication/login-2/login-2.component.html +++ /dev/null @@ -1,88 +0,0 @@ -
- -
- - -
- Welcome to the FUSE! -
- -
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus ullamcorper nisl erat, - vel convallis elit fermentum pellentesque. Sed mollis velit facilisis facilisis viverra. -
-
- -
- -
- - - -
LOGIN TO YOUR ACCOUNT
-
Sed mollis velit facilisis facilisis viverra
- -
- - - - - Email is required - - - Please enter a valid email address - - - - - - - Password is required - - - -
- - Remember Me - - - - Forgot Password? - -
- - - -
- -
- OR -
- -
- - - - - -
- -
- Don't have an account? - Create an account -
-
-
-
\ No newline at end of file diff --git a/src/app/main/content/pages/authentication/login-2/login-2.component.scss b/src/app/main/content/pages/authentication/login-2/login-2.component.scss deleted file mode 100644 index f63666af..00000000 --- a/src/app/main/content/pages/authentication/login-2/login-2.component.scss +++ /dev/null @@ -1,215 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - - #login { - width: 100%; - overflow: hidden; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #login-intro { - padding: 128px; - - @include media-breakpoint('sm') { - padding: 128px 64px; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin-bottom: 32px; - color: #FFFFFF; - border-radius: 2px; - text-align: center; - background: mat-color($accent); - } - - .title { - font-size: 42px; - font-weight: 300; - line-height: 1; - } - - .description { - padding-top: 8px; - font-size: 14px; - max-width: 600px; - } - } - - #login-form-wrapper { - width: 400px; - min-width: 400px; - max-width: 400px; - height: 100%; - background: #FFFFFF; - @include mat-elevation(7); - - @include media-breakpoint('sm') { - width: 360px; - min-width: 360px; - max-width: 360px; - } - - @include media-breakpoint('xs') { - width: 100%; - min-width: 100%; - max-width: 100%; - } - - #login-form { - padding: 128px 48px 48px 48px; - - @include media-breakpoint('xs') { - text-align: center; - padding: 24px; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - text-align: center; - margin: 32px auto; - color: #FFFFFF; - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 21px; - } - - .description { - padding-top: 8px; - } - - form { - width: 100%; - padding-top: 32px; - - md-input-container { - width: 100%; - - @include media-breakpoint('xs') { - width: 80%; - } - } - - md-checkbox { - margin: 0; - } - - .remember-forgot-password { - font-size: 13px; - margin-top: 8px; - - .remember-me { - margin-bottom: 16px - } - - .forgot-password { - font-size: 13px; - font-weight: 500; - margin-bottom: 16px - } - } - - .submit-button { - width: 100%; - margin: 16px auto; - display: block; - - @include media-breakpoint('xs') { - width: 80%; - } - } - } - - .separator { - font-size: 15px; - font-weight: 600; - margin: 24px auto; - position: relative; - overflow: hidden; - width: 100px; - text-align: center; - color: rgba(0, 0, 0, 0.54); - - .text { - display: inline-flex; - position: relative; - padding: 0 8px; - z-index: 9999; - - &:before, &:after { - content: ''; - display: block; - width: 30px; - position: absolute; - top: 10px; - border-top: 1px solid rgba(0, 0, 0, 0.12); - } - - &:before { - right: 100%; - } - - &:after { - left: 100%; - } - } - } - - button { - - &.google, - &.facebook { - width: 70%; - text-transform: none; - color: #FFFFFF; - font-size: 13px; - - @include media-breakpoint('xs') { - width: 60%; - } - - md-icon { - color: #FFFFFF; - margin: 0 8px 0 0; - } - } - - &.google { - background-color: #D73D32; - margin-bottom: 8px; - } - - &.facebook { - background-color: rgb(63, 92, 154); - } - } - - .register { - margin: 32px auto 24px auto; - width: 250px; - font-weight: 500; - - .text { - margin-right: 8px; - } - - .link { - - } - } - } - } - } -} diff --git a/src/app/main/content/pages/authentication/login-2/login-2.component.ts b/src/app/main/content/pages/authentication/login-2/login-2.component.ts deleted file mode 100644 index 22faf546..00000000 --- a/src/app/main/content/pages/authentication/login-2/login-2.component.ts +++ /dev/null @@ -1,67 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-login-2', - templateUrl: './login-2.component.html', - styleUrls : ['./login-2.component.scss'] -}) -export class FuseLogin2Component implements OnInit -{ - loginForm: FormGroup; - loginFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.loginFormErrors = { - email : {}, - password: {} - }; - } - - ngOnInit() - { - this.loginForm = this.formBuilder.group({ - email : ['', [Validators.required, Validators.email]], - password: ['', Validators.required] - }); - - this.loginForm.valueChanges.subscribe(() => { - this.onLoginFormValuesChanged(); - }); - } - - onLoginFormValuesChanged() - { - for ( const field in this.loginFormErrors ) - { - if ( !this.loginFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.loginFormErrors[field] = {}; - - // Get the control - const control = this.loginForm.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.loginFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/authentication/login-2/login-2.module.ts b/src/app/main/content/pages/authentication/login-2/login-2.module.ts deleted file mode 100644 index 6bc84d1f..00000000 --- a/src/app/main/content/pages/authentication/login-2/login-2.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseLogin2Component } from './login-2.component'; - -const routes = [ - { - path : 'pages/auth/login-2', - component: FuseLogin2Component - } -]; - -@NgModule({ - declarations: [ - FuseLogin2Component - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class Login2Module -{ - -} diff --git a/src/app/main/content/pages/authentication/login/login.component.html b/src/app/main/content/pages/authentication/login/login.component.html deleted file mode 100644 index 4f030829..00000000 --- a/src/app/main/content/pages/authentication/login/login.component.html +++ /dev/null @@ -1,67 +0,0 @@ -
- -
- -
- - -
LOGIN TO YOUR ACCOUNT
- -
- - - - - Email is required - - - Please enter a valid email address - - - - - - - Password is required - - - -
- - Remember Me - - - - Forgot Password? - -
- - - -
- -
- OR -
- - - - - -
- Don't have an account? - Create an account -
-
-
-
\ No newline at end of file diff --git a/src/app/main/content/pages/authentication/login/login.component.scss b/src/app/main/content/pages/authentication/login/login.component.scss deleted file mode 100644 index aab0e1dd..00000000 --- a/src/app/main/content/pages/authentication/login/login.component.scss +++ /dev/null @@ -1,156 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - - #login { - width: 100%; - overflow: auto; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #login-form-wrapper { - flex: 1 0 auto; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 16px; - } - - #login-form { - width: 384px; - max-width: 384px; - padding: 32px; - background: #FFFFFF; - text-align: center; - @include mat-elevation(7); - - @include media-breakpoint('xs') { - padding: 24px; - width: 100%; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin: 32px auto; - color: #FFFFFF; - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 20px; - margin: 16px 0 32px 0; - } - - form { - width: 100%; - text-align: left; - - md-input-container { - width: 100%; - } - - md-checkbox { - margin: 0; - } - - .remember-forgot-password { - font-size: 13px; - margin-top: 8px; - - .remember-me { - margin-bottom: 16px - } - - .forgot-password { - font-size: 13px; - font-weight: 500; - margin-bottom: 16px - } - } - - .submit-button { - width: 220px; - margin: 16px auto; - display: block; - - @include media-breakpoint('xs') { - width: 90%; - } - } - } - - .register { - margin: 32px auto 24px auto; - font-weight: 500; - - .text { - margin-right: 8px; - } - } - - .separator { - font-size: 15px; - font-weight: 600; - margin: 24px auto; - position: relative; - overflow: hidden; - width: 100px; - color: rgba(0, 0, 0, 0.54); - - .text { - display: inline-flex; - position: relative; - padding: 0 8px; - z-index: 9999; - - &:before, &:after { - content: ''; - display: block; - width: 30px; - position: absolute; - top: 10px; - border-top: 1px solid rgba(0, 0, 0, 0.12); - } - - &:before { - right: 100%; - } - - &:after { - left: 100%; - } - } - } - - button { - - &.google, - &.facebook { - width: 192px; - text-transform: none; - color: #FFFFFF; - font-size: 13px; - } - - @include media-breakpoint('xs') { - width: 80%; - } - - &.google { - background-color: #D73D32; - margin-bottom: 8px; - } - - &.facebook { - background-color: rgb(63, 92, 154); - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/authentication/login/login.component.ts b/src/app/main/content/pages/authentication/login/login.component.ts deleted file mode 100644 index a1fcee1b..00000000 --- a/src/app/main/content/pages/authentication/login/login.component.ts +++ /dev/null @@ -1,68 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-login', - templateUrl: './login.component.html', - styleUrls : ['./login.component.scss'] -}) -export class FuseLoginComponent implements OnInit -{ - loginForm: FormGroup; - loginFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.loginFormErrors = { - email : {}, - password: {} - }; - } - - ngOnInit() - { - this.loginForm = this.formBuilder.group({ - email : ['', [Validators.required, Validators.email]], - password: ['', Validators.required] - }); - - this.loginForm.valueChanges.subscribe(() => { - this.onLoginFormValuesChanged(); - }); - } - - onLoginFormValuesChanged() - { - for ( const field in this.loginFormErrors ) - { - if ( !this.loginFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.loginFormErrors[field] = {}; - - // Get the control - const control = this.loginForm.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.loginFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/authentication/login/login.module.ts b/src/app/main/content/pages/authentication/login/login.module.ts deleted file mode 100644 index 00ed3966..00000000 --- a/src/app/main/content/pages/authentication/login/login.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseLoginComponent } from './login.component'; - -const routes = [ - { - path : 'pages/auth/login', - component: FuseLoginComponent - } -]; - -@NgModule({ - declarations: [ - FuseLoginComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class LoginModule -{ - -} diff --git a/src/app/main/content/pages/authentication/register-2/register-2.component.html b/src/app/main/content/pages/authentication/register-2/register-2.component.html deleted file mode 100644 index 98bb9e64..00000000 --- a/src/app/main/content/pages/authentication/register-2/register-2.component.html +++ /dev/null @@ -1,82 +0,0 @@ -
- -
- - -
- Welcome to the FUSE! -
- -
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus ullamcorper nisl erat, - vel convallis elit fermentum pellentesque. Sed mollis velit facilisis facilisis viverra. -
-
- -
- -
- - - -
CREATE AN ACCOUNT
-
Sed mollis velit facilisis facilisis viverra
- -
- - - - - Name is required - - - - - - - Email is required - - - Please enter a valid email address - - - - - - - Password is required - - - - - - - Password confirmation is required - - - -
- - I read and accept - - terms and conditions -
- - - -
- -
- Already have an account? - Login -
-
-
-
\ No newline at end of file diff --git a/src/app/main/content/pages/authentication/register-2/register-2.component.scss b/src/app/main/content/pages/authentication/register-2/register-2.component.scss deleted file mode 100644 index e583e60c..00000000 --- a/src/app/main/content/pages/authentication/register-2/register-2.component.scss +++ /dev/null @@ -1,195 +0,0 @@ -@import "../../../../../core/scss/fuse"; - -:host { - - #register { - width: 100%; - overflow: hidden; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #register-intro { - padding: 128px; - - @include media-breakpoint('sm') { - padding: 128px 64px; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin-bottom: 32px; - color: #FFFFFF; - border-radius: 2px; - text-align: center; - background: mat-color($accent); - } - - .title { - font-size: 42px; - font-weight: 300; - line-height: 1; - } - - .description { - padding-top: 8px; - font-size: 14px; - max-width: 600px; - } - } - - #register-form-wrapper { - width: 400px; - min-width: 400px; - max-width: 400px; - height: 100%; - background: #FFFFFF; - @include mat-elevation(7); - - @include media-breakpoint('sm') { - width: 360px; - min-width: 360px; - max-width: 360px; - } - - @include media-breakpoint('xs') { - width: 100%; - min-width: 100%; - max-width: 100%; - } - - #register-form { - padding: 128px 48px 48px 48px; - - @include media-breakpoint('xs') { - text-align: center; - padding: 24px; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - text-align: center; - margin: 32px auto; - color: #FFFFFF; - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 21px; - } - - .description { - padding-top: 8px; - } - - form { - width: 100%; - padding-top: 32px; - - md-input-container { - width: 100%; - - @include media-breakpoint('xs') { - width: 80%; - } - } - - md-checkbox { - margin: 0; - } - - .terms { - font-size: 13px; - margin: 16px 0 32px 0; - - a { - margin-left: 4px; - } - } - - .submit-button { - width: 100%; - margin: 16px auto; - display: block; - - @include media-breakpoint('xs') { - width: 80%; - } - } - } - - .separator { - font-size: 15px; - font-weight: 600; - margin: 24px auto; - position: relative; - overflow: hidden; - width: 100px; - text-align: center; - color: rgba(0, 0, 0, 0.54); - - .text { - display: inline-flex; - position: relative; - padding: 0 8px; - z-index: 9999; - - &:before, &:after { - content: ''; - display: block; - width: 30px; - position: absolute; - top: 10px; - border-top: 1px solid rgba(0, 0, 0, 0.12); - } - - &:before { - right: 100%; - } - - &:after { - left: 100%; - } - } - } - - button { - - &.google, - &.facebook { - width: 70%; - text-transform: none; - color: #FFFFFF; - font-size: 13px; - - @include media-breakpoint('xs') { - width: 60%; - } - - md-icon { - color: #FFFFFF; - margin: 0 8px 0 0; - } - } - - &.google { - background-color: #D73D32; - margin-bottom: 8px; - } - - &.facebook { - background-color: rgb(63, 92, 154); - } - } - } - } - } -} diff --git a/src/app/main/content/pages/authentication/register-2/register-2.component.ts b/src/app/main/content/pages/authentication/register-2/register-2.component.ts deleted file mode 100644 index 85bdec05..00000000 --- a/src/app/main/content/pages/authentication/register-2/register-2.component.ts +++ /dev/null @@ -1,71 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-register-2', - templateUrl: './register-2.component.html', - styleUrls : ['./register-2.component.scss'] -}) -export class FuseRegister2Component implements OnInit -{ - registerForm: FormGroup; - registerFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.registerFormErrors = { - name : {}, - email : {}, - password : {}, - passwordConfirm: {} - }; - } - - ngOnInit() - { - this.registerForm = this.formBuilder.group({ - name : ['', Validators.required], - email : ['', [Validators.required, Validators.email]], - password : ['', Validators.required], - passwordConfirm: ['', Validators.required] - }); - - this.registerForm.valueChanges.subscribe(() => { - this.onRegisterFormValuesChanged(); - }); - } - - onRegisterFormValuesChanged() - { - for ( const field in this.registerFormErrors ) - { - if ( !this.registerFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.registerFormErrors[field] = {}; - - // Get the control - const control = this.registerForm.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.registerFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/authentication/register-2/register-2.module.ts b/src/app/main/content/pages/authentication/register-2/register-2.module.ts deleted file mode 100644 index 181fd924..00000000 --- a/src/app/main/content/pages/authentication/register-2/register-2.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from 'app/core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseRegister2Component } from './register-2.component'; - -const routes = [ - { - path : 'pages/auth/register-2', - component: FuseRegister2Component - } -]; - -@NgModule({ - declarations: [ - FuseRegister2Component - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class Register2Module -{ - -} diff --git a/src/app/main/content/pages/authentication/register/register.component.html b/src/app/main/content/pages/authentication/register/register.component.html deleted file mode 100644 index 7fe77d7c..00000000 --- a/src/app/main/content/pages/authentication/register/register.component.html +++ /dev/null @@ -1,65 +0,0 @@ -
- -
- -
- - -
CREATE AN ACCOUNT
- -
- - - - - Name is required - - - - - - - Email is required - - - Please enter a valid email address - - - - - - - Password is required - - - - - - - Password confirmation is required - - - -
- - I read and accept - - terms and conditions -
- - - -
- -
- Already have an account? - Login -
-
-
-
\ No newline at end of file diff --git a/src/app/main/content/pages/authentication/register/register.component.scss b/src/app/main/content/pages/authentication/register/register.component.scss deleted file mode 100644 index 4c170672..00000000 --- a/src/app/main/content/pages/authentication/register/register.component.scss +++ /dev/null @@ -1,150 +0,0 @@ -@import "../../../../../core/scss/fuse"; - -:host { - - #register { - width: 100%; - overflow: auto; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #register-form-wrapper { - flex: 1 0 auto; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 16px; - } - - #register-form { - width: 384px; - max-width: 384px; - padding: 32px; - background: #FFFFFF; - text-align: center; - @include mat-elevation(7); - - @include media-breakpoint('xs') { - padding: 24px; - width: 100%; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin: 32px auto; - color: #FFFFFF; - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 20px; - margin: 16px 0 32px 0; - } - - form { - width: 100%; - text-align: left; - - md-input-container { - width: 100%; - } - - md-checkbox { - margin: 0; - } - - .terms { - font-size: 13px; - margin: 16px 0 32px 0; - - a { - margin-left: 4px; - } - } - - .submit-button { - width: 220px; - margin: 16px auto; - display: block; - - @include media-breakpoint('xs') { - width: 90%; - } - } - } - - .register { - margin: 32px auto 24px auto; - font-weight: 500; - - .text { - margin-right: 8px; - } - } - - .separator { - font-size: 15px; - font-weight: 600; - margin: 24px auto; - position: relative; - overflow: hidden; - width: 100px; - color: rgba(0, 0, 0, 0.54); - - .text { - display: inline-flex; - position: relative; - padding: 0 8px; - z-index: 9999; - - &:before, &:after { - content: ''; - display: block; - width: 30px; - position: absolute; - top: 10px; - border-top: 1px solid rgba(0, 0, 0, 0.12); - } - - &:before { - right: 100%; - } - - &:after { - left: 100%; - } - } - } - - button { - - &.google, - &.facebook { - width: 192px; - text-transform: none; - color: #FFFFFF; - font-size: 13px; - } - - @include media-breakpoint('xs') { - width: 80%; - } - - &.google { - background-color: #D73D32; - margin-bottom: 8px; - } - - &.facebook { - background-color: rgb(63, 92, 154); - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/authentication/register/register.component.ts b/src/app/main/content/pages/authentication/register/register.component.ts deleted file mode 100644 index 563a5efd..00000000 --- a/src/app/main/content/pages/authentication/register/register.component.ts +++ /dev/null @@ -1,72 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-register', - templateUrl: './register.component.html', - styleUrls : ['./register.component.scss'] -}) -export class FuseRegisterComponent implements OnInit -{ - registerForm: FormGroup; - registerFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.registerFormErrors = { - name : {}, - email : {}, - password : {}, - passwordConfirm: {} - }; - } - - ngOnInit() - { - - this.registerForm = this.formBuilder.group({ - name : ['', Validators.required], - email : ['', [Validators.required, Validators.email]], - password : ['', Validators.required], - passwordConfirm: ['', Validators.required] - }); - - this.registerForm.valueChanges.subscribe(() => { - this.onRegisterFormValuesChanged(); - }); - } - - onRegisterFormValuesChanged() - { - for ( const field in this.registerFormErrors ) - { - if ( !this.registerFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.registerFormErrors[field] = {}; - - // Get the control - const control = this.registerForm.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.registerFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/authentication/register/register.module.ts b/src/app/main/content/pages/authentication/register/register.module.ts deleted file mode 100644 index ad23ce6c..00000000 --- a/src/app/main/content/pages/authentication/register/register.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseRegisterComponent } from './register.component'; - -const routes = [ - { - path : 'pages/auth/register', - component: FuseRegisterComponent - } -]; - -@NgModule({ - declarations: [ - FuseRegisterComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class RegisterModule -{ - -} diff --git a/src/app/main/content/pages/authentication/reset-password/reset-password.component.html b/src/app/main/content/pages/authentication/reset-password/reset-password.component.html deleted file mode 100644 index 095e9d28..00000000 --- a/src/app/main/content/pages/authentication/reset-password/reset-password.component.html +++ /dev/null @@ -1,53 +0,0 @@ -
- -
- -
- - - -
RESET YOUR PASSWORD
- -
- - - - - Email is required - - - Please enter a valid email address - - - - - - - Password is required - - - - - - - Password confirmation is required - - - - -
- - - -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/pages/authentication/reset-password/reset-password.component.scss b/src/app/main/content/pages/authentication/reset-password/reset-password.component.scss deleted file mode 100644 index 1bdee4f1..00000000 --- a/src/app/main/content/pages/authentication/reset-password/reset-password.component.scss +++ /dev/null @@ -1,80 +0,0 @@ -@import "../../../../../core/scss/fuse"; - -:host { - - #reset-password { - width: 100%; - overflow: auto; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #reset-password-form-wrapper { - flex: 1 0 auto; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 16px; - } - - #reset-password-form { - width: 400px; - max-width: 400px; - padding: 32px; - text-align: center; - background: #FFFFFF; - @include mat-elevation(7); - - @include media-breakpoint('xs') { - padding: 24px; - width: 100%; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin: 32px auto; - color: #FFFFFF; - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 20px; - margin: 16px 0 32px 0; - } - - form { - width: 100%; - text-align: left; - - md-input-container { - width: 100%; - } - - .submit-button { - width: 220px; - margin: 16px auto; - display: block; - - @include media-breakpoint('xs') { - width: 90%; - } - } - } - - .login { - margin: 32px auto 24px auto; - width: 250px; - font-weight: 500; - - .text { - margin-right: 8px; - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/authentication/reset-password/reset-password.component.ts b/src/app/main/content/pages/authentication/reset-password/reset-password.component.ts deleted file mode 100644 index 268bcb62..00000000 --- a/src/app/main/content/pages/authentication/reset-password/reset-password.component.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-reset-password', - templateUrl: './reset-password.component.html', - styleUrls : ['./reset-password.component.scss'] -}) -export class FuseResetPasswordComponent implements OnInit -{ - resetPasswordForm: FormGroup; - resetPasswordFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.resetPasswordFormErrors = { - email : {}, - password : {}, - passwordConfirm: {} - }; - } - - ngOnInit() - { - this.resetPasswordForm = this.formBuilder.group({ - email : ['', [Validators.required, Validators.email]], - password : ['', Validators.required], - passwordConfirm: ['', Validators.required] - }); - - this.resetPasswordForm.valueChanges.subscribe(() => { - this.onResetPasswordFormValuesChanged(); - }); - } - - onResetPasswordFormValuesChanged() - { - for ( const field in this.resetPasswordFormErrors ) - { - if ( this.resetPasswordFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.resetPasswordFormErrors[field] = {}; - - // Get the control - const control = this.resetPasswordForm.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.resetPasswordFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/authentication/reset-password/reset-password.module.ts b/src/app/main/content/pages/authentication/reset-password/reset-password.module.ts deleted file mode 100644 index fa352940..00000000 --- a/src/app/main/content/pages/authentication/reset-password/reset-password.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseResetPasswordComponent } from './reset-password.component'; - -const routes = [ - { - path : 'pages/auth/reset-password', - component: FuseResetPasswordComponent - } -]; - -@NgModule({ - declarations: [ - FuseResetPasswordComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class ResetPasswordModule -{ - -} diff --git a/src/app/main/content/pages/coming-soon/coming-soon.component.html b/src/app/main/content/pages/coming-soon/coming-soon.component.html deleted file mode 100644 index dcf0fa23..00000000 --- a/src/app/main/content/pages/coming-soon/coming-soon.component.html +++ /dev/null @@ -1,49 +0,0 @@ -
- -
- -
- -
- - - -
Hey! Thank you for checking out our app.
-
It’s not quite ready yet, but we are working hard and it will be ready in - approximately: -
- - - -
- -
- -
- If you would like to be notified when the app is ready, you can subscribe to our e-mail list. -
- - - - - Email is required - - - Please enter a valid email address - - - - - -
- -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/pages/coming-soon/coming-soon.component.scss b/src/app/main/content/pages/coming-soon/coming-soon.component.scss deleted file mode 100644 index 5f0b2533..00000000 --- a/src/app/main/content/pages/coming-soon/coming-soon.component.scss +++ /dev/null @@ -1,96 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - - #coming-soon { - width: 100%; - overflow: auto; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #coming-soon-form-wrapper { - flex: 1 0 auto; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 16px; - } - - #coming-soon-form { - width: 384px; - max-width: 384px; - background: #FFFFFF; - text-align: center; - @include mat-elevation(7); - - @include media-breakpoint('xs') { - width: 100%; - } - - .top { - width: 100%; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 24px; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin: 32px auto; - color: #FFFFFF; - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 17px; - margin-top: 16px; - } - - .subtitle { - margin: 16px auto 0 auto; - text-align: center; - max-width: 300px; - color: rgba(0, 0, 0, 0.54); - font-size: 15px; - } - - fuse-countdown { - margin: 48px auto 16px auto; - } - } - - form { - width: 100%; - padding: 32px; - text-align: center; - background: mat-color($mat-grey, 100); - - .message { - font-weight: 500; - margin: 8px auto 32px auto; - } - - md-input-container { - width: 320px; - margin: 8px auto 16px auto; - } - - .subscribe-button { - width: 220px; - margin: 16px auto; - - @include media-breakpoint('xs') { - width: 90%; - } - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/coming-soon/coming-soon.component.ts b/src/app/main/content/pages/coming-soon/coming-soon.component.ts deleted file mode 100644 index 4308505c..00000000 --- a/src/app/main/content/pages/coming-soon/coming-soon.component.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; - -import { FuseConfigService } from '../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-coming-soon', - templateUrl: './coming-soon.component.html', - styleUrls : ['./coming-soon.component.scss'] -}) -export class FuseComingSoonComponent implements OnInit -{ - comingSoonForm: FormGroup; - comingSoonFormErrors: any; - - constructor( - private fuseConfig: FuseConfigService, - private formBuilder: FormBuilder - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - - this.comingSoonFormErrors = { - email: {} - }; - } - - ngOnInit() - { - this.comingSoonForm = this.formBuilder.group({ - email: ['', [Validators.required, Validators.email]] - }); - - this.comingSoonForm.valueChanges.subscribe(() => { - this.onRegisterFormValuesChanged(); - }); - } - - onRegisterFormValuesChanged() - { - for ( const field in this.comingSoonFormErrors ) - { - if ( !this.comingSoonFormErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.comingSoonFormErrors[field] = {}; - - // Get the control - const control = this.comingSoonForm.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.comingSoonFormErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/pages/coming-soon/coming-soon.module.ts b/src/app/main/content/pages/coming-soon/coming-soon.module.ts deleted file mode 100644 index 21490ce3..00000000 --- a/src/app/main/content/pages/coming-soon/coming-soon.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseComingSoonComponent } from './coming-soon.component'; - -const routes = [ - { - path : 'pages/coming-soon', - component: FuseComingSoonComponent - } -]; - -@NgModule({ - declarations: [ - FuseComingSoonComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class ComingSoonModule -{ - -} diff --git a/src/app/main/content/pages/errors/404/error-404.component.html b/src/app/main/content/pages/errors/404/error-404.component.html deleted file mode 100644 index 62f44227..00000000 --- a/src/app/main/content/pages/errors/404/error-404.component.html +++ /dev/null @@ -1,18 +0,0 @@ -
- -
- -
404
- -
Sorry but we could not find the page you are looking for
- - - - Go back to dashboard - -
- -
\ No newline at end of file diff --git a/src/app/main/content/pages/errors/404/error-404.component.scss b/src/app/main/content/pages/errors/404/error-404.component.scss deleted file mode 100644 index 870ee499..00000000 --- a/src/app/main/content/pages/errors/404/error-404.component.scss +++ /dev/null @@ -1,47 +0,0 @@ -@import "../../../../../core/scss/fuse"; - -:host { - - #error-404 { - width: 100%; - overflow: auto; - - .content { - width: 90%; - max-width: 512px !important; - - .error-code { - font-size: 112px; - text-align: center; - line-height: 1; - margin-bottom: 16px; - font-weight: 500; - } - - .message { - font-size: 24px; - text-align: center; - color: rgba(0, 0, 0, 0.54); - } - - .search { - width: 100%; - height: 56px; - line-height: 56px; - margin: 48px auto 16px auto; - padding: 16px; - background: #FFFFFF; - @include mat-elevation(1); - - input { - padding: 0 0 0 16px; - } - } - - .back-link { - font-size: 15px; - text-align: center; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/errors/404/error-404.component.ts b/src/app/main/content/pages/errors/404/error-404.component.ts deleted file mode 100644 index 0797035c..00000000 --- a/src/app/main/content/pages/errors/404/error-404.component.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-error-404', - templateUrl: './error-404.component.html', - styleUrls : ['./error-404.component.scss'] -}) -export class FuseError404Component implements OnInit -{ - constructor( - private fuseConfig: FuseConfigService - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - } - - ngOnInit() - { - } -} diff --git a/src/app/main/content/pages/errors/404/error-404.module.ts b/src/app/main/content/pages/errors/404/error-404.module.ts deleted file mode 100644 index c42409e4..00000000 --- a/src/app/main/content/pages/errors/404/error-404.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseError404Component } from './error-404.component'; - -const routes = [ - { - path : 'pages/errors/error-404', - component: FuseError404Component - } -]; - -@NgModule({ - declarations: [ - FuseError404Component - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class Error404Module -{ - -} diff --git a/src/app/main/content/pages/errors/500/error-500.component.html b/src/app/main/content/pages/errors/500/error-500.component.html deleted file mode 100644 index 7af8898b..00000000 --- a/src/app/main/content/pages/errors/500/error-500.component.html +++ /dev/null @@ -1,17 +0,0 @@ -
- -
- -
500
- -
Well, you broke the internet!
- -
- Just kidding, looks like we have an internal issue, please try again in couple minutes -
- - Report this problem - -
- -
diff --git a/src/app/main/content/pages/errors/500/error-500.component.scss b/src/app/main/content/pages/errors/500/error-500.component.scss deleted file mode 100644 index bf119b0e..00000000 --- a/src/app/main/content/pages/errors/500/error-500.component.scss +++ /dev/null @@ -1,40 +0,0 @@ -@import "../../../../../core/scss/fuse"; - -:host { - - #error-500 { - width: 100%; - overflow: auto; - - .content { - width: 90%; - max-width: 512px !important; - - .error-code { - font-size: 112px; - line-height: 1; - text-align: center; - margin-bottom: 16px; - font-weight: 500; - } - - .message { - font-size: 24px; - text-align: center; - color: rgba(0, 0, 0, 0.54); - } - - .sub-message { - font-size: 17px; - text-align: center; - color: rgba(0, 0, 0, 0.54); - margin: 16px auto 48px auto; - } - - .report-link { - text-align: center; - font-size: 15px; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/errors/500/error-500.component.ts b/src/app/main/content/pages/errors/500/error-500.component.ts deleted file mode 100644 index 35507c91..00000000 --- a/src/app/main/content/pages/errors/500/error-500.component.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FuseConfigService } from '../../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-error-500', - templateUrl: './error-500.component.html', - styleUrls : ['./error-500.component.scss'] -}) -export class FuseError500Component implements OnInit -{ - constructor( - private fuseConfig: FuseConfigService, - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - } - - ngOnInit() - { - } -} diff --git a/src/app/main/content/pages/errors/500/error-500.module.ts b/src/app/main/content/pages/errors/500/error-500.module.ts deleted file mode 100644 index b9b70575..00000000 --- a/src/app/main/content/pages/errors/500/error-500.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseError500Component } from './error-500.component'; - -const routes = [ - { - path : 'pages/errors/error-500', - component: FuseError500Component - } -]; - -@NgModule({ - declarations: [ - FuseError500Component - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class Error500Module -{ - -} diff --git a/src/app/main/content/pages/invoices/compact/compact.component.html b/src/app/main/content/pages/invoices/compact/compact.component.html deleted file mode 100644 index c4279c8b..00000000 --- a/src/app/main/content/pages/invoices/compact/compact.component.html +++ /dev/null @@ -1,147 +0,0 @@ -
- -
- - -
- -
-
{{invoice.date}}
- -
-
-
- INVOICE - {{invoice.number}} -
- -
- DUE DATE - {{invoice.dueDate}} -
- -
-
{{invoice.client.title}}
-
{{invoice.client.address}}
-
{{invoice.client.phone}}
- -
{{invoice.client.website}}
-
-
- -
- - -
-
{{invoice.from.title}}
-
{{invoice.from.address}}
-
{{invoice.from.phone}}
- -
{{invoice.from.website}}
-
-
-
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
SERVICEUNITUNIT PRICEQUANTITYTOTAL
-
- {{service.title}} -
-
- {{service.unit}} - - {{service.unitPrice | currency:'USD':true}} - - {{service.quantity}} - - {{service.total | currency:'USD':true}} -
-
- {{service.title}} -
-
- {{service.unit}} - - {{service.unitPrice | currency:'USD':true}} - - {{service.quantity}} - - {{service.total | currency:'USD':true}} -
- - - - - - - - - - - - - - - - - - - - - -
- - -
- - - - -
- -
-
\ No newline at end of file diff --git a/src/app/main/content/pages/invoices/compact/compact.component.scss b/src/app/main/content/pages/invoices/compact/compact.component.scss deleted file mode 100644 index e3743eb4..00000000 --- a/src/app/main/content/pages/invoices/compact/compact.component.scss +++ /dev/null @@ -1,358 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - - #invoice { - - &.compact { - padding: 0; - overflow: auto; - - .invoice-container { - padding: 64px; - - .card { - width: 1020px; - min-width: 1020px; - max-width: 1020px; - padding: 64px 88px; - overflow: hidden; - background: #FFFFFF; - @include mat-elevation(7); - - .header { - - .invoice-date { - font-size: 14px; - color: rgba(0, 0, 0, 0.54); - margin-bottom: 32px; - } - - .client { - - .invoice-number { - font-size: 18px; - padding-bottom: 2px; - - .title { - color: rgba(0, 0, 0, 0.54); - } - - .number { - padding-left: 6px; - } - } - - .due-date { - font-size: 18px; - padding-bottom: 16px; - - .title { - color: rgba(0, 0, 0, 0.54); - } - - .date { - padding-left: 6px; - } - } - - .info { - color: rgba(0, 0, 0, 0.54); - line-height: 22px; - } - } - - .issuer { - margin-right: -88px; - padding-right: 66px; - - .logo { - width: 96px; - height: 96px; - font-size: 72px; - border-right: 1px solid rgba(255, 255, 255, 0.7); - } - - .info { - padding: 16px; - } - } - } - - .content { - - .invoice-table { - margin-top: 64px; - font-size: 15px; - - thead { - - tr { - - th { - - &:first-child { - padding-left: 8px; - } - - &:last-child { - padding-right: 8px; - } - } - } - } - - tbody { - - tr { - - td { - - &:first-child { - padding-left: 8px; - } - - &:last-child { - padding-right: 8px; - } - } - } - } - - .title { - font-size: 16px; - } - - .detail { - margin-top: 8px; - font-size: 12px; - color: rgba(0, 0, 0, 0.54); - max-width: 360px; - } - } - - .invoice-table-footer { - margin: 32px 0 72px 0; - - tr { - - td { - text-align: right; - font-size: 16px; - font-weight: 500; - color: rgba(0, 0, 0, 0.54); - border-bottom: none; - padding: 4px 8px; - - &:first-child { - text-align: left; - } - } - - &.discount { - - td { - padding-bottom: 32px; - } - } - - &.total { - - td { - padding: 24px 8px; - border-top: 1px solid rgba(0, 0, 0, 0.12); - font-size: 35px; - font-weight: 300; - color: rgba(0, 0, 0, 1); - } - } - } - } - } - - .footer { - - .note { - font-size: 15px; - font-weight: 500; - margin-bottom: 24px; - } - - // IE10 fix - .logo, .small-note { - -ms-flex: 0 1 auto; - } - - .logo { - width: 32px; - min-width: 32px; - height: 32px; - font-size: 17px; - font-weight: 500; - margin-right: 24px; - border-radius: 2px; - overflow: hidden; - } - - .small-note { - font-size: 12px; - font-weight: 500; - color: rgba(0, 0, 0, 0.54); - line-height: 18px; - } - } - } - } - } - } - - /* PRINT STYLES */ - @media print { - - /* Invoice Specific Styles */ - #invoice { - - &.compact { - - .invoice-container { - padding: 0; - - .card { - width: 100%; - min-width: 0; - background: none; - padding: 0; - box-shadow: none; - - .header { - - .invoice-date { - margin-bottom: 16pt; - } - - .issuer { - padding-right: 0; - margin-right: 0; - } - } - - .content { - - .invoice-table { - margin-top: 16pt; - - thead { - - tr { - - th { - font-size: 10pt; - max-width: 60pt; - - &:first-child { - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - } - } - - tbody { - - tr { - - td { - - &:first-child { - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - } - } - - .title { - font-size: 10pt; - } - - .detail { - margin-top: 4pt; - font-size: 9pt; - max-width: none; - } - } - - .invoice-table-footer { - margin: 16pt 0; - - tr { - - td { - font-size: 13pt; - padding: 4pt 4pt; - - &:first-child { - text-align: left; - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - - &.discount { - - td { - padding-bottom: 16pt; - } - } - - &.total { - - td { - padding: 16pt 4pt 0 4pt; - font-size: 16pt; - - &:first-child { - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - } - } - } - } - - .footer { - - .note { - font-size: 10pt; - margin-bottom: 8pt; - } - - .logo { - font-size: 14pt; - margin-right: 8pt; - } - - .small-note { - font-size: 8pt; - line-height: normal; - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/invoices/compact/compact.component.ts b/src/app/main/content/pages/invoices/compact/compact.component.ts deleted file mode 100644 index 95885916..00000000 --- a/src/app/main/content/pages/invoices/compact/compact.component.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { Component } from '@angular/core'; -import { InvoiceService } from '../invoice.service'; - -@Component({ - selector : 'fuse-invoice-compact', - templateUrl: './compact.component.html', - styleUrls : ['./compact.component.scss'] -}) -export class FuseInvoiceCompactComponent -{ - invoice: any; - - constructor(private invoiceService: InvoiceService) - { - this.invoiceService.invoiceOnChanged - .subscribe((invoice) => { - this.invoice = invoice; - }); - } - -} diff --git a/src/app/main/content/pages/invoices/compact/compact.module.ts b/src/app/main/content/pages/invoices/compact/compact.module.ts deleted file mode 100644 index f30e6773..00000000 --- a/src/app/main/content/pages/invoices/compact/compact.module.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseInvoiceCompactComponent } from './compact.component'; -import { InvoiceService } from '../invoice.service'; - -const routes = [ - { - path : 'pages/invoices/compact', - component: FuseInvoiceCompactComponent, - resolve : { - search: InvoiceService - } - } -]; - -@NgModule({ - declarations: [ - FuseInvoiceCompactComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - providers : [ - InvoiceService - ] -}) - -export class InvoiceCompactModule -{ - -} diff --git a/src/app/main/content/pages/invoices/invoice.service.ts b/src/app/main/content/pages/invoices/invoice.service.ts deleted file mode 100644 index b9576806..00000000 --- a/src/app/main/content/pages/invoices/invoice.service.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; - -@Injectable() -export class InvoiceService implements Resolve -{ - invoice: any; - - invoiceOnChanged: BehaviorSubject = new BehaviorSubject({}); - - constructor(private http: Http) - { - } - - /** - * Resolve - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - return new Promise((resolve, reject) => { - Promise.all([ - this.getInvoice() - ]).then( - () => { - resolve(); - }, - reject - ); - }); - } - - /** - * Get invoice - */ - getInvoice(): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/invoice') - .subscribe(timeline => { - this.invoice = timeline.json().data; - this.invoiceOnChanged.next(this.invoice); - resolve(this.invoice); - }, reject); - }); - } -} diff --git a/src/app/main/content/pages/invoices/modern/modern.component.html b/src/app/main/content/pages/invoices/modern/modern.component.html deleted file mode 100644 index 1ed1c845..00000000 --- a/src/app/main/content/pages/invoices/modern/modern.component.html +++ /dev/null @@ -1,169 +0,0 @@ -
- -
- - -
- -
- -
- -
- - -
- -
-
{{invoice.from.title}}
-
- {{invoice.from.address}} -
-
- Phone: - {{invoice.from.phone}} -
- -
- Web: - {{invoice.from.website}} -
-
-
- -
-
-
CLIENT
-
- -
- -
-
{{invoice.client.title}}
-
- {{invoice.client.address}} -
-
- Phone: - {{invoice.client.phone}} -
- -
- Web: - {{invoice.client.website}} -
-
-
-
- - - - - - - - - - - - - - - - - - - - - -
INVOICE{{invoice.number}}
INVOICE DATE{{invoice.date}}
DUE DATE{{invoice.dueDate}}
TOTAL DUE{{invoice.total | currency:'USD':true}}
-
- -
- - - - - - - - - - - - - - - - - - - -
SERVICEUNITUNIT PRICEQUANTITYTOTAL
-
{{service.title}}
-
{{service.detail}}
-
- {{service.unit}} - - {{service.unitPrice | currency:'USD':true}} - - {{service.quantity}} - - {{service.total | currency:'USD':true}} -
- - - - - - - - - - - - - - - - - - - - - -
- - -
- - - - -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/pages/invoices/modern/modern.component.scss b/src/app/main/content/pages/invoices/modern/modern.component.scss deleted file mode 100644 index 2d8c84b6..00000000 --- a/src/app/main/content/pages/invoices/modern/modern.component.scss +++ /dev/null @@ -1,359 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - - #invoice { - - &.modern { - padding: 0; - overflow: auto; - - .invoice-container { - padding: 64px; - - .card { - width: 1020px; - min-width: 1020px; - max-width: 1020px; - padding: 88px; - overflow: hidden; - background: #FFFFFF; - @include mat-elevation(7); - - .header { - - .ids { - line-height: 22px; - color: rgba(0, 0, 0, 0.54); - - .detail { - width: 160px; - } - - .seller { - margin-bottom: 80px; - - .logo { - width: 156px; - height: 156px; - font-size: 115px; - } - } - - .client { - - .label { - width: 156px; - font-size: 24px; - font-weight: 300; - } - } - - .divider { - width: 1px; - margin: 0 48px; - background-color: rgba(0, 0, 0, 0.12); - height: 144px; - } - } - - .summary { - font-size: 15px; - - .label { - color: rgba(0, 0, 0, 0.54); - text-align: right; - padding-right: 16px; - } - - .value { - color: rgba(0, 0, 0, 1); - } - - .code { - font-size: 35px; - font-weight: 300; - - td { - padding-bottom: 32px; - } - } - } - } - - .content { - - .invoice-table { - margin-top: 96px; - font-size: 15px; - - .title { - font-size: 17px; - } - - .detail { - margin-top: 8px; - font-size: 12px; - color: rgba(0, 0, 0, 0.54); - max-width: 360px; - } - } - - .invoice-table-footer { - margin: 32px 0 96px 0; - - tr { - - td { - text-align: right; - font-size: 17px; - font-weight: 500; - color: rgba(0, 0, 0, 0.54); - border-bottom: none; - padding: 8px 8px; - - &:first-child { - text-align: left; - } - } - - &.discount { - - td { - padding-bottom: 32px; - } - } - - &.total { - - td { - padding: 32px 8px; - border-top: 1px solid rgba(0, 0, 0, 0.12); - font-size: 35px; - font-weight: 300; - color: rgba(0, 0, 0, 1); - } - } - } - } - } - - .footer { - - .note { - font-size: 15px; - font-weight: 500; - margin-bottom: 24px; - } - - // IE10 fix - .logo, .small-note { - -ms-flex: 0 1 auto; - } - - .logo { - width: 32px; - min-width: 32px; - height: 32px; - font-size: 17px; - font-weight: 500; - margin-right: 24px; - border-radius: 2px; - overflow: hidden; - } - - .small-note { - font-size: 12px; - font-weight: 500; - color: rgba(0, 0, 0, 0.54); - line-height: 18px; - } - } - } - } - } - } - - /* PRINT STYLES */ - @media print { - - /* Invoice Specific Styles */ - #invoice { - - &.modern { - - .invoice-container { - padding: 0; - - .card { - width: 100%; - min-width: 0; - background: none; - padding: 0; - box-shadow: none; - - .header { - - .ids { - - .detail { - width: 120pt; - } - - .seller { - margin-bottom: 8pt; - - .logo { - width: 60pt; - height: 60pt; - font-size: 40pt; - } - } - - .client { - - .label { - width: 60pt; - font-size: 16pt; - } - } - - .divider { - margin: 0 12pt; - height: 100pt; - } - } - - .summary { - font-size: 10pt; - - .code { - font-size: 18pt; - - td { - padding-bottom: 10pt; - } - } - } - } - - .content { - - .invoice-table { - margin-top: 16pt; - - thead { - - tr { - - th { - font-size: 10pt; - max-width: 60pt; - - &:first-child { - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - } - } - - tbody { - - tr { - - td { - - &:first-child { - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - } - } - - .title { - font-size: 10pt; - } - - .detail { - margin-top: 4pt; - font-size: 9pt; - max-width: none; - } - } - - .invoice-table-footer { - margin: 16pt 0; - - tr { - - td { - font-size: 13pt; - padding: 4pt 4pt; - - &:first-child { - text-align: left; - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - - &.discount { - - td { - padding-bottom: 16pt; - } - } - - &.total { - - td { - padding: 16pt 4pt 0 4pt; - font-size: 16pt; - - &:first-child { - padding-left: 0; - } - - &:last-child { - padding-right: 0; - } - } - } - } - } - } - - .footer { - - .note { - font-size: 10pt; - margin-bottom: 8pt; - } - - .logo { - font-size: 14pt; - margin-right: 8pt; - } - - .small-note { - font-size: 8pt; - line-height: normal; - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/invoices/modern/modern.component.ts b/src/app/main/content/pages/invoices/modern/modern.component.ts deleted file mode 100644 index bf529566..00000000 --- a/src/app/main/content/pages/invoices/modern/modern.component.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { Component } from '@angular/core'; -import { InvoiceService } from '../invoice.service'; - -@Component({ - selector : 'fuse-invoice-modern', - templateUrl: './modern.component.html', - styleUrls : ['./modern.component.scss'] -}) -export class FuseInvoiceModernComponent -{ - invoice: any; - - constructor(private invoiceService: InvoiceService) - { - this.invoiceService.invoiceOnChanged - .subscribe((invoice) => { - this.invoice = invoice; - }); - } - -} diff --git a/src/app/main/content/pages/invoices/modern/modern.module.ts b/src/app/main/content/pages/invoices/modern/modern.module.ts deleted file mode 100644 index afe268d3..00000000 --- a/src/app/main/content/pages/invoices/modern/modern.module.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseInvoiceModernComponent } from './modern.component'; -import { InvoiceService } from '../invoice.service'; - -const routes = [ - { - path : 'pages/invoices/modern', - component: FuseInvoiceModernComponent, - resolve : { - search: InvoiceService - } - } -]; - -@NgModule({ - declarations: [ - FuseInvoiceModernComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - providers : [ - InvoiceService - ] -}) - -export class InvoiceModernModule -{ - -} diff --git a/src/app/main/content/pages/maintenance/maintenance.component.html b/src/app/main/content/pages/maintenance/maintenance.component.html deleted file mode 100644 index 848319da..00000000 --- a/src/app/main/content/pages/maintenance/maintenance.component.html +++ /dev/null @@ -1,21 +0,0 @@ -
- -
- -
- - - -
Closed for scheduled maintenance!
- -
- We're sorry for the inconvenience.
Please check back later. -
- -
- -
- -
diff --git a/src/app/main/content/pages/maintenance/maintenance.component.scss b/src/app/main/content/pages/maintenance/maintenance.component.scss deleted file mode 100644 index 5878d40c..00000000 --- a/src/app/main/content/pages/maintenance/maintenance.component.scss +++ /dev/null @@ -1,57 +0,0 @@ -@import "src/app/core/scss/fuse"; - -:host { - - #maintenance { - width: 100%; - overflow: auto; - background: url('/assets/images/backgrounds/march.jpg') no-repeat; - background-size: cover; - - #maintenance-form-wrapper { - flex: 1 0 auto; - padding: 32px; - - @include media-breakpoint('xs') { - padding: 16px; - } - - #maintenance-form { - max-width: 384px; - padding: 32px; - background: #FFFFFF; - text-align: center; - @include mat-elevation(7); - - @include media-breakpoint('xs') { - padding: 24px; - width: 100%; - } - - .logo { - width: 128px; - height: 128px; - line-height: 128px; - font-size: 86px; - font-weight: 500; - margin: 32px auto; - color: rgba(255, 255, 255, 1); - border-radius: 2px; - background: mat-color($accent); - } - - .title { - font-size: 17px; - margin-top: 16px; - } - - .subtitle { - margin: 16px 0; - max-width: 300px; - color: rgba(0, 0, 0, 0.54); - font-size: 15px; - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/maintenance/maintenance.component.ts b/src/app/main/content/pages/maintenance/maintenance.component.ts deleted file mode 100644 index ca814a9d..00000000 --- a/src/app/main/content/pages/maintenance/maintenance.component.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { FuseConfigService } from '../../../../core/services/config.service'; - -@Component({ - selector : 'fuse-maintenance', - templateUrl: './maintenance.component.html', - styleUrls : ['./maintenance.component.scss'] -}) -export class FuseMaintenanceComponent implements OnInit -{ - constructor( - private fuseConfig: FuseConfigService, - ) - { - this.fuseConfig.setSettings({ - layout: { - navigation: 'none', - toolbar : 'none', - footer : 'none' - } - }); - } - - ngOnInit() - { - - } -} diff --git a/src/app/main/content/pages/maintenance/maintenence.module.ts b/src/app/main/content/pages/maintenance/maintenence.module.ts deleted file mode 100644 index 660a70df..00000000 --- a/src/app/main/content/pages/maintenance/maintenence.module.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseMaintenanceComponent } from './maintenance.component'; - -const routes = [ - { - path : 'pages/maintenance', - component: FuseMaintenanceComponent - } -]; - -@NgModule({ - declarations: [ - FuseMaintenanceComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ] -}) - -export class MaintenanceModule -{ - -} diff --git a/src/app/main/content/pages/pages.module.ts b/src/app/main/content/pages/pages.module.ts deleted file mode 100644 index 7aa38974..00000000 --- a/src/app/main/content/pages/pages.module.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { LoginModule } from './authentication/login/login.module'; -import { Login2Module } from './authentication/login-2/login-2.module'; -import { RegisterModule } from './authentication/register/register.module'; -import { Register2Module } from './authentication/register-2/register-2.module'; -import { ForgotPasswordModule } from './authentication/forgot-password/forgot-password.module'; -import { LockModule } from './authentication/lock/lock.module'; -import { ResetPasswordModule } from './authentication/reset-password/reset-password.module'; -import { ComingSoonModule } from './coming-soon/coming-soon.module'; -import { Error404Module } from './errors/404/error-404.module'; -import { Error500Module } from './errors/500/error-500.module'; -import { InvoiceCompactModule } from './invoices/compact/compact.module'; -import { InvoiceModernModule } from './invoices/modern/modern.module'; -import { MaintenanceModule } from './maintenance/maintenence.module'; -import { ProfileModule } from './profile/profile.module'; -import { SearchModule } from './search/search.module'; - -@NgModule({ - imports: [ - // Auth - LoginModule, - Login2Module, - RegisterModule, - Register2Module, - ForgotPasswordModule, - ResetPasswordModule, - LockModule, - - // Coming-soon - ComingSoonModule, - - // Errors - Error404Module, - Error500Module, - - // Invoices - InvoiceModernModule, - InvoiceCompactModule, - - // Maintenance - MaintenanceModule, - - // Profile - ProfileModule, - - // Search - SearchModule - ] -}) -export class PagesModule -{ -} diff --git a/src/app/main/content/pages/profile/profile.component.html b/src/app/main/content/pages/profile/profile.component.html deleted file mode 100644 index 01edc781..00000000 --- a/src/app/main/content/pages/profile/profile.component.html +++ /dev/null @@ -1,43 +0,0 @@ -
- - -
- - - -
- - -
- -
- - - -
- - - - - - - - - - - - - - - - - -
- - -
diff --git a/src/app/main/content/pages/profile/profile.component.scss b/src/app/main/content/pages/profile/profile.component.scss deleted file mode 100644 index af51ba98..00000000 --- a/src/app/main/content/pages/profile/profile.component.scss +++ /dev/null @@ -1,43 +0,0 @@ -@import "../../../../core/scss/fuse"; - -:host { - - #profile { - - .header { - height: 320px; - min-height: 320px; - max-height: 320px; - background: url('/assets/images/backgrounds/march.jpg') no-repeat 0 45%; - background-size: 100% auto; - - .profile-image { - margin-right: 24px; - - @include media-breakpoint('sm') { - margin: 0 0 16px 0; - } - } - - .name { - font-size: 34px; - color: #FFFFFF; - - @include media-breakpoint('sm') { - margin-bottom: 32px; - } - } - - .actions { - - button { - text-transform: none; - padding: 0 16px; - height: 32px; - line-height: 32px; - margin: 0 0 0 8px; - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/profile/profile.component.ts b/src/app/main/content/pages/profile/profile.component.ts deleted file mode 100644 index a14d43a4..00000000 --- a/src/app/main/content/pages/profile/profile.component.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector : 'fuse-profile', - templateUrl: './profile.component.html', - styleUrls : ['./profile.component.scss'] -}) -export class FuseProfileComponent implements OnInit -{ - - constructor() - { - - } - - ngOnInit() - { - - } -} diff --git a/src/app/main/content/pages/profile/profile.module.ts b/src/app/main/content/pages/profile/profile.module.ts deleted file mode 100644 index 971c39b9..00000000 --- a/src/app/main/content/pages/profile/profile.module.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseProfileComponent } from './profile.component'; -import { FuseProfileTimelineComponent } from './tabs/timeline/timeline.component'; -import { FuseProfileAboutComponent } from './tabs/about/about.component'; -import { FuseProfilePhotosVideosComponent } from './tabs/photos-videos/photos-videos.component'; -import { ProfileService } from './profile.service'; - -const routes = [ - { - path : 'pages/profile', - component: FuseProfileComponent, - resolve : { - profile: ProfileService - } - } -]; - -@NgModule({ - declarations: [ - FuseProfileComponent, - FuseProfileTimelineComponent, - FuseProfileAboutComponent, - FuseProfilePhotosVideosComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - providers : [ - ProfileService - ] -}) -export class ProfileModule -{ -} diff --git a/src/app/main/content/pages/profile/profile.service.ts b/src/app/main/content/pages/profile/profile.service.ts deleted file mode 100644 index f623648d..00000000 --- a/src/app/main/content/pages/profile/profile.service.ts +++ /dev/null @@ -1,92 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; - -@Injectable() -export class ProfileService implements Resolve -{ - timeline: any; - about: any; - photosVideos: any; - - timelineOnChanged: BehaviorSubject = new BehaviorSubject({}); - aboutOnChanged: BehaviorSubject = new BehaviorSubject({}); - photosVideosOnChanged: BehaviorSubject = new BehaviorSubject({}); - - constructor(private http: Http) - { - } - - /** - * Resolve - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - return new Promise((resolve, reject) => { - Promise.all([ - this.getTimeline(), - this.getAbout(), - this.getPhotosVideos() - ]).then( - () => { - resolve(); - }, - reject - ); - }); - } - - /** - * Get timeline - */ - getTimeline(): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/profile-timeline') - .subscribe(timeline => { - this.timeline = timeline.json().data; - this.timelineOnChanged.next(this.timeline); - resolve(this.timeline); - }, reject); - }); - } - - /** - * Get about - */ - getAbout(): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/profile-about') - .subscribe(about => { - this.about = about.json().data; - this.aboutOnChanged.next(this.about); - resolve(this.about); - }, reject); - }); - } - - /** - * Get photos & videos - */ - getPhotosVideos(): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/profile-photos-videos') - .subscribe(photosVideos => { - this.photosVideos = photosVideos.json().data; - this.photosVideosOnChanged.next(this.photosVideos); - resolve(this.photosVideos); - }, reject); - }); - } - -} diff --git a/src/app/main/content/pages/profile/tabs/about/about.component.html b/src/app/main/content/pages/profile/tabs/about/about.component.html deleted file mode 100644 index 7c9f7404..00000000 --- a/src/app/main/content/pages/profile/tabs/about/about.component.html +++ /dev/null @@ -1,157 +0,0 @@ -
- -
- -
- -
-
General Information
-
- -
-
-
Gender
-
{{about.general.gender}}
-
- -
-
Birthday
-
{{about.general.birthday}}
-
- -
-
Locations
-
- {{location}} - location_on -
-
- -
-
About Me
-
{{about.general.about}}
-
-
- -
- -
- -
-
Work
-
- -
-
-
Occupation
-
{{about.work.occupation}}
-
- -
-
Skills
-
{{about.work.skills}}
-
- -
-
Jobs
- - - - - -
{{job.company}}{{job.date}}
-
-
-
- -
- -
-
Contact
-
- -
-
-
Address
-
{{about.contact.address}}
-
-
-
Tel.
-
- {{tel}} -
-
-
-
Website
-
- {{website}} -
-
-
-
Emails
-
- {{email}} -
-
-
- -
- -
- -
- -
- -
-
Friends
-
- See 454 more... -
-
- -
-
- -
-
- -
- -
- -
-
Joined Groups
-
- See 6 more... -
-
- -
- -
- -
- - - -
-
{{group.name}}
-
{{group.category}}
-
{{group.members}} people
-
-
- - -
-
- -
- -
- -
diff --git a/src/app/main/content/pages/profile/tabs/about/about.component.scss b/src/app/main/content/pages/profile/tabs/about/about.component.scss deleted file mode 100644 index f4133d7b..00000000 --- a/src/app/main/content/pages/profile/tabs/about/about.component.scss +++ /dev/null @@ -1,137 +0,0 @@ -@import "../../../../../../core/scss/fuse"; - -:host { - - #about { - max-width: 1200px; - - .about-content { - - .general { - - .location { - - md-icon { - line-height: 13px !important; - } - } - } - - .work { - - .job { - - .company { - padding: 0 16px 0 0; - font-weight: 500; - } - - .date { - color: rgba(0, 0, 0, 0.54); - } - } - } - } - - .about-sidebar { - padding-left: 32px; - - @include media-breakpoint('sm') { - padding: 8px - } - - .friends { - - .content { - - .friend { - padding: 4px; - } - } - } - - .groups { - - .content { - - .group { - margin-bottom: 16px; - - &:last-child { - margin-bottom: 0; - } - - .logo { - border: 1px solid rgba(0, 0, 0, 0.12); - margin-right: 16px; - } - - .name { - font-weight: 500; - font-size: 15px; - } - - .category, - .members { - color: rgba(0, 0, 0, 0.54); - } - - .members { - margin-top: 16px; - } - } - } - } - } - } - - // Profile boxes - .profile-box { - margin-bottom: 16px; - @include mat-elevation(2); - - header { - padding: 16px; - - .title { - font-size: 17px; - } - - .more { - cursor: pointer; - } - } - - .content { - padding: 16px; - background-color: #FFF; - } - - footer { - padding: 8px; - border-top: 1px solid rgba(0, 0, 0, 0.08); - background-color: rgba(0, 0, 0, 0.06); - } - - &.info-box { - - .info-line { - margin-bottom: 24px; - - .title { - font-size: 15px; - font-weight: 500; - padding-bottom: 4px; - } - - .info { - - } - - &:last-child { - margin-bottom: 0; - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/profile/tabs/about/about.component.ts b/src/app/main/content/pages/profile/tabs/about/about.component.ts deleted file mode 100644 index 0722a70c..00000000 --- a/src/app/main/content/pages/profile/tabs/about/about.component.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { ProfileService } from '../../profile.service'; - -@Component({ - selector : 'fuse-profile-about', - templateUrl: './about.component.html', - styleUrls : ['./about.component.scss'] -}) -export class FuseProfileAboutComponent implements OnInit -{ - about: any; - - constructor(private profileService: ProfileService) - { - this.profileService.aboutOnChanged.subscribe(about => { - this.about = about; - }); - } - - ngOnInit() - { - - } -} diff --git a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.html b/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.html deleted file mode 100644 index 59148e23..00000000 --- a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.html +++ /dev/null @@ -1,15 +0,0 @@ -
-
-
- {{period.name}} - {{period.info}} -
- -
-
- -
{{media.title}}
-
-
-
-
diff --git a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.scss b/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.scss deleted file mode 100644 index 83ece155..00000000 --- a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.scss +++ /dev/null @@ -1,53 +0,0 @@ -@import "../../../../../../core/scss/fuse"; - -:host { - - #photos-videos { - - .period { - - .period-title { - margin-bottom: 24px; - - .name { - font-size: 20px; - } - - .info { - margin-left: 16px; - font-size: 15px; - color: rgba(0, 0, 0, 0.54); - } - } - - .period-media { - margin-bottom: 16px; - - .media { - margin: 0 16px 16px 0; - position: relative; - - .preview { - width: 256px; - height: 256px; - display: block; - } - - .title { - position: absolute; - bottom: 0; - left: 0; - right: 0; - z-index: 10; - padding: 0 16px; - height: 48px; - line-height: 48px; - background: rgba(0, 0, 0, 0.54); - color: #FFF; - font-size: 15px; - } - } - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.ts b/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.ts deleted file mode 100644 index 1fc43f84..00000000 --- a/src/app/main/content/pages/profile/tabs/photos-videos/photos-videos.component.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -import { ProfileService } from '../../profile.service'; - -@Component({ - selector : 'fuse-profile-photos-videos', - templateUrl: './photos-videos.component.html', - styleUrls : ['./photos-videos.component.scss'] -}) -export class FuseProfilePhotosVideosComponent implements OnInit -{ - photosVideos: any; - - constructor(private profileService: ProfileService) - { - this.profileService.photosVideosOnChanged.subscribe(photosVideos => { - this.photosVideos = photosVideos; - }); - } - - ngOnInit() - { - - } -} diff --git a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.html b/src/app/main/content/pages/profile/tabs/timeline/timeline.component.html deleted file mode 100644 index 95060737..00000000 --- a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.html +++ /dev/null @@ -1,164 +0,0 @@ -
- -
- -
- -
- - - -
- -
- - - - - - - -
- - -
- -
- -
- - - -
- -
-
- - -
-
- {{post.user.name}} - posted on your timeline - shared something with you - shared a video with you - shared an article with you -
-
{{post.time}}
-
-
- - -
- -
-
- {{post.message}} -
- -
- -
-
- -
-
- -
-
{{post.article.title}}
-
{{post.article.subtitle}}
-
{{post.article.excerpt}}
-
- -
- - -
-
- -
-
- {{post.comments.length}} comments - keyboard_arrow_down -
- -
- - -
-
- {{comment.user.name}} - {{comment.time}} -
-
- {{comment.message}} -
-
- Reply - flag -
-
-
- -
- - -
- - -
-
-
-
-
- -
- -
-
-
Latest Activity
-
See All
-
- -
-
-
- {{activity.user.name}} - -
-
- {{activity.user.name}} - {{activity.message}} -
- {{activity.time}} -
-
-
-
-
-
- -
- diff --git a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.scss b/src/app/main/content/pages/profile/tabs/timeline/timeline.component.scss deleted file mode 100644 index f247e378..00000000 --- a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.scss +++ /dev/null @@ -1,306 +0,0 @@ -@import "../../../../../../core/scss/fuse"; - -:host { - - #timeline { - max-width: 1200px; - - .timeline-content { - - .add-post { - margin-bottom: 0; - @include mat-elevation(2); - - textarea { - display: flex; - flex: 1 0 auto; - font-size: 13px; - width: 100%; - height: 140px; - border: none; - padding: 16px; - resize: vertical; - } - - footer { - padding: 8px; - border-top: 1px solid rgba(0, 0, 0, 0.08); - background: #F3F4F5; - - .post-button { - margin: 0; - width: 64px; - min-width: 64px; - height: 30px; - line-height: 30px; - min-height: 30px; - } - } - } - - md-divider { - border-top-width: 1px; - border-top-style: solid; - margin: 32px 0; - } - - .timeline-item { - margin-bottom: 32px; - overflow: hidden; - border-radius: 2px; - background: #FFFFFF; - @include mat-elevation(2); - - &:last-child { - margin-bottom: 0; - } - - header { - padding: 16px 0 8px 16px; - - .title { - font-weight: 500; - - .username { - margin-right: 2px; - color: mat-color($accent); - } - } - - .time { - color: rgba(0, 0, 0, 0.54); - } - } - - .content { - - .message { - padding: 16px; - } - - .media { - padding: 16px; - - img, iframe { - width: 100%; - } - - a { - color: inherit; - } - } - - .like-button, - .share-button { - padding: 4px 6px; - text-transform: inherit; - font-size: 13px; - font-weight: normal; - margin: 0 0 16px 8px; - min-width: inherit; - line-height: inherit; - - &:hover { - background-color: transparent; - } - - md-icon { - margin: 0 8px 0 0; - } - } - - .article { - border: 1px solid rgba(0, 0, 0, 0.12); - margin: 16px; - - .media { - padding: 0; - overflow: hidden; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - - img { - display: block; - padding: 0; - } - - } - - .title { - font-size: 15px; - padding: 16px 16px 4px 16px; - } - - .subtitle { - padding: 0 16px; - color: rgba(0, 0, 0, 0.54); - } - - .excerpt { - padding: 16px 16px; - } - } - } - - footer { - border-top: 1px solid rgba(0, 0, 0, 0.08); - background-color: rgba(0, 0, 0, 0.04); - padding: 16px; - - .comment-count { - margin-bottom: 16px; - cursor: pointer; - - md-icon { - margin-left: 8px; - } - } - - .comment { - margin-bottom: 24px !important; - - .username { - font-weight: 500; - margin-right: 4px; - } - - .message { - color: rgba(0, 0, 0, 0.87); - } - - .time { - color: rgba(0, 0, 0, 0.54); - } - - .actions { - margin-top: 8px; - - .reply-button { - margin-right: 16px; - cursor: pointer; - color: mat-color($accent); - } - - .report-button { - margin: 0; - cursor: pointer; - } - } - } - - .reply { - - form { - - textarea { - width: 100% !important; - min-height: 72px; - padding: 8px; - margin-bottom: 8px; - font-size: 13px; - border: 1px solid rgba(0, 0, 0, 0.12); - } - - .post-comment-button { - margin: 0; - text-transform: inherit; - font-weight: normal; - padding: 0 12px; - min-height: 30px; - min-width: inherit; - line-height: 30px; - } - } - } - } - } - } - - .timeline-sidebar { - padding-left: 32px; - - @include media-breakpoint-down('sm') { - padding: 0; - } - - .latest-activity { - - .content { - background-color: #FFF; - - .activities { - - .activity { - padding: 16px 0; - - .avatar { - margin-right: 16px; - } - - .username { - font-weight: 500; - color: mat-color($accent) - } - - .message { - font-weight: 500; - } - - .time { - } - } - } - } - } - } - } - - // Profile boxes - .profile-box { - margin-bottom: 16px; - @include mat-elevation(2); - - header { - padding: 16px; - - .title { - font-size: 17px; - } - - .more { - cursor: pointer; - } - } - - .content { - padding: 16px; - background-color: #FFF; - } - - footer { - padding: 8px; - border-top: 1px solid rgba(0, 0, 0, 0.08); - background-color: rgba(0, 0, 0, 0.06); - } - - &.info-box { - - .info-line { - margin-bottom: 24px; - - .title { - font-size: 15px; - font-weight: 500; - padding-bottom: 4px; - } - - .info { - - } - - &:last-child { - margin-bottom: 0; - } - } - } - } -} diff --git a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.ts b/src/app/main/content/pages/profile/tabs/timeline/timeline.component.ts deleted file mode 100644 index 9bb32d2d..00000000 --- a/src/app/main/content/pages/profile/tabs/timeline/timeline.component.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { ProfileService } from '../../profile.service'; - -@Component({ - selector : 'fuse-profile-timeline', - templateUrl: './timeline.component.html', - styleUrls : ['./timeline.component.scss'] -}) -export class FuseProfileTimelineComponent implements OnInit -{ - timeline: any; - - constructor(private profileService: ProfileService) - { - this.profileService.timelineOnChanged.subscribe(timeline => { - this.timeline = timeline; - }); - } - - ngOnInit() - { - - } -} diff --git a/src/app/main/content/pages/search/search.component.html b/src/app/main/content/pages/search/search.component.html deleted file mode 100644 index 119be965..00000000 --- a/src/app/main/content/pages/search/search.component.html +++ /dev/null @@ -1,32 +0,0 @@ - diff --git a/src/app/main/content/pages/search/search.component.scss b/src/app/main/content/pages/search/search.component.scss deleted file mode 100644 index 4ee064d3..00000000 --- a/src/app/main/content/pages/search/search.component.scss +++ /dev/null @@ -1,70 +0,0 @@ -@import "../../../../core/scss/fuse"; - -:host { - - #search { - - .header { - - @include media-breakpoint('xs') { - padding: 16px; - } - - .search { - position: relative; - max-width: 780px; - - .search-icon { - margin: 0 -24px 0 0; - } - - .search-input { - padding: 0 0 0 48px; - background: none; - font-size: 24px; - line-height: 48px; - height: 48px; - color: #FFFFFF; - border-bottom: 2px solid rgba(255, 255, 255, 0.3); - transition: border-color 300ms ease; - - &:focus { - border-color: rgba(255, 255, 255, 1); - } - - &::-webkit-input-placeholder { - color: #FFFFFF; - } - } - } - } - - .content { - - .result-info { - padding-bottom: 16px; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - - .md-title { - padding-right: 8px; - } - - .pager { - - @include media-breakpoint('xs') { - margin-top: 16px; - } - - .page-info { - font-weight: 500; - margin: 0 8px 0 0; - } - } - } - - .simple-pagination { - margin: 32px 0; - } - } - } -} diff --git a/src/app/main/content/pages/search/search.component.ts b/src/app/main/content/pages/search/search.component.ts deleted file mode 100644 index 83f35b04..00000000 --- a/src/app/main/content/pages/search/search.component.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector : 'fuse-search', - templateUrl: './search.component.html', - styleUrls : ['./search.component.scss'] -}) -export class FuseSearchComponent implements OnInit -{ - - constructor() - { - - } - - ngOnInit() - { - - } -} diff --git a/src/app/main/content/pages/search/search.module.ts b/src/app/main/content/pages/search/search.module.ts deleted file mode 100644 index 97baa3fa..00000000 --- a/src/app/main/content/pages/search/search.module.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule } from '@angular/router'; - -import { FuseSearchClassicComponent } from './tabs/classic/classic.component'; -import { FuseSearchTableComponent } from './tabs/table/table.component'; -import { FuseSearchComponent } from './search.component'; -import { SearchService } from './search.service'; - -const routes = [ - { - path : 'pages/search', - component: FuseSearchComponent, - resolve : { - search: SearchService - } - } -]; - -@NgModule({ - declarations: [ - FuseSearchComponent, - FuseSearchClassicComponent, - FuseSearchTableComponent - ], - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - providers : [ - SearchService - ] -}) -export class SearchModule -{ -} diff --git a/src/app/main/content/pages/search/search.service.ts b/src/app/main/content/pages/search/search.service.ts deleted file mode 100644 index 4232f856..00000000 --- a/src/app/main/content/pages/search/search.service.ts +++ /dev/null @@ -1,72 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router'; -import { Observable } from 'rxjs/Observable'; -import { Http } from '@angular/http'; -import { BehaviorSubject } from 'rxjs/BehaviorSubject'; - -@Injectable() -export class SearchService implements Resolve -{ - classic: any; - table: any; - - classicOnChanged: BehaviorSubject = new BehaviorSubject({}); - tableOnChanged: BehaviorSubject = new BehaviorSubject({}); - - constructor(private http: Http) - { - } - - /** - * Resolve - * @param {ActivatedRouteSnapshot} route - * @param {RouterStateSnapshot} state - * @returns {Observable | Promise | any} - */ - resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | any - { - return new Promise((resolve, reject) => { - Promise.all([ - this.getClassic(), - this.getTable() - ]).then( - () => { - resolve(); - }, - reject - ); - }); - } - - /** - * Get classic - */ - getClassic(): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/search-classic') - .subscribe(classic => { - this.classic = classic.json().data; - this.classicOnChanged.next(this.classic); - resolve(this.classic); - }, reject); - }); - } - - /** - * Get table - */ - getTable(): Promise - { - return new Promise((resolve, reject) => { - - this.http.get('api/search-table') - .subscribe(table => { - this.table = table.json().data; - this.tableOnChanged.next(this.table); - resolve(this.table); - }, reject); - }); - } -} diff --git a/src/app/main/content/pages/search/tabs/classic/classic.component.html b/src/app/main/content/pages/search/tabs/classic/classic.component.html deleted file mode 100644 index 0968bb47..00000000 --- a/src/app/main/content/pages/search/tabs/classic/classic.component.html +++ /dev/null @@ -1,93 +0,0 @@ -
- -
- - - 54 - Results - - -
- - Results:  - - - - 1 - - - 10 - of - 54 - - - - - -
-
- -
-
-
{{item.title}}
-
{{item.url}}
-
{{item.excerpt}}
-
-
- -
- - - - - - - - - - - - - - - - - - - - - - - -
- -
\ No newline at end of file diff --git a/src/app/main/content/pages/search/tabs/classic/classic.component.scss b/src/app/main/content/pages/search/tabs/classic/classic.component.scss deleted file mode 100644 index 73f10e46..00000000 --- a/src/app/main/content/pages/search/tabs/classic/classic.component.scss +++ /dev/null @@ -1,53 +0,0 @@ -@import "../../../../../../core/scss/fuse"; - -:host { - - .classic-tab { - - .result-info { - padding-bottom: 16px; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - - .pager { - - .page-info { - font-weight: 500; - margin: 0 8px 0 0; - } - } - } - - .results { - - .result-item { - margin-top: 32px; - max-width: 512px; - - .title { - font-size: 17px; - font-weight: 500; - cursor: pointer; - } - - .url { - margin-bottom: 4px; - } - - .excerpt { - display: block; - overflow: hidden; - text-overflow: ellipsis; - } - - &:last-child { - padding-bottom: 32px; - border-bottom: 1px solid rgba(0, 0, 0, 0.12); - } - } - } - - .simple-pagination { - margin: 32px 0; - } - } -} \ No newline at end of file diff --git a/src/app/main/content/pages/search/tabs/classic/classic.component.ts b/src/app/main/content/pages/search/tabs/classic/classic.component.ts deleted file mode 100644 index 2f5903b1..00000000 --- a/src/app/main/content/pages/search/tabs/classic/classic.component.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { SearchService } from '../../search.service'; - -@Component({ - selector : 'fuse-search-classic', - templateUrl: './classic.component.html', - styleUrls : ['./classic.component.scss'] -}) -export class FuseSearchClassicComponent implements OnInit -{ - classic: any; - - constructor(private searchService: SearchService) - { - this.searchService.classicOnChanged.subscribe(classic => { - this.classic = classic; - }); - } - - ngOnInit() - { - - } -} diff --git a/src/app/main/content/pages/search/tabs/table/table.component.html b/src/app/main/content/pages/search/tabs/table/table.component.html deleted file mode 100644 index 8257d83a..00000000 --- a/src/app/main/content/pages/search/tabs/table/table.component.html +++ /dev/null @@ -1,36 +0,0 @@ -
- - - - - - - - Name - {{row.name}} - - - - - Position - {{row.position}} - - - - - Office - {{row.office}} - - - - - Salary - {{row.salary | currency:'USD':true}} - - - - - - -
diff --git a/src/app/main/content/pages/search/tabs/table/table.component.scss b/src/app/main/content/pages/search/tabs/table/table.component.scss deleted file mode 100644 index b3ec99b8..00000000 --- a/src/app/main/content/pages/search/tabs/table/table.component.scss +++ /dev/null @@ -1,5 +0,0 @@ -@import "../../../../../../core/scss/fuse"; - -:host { - -} diff --git a/src/app/main/content/pages/search/tabs/table/table.component.ts b/src/app/main/content/pages/search/tabs/table/table.component.ts deleted file mode 100644 index 54b25be5..00000000 --- a/src/app/main/content/pages/search/tabs/table/table.component.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { SearchService } from '../../search.service'; -import { DataSource } from '@angular/cdk'; - -@Component({ - selector : 'fuse-search-table', - templateUrl: './table.component.html', - styleUrls : ['./table.component.scss'] -}) -export class FuseSearchTableComponent implements OnInit -{ - table: any; - dataSource: SearchTableDataSource; - displayedColumns = ['name', 'position', 'office', 'salary']; - - constructor(private searchService: SearchService) - { - this.searchService.tableOnChanged - .subscribe(table => { - this.table = table; - }); - } - - ngOnInit() - { - this.dataSource = new SearchTableDataSource(this.searchService); - } -} - -export class SearchTableDataSource extends DataSource -{ - constructor(private searchService: SearchService) - { - super(); - } - - connect() - { - return this.searchService.tableOnChanged; - } - - disconnect() - { - - } -} diff --git a/src/app/main/content/ui/page-layouts/blank/blank.component.html b/src/app/main/content/sample/sample.component.html similarity index 71% rename from src/app/main/content/ui/page-layouts/blank/blank.component.html rename to src/app/main/content/sample/sample.component.html index 53b0ba78..452ea50d 100644 --- a/src/app/main/content/ui/page-layouts/blank/blank.component.html +++ b/src/app/main/content/sample/sample.component.html @@ -1,5 +1,5 @@
-

Blank Page

+

Sample Page

diff --git a/src/app/main/content/ui/page-layouts/blank/blank.component.scss b/src/app/main/content/sample/sample.component.scss similarity index 100% rename from src/app/main/content/ui/page-layouts/blank/blank.component.scss rename to src/app/main/content/sample/sample.component.scss diff --git a/src/app/main/content/sample/sample.component.ts b/src/app/main/content/sample/sample.component.ts new file mode 100644 index 00000000..245aa925 --- /dev/null +++ b/src/app/main/content/sample/sample.component.ts @@ -0,0 +1,13 @@ +import { Component } from '@angular/core'; + +@Component({ + selector : 'fuse-sample', + templateUrl: './sample.component.html', + styleUrls : ['./sample.component.scss'] +}) +export class FuseSampleComponent +{ + constructor() + { + } +} diff --git a/src/app/main/content/sample/sample.module.ts b/src/app/main/content/sample/sample.module.ts new file mode 100644 index 00000000..107e5aac --- /dev/null +++ b/src/app/main/content/sample/sample.module.ts @@ -0,0 +1,30 @@ +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; + +import { SharedModule } from '../../../core/modules/shared.module'; + +import { FuseSampleComponent } from './sample.component'; + +const routes = [ + { + path : 'sample', + component: FuseSampleComponent + } +]; + +@NgModule({ + declarations: [ + FuseSampleComponent + ], + imports : [ + SharedModule, + RouterModule.forChild(routes) + ], + exports : [ + FuseSampleComponent + ] +}) + +export class FuseSampleModule +{ +} diff --git a/src/app/main/content/ui/colors/colors.component.html b/src/app/main/content/ui/colors/colors.component.html deleted file mode 100644 index b2dc5486..00000000 --- a/src/app/main/content/ui/colors/colors.component.html +++ /dev/null @@ -1,113 +0,0 @@ -
- - -
- -
-
- home - chevron_right - User Interface -
-
Colors
-
- - - link - Reference - - -
- - - -
- - - - - - {{color}} - - - - - - {{color.key}} - - - - - - {{color}} - - - - - -
- -
Fuse has classes for every single color from - Material - Design Color Palette for your convenient. You can use them with pretty much every - element. -
- -
-
-

{{selectedColor}}

-
-
- -
500
- -
-
.{{'md-'+selectedColor+'-bg'}}
-
.secondary-text
-
.hint-text, .disabled-text
-
.divider
-
- -
-
- -
- {{selectedColorDefaultValue}} -
-
-
- -
- -
- -
{{hue}}
- -
-
.{{'md-'+selectedColor+'-'+hue+'-bg'}}
-
.secondary-text
-
.hint-text, .disabled-text
-
.divider
-
- -
.{{selectedColor+'-'+hue+'-bg'}}
- -
- .{{selectedColor+'-'+hue+'-fg'}} -
-
- -
-
-
- -
diff --git a/src/app/main/content/ui/colors/colors.component.scss b/src/app/main/content/ui/colors/colors.component.scss deleted file mode 100644 index b05c10da..00000000 --- a/src/app/main/content/ui/colors/colors.component.scss +++ /dev/null @@ -1,28 +0,0 @@ -:host { - - .content { - - .color-tabs { - - .mat-tab-body { - - } - - } - - .color-tabs-content { - - .color { - - .fg-box { - background-color: white; - } - } - - .colored-bg { - transition: background-color 400ms ease; - } - } - } -} - diff --git a/src/app/main/content/ui/colors/colors.component.ts b/src/app/main/content/ui/colors/colors.component.ts deleted file mode 100644 index 73d0a2d1..00000000 --- a/src/app/main/content/ui/colors/colors.component.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { MatColors } from '../../../../core/matColors'; - -@Component({ - selector : 'fuse-colors', - templateUrl: './colors.component.html', - styleUrls : ['./colors.component.scss'] -}) -export class FuseColorsComponent implements OnInit -{ - colors: {}; - selectedColor: string; - selectedColorDefaultValue: string; - - constructor() - { - this.colors = MatColors.all; - this.updateSelectedColor('primary'); - } - - ngOnInit() - { - - } - - selectColor(selected) - { - this.updateSelectedColor(selected.tab.textLabel); - } - - private updateSelectedColor(colorName) - { - this.selectedColor = colorName; - this.selectedColorDefaultValue = MatColors.getColor(this.selectedColor)[500]; - } -} diff --git a/src/app/main/content/ui/colors/colors.module.ts b/src/app/main/content/ui/colors/colors.module.ts deleted file mode 100644 index c06a419c..00000000 --- a/src/app/main/content/ui/colors/colors.module.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { FuseDemoModule } from '../../../../core/components/demo/demo.module'; -import { FuseColorsComponent } from './colors.component'; - -const routes: Routes = [ - { - path : 'ui/colors', - component: FuseColorsComponent - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes), - FuseDemoModule - ], - declarations: [ - FuseColorsComponent - ] -}) -export class UIColorsModule -{ -} diff --git a/src/app/main/content/ui/forms/forms.component.html b/src/app/main/content/ui/forms/forms.component.html deleted file mode 100644 index b5c32111..00000000 --- a/src/app/main/content/ui/forms/forms.component.html +++ /dev/null @@ -1,123 +0,0 @@ -
- - -
-
-
- home - chevron_right - User Interface -
-
Forms
-
-
- - - -
- -

- Angular reactive forms facilitate a reactive style of programming that favors explicit management of the - data flowing between a non-UI data model (typically retrieved from a server) and a UI-oriented form model - that retains the states and values of the HTML controls on screen. Reactive forms offer the ease of using - reactive patterns, testing, and validation. -

- -
- -
- -
Reactive Form Example
- -
- - - - - -
- -
- - - - - Required - - - - - - - Required - - - -
- -
- - - - - Required - - - - - - - Required - - - -
- -
- - - - - Required - - - - - - - Required - - - - - - {{postalCode.value.length}} / 5 - - Postal Code needs to be max. {{formErrors.postalCode.maxlength.requiredLength}} characters - - - -
- -
- -
- -
Reactive Form Errors Model
- -
{{formErrors | json}}
-
- -
- - -
- - -
- - diff --git a/src/app/main/content/ui/forms/forms.component.scss b/src/app/main/content/ui/forms/forms.component.scss deleted file mode 100644 index 33c43ccd..00000000 --- a/src/app/main/content/ui/forms/forms.component.scss +++ /dev/null @@ -1,17 +0,0 @@ -:host { - - .content { - - form { - max-width: 800px !important; - } - - .form-errors-model { - flex: 1; - - code { - background: none !important; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/ui/forms/forms.component.ts b/src/app/main/content/ui/forms/forms.component.ts deleted file mode 100644 index e4c9c1b4..00000000 --- a/src/app/main/content/ui/forms/forms.component.ts +++ /dev/null @@ -1,72 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; - -@Component({ - selector : 'fuse-forms', - templateUrl: './forms.component.html', - styleUrls : ['./forms.component.scss'] -}) -export class FuseFormsComponent implements OnInit -{ - form: FormGroup; - formErrors: any; - - constructor(private formBuilder: FormBuilder) - { - this.formErrors = { - company : {}, - firstName : {}, - lastName : {}, - address : {}, - address2 : {}, - city : {}, - state : {}, - postalCode: {} - }; - } - - ngOnInit() - { - this.form = this.formBuilder.group({ - company : [ - { - value : 'Google', - disabled: true - }, Validators.required - ], - firstName : ['', Validators.required], - lastName : ['', Validators.required], - address : ['', Validators.required], - address2 : ['', Validators.required], - city : ['', Validators.required], - state : ['', Validators.required], - postalCode: ['', [Validators.required, Validators.maxLength(5)]] - }); - - this.form.valueChanges.subscribe(() => { - this.onFormValuesChanged(); - }); - } - - onFormValuesChanged() - { - for ( const field in this.formErrors ) - { - if ( !this.formErrors.hasOwnProperty(field) ) - { - continue; - } - - // Clear previous errors - this.formErrors[field] = {}; - - // Get the control - const control = this.form.get(field); - - if ( control && control.dirty && !control.valid ) - { - this.formErrors[field] = control.errors; - } - } - } -} diff --git a/src/app/main/content/ui/forms/forms.module.ts b/src/app/main/content/ui/forms/forms.module.ts deleted file mode 100644 index ccbdb13f..00000000 --- a/src/app/main/content/ui/forms/forms.module.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; - -import { FuseFormsComponent } from './forms.component'; - -const routes: Routes = [ - { - path : 'ui/forms', - component: FuseFormsComponent - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations: [ - FuseFormsComponent - ] -}) -export class UIFormsModule -{ -} diff --git a/src/app/main/content/ui/helper-classes/helper-classes.component.html b/src/app/main/content/ui/helper-classes/helper-classes.component.html deleted file mode 100644 index e8d21168..00000000 --- a/src/app/main/content/ui/helper-classes/helper-classes.component.html +++ /dev/null @@ -1,38 +0,0 @@ -
- - -
-
-
- home - chevron_right - User Interface -
-
Helper Classes
-
-
- - - -
- - - - - - - - - - - - - - - - - -
- - -
diff --git a/src/app/main/content/ui/helper-classes/helper-classes.component.scss b/src/app/main/content/ui/helper-classes/helper-classes.component.scss deleted file mode 100644 index 8fdbe2d4..00000000 --- a/src/app/main/content/ui/helper-classes/helper-classes.component.scss +++ /dev/null @@ -1,3 +0,0 @@ -:host { - -} \ No newline at end of file diff --git a/src/app/main/content/ui/helper-classes/helper-classes.component.ts b/src/app/main/content/ui/helper-classes/helper-classes.component.ts deleted file mode 100644 index 7372b0a3..00000000 --- a/src/app/main/content/ui/helper-classes/helper-classes.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-helper-classes', - templateUrl: './helper-classes.component.html', - styleUrls : ['./helper-classes.component.scss'] -}) -export class FuseHelperClassesComponent -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/helper-classes/helper-classes.module.ts b/src/app/main/content/ui/helper-classes/helper-classes.module.ts deleted file mode 100644 index 4d163162..00000000 --- a/src/app/main/content/ui/helper-classes/helper-classes.module.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; - -import { FuseHelperClassesComponent } from './helper-classes.component'; -import { FuseHelperClassesPaddingMarginComponent } from './tabs/padding-margin/padding-margin.component'; -import { FuseHelperClassesWidthHeightComponent } from './tabs/width-height/width-height.component'; - -const routes: Routes = [ - { - path : 'ui/helper-classes', - component: FuseHelperClassesComponent - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations: [ - FuseHelperClassesComponent, - FuseHelperClassesPaddingMarginComponent, - FuseHelperClassesWidthHeightComponent - ] -}) -export class UIHelperClassesModule -{ -} diff --git a/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.html b/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.html deleted file mode 100644 index 3fef43a1..00000000 --- a/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.html +++ /dev/null @@ -1,225 +0,0 @@ -
- -
Padding Helpers
- -
- -
- -
- p-0 -
- - - - - -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- p-4 -
- - - - - -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- p-12 -
- - - - - -
- -
- -
Direction Specific Padding Helpers
- -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- pt-0 - pr-0 - pb-0 - pl-0 - px-0 - py-0 -
- - - - - -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- pt-4 - pr-4 - pb-4 - pl-4 - px-4 - py-4 -
- - - - - -
- -
- -
Margin Helpers
- -
- -
- -
- m-0 -
- - - - - -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- m-4 -
- - - - - -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- m-12 -
- - - - - -
- -
- -
Direction Specific Margin Helpers
- -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- mt-0 - mr-0 - mb-0 - ml-0 - mx-0 - my-0 -
- - - - - -
- -
- -
-
Min:0 - Max:256, Multiples of 4
- mt-4 - mr-4 - mb-4 - ml-4 - mx-4 - my-4 -
- - - - - -
- -
- -
diff --git a/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.scss b/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.scss deleted file mode 100644 index 17201e2f..00000000 --- a/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.scss +++ /dev/null @@ -1,31 +0,0 @@ -:host { - - #helper-classes-padding-margin { - - .source-code { - position: relative; - background: #F3F4F6; - margin-bottom: 24px; - min-height: 180px; - - code { - background: none !important; - } - } - - .preview { - font-size: 16px; - padding: 16px; - margin-bottom: 24px; - min-height: 180px; - - &:last-child { - margin-bottom: 0; - } - - .mat-caption { - margin-bottom: 16px; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.ts b/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.ts deleted file mode 100644 index e4a02a32..00000000 --- a/src/app/main/content/ui/helper-classes/tabs/padding-margin/padding-margin.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-helper-classes-padding-margin', - templateUrl: './padding-margin.component.html', - styleUrls : ['./padding-margin.component.scss'] -}) -export class FuseHelperClassesPaddingMarginComponent -{ - - constructor() - { - - } -} diff --git a/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.html b/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.html deleted file mode 100644 index 0e95ed91..00000000 --- a/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.html +++ /dev/null @@ -1,141 +0,0 @@ -
- -
Width Helpers
- -
- -
- -
- w-0 -
- - - - - -
- -
- -
-
Min:0 - Max:512, Multiples of 4
- w-100 -
- - - - - -
- -
- -
-
Min:0 - Max:100, Multiples of 5
- w-25-p -
- - - - - -
- -
- -
-
Min:0 - Max:100, Multiples of 5
- w-100-p -
- - - - - -
- -
- -
Height Helpers
- -
- -
- -
- h-0 -
- - - - - -
- -
- -
-
Min:0 - Max:512, Multiples of 4
- h-100 -
- - - - - -
- -
- -
-
Min:0 - Max:100, Multiples of 5
- h-25-p -
- - - - - -
- -
- -
-
Min:0 - Max:100, Multiples of 5
- h-100-p -
- - - - - -
- -
- -
diff --git a/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.scss b/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.scss deleted file mode 100644 index d1ed4228..00000000 --- a/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.scss +++ /dev/null @@ -1,31 +0,0 @@ -:host { - - #helper-classes-width-height { - - .source-code { - position: relative; - background: #F3F4F6; - margin-bottom: 24px; - min-height: 180px; - - code { - background: none !important; - } - } - - .preview { - font-size: 16px; - padding: 16px; - margin-bottom: 24px; - min-height: 180px; - - &:last-child { - margin-bottom: 0; - } - - .mat-caption { - margin-bottom: 16px; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.ts b/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.ts deleted file mode 100644 index fe5b14cf..00000000 --- a/src/app/main/content/ui/helper-classes/tabs/width-height/width-height.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-helper-classes-width-height', - templateUrl: './width-height.component.html', - styleUrls : ['./width-height.component.scss'] -}) -export class FuseHelperClassesWidthHeightComponent -{ - - constructor() - { - - } -} diff --git a/src/app/main/content/ui/icons/icons.component.html b/src/app/main/content/ui/icons/icons.component.html deleted file mode 100644 index 422f430b..00000000 --- a/src/app/main/content/ui/icons/icons.component.html +++ /dev/null @@ -1,57 +0,0 @@ -
- - -
- -
-
- home - chevron_right - User Interface -
-
Icons
-
- - - link - Reference - - -
- - - -
- -
- -
- -
- -
- -
- - - -
- -
- -
- {{icon}} -
{{icon}}
-
- -
- -
- -
- -
- - -
diff --git a/src/app/main/content/ui/icons/icons.component.scss b/src/app/main/content/ui/icons/icons.component.scss deleted file mode 100644 index 7532cb42..00000000 --- a/src/app/main/content/ui/icons/icons.component.scss +++ /dev/null @@ -1,19 +0,0 @@ -:host { - - .content { - max-width: 1200px; - - .icon-holder { - width: 112px; - height: 120px; - - .icon-name { - font-size: 12px; - word-wrap: break-word; - width: 100px; - text-align: center; - } - } - } - -} \ No newline at end of file diff --git a/src/app/main/content/ui/icons/icons.component.ts b/src/app/main/content/ui/icons/icons.component.ts deleted file mode 100644 index 71c68256..00000000 --- a/src/app/main/content/ui/icons/icons.component.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { Http } from '@angular/http'; - -@Component({ - selector : 'fuse-icons', - templateUrl: './icons.component.html', - styleUrls : ['./icons.component.scss'] -}) -export class FuseIconsComponent implements OnInit -{ - icons: string[]; - filteredIcons: string[]; - loading = true; - - constructor(private http: Http) - { - - } - - ngOnInit() - { - this.http.get('api/icons') - .subscribe(icons => { - this.icons = icons.json().data; - this.filteredIcons = this.icons; - this.loading = false; - }); - } - - filterIcons(event) - { - const value = event.target.value; - - this.filteredIcons = this.icons.filter(icon => { - return icon.includes(value); - }); - } -} diff --git a/src/app/main/content/ui/icons/icons.module.ts b/src/app/main/content/ui/icons/icons.module.ts deleted file mode 100644 index 1c382528..00000000 --- a/src/app/main/content/ui/icons/icons.module.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; -import { FuseIconsComponent } from './icons.component'; - -const routes: Routes = [ - { - path : 'ui/icons', - component: FuseIconsComponent - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations: [ - FuseIconsComponent - ] -}) -export class UIIconsModule -{ -} diff --git a/src/app/main/content/ui/page-layouts/blank/blank.component.ts b/src/app/main/content/ui/page-layouts/blank/blank.component.ts deleted file mode 100644 index 9b47592b..00000000 --- a/src/app/main/content/ui/page-layouts/blank/blank.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-blank', - templateUrl: './blank.component.html', - styleUrls : ['./blank.component.scss'] -}) -export class FuseBlankComponent -{ - constructor() - { - } -} diff --git a/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.html b/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.html deleted file mode 100644 index 9034087b..00000000 --- a/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.html +++ /dev/null @@ -1,39 +0,0 @@ -
- - -
- - - -
- - -
-

Fullwidth with page scroll

-
- - - -
- - -
- Content toolbar -
- - - -
- - - -
- - -
- - -
- - -
diff --git a/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.scss b/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.ts b/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.ts deleted file mode 100644 index 3b886572..00000000 --- a/src/app/main/content/ui/page-layouts/carded/fullwidth-2/fullwidth-2.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-carded-fullwidth-2', - templateUrl: './fullwidth-2.component.html', - styleUrls : ['./fullwidth-2.component.scss'] -}) -export class FuseCardedFullWidth2Component -{ - constructor() - { - } -} diff --git a/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.html b/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.html deleted file mode 100644 index 4dc282f2..00000000 --- a/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.html +++ /dev/null @@ -1,39 +0,0 @@ -
- - -
- - - -
- - -
-

Fullwidth with content scroll

-
- - - -
- - -
- Content toolbar -
- - - -
- - - -
- - -
- - -
- - -
diff --git a/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.scss b/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.ts b/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.ts deleted file mode 100644 index b6862012..00000000 --- a/src/app/main/content/ui/page-layouts/carded/fullwidth/fullwidth.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-carded-fullwidth', - templateUrl: './fullwidth.component.html', - styleUrls : ['./fullwidth.component.scss'] -}) -export class FuseCardedFullWidthComponent -{ - constructor() - { - } -} diff --git a/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.html b/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.html deleted file mode 100644 index 894a42dd..00000000 --- a/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.html +++ /dev/null @@ -1,68 +0,0 @@ -
- - -
- - - - - - - - -
-

Sidenav header

-
- - - -
- -
- - -
- - - -
- - -
-

Left sidenav with page scroll

-
- - - -
- - -
- - - Content toolbar -
- - - -
- - - -
- - -
- - -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.scss b/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.ts b/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.ts deleted file mode 100644 index 2e51b725..00000000 --- a/src/app/main/content/ui/page-layouts/carded/left-sidenav-2/left-sidenav-2.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-carded-left-sidenav-2', - templateUrl: './left-sidenav-2.component.html', - styleUrls : ['./left-sidenav-2.component.scss'] -}) -export class FuseCardedLeftSidenav2Component -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.html b/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.html deleted file mode 100644 index df2365d5..00000000 --- a/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.html +++ /dev/null @@ -1,70 +0,0 @@ -
- - -
- - - - - - - - -
-

Sidenav header

-
- - - -
- - - -
- - -
- - - -
- - -
-

Left sidenav with content scroll

-
- - - -
- - -
- - - Content toolbar -
- - - -
- - - -
- - -
- - -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.scss b/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.ts b/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.ts deleted file mode 100644 index f92c2514..00000000 --- a/src/app/main/content/ui/page-layouts/carded/left-sidenav/left-sidenav.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-carded-left-sidenav', - templateUrl: './left-sidenav.component.html', - styleUrls : ['./left-sidenav.component.scss'] -}) -export class FuseCardedLeftSidenavComponent -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.html b/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.html deleted file mode 100644 index 351dcbc7..00000000 --- a/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.html +++ /dev/null @@ -1,68 +0,0 @@ -
- - -
- - - - - -
- - -
-

Right sidenav with page scroll

-
- - - -
- - -
- - - Content toolbar -
- - - -
- - - -
- - -
- - -
- - - - - - -
-

Sidenav header

-
- - - -
- -
- - -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.scss b/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.ts b/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.ts deleted file mode 100644 index 001d16f1..00000000 --- a/src/app/main/content/ui/page-layouts/carded/right-sidenav-2/right-sidenav-2.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-carded-right-sidenav-2', - templateUrl: './right-sidenav-2.component.html', - styleUrls : ['./right-sidenav-2.component.scss'] -}) -export class FuseCardedRightSidenav2Component -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.html b/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.html deleted file mode 100644 index ff20f210..00000000 --- a/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.html +++ /dev/null @@ -1,68 +0,0 @@ -
- - -
- - - - - -
- - -
-

Right sidenav with content scroll

-
- - - -
- - -
- - - Content toolbar -
- - - -
- - - -
- - -
- - -
- - - - - - -
-

Sidenav header

-
- - - -
- -
- - -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.scss b/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.ts b/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.ts deleted file mode 100644 index abe45083..00000000 --- a/src/app/main/content/ui/page-layouts/carded/right-sidenav/right-sidenav.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-carded-right-sidenav', - templateUrl: './right-sidenav.component.html', - styleUrls : ['./right-sidenav.component.scss'] -}) -export class FuseCardedRightSidenavComponent -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/page-layouts.module.ts b/src/app/main/content/ui/page-layouts/page-layouts.module.ts deleted file mode 100644 index 12416e2d..00000000 --- a/src/app/main/content/ui/page-layouts/page-layouts.module.ts +++ /dev/null @@ -1,110 +0,0 @@ -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { FuseDemoModule } from '../../../../core/components/demo/demo.module'; -import { FuseCardedFullWidthComponent } from './carded/fullwidth/fullwidth.component'; -import { FuseCardedFullWidth2Component } from './carded/fullwidth-2/fullwidth-2.component'; -import { FuseCardedLeftSidenavComponent } from './carded/left-sidenav/left-sidenav.component'; -import { FuseCardedLeftSidenav2Component } from './carded/left-sidenav-2/left-sidenav-2.component'; -import { FuseCardedRightSidenavComponent } from './carded/right-sidenav/right-sidenav.component'; -import { FuseCardedRightSidenav2Component } from './carded/right-sidenav-2/right-sidenav-2.component'; -import { FuseSimpleFullWidthComponent } from './simple/fullwidth/fullwidth.component'; -import { FuseSimpleLeftSidenavComponent } from './simple/left-sidenav/left-sidenav.component'; -import { FuseSimpleLeftSidenav2Component } from './simple/left-sidenav-2/left-sidenav-2.component'; -import { FuseSimpleLeftSidenav3Component } from './simple/left-sidenav-3/left-sidenav-3.component'; -import { FuseSimpleRightSidenavComponent } from './simple/right-sidenav/right-sidenav.component'; -import { FuseSimpleRightSidenav2Component } from './simple/right-sidenav-2/right-sidenav-2.component'; -import { FuseSimpleRightSidenav3Component } from './simple/right-sidenav-3/right-sidenav-3.component'; -import { FuseTabbedComponent } from './simple/tabbed/tabbed.component'; -import { FuseBlankComponent } from './blank/blank.component'; - -const routes: Routes = [ - { - path : 'ui/page-layouts/carded/full-width', - component: FuseCardedFullWidthComponent - }, - { - path : 'ui/page-layouts/carded/full-width-2', - component: FuseCardedFullWidth2Component - }, - { - path : 'ui/page-layouts/carded/left-sidenav', - component: FuseCardedLeftSidenavComponent - }, - { - path : 'ui/page-layouts/carded/left-sidenav-2', - component: FuseCardedLeftSidenav2Component - }, - { - path : 'ui/page-layouts/carded/right-sidenav', - component: FuseCardedRightSidenavComponent - }, - { - path : 'ui/page-layouts/carded/right-sidenav-2', - component: FuseCardedRightSidenav2Component - }, - { - path : 'ui/page-layouts/simple/full-width', - component: FuseSimpleFullWidthComponent - }, - { - path : 'ui/page-layouts/simple/left-sidenav', - component: FuseSimpleLeftSidenavComponent - }, - { - path : 'ui/page-layouts/simple/left-sidenav-2', - component: FuseSimpleLeftSidenav2Component - }, - { - path : 'ui/page-layouts/simple/left-sidenav-3', - component: FuseSimpleLeftSidenav3Component - }, - { - path : 'ui/page-layouts/simple/right-sidenav', - component: FuseSimpleRightSidenavComponent - }, - { - path : 'ui/page-layouts/simple/right-sidenav-2', - component: FuseSimpleRightSidenav2Component - }, - { - path : 'ui/page-layouts/simple/right-sidenav-3', - component: FuseSimpleRightSidenav3Component - }, - { - path : 'ui/page-layouts/simple/tabbed', - component: FuseTabbedComponent - }, - { - path : 'ui/page-layouts/blank', - component: FuseBlankComponent - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes), - FuseDemoModule - ], - declarations: [ - FuseCardedFullWidthComponent, - FuseCardedFullWidth2Component, - FuseCardedLeftSidenavComponent, - FuseCardedLeftSidenav2Component, - FuseCardedRightSidenavComponent, - FuseCardedRightSidenav2Component, - FuseSimpleFullWidthComponent, - FuseSimpleLeftSidenavComponent, - FuseSimpleLeftSidenav2Component, - FuseSimpleLeftSidenav3Component, - FuseSimpleRightSidenavComponent, - FuseSimpleRightSidenav2Component, - FuseSimpleRightSidenav3Component, - FuseTabbedComponent, - FuseBlankComponent - ] -}) -export class UIPageLayoutsModule -{ -} diff --git a/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.html b/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.html deleted file mode 100644 index cb512f52..00000000 --- a/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.html +++ /dev/null @@ -1,17 +0,0 @@ -
- - -
-

Fullwidth

-
- - - -
- - - -
- - -
diff --git a/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.scss b/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.ts b/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.ts deleted file mode 100644 index 074ad5d1..00000000 --- a/src/app/main/content/ui/page-layouts/simple/fullwidth/fullwidth.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-simple-fullwidth', - templateUrl: './fullwidth.component.html', - styleUrls : ['./fullwidth.component.scss'] -}) -export class FuseSimpleFullWidthComponent -{ - constructor() - { - } -} diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.html b/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.html deleted file mode 100644 index 1c2b9ad7..00000000 --- a/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.html +++ /dev/null @@ -1,46 +0,0 @@ -
- - - - - - - - - - - - -
- - -
- - - -
-

Left sidenav with page scroll

-
- -
- - - -
- - - -
- - -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.scss b/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.ts b/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.ts deleted file mode 100644 index d6805429..00000000 --- a/src/app/main/content/ui/page-layouts/simple/left-sidenav-2/left-sidenav-2.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-simple-left-sidenav-2', - templateUrl: './left-sidenav-2.component.html', - styleUrls : ['./left-sidenav-2.component.scss'] -}) -export class FuseSimpleLeftSidenav2Component -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.html b/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.html deleted file mode 100644 index 7740289f..00000000 --- a/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.html +++ /dev/null @@ -1,50 +0,0 @@ -
- - -
- - - -
-

Left inner sidenav with content scroll

-
- -
- - - - - - - -
- - - -
- -
- - - -
- - -
- - - -
- - -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.scss b/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.ts b/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.ts deleted file mode 100644 index 2a86f582..00000000 --- a/src/app/main/content/ui/page-layouts/simple/left-sidenav-3/left-sidenav-3.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-simple-left-sidenav-3', - templateUrl: './left-sidenav-3.component.html', - styleUrls : ['./left-sidenav-3.component.scss'] -}) -export class FuseSimpleLeftSidenav3Component -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.html b/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.html deleted file mode 100644 index 4df8ed46..00000000 --- a/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.html +++ /dev/null @@ -1,50 +0,0 @@ -
- - - - - - -
- - - -
- -
- - - -
- - -
- - - -
-

Left sidenav with content scroll

-
- -
- - - -
- - - -
- - -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.scss b/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.ts b/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.ts deleted file mode 100644 index 9d07e40b..00000000 --- a/src/app/main/content/ui/page-layouts/simple/left-sidenav/left-sidenav.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-simple-left-sidenav', - templateUrl: './left-sidenav.component.html', - styleUrls : ['./left-sidenav.component.scss'] -}) -export class FuseSimpleLeftSidenavComponent -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.html b/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.html deleted file mode 100644 index 01ae0e65..00000000 --- a/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.html +++ /dev/null @@ -1,46 +0,0 @@ -
- - - - -
- - -
- - - -
-

Right sidenav with page scroll

-
- -
- - - -
- - - -
- - -
- - - - - - - - - - -
- -
diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.scss b/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.ts b/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.ts deleted file mode 100644 index 7f32155d..00000000 --- a/src/app/main/content/ui/page-layouts/simple/right-sidenav-2/right-sidenav-2.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-simple-right-sidenav-2', - templateUrl: './right-sidenav-2.component.html', - styleUrls : ['./right-sidenav-2.component.scss'] -}) -export class FuseSimpleRightSidenav2Component -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.html b/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.html deleted file mode 100644 index 7329505e..00000000 --- a/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.html +++ /dev/null @@ -1,50 +0,0 @@ -
- - -
- - - -
-

Right inner sidenav with content scroll

-
- -
- - - - - -
- - -
- - - -
- - -
- - - - - -
- - - -
- -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.scss b/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.ts b/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.ts deleted file mode 100644 index bb2b476e..00000000 --- a/src/app/main/content/ui/page-layouts/simple/right-sidenav-3/right-sidenav-3.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-simple-right-sidenav-3', - templateUrl: './right-sidenav-3.component.html', - styleUrls : ['./right-sidenav-3.component.scss'] -}) -export class FuseSimpleRightSidenav3Component -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.html b/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.html deleted file mode 100644 index b8988210..00000000 --- a/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.html +++ /dev/null @@ -1,50 +0,0 @@ -
- - - - -
- - -
- - - -
-

Right sidenav with content scroll

-
- -
- - - -
- - - -
- - -
- - - - - -
- - - -
- -
- - -
- -
diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.scss b/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.ts b/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.ts deleted file mode 100644 index 186cfa71..00000000 --- a/src/app/main/content/ui/page-layouts/simple/right-sidenav/right-sidenav.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-simple-right-sidenav', - templateUrl: './right-sidenav.component.html', - styleUrls : ['./right-sidenav.component.scss'] -}) -export class FuseSimpleRightSidenavComponent -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.html b/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.html deleted file mode 100644 index 4dd2b6d2..00000000 --- a/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.html +++ /dev/null @@ -1,37 +0,0 @@ -
- - -
-

Tabbed

-
- - - -
- - - - -
- -
-
- - -
- -
-
- - -
- -
-
- -
- -
- - -
diff --git a/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.scss b/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.scss deleted file mode 100644 index e69de29b..00000000 diff --git a/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.ts b/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.ts deleted file mode 100644 index 70e6cdf1..00000000 --- a/src/app/main/content/ui/page-layouts/simple/tabbed/tabbed.component.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-tabbed', - templateUrl: './tabbed.component.html', - styleUrls : ['./tabbed.component.scss'] -}) -export class FuseTabbedComponent -{ - constructor() - { - } - -} diff --git a/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.html b/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.html deleted file mode 100644 index 71a9f742..00000000 --- a/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.html +++ /dev/null @@ -1,203 +0,0 @@ -
- -
Blockquotes
- -
- -
- -
-
-

- You can do anything, but not everything. -

-
-
- - - - - -
- -
- -
-
-

- You can do anything, but not everything. -

-
- David Allen -
-
-
- - - - - -
- -
- -
-
-

- You can do anything, but not everything. -

-
- David Allen -
-
-
- - - - - -
- -
- -
Lists
- -
- -
- -
-
    -
  1. Ordered list item
  2. -
  3. - Ordered list item -
      -
    1. Ordered list item
    2. -
    3. Ordered list item
    4. -
    -
  4. -
  5. Ordered list item
  6. -
  7. Ordered list item
  8. -
-
- - - - - -
- -
- -
-
    -
  • Unordered list item
  • -
  • - Unordered list item -
      -
    • Unordered list item
    • -
    • Unordered list item
    • -
    -
  • -
  • Unordered list item
  • -
  • Unordered list item
  • -
-
- - - - - -
- -
- -
Definition Lists
- -
- -
- -
-
-
Definition term
-
This is the definition description
- -
Another definition term
-
This is also another definition description
-
-
- - - - - -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.scss b/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.scss deleted file mode 100644 index a4340ab6..00000000 --- a/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.scss +++ /dev/null @@ -1,31 +0,0 @@ -:host { - - #typography-blockquotes-lists { - - .source-code { - position: relative; - background: #F3F4F6; - margin-bottom: 24px; - min-height: 180px; - - code { - background: none !important; - } - } - - .preview { - font-size: 16px; - padding: 16px; - margin-bottom: 24px; - min-height: 180px; - - &:last-child { - margin-bottom: 0; - } - - .mat-caption { - margin-bottom: 16px; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.ts b/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.ts deleted file mode 100644 index 5ed7aa4d..00000000 --- a/src/app/main/content/ui/typography/tabs/blockquotes-lists/blockquotes-lists.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-typography-blockquotes-lists', - templateUrl: './blockquotes-lists.component.html', - styleUrls : ['./blockquotes-lists.component.scss'] -}) -export class FuseTypographyBlockquotesListsComponent -{ - - constructor() - { - - } -} diff --git a/src/app/main/content/ui/typography/tabs/headings/headings.component.html b/src/app/main/content/ui/typography/tabs/headings/headings.component.html deleted file mode 100644 index 1c9a2501..00000000 --- a/src/app/main/content/ui/typography/tabs/headings/headings.component.html +++ /dev/null @@ -1,292 +0,0 @@ -
- -
Material design typography classes
- -
- -
- -
-
112px
- Display 4 -
- - - - - -
- -
- -
-
56px
- Display 3 -
- - - - - -
- -
- -
-
45px
- Display 2 -
- - - - -
- -
- -
-
34px
- Display 1 -
- - - - - -
- -
- -
-
24px
- Headline -
- - - - - -
- -
- -
-
20px
- Title -
- - - - - -
- -
- -
-
16px
- Subheading 2 -
- - - - - -
- -
- -
-
15px
- Subheading 1 -
- - - - - -
- -
- -
-
14px
- Body 1 -
- - - - - -
- -
- -
-
14px
- Body 2 -
- - - - - -
- -
- -
-
12px
- Caption -
- - - - - -
- -
- -
Standard Headings
- -
- -
- -
-
24px
- Heading 1 -
- - - - - -
- -
- -
-
20px
- Heading 2 -
- - - - - -
- -
- -
-
16px
- Heading 3 -
- - - - - -
- -
- -
-
15px
- Heading 4 -
- - - - - -
- -
- -
-
13px
- Heading 5 -
- - - - - -
- -
- -
-
12px
- Heading 6 -
- - - - - -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/ui/typography/tabs/headings/headings.component.scss b/src/app/main/content/ui/typography/tabs/headings/headings.component.scss deleted file mode 100644 index 94d9b834..00000000 --- a/src/app/main/content/ui/typography/tabs/headings/headings.component.scss +++ /dev/null @@ -1,31 +0,0 @@ -:host { - - #typography-headings { - - .source-code { - position: relative; - background: #F3F4F6; - margin-bottom: 24px; - min-height: 180px; - - code { - background: none !important; - } - } - - .preview { - font-size: 16px; - padding: 16px; - margin-bottom: 24px; - min-height: 180px; - - &:last-child { - margin-bottom: 0; - } - - .mat-caption { - margin-bottom: 16px; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/ui/typography/tabs/headings/headings.component.ts b/src/app/main/content/ui/typography/tabs/headings/headings.component.ts deleted file mode 100644 index eaee877b..00000000 --- a/src/app/main/content/ui/typography/tabs/headings/headings.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-typography-headings', - templateUrl: './headings.component.html', - styleUrls : ['./headings.component.scss'] -}) -export class FuseTypographyHeadingsComponent -{ - - constructor() - { - - } -} diff --git a/src/app/main/content/ui/typography/tabs/helpers/helpers.component.html b/src/app/main/content/ui/typography/tabs/helpers/helpers.component.html deleted file mode 100644 index af3844f2..00000000 --- a/src/app/main/content/ui/typography/tabs/helpers/helpers.component.html +++ /dev/null @@ -1,249 +0,0 @@ -
- -
Font Weight
- -
- -
- -
-
From 100 to 900
- font-weight: 100 - ... - font-weight: 900 -
- - - - - -
- -
- -
Font Size
- -
- -
- -
-
Multiplies of 2, max: 120
- font-size: 20 -
- - - - - -
- -
- -
Line Height
- -
- -
- -
-
Multiplies of 2, max: 120
- line-height: 2 - ... - line-height: 120 -
- - - - - -
- -
- -
Other helpers
- -
- -
- -
-
Left aligned text
-
- - - - - -
- -
- -
-
Center aligned text
-
- - - - - -
- -
- -
-
Right aligned text
-
- - - - - -
- -
- -
-

- Boxed text -

-
- - - - - -
- -
- -
-

- Boxed text light -

-
- - - - - -
- -
- -
-

- Strike-through text -

-
- - - - - -
- -
- -
-
Italic text
-
- - - - - -
- -
- -
-
Semi-bold text
-
- - - - - -
- -
- -
-
Bold text
-
- - - - - -
- -
- -
- This is a truncated text. It will be truncated if it's too long. Vivamus - convallis dui porta massa. - -
- - - - - -
- -
- -
diff --git a/src/app/main/content/ui/typography/tabs/helpers/helpers.component.scss b/src/app/main/content/ui/typography/tabs/helpers/helpers.component.scss deleted file mode 100644 index 48dd1da4..00000000 --- a/src/app/main/content/ui/typography/tabs/helpers/helpers.component.scss +++ /dev/null @@ -1,31 +0,0 @@ -:host { - - #typography-helpers { - - .source-code { - position: relative; - background: #F3F4F6; - margin-bottom: 24px; - min-height: 180px; - - code { - background: none !important; - } - } - - .preview { - font-size: 16px; - padding: 16px; - margin-bottom: 24px; - min-height: 180px; - - &:last-child { - margin-bottom: 0; - } - - .mat-caption { - margin-bottom: 16px; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/ui/typography/tabs/helpers/helpers.component.ts b/src/app/main/content/ui/typography/tabs/helpers/helpers.component.ts deleted file mode 100644 index 77a27901..00000000 --- a/src/app/main/content/ui/typography/tabs/helpers/helpers.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-typography-helpers', - templateUrl: './helpers.component.html', - styleUrls : ['./helpers.component.scss'] -}) -export class FuseTypographyHelpersComponent -{ - - constructor() - { - - } -} diff --git a/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.html b/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.html deleted file mode 100644 index 2d3cca52..00000000 --- a/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.html +++ /dev/null @@ -1,232 +0,0 @@ -
- -
- -
- -
- CSS -
- - - - - -
- -
- -
- This is a marked text. -
- - - - - -
- -
- -
- - This is a deleted text. - -
- - - - - -
- -
- -
- This is a strike-through text. -
- - - - - -
- -
- -
- This is an underlined text. -
- - - - - -
- -
- -
- - This is a small text. - -
- - - - - -
- -
- -
- This is a strong text. -
- - - - - -
- -
- -
- This is an italic text. -
- - - - - -
- -
- -
- This is a - super - text. - -
- - - - - -
- -
- -
- - This is a - sub - text. - -
- - - - - -
- -
- -
- This is a - capitalized - text. - -
- - - - - -
- -
- -
- This is an - uppercase - text. - -
- - - - - -
- -
- -
- This is a - LOWERCASE - text. - -
- - - - - -
- -
- -
\ No newline at end of file diff --git a/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.scss b/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.scss deleted file mode 100644 index 0445f273..00000000 --- a/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.scss +++ /dev/null @@ -1,31 +0,0 @@ -:host { - - #typography-inline-text-elements { - - .source-code { - position: relative; - background: #F3F4F6; - margin-bottom: 24px; - min-height: 180px; - - code { - background: none !important; - } - } - - .preview { - font-size: 16px; - padding: 16px; - margin-bottom: 24px; - min-height: 180px; - - &:last-child { - margin-bottom: 0; - } - - .mat-caption { - margin-bottom: 16px; - } - } - } -} \ No newline at end of file diff --git a/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.ts b/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.ts deleted file mode 100644 index 47e078e9..00000000 --- a/src/app/main/content/ui/typography/tabs/inline-text-elements/inline-text-elements.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector : 'fuse-typography-inline-text-elements', - templateUrl: './inline-text-elements.component.html', - styleUrls : ['./inline-text-elements.component.scss'] -}) -export class FuseTypographyInlineTextElementsComponent -{ - - constructor() - { - - } -} diff --git a/src/app/main/content/ui/typography/typography.component.html b/src/app/main/content/ui/typography/typography.component.html deleted file mode 100644 index bbfa8e2d..00000000 --- a/src/app/main/content/ui/typography/typography.component.html +++ /dev/null @@ -1,50 +0,0 @@ -
- - -
-
-
- home - chevron_right - User Interface -
-
Typography
-
-
- - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
diff --git a/src/app/main/content/ui/typography/typography.component.scss b/src/app/main/content/ui/typography/typography.component.scss deleted file mode 100644 index 8fdbe2d4..00000000 --- a/src/app/main/content/ui/typography/typography.component.scss +++ /dev/null @@ -1,3 +0,0 @@ -:host { - -} \ No newline at end of file diff --git a/src/app/main/content/ui/typography/typography.component.ts b/src/app/main/content/ui/typography/typography.component.ts deleted file mode 100644 index 3f6cd268..00000000 --- a/src/app/main/content/ui/typography/typography.component.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector : 'fuse-typography', - templateUrl: './typography.component.html', - styleUrls : ['./typography.component.scss'] -}) -export class FuseTypographyComponent implements OnInit -{ - constructor() - { - } - - ngOnInit() - { - } -} diff --git a/src/app/main/content/ui/typography/typography.module.ts b/src/app/main/content/ui/typography/typography.module.ts deleted file mode 100644 index d02c680c..00000000 --- a/src/app/main/content/ui/typography/typography.module.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../../../../core/modules/shared.module'; -import { RouterModule, Routes } from '@angular/router'; - -import { FuseTypographyComponent } from './typography.component'; -import { FuseTypographyHeadingsComponent } from './tabs/headings/headings.component'; -import { FuseTypographyInlineTextElementsComponent } from './tabs/inline-text-elements/inline-text-elements.component'; -import { FuseTypographyBlockquotesListsComponent } from './tabs/blockquotes-lists/blockquotes-lists.component'; -import { FuseTypographyHelpersComponent } from './tabs/helpers/helpers.component'; - -const routes: Routes = [ - { - path : 'ui/typography', - component: FuseTypographyComponent - } -]; - -@NgModule({ - imports : [ - SharedModule, - RouterModule.forChild(routes) - ], - declarations: [ - FuseTypographyComponent, - FuseTypographyHeadingsComponent, - FuseTypographyInlineTextElementsComponent, - FuseTypographyBlockquotesListsComponent, - FuseTypographyHelpersComponent - ] -}) -export class UITypographyModule -{ -} diff --git a/src/app/main/content/ui/ui.module.ts b/src/app/main/content/ui/ui.module.ts deleted file mode 100644 index f5ca2582..00000000 --- a/src/app/main/content/ui/ui.module.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { UIFormsModule } from './forms/forms.module'; -import { UIIconsModule } from './icons/icons.module'; -import { UITypographyModule } from './typography/typography.module'; -import { UIHelperClassesModule } from './helper-classes/helper-classes.module'; -import { UIPageLayoutsModule } from './page-layouts/page-layouts.module'; -import { UIColorsModule } from './colors/colors.module'; - -@NgModule({ - imports: [ - UIFormsModule, - UIIconsModule, - UITypographyModule, - UIHelperClassesModule, - UIPageLayoutsModule, - UIColorsModule - ] -}) -export class UIModule -{ -} diff --git a/src/app/navigation.model.ts b/src/app/navigation.model.ts new file mode 100644 index 00000000..216e5a72 --- /dev/null +++ b/src/app/navigation.model.ts @@ -0,0 +1,25 @@ +export class FuseNavigation +{ + public items: any[]; + + constructor() + { + this.items = [ + { + 'title': 'APPS', + 'type' : 'subheader' + }, + { + 'title': 'Sample', + 'type' : 'nav-item', + 'icon' : 'email', + 'url' : '/sample', + 'badge': { + 'title': 25, + 'bg' : '#F44336', + 'fg' : '#FFFFFF' + } + } + ]; + } +}