import { Injectable } from '@angular/core'; import { Storage } from '@ionic/storage'; import { SearchPage } from '../pages/search/search'; import { SavedPage } from './profile-service'; import { PageTitles } from '../libs/Constants'; import { SettingsModal } from '../components/settings-modal/settings-modal'; import { AboutModal } from '../components/about-modal/about-modal'; @Injectable() export class PagesService { pages: Array; savedPages: Array; constructor(public local: Storage) { this.pages = [ { title: PageTitles.Search, component: SearchPage, params: { queries: [], title: PageTitles.Search }, icon: 'search' }, { title: PageTitles.Settings, component: SettingsModal, params: {}, icon: 'settings' }, { title: PageTitles.Help, component: AboutModal, params: {}, icon: 'help-circle' } ]; this.savedPages = []; } getMainPages(): Array { return this.pages; } getSavedPages(): Array { return this.savedPages; } addPage(page: SavedPage) { this.savedPages.push({ title: page.title, component: SearchPage, params: { queries: page.queries, title: page.title } }); } initializePages(page_array: SavedPage[]) { this.savedPages = []; for (let p of page_array) { this.savedPages.push({ title: p.title, component: SearchPage, params: { queries: p.queries, title: p.title } }); } } } export class Page { title: string; component: any; params: any; icon?: string; }