[
  {
    "path": ".angulardoc.json",
    "content": "{\n    \"repoId\": \"a13b5f05-f1dd-4d04-8f3d-e764621ce5c2\",\n    \"lastSync\": 0\n}\n"
  },
  {
    "path": ".editorconfig",
    "content": "# Editor configuration, see http://editorconfig.org\nroot = true\n\n[*]\ncharset = utf-8\nindent_style = space\nindent_size = 4\ninsert_final_newline = true\ntrim_trailing_whitespace = true\n\n[*.md]\nmax_line_length = off\ntrim_trailing_whitespace = false\n"
  },
  {
    "path": ".gitignore",
    "content": "# See http://help.github.com/ignore-files/ for more about ignoring files.\n\n# compiled output\n/tmp\n/out-tsc\n/dist\n\n# dependencies\n/node_modules\npackage-lock.json\n\n# IDEs and editors\n/.idea\n.project\n.classpath\n.history\n.c9/\n*.launch\n.settings/\n*.sublime-workspace\n\n# IDE - VSCode\n.vscode/*\n!.vscode/settings.json\n!.vscode/tasks.json\n!.vscode/launch.json\n!.vscode/extensions.json\n\n# misc\n/.angular/cache\n/.sass-cache\n/connect.lock\n/coverage\n/libpeerconnection.log\nnpm-debug.log\ntestem.log\n/typings\n\n# e2e\n/e2e/*.js\n/e2e/*.map\n\n# System Files\n.DS_Store\nThumbs.db\n"
  },
  {
    "path": ".prettierignore",
    "content": "package.json\npackage-lock.json\ndist\n.angulardoc.json\n.vscode/*\n.history/*\nnode_modules/*\nsrc/assets\n"
  },
  {
    "path": ".prettierrc",
    "content": "{\n    \"bracketSpacing\": true,\n    \"semi\": true,\n    \"singleQuote\": true,\n    \"trailingComma\": \"none\",\n    \"printWidth\": 120,\n    \"disableLanguages\": [\"html\"]\n}\n"
  },
  {
    "path": ".travis.yml",
    "content": "language: node_js\nnode_js:\n    - '9'\n    - '10'\n\ninstall:\n    - npm install\n\nscript:\n    - npm run test-ci\n\ncache:\n    directories:\n        - node_modules\n"
  },
  {
    "path": "LICENSE",
    "content": "               Copyright 2018 GeekyAnts\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n"
  },
  {
    "path": "README.md",
    "content": "# SB Admin rewritten in Angular 13 and Bootstrap 5\n\nSimple Dashboard Admin App built using Angular 13 and Bootstrap 5\n\nThis project is a port of the famous Free Admin Bootstrap Theme [SB Admin v8.0](http://startbootstrap.com/template-overviews/sb-admin-2/) to Angular 13 Theme.\n\nPowered by [StartAngular](http://startangular.com/) & [StrapUI](http://strapui.com/)\n\n## [Demo](http://rawgit.com/start-angular/SB-Admin-BS4-Angular-6/master/dist/)\n\n## [SB Admin Material version](https://github.com/start-javascript/sb-admin-material)\n\nThis project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.2.\n\n### Introduction\n\nProvides fast, reliable and extensible starter for the development of Angular projects.\n\n`sb-admin-bs5-angular13` provides the following features:\n\n-   Developed using boostrap-v6.0.0\n-   angular-v13.2.2\n-   angular/cli-v13.2.2\n-   [ng-bootstrap-v12.0.0](https://github.com/ng-bootstrap/)\n-   [ngx-translate-v14.0.0](https://github.com/ngx-translate)\n-   Following the best practices.\n-   Ahead-of-Time compilation support.\n-   Official Angular i18n support.\n-   Production and development builds.\n-   Tree-Shaking production builds.\n\n### How to start\n\n**Note** that this seed project requires **node >=v12.0.0 and npm >=6**.\n\nIn order to start the project use:\n\n```bash\n$ git clone https://github.com/start-angular/SB-Admin-BS4-Angular-8.git\n$ cd SB-Admin-BS4-Angular-8\n# install the project's dependencies\n$ npm install\n# watches your files and uses livereload by default run `npm start` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.\n$ npm start\n# prod build, will output the production application in `dist`\n# the produced code can be deployed (rsynced) to a remote server\n$ npm run build\n```\n\n### Code scaffolding\n\nRun `ng generate component component-name` to generate a new component. You can also use `ng generate directive/pipe/service/class/module`.\n\n### Running unit tests\n\nRun `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).\n\n### Running end-to-end tests\n\nRun `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).\nBefore running the tests make sure you are serving the app via `ng serve`.\n\n### Further help\n\nTo get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).\n"
  },
  {
    "path": "angular.json",
    "content": "{\n    \"$schema\": \"./node_modules/@angular/cli/lib/config/schema.json\",\n    \"version\": 1,\n    \"newProjectRoot\": \"projects\",\n    \"projects\": {\n        \"test-ng7\": {\n            \"root\": \"\",\n            \"sourceRoot\": \"src\",\n            \"projectType\": \"application\",\n            \"architect\": {\n                \"build\": {\n                    \"builder\": \"@angular-devkit/build-angular:browser\",\n                    \"options\": {\n                        \"outputPath\": \"dist\",\n                        \"index\": \"src/index.html\",\n                        \"main\": \"src/main.ts\",\n                        \"tsConfig\": \"src/tsconfig.app.json\",\n                        \"polyfills\": \"src/polyfills.ts\",\n                        \"assets\": [\"src/assets\", \"src/favicon.ico\"],\n                        \"styles\": [\"node_modules/font-awesome/css/font-awesome.css\", \"src/styles/app.scss\"],\n                        \"scripts\": [\"node_modules/chart.js/dist/Chart.js\"],\n                        \"allowedCommonJsDependencies\": [\"chart.js\"],\n                        \"aot\": false,\n                        \"vendorChunk\": true,\n                        \"extractLicenses\": false,\n                        \"buildOptimizer\": false,\n                        \"sourceMap\": true,\n                        \"optimization\": false,\n                        \"namedChunks\": true\n                    },\n                    \"configurations\": {\n                        \"production\": {\n                            \"fileReplacements\": [\n                                {\n                                    \"replace\": \"src/environments/environment.ts\",\n                                    \"with\": \"src/environments/environment.prod.ts\"\n                                }\n                            ],\n                            \"optimization\": true,\n                            \"outputHashing\": \"all\",\n                            \"sourceMap\": false,\n                            \"namedChunks\": false,\n                            \"aot\": true,\n                            \"extractLicenses\": true,\n                            \"vendorChunk\": false,\n                            \"buildOptimizer\": true,\n                            \"budgets\": [\n                                {\n                                    \"type\": \"initial\",\n                                    \"maximumWarning\": \"2mb\",\n                                    \"maximumError\": \"5mb\"\n                                }\n                            ]\n                        }\n                    },\n                    \"defaultConfiguration\": \"\"\n                },\n                \"serve\": {\n                    \"builder\": \"@angular-devkit/build-angular:dev-server\",\n                    \"options\": {\n                      \"buildTarget\": \"test-ng7:build\"\n                    },\n                    \"configurations\": {\n                        \"production\": {\n                          \"buildTarget\": \"test-ng7:build:production\"\n                        }\n                    }\n                },\n                \"extract-i18n\": {\n                    \"builder\": \"@angular-devkit/build-angular:extract-i18n\",\n                    \"options\": {\n                      \"buildTarget\": \"test-ng7:build\"\n                    }\n                },\n                \"test\": {\n                    \"builder\": \"@angular-devkit/build-angular:karma\",\n                    \"options\": {\n                        \"main\": \"src/test.ts\",\n                        \"polyfills\": \"src/polyfills.ts\",\n                        \"tsConfig\": \"src/tsconfig.spec.json\",\n                        \"karmaConfig\": \"src/karma.conf.js\",\n                        \"scripts\": [\"node_modules/chart.js/dist/Chart.js\"],\n                        \"styles\": [\"node_modules/font-awesome/css/font-awesome.css\", \"src/styles/app.scss\"],\n                        \"assets\": [\"src/assets\", \"src/favicon.ico\"]\n                    }\n                }\n            }\n        },\n        \"test-ng7-e2e\": {\n            \"root\": \"e2e/\",\n            \"projectType\": \"application\",\n            \"prefix\": \"\",\n            \"architect\": {\n                \"e2e\": {\n                    \"builder\": \"@angular-devkit/build-angular:protractor\",\n                    \"options\": {\n                        \"protractorConfig\": \"e2e/protractor.conf.js\",\n                        \"devServerTarget\": \"test-ng7:serve\"\n                    },\n                    \"configurations\": {\n                        \"production\": {\n                            \"devServerTarget\": \"test-ng7:serve:production\"\n                        }\n                    }\n                }\n            }\n        }\n    },\n    \"schematics\": {\n        \"@schematics/angular:component\": {\n            \"prefix\": \"app\",\n            \"styleext\": \"scss\"\n        },\n        \"@schematics/angular:directive\": {\n            \"prefix\": \"app\"\n        }\n    },\n    \"cli\": {\n      \"analytics\": \"0ccfd754-79ab-4bf6-b9ef-ef066366d8c7\"\n    }\n}\n"
  },
  {
    "path": "browserslist",
    "content": "last 2 Chrome versions\nlast 1 Firefox version\nlast 2 Edge major versions\nlast 2 Safari major versions\nlast 2 iOS major versions\nFirefox ESR\n"
  },
  {
    "path": "e2e/src/app.e2e-spec.ts",
    "content": "import { AppPage } from './app.po';\n\ndescribe('test-ng8 App', () => {\n    let page: AppPage;\n\n    beforeEach(() => {\n        page = new AppPage();\n    });\n\n    it('should display welcome message', () => {\n        page.navigateTo();\n        expect(page.getParagraphText()).toEqual('SB Admin BS5 Angular8');\n    });\n});\n"
  },
  {
    "path": "e2e/src/app.po.ts",
    "content": "import { browser, by, element } from 'protractor';\n\nexport class AppPage {\n    navigateTo() {\n        return browser.get('/');\n    }\n\n    getParagraphText() {\n        return element(by.css('app-root h1')).getText();\n    }\n}\n"
  },
  {
    "path": "e2e/tsconfig.e2e.json",
    "content": "{\n    \"extends\": \"../tsconfig.json\",\n    \"compilerOptions\": {\n        \"outDir\": \"../out-tsc/app\",\n        \"module\": \"commonjs\",\n        \"target\": \"es5\",\n        \"types\": [\"jasmine\", \"jasminewd2\", \"node\"]\n    }\n}\n"
  },
  {
    "path": "package.json",
    "content": "{\n  \"name\": \"sb-admin-angular15-bs5\",\n  \"version\": \"10.0.0\",\n  \"license\": \"Apache\",\n  \"scripts\": {\n    \"ng\": \"ng\",\n    \"start\": \"ng serve\",\n    \"build\": \"ng build --configuration production\",\n    \"gitbuild\": \"ng build --configuration production --base-href /start-angular/SB-Admin-BS4-Angular-8/master/dist/\",\n    \"test\": \"ng test\",\n    \"test-ci\": \"TEST_CI=true ng test\",\n    \"lint\": \"ng lint\",\n    \"e2e\": \"ng e2e\"\n  },\n  \"private\": true,\n  \"dependencies\": {\n    \"@angular/animations\": \"17.3.4\",\n    \"@angular/common\": \"17.3.4\",\n    \"@angular/compiler\": \"17.3.4\",\n    \"@angular/core\": \"17.3.4\",\n    \"@angular/forms\": \"17.3.4\",\n    \"@angular/localize\": \"17.3.4\",\n    \"@angular/platform-browser\": \"17.3.4\",\n    \"@angular/platform-browser-dynamic\": \"17.3.4\",\n    \"@angular/router\": \"17.3.4\",\n    \"@ng-bootstrap/ng-bootstrap\": \"14.1.0\",\n    \"@ngx-translate/core\": \"14.0.0\",\n    \"@ngx-translate/http-loader\": \"7.0.0\",\n    \"@popperjs/core\": \"2.11.7\",\n    \"bootstrap\": \"5.2.3\",\n    \"chart.js\": \"4.2.1\",\n    \"core-js\": \"3.30.1\",\n    \"font-awesome\": \"4.7.0\",\n    \"ng2-charts\": \"4.1.1\",\n    \"rxjs\": \"7.8.1\",\n    \"tslib\": \"2.5.0\",\n    \"zone.js\": \"~0.14.4\"\n  },\n  \"devDependencies\": {\n    \"@angular-devkit/build-angular\": \"17.3.4\",\n    \"@angular/cli\": \"17.3.4\",\n    \"@angular/compiler-cli\": \"17.3.4\",\n    \"@angular/language-service\": \"17.3.4\",\n    \"@types/jasmine\": \"4.3.1\",\n    \"@types/jasminewd2\": \"2.0.10\",\n    \"@types/node\": \"18.16.1\",\n    \"codelyzer\": \"6.0.2\",\n    \"jasmine-core\": \"~4.6.0\",\n    \"jasmine-spec-reporter\": \"~7.0.0\",\n    \"karma\": \"6.4.2\",\n    \"karma-chrome-launcher\": \"~3.2.0\",\n    \"karma-cli\": \"2.0.0\",\n    \"karma-coverage-istanbul-reporter\": \"3.0.3\",\n    \"karma-jasmine\": \"~5.1.0\",\n    \"karma-jasmine-html-reporter\": \"2.0.0\",\n    \"prettier\": \"2.8.8\",\n    \"protractor\": \"7.0.0\",\n    \"ts-node\": \"10.9.1\",\n    \"tslint\": \"6.1.3\",\n    \"typescript\": \"5.4.5\",\n    \"yarn\": \"1.22.19\"\n  }\n}"
  },
  {
    "path": "src/app/access-denied/access-denied-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { AccessDeniedComponent } from './access-denied.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: AccessDeniedComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class AccessDeniedRoutingModule {}\n"
  },
  {
    "path": "src/app/access-denied/access-denied.component.html",
    "content": "<p>\n    access-denied works!\n</p>\n"
  },
  {
    "path": "src/app/access-denied/access-denied.component.scss",
    "content": ""
  },
  {
    "path": "src/app/access-denied/access-denied.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { AccessDeniedComponent } from './access-denied.component';\n\ndescribe('AccessDeniedComponent', () => {\n    let component: AccessDeniedComponent;\n    let fixture: ComponentFixture<AccessDeniedComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [AccessDeniedComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(AccessDeniedComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/access-denied/access-denied.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-access-denied',\n    templateUrl: './access-denied.component.html',\n    styleUrls: ['./access-denied.component.scss']\n})\nexport class AccessDeniedComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/access-denied/access-denied.module.spec.ts",
    "content": "import { AccessDeniedModule } from './access-denied.module';\n\ndescribe('AccessDeniedModule', () => {\n    let accessDeniedModule: AccessDeniedModule;\n\n    beforeEach(() => {\n        accessDeniedModule = new AccessDeniedModule();\n    });\n\n    it('should create an instance', () => {\n        expect(accessDeniedModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/access-denied/access-denied.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { AccessDeniedRoutingModule } from './access-denied-routing.module';\nimport { AccessDeniedComponent } from './access-denied.component';\n\n@NgModule({\n    imports: [CommonModule, AccessDeniedRoutingModule],\n    declarations: [AccessDeniedComponent]\n})\nexport class AccessDeniedModule {}\n"
  },
  {
    "path": "src/app/app-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { AuthGuard } from './shared';\n\nconst routes: Routes = [\n    {\n        path: '',\n        loadChildren: () => import('./layout/layout.module').then((m) => m.LayoutModule),\n        canActivate: [AuthGuard]\n    },\n    { path: 'login', loadChildren: () => import('./login/login.module').then((m) => m.LoginModule) },\n    { path: 'signup', loadChildren: () => import('./signup/signup.module').then((m) => m.SignupModule) },\n    {\n        path: 'error',\n        loadChildren: () => import('./server-error/server-error.module').then((m) => m.ServerErrorModule)\n    },\n    {\n        path: 'access-denied',\n        loadChildren: () => import('./access-denied/access-denied.module').then((m) => m.AccessDeniedModule)\n    },\n    { path: 'not-found', loadChildren: () => import('./not-found/not-found.module').then((m) => m.NotFoundModule) },\n    { path: '**', redirectTo: 'not-found' }\n];\n\n@NgModule({\n    imports: [RouterModule.forRoot(routes, {})],\n    exports: [RouterModule]\n})\nexport class AppRoutingModule {}\n"
  },
  {
    "path": "src/app/app.component.html",
    "content": "<router-outlet></router-outlet>\n"
  },
  {
    "path": "src/app/app.component.scss",
    "content": ""
  },
  {
    "path": "src/app/app.component.spec.ts",
    "content": "import { APP_BASE_HREF } from '@angular/common';\nimport { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { AppComponent } from './app.component';\nimport { AppModule } from './app.module';\n\ndescribe('AppComponent', () => {\n    let component: AppComponent;\n    let fixture: ComponentFixture<AppComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [AppModule],\n            providers: [{ provide: APP_BASE_HREF, useValue: '/' }]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(AppComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/app.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-root',\n    templateUrl: './app.component.html',\n    styleUrls: ['./app.component.scss']\n})\nexport class AppComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/app.module.spec.ts",
    "content": "import { AppModule } from './app.module';\n\ndescribe('AppModule', () => {\n    let appModule: AppModule;\n\n    beforeEach(() => {\n        appModule = new AppModule();\n    });\n\n    it('should create an instance', () => {\n        expect(appModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/app.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { AuthGuard } from './shared';\nimport { LanguageTranslationModule } from './shared/modules/language-translation/language-translation.module';\n\n@NgModule({\n    imports: [\n        CommonModule,\n        BrowserModule,\n        BrowserAnimationsModule,\n        HttpClientModule,\n        LanguageTranslationModule,\n        AppRoutingModule\n    ],\n    declarations: [AppComponent],\n    providers: [AuthGuard],\n    bootstrap: [AppComponent]\n})\nexport class AppModule {}\n"
  },
  {
    "path": "src/app/layout/blank-page/blank-page-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { BlankPageComponent } from './blank-page.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: BlankPageComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class BlankPageRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/blank-page/blank-page.component.html",
    "content": ""
  },
  {
    "path": "src/app/layout/blank-page/blank-page.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/blank-page/blank-page.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { BlankPageComponent } from './blank-page.component';\n\ndescribe('BlankPageComponent', () => {\n    let component: BlankPageComponent;\n    let fixture: ComponentFixture<BlankPageComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [BlankPageComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(BlankPageComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/blank-page/blank-page.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-blank-page',\n    templateUrl: './blank-page.component.html',\n    styleUrls: ['./blank-page.component.scss']\n})\nexport class BlankPageComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/blank-page/blank-page.module.spec.ts",
    "content": "import { BlankPageModule } from './blank-page.module';\n\ndescribe('BlankPageModule', () => {\n    let blankPageModule: BlankPageModule;\n\n    beforeEach(() => {\n        blankPageModule = new BlankPageModule();\n    });\n\n    it('should create an instance', () => {\n        expect(blankPageModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/blank-page/blank-page.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { BlankPageRoutingModule } from './blank-page-routing.module';\nimport { BlankPageComponent } from './blank-page.component';\n\n@NgModule({\n    imports: [CommonModule, BlankPageRoutingModule],\n    declarations: [BlankPageComponent]\n})\nexport class BlankPageModule {}\n"
  },
  {
    "path": "src/app/layout/bs-component/bs-component-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { BsComponentComponent } from './bs-component.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: BsComponentComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class BsComponentRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/bs-component/bs-component.component.html",
    "content": "<div>\n    <app-page-header [heading]=\"'Bootstrap Component'\" [icon]=\"'fa-th-list'\"></app-page-header>\n    <app-modal></app-modal>\n    <app-alert></app-alert>\n    <app-buttons></app-buttons>\n    <app-collapse></app-collapse>\n    <app-date-picker></app-date-picker>\n    <app-dropdown></app-dropdown>\n    <app-pagination></app-pagination>\n    <app-pop-over></app-pop-over>\n    <app-progressbar></app-progressbar>\n    <app-tabs></app-tabs>\n    <app-tooltip></app-tooltip>\n    <app-timepicker></app-timepicker>\n    <app-rating></app-rating>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/bs-component.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/bs-component.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { BsComponentComponent } from './bs-component.component';\nimport { BsComponentModule } from './bs-component.module';\n\ndescribe('BsComponentComponent', () => {\n    let component: BsComponentComponent;\n    let fixture: ComponentFixture<BsComponentComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [BsComponentModule, RouterTestingModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(BsComponentComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/bs-component.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-bs-component',\n    templateUrl: './bs-component.component.html',\n    styleUrls: ['./bs-component.component.scss']\n})\nexport class BsComponentComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/bs-component.module.spec.ts",
    "content": "import { BsComponentModule } from './bs-component.module';\n\ndescribe('BsComponentModule', () => {\n    let bsComponentModule: BsComponentModule;\n\n    beforeEach(() => {\n        bsComponentModule = new BsComponentModule();\n    });\n\n    it('should create an instance', () => {\n        expect(bsComponentModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/bs-component.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\nimport { PageHeaderModule } from '../../shared';\n\nimport { BsComponentRoutingModule } from './bs-component-routing.module';\nimport { BsComponentComponent } from './bs-component.component';\nimport {\n    AlertComponent,\n    ButtonsComponent,\n    CollapseComponent,\n    DatePickerComponent,\n    DropdownComponent,\n    ModalComponent,\n    PaginationComponent,\n    PopOverComponent,\n    ProgressbarComponent,\n    RatingComponent,\n    TabsComponent,\n    TimepickerComponent,\n    TooltipComponent\n} from './components';\n\n@NgModule({\n    imports: [CommonModule, BsComponentRoutingModule, FormsModule, ReactiveFormsModule, NgbModule, PageHeaderModule],\n    declarations: [\n        BsComponentComponent,\n        ButtonsComponent,\n        AlertComponent,\n        ModalComponent,\n        CollapseComponent,\n        DatePickerComponent,\n        DropdownComponent,\n        PaginationComponent,\n        PopOverComponent,\n        ProgressbarComponent,\n        TabsComponent,\n        RatingComponent,\n        TooltipComponent,\n        TimepickerComponent\n    ]\n})\nexport class BsComponentModule {}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/alert/alert.component.html",
    "content": "<div class=\"row\">\n    <div class=\"col-lg-12\">\n        <div class=\"card mb-3\">\n            <div class=\"card-header\">Buttons</div>\n            <div class=\"card-body\">\n                <p *ngFor=\"let alert of alerts\">\n                    <ngb-alert (close)=\"closeAlert(alert)\" [type]=\"alert.type\">{{ alert.message }}</ngb-alert>\n                </p>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/alert/alert.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/alert/alert.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { AlertComponent } from './alert.component';\n\ndescribe('AlertComponent', () => {\n    let component: AlertComponent;\n    let fixture: ComponentFixture<AlertComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [AlertComponent],\n            imports: [NgbModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(AlertComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/alert/alert.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-alert',\n    templateUrl: './alert.component.html',\n    styleUrls: ['./alert.component.scss']\n})\nexport class AlertComponent implements OnInit {\n    alerts: Array<any> = [];\n\n    constructor() {\n        this.alerts.push(\n            {\n                id: 1,\n                type: 'success',\n                message: 'This is an success alert'\n            },\n            {\n                id: 2,\n                type: 'info',\n                message: 'This is an info alert'\n            },\n            {\n                id: 3,\n                type: 'warning',\n                message: 'This is a warning alert'\n            },\n            {\n                id: 4,\n                type: 'danger',\n                message: 'This is a danger alert'\n            }\n        );\n    }\n\n    ngOnInit() {}\n\n    public closeAlert(alert: any) {\n        const index: number = this.alerts.indexOf(alert);\n        this.alerts.splice(index, 1);\n    }\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/buttons/buttons.component.html",
    "content": "<div class=\"row mb-3\">\n    <div class=\"col col-sm-6\">\n        <div class=\"card\">\n            <div class=\"card-header\">Radio Button group (<strong>Using ngModel</strong>)</div>\n            <div class=\"card-body\">\n                <div [(ngModel)]=\"model\" class=\"btn-group btn-group-toggle mb-3\" name=\"radioBasic\" ngbRadioGroup>\n                    <label class=\"btn-primary\" ngbButtonLabel>\n                        <input [value]=\"1\" ngbButton type=\"radio\" /> Left (pre-checked)\n                    </label>\n                    <label class=\"btn-primary\" ngbButtonLabel>\n                        <input ngbButton type=\"radio\" value=\"middle\" /> Middle\n                    </label>\n                    <label class=\"btn-primary\" ngbButtonLabel>\n                        <input [value]=\"false\" ngbButton type=\"radio\" /> Right\n                    </label>\n                </div>\n                <div class=\"alert alert-info mb-0\"><strong>Selected Value: </strong>{{ model }}</div>\n            </div>\n        </div>\n    </div>\n    <div class=\"col col-sm-6\">\n        <div class=\"card\">\n            <div class=\"card-header\">Radio Button group (<strong>Ractive Forms</strong>)</div>\n            <div class=\"card-body\">\n                <form [formGroup]=\"radioGroupForm\" class=\"mb-3\">\n                    <div class=\"btn-group btn-group-toggle\" formControlName=\"model\" name=\"radioBasic\" ngbRadioGroup>\n                        <label class=\"btn-primary\" ngbButtonLabel>\n                            <input [value]=\"1\" ngbButton type=\"radio\" /> Left (pre-checked)\n                        </label>\n                        <label class=\"btn-primary\" ngbButtonLabel>\n                            <input ngbButton type=\"radio\" value=\"middle\" /> Middle\n                        </label>\n                        <label class=\"btn-primary\" ngbButtonLabel>\n                            <input [value]=\"false\" ngbButton type=\"radio\" /> Right\n                        </label>\n                    </div>\n                </form>\n                <div class=\"alert alert-info mb-0\">\n                    <strong>Selected Value: </strong>{{ radioGroupForm.value.model }}\n                </div>\n                <!-- <form [formGroup]=\"radioGroupForm\">\n                    <div ngbRadioGroup name=\"radioBasic\" formControlName=\"model\">\n                        <label class=\"btn btn-primary\">\n                            <input type=\"radio\" [value]=\"1\"> Left (pre-checked)\n                        </label>\n                        <label class=\"btn btn-primary\">\n                            <input type=\"radio\" value=\"middle\"> Middle\n                        </label>\n                        <label class=\"btn btn-primary\">\n                            <input type=\"radio\" [value]=\"false\"> Right\n                        </label>\n                    </div>\n                </form> -->\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/buttons/buttons.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/buttons/buttons.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { ButtonsComponent } from './buttons.component';\n\ndescribe('ButtonsComponent', () => {\n    let component: ButtonsComponent;\n    let fixture: ComponentFixture<ButtonsComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [FormsModule, ReactiveFormsModule, NgbModule],\n            declarations: [ButtonsComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(ButtonsComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/buttons/buttons.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';\n\n@Component({\n    selector: 'app-buttons',\n    templateUrl: './buttons.component.html',\n    styleUrls: ['./buttons.component.scss']\n})\nexport class ButtonsComponent implements OnInit {\n    model: any = 1;\n    public radioGroupForm: UntypedFormGroup;\n\n    constructor(private formBuilder: UntypedFormBuilder) {}\n\n    ngOnInit() {\n        this.radioGroupForm = this.formBuilder.group({\n            model: 'middle'\n        });\n    }\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/collapse/collapse.component.html",
    "content": "<div class=\"row\">\n    <div class=\"col-lg-12\">\n        <div class=\"card mb-3\">\n            <div class=\"card-header\">Collapse</div>\n            <div class=\"card-body\">\n                <p>\n                    <button\n                        (click)=\"isCollapsed = !isCollapsed\"\n                        [attr.aria-expanded]=\"!isCollapsed\"\n                        aria-controls=\"collapseExample\"\n                        class=\"btn btn-outline-primary\"\n                        type=\"button\"\n                    >\n                        Toggle\n                    </button>\n                </p>\n                <div [ngbCollapse]=\"isCollapsed\" id=\"collapseExample\">\n                    <div class=\"card\">\n                        <div class=\"card-body\">\n                            You can collapse this card by clicking Toggle\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/collapse/collapse.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/collapse/collapse.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { CollapseComponent } from './collapse.component';\n\ndescribe('CollapseComponent', () => {\n    let component: CollapseComponent;\n    let fixture: ComponentFixture<CollapseComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [NgbModule],\n            declarations: [CollapseComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(CollapseComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/collapse/collapse.component.ts",
    "content": "import { Component } from '@angular/core';\n\n@Component({\n    selector: 'app-collapse',\n    templateUrl: './collapse.component.html',\n    styleUrls: ['./collapse.component.scss']\n})\nexport class CollapseComponent {\n    public isCollapsed = false;\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/date-picker/date-picker.component.html",
    "content": "<div class=\"row\">\n    <div class=\"col-lg-12\">\n        <div class=\"card mb-3\">\n            <div class=\"card-header\">Date Picker</div>\n            <div class=\"card-body\">\n                <form class=\"form-inline mb-3\">\n                    <div class=\"form-group\">\n                        <div class=\"input-group datepicker-input\">\n                            <input\n                                #d=\"ngbDatepicker\"\n                                [(ngModel)]=\"model\"\n                                class=\"form-control\"\n                                name=\"dp\"\n                                ngbDatepicker\n                                placeholder=\"yyyy-mm-dd\"\n                            />\n                            <button (click)=\"d.toggle()\" class=\"input-group-addon\" type=\"button\">\n                                <!-- <img src=\"img/calendar-icon.svg\" style=\"width: 1.2rem; height: 1rem; cursor: pointer;\"/> -->\n                                <span class=\"fa fa-calendar\"></span>\n                            </button>\n                        </div>\n                    </div>\n                </form>\n                <div class=\"alert alert-info mb-0\"><strong>Model: </strong> {{ model | json }}</div>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/date-picker/date-picker.component.scss",
    "content": ":host ::ng-deep .datepicker-input {\n    .custom-select {\n        width: 50%;\n    }\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/date-picker/date-picker.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { FormsModule } from '@angular/forms';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { DatePickerComponent } from './date-picker.component';\n\ndescribe('DatePickerComponent', () => {\n    let component: DatePickerComponent;\n    let fixture: ComponentFixture<DatePickerComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [FormsModule, NgbModule],\n            declarations: [DatePickerComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(DatePickerComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/date-picker/date-picker.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-date-picker',\n    templateUrl: './date-picker.component.html',\n    styleUrls: ['./date-picker.component.scss']\n})\nexport class DatePickerComponent implements OnInit {\n    model: any;\n\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/dropdown/dropdown.component.html",
    "content": "<div class=\"card\">\n    <div class=\"card-header\">Dropdown</div>\n    <div class=\"card-body\">\n        <div class=\"row\">\n            <div class=\"col\">\n                <div class=\"d-inline-block dropdown\" ngbDropdown>\n                    <button class=\"btn btn-outline-primary\" ngbDropdownToggle>Toggle dropdown</button>\n                    <div ngbDropdownMenu>\n                        <button class=\"dropdown-item\">Action</button>\n                        <button class=\"dropdown-item\">Another Action</button>\n                        <button class=\"dropdown-item\">Something else is here</button>\n                    </div>\n                </div>\n            </div>\n            <div class=\"col text-right\">\n                <div class=\"d-inline-block dropdown\" ngbDropdown placement=\"top-right\">\n                    <button class=\"btn btn-outline-primary\" ngbDropdownToggle>Toggle dropup</button>\n                    <div ngbDropdownMenu>\n                        <button class=\"dropdown-item\">Action</button>\n                        <button class=\"dropdown-item\">Another Action</button>\n                        <button class=\"dropdown-item\">Something else is here</button>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <hr />\n        <p class=\"mb-2\">You can easily control dropdowns programmatically using the exported dropdown instance.</p>\n        <div #myDrop=\"ngbDropdown\" class=\"d-inline-block dropdown\" ngbDropdown>\n            <button class=\"btn btn-outline-primary\" ngbDropdownToggle>Toggle dropdown</button>\n            <div ngbDropdownMenu>\n                <button class=\"dropdown-item\">Action</button>\n                <button class=\"dropdown-item\">Another Action</button>\n                <button class=\"dropdown-item\">Something else is here</button>\n            </div>\n        </div>\n        <div #myDrop=\"ngbDropdown\" class=\"d-inline-block dropdown\" ngbDropdown>\n            <button (click)=\"$event.stopPropagation(); myDrop.open()\" class=\"btn btn-outline-success\">\n                Open from outside\n            </button>\n        </div>\n        <div #myDrop=\"ngbDropdown\" class=\"d-inline-block dropdown\" ngbDropdown>\n            <button (click)=\"$event.stopPropagation(); myDrop.close()\" class=\"btn btn-outline-danger\">\n                Close from outside\n            </button>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/dropdown/dropdown.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/dropdown/dropdown.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { DropdownComponent } from './dropdown.component';\n\ndescribe('DropdownComponent', () => {\n    let component: DropdownComponent;\n    let fixture: ComponentFixture<DropdownComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [NgbModule],\n            declarations: [DropdownComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(DropdownComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/dropdown/dropdown.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-dropdown',\n    templateUrl: './dropdown.component.html',\n    styleUrls: ['./dropdown.component.scss']\n})\nexport class DropdownComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/index.ts",
    "content": "export * from './buttons/buttons.component';\nexport * from './alert/alert.component';\nexport * from './modal/modal.component';\nexport * from './collapse/collapse.component';\nexport * from './date-picker/date-picker.component';\nexport * from './dropdown/dropdown.component';\nexport * from './pagination/pagination.component';\nexport * from './pop-over/pop-over.component';\nexport * from './progressbar/progressbar.component';\nexport * from './tabs/tabs.component';\nexport * from './rating/rating.component';\nexport * from './tooltip/tooltip.component';\nexport * from './timepicker/timepicker.component';\n"
  },
  {
    "path": "src/app/layout/bs-component/components/modal/modal.component.html",
    "content": "<div class=\"row\">\n    <div class=\"col-sm-12\">\n        <div class=\"card mb-3\">\n            <div class=\"card-header\">Modal</div>\n            <!-- Large modal -->\n            <div class=\"card-body\">\n                <button (click)=\"open(content)\" class=\"btn btn-primary\">Large modal</button>\n                <ng-template #content let-c=\"close\" let-d=\"dismiss\">\n                    <div class=\"modal-header\">\n                        <h4 class=\"modal-title\">Modal title</h4>\n                        <button (click)=\"d('Cross click')\" aria-label=\"Close\" class=\"close\" type=\"button\">\n                            <span aria-hidden=\"true\">&times;</span>\n                        </button>\n                    </div>\n                    <div class=\"modal-body\">\n                        <p>One fine body&hellip;</p>\n                    </div>\n                    <div class=\"modal-footer\">\n                        <button (click)=\"c('Close click')\" class=\"btn btn-secondary\" type=\"button\">Close</button>\n                    </div>\n                </ng-template>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/modal/modal.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/modal/modal.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { ModalComponent } from './modal.component';\n\ndescribe('ModalComponent', () => {\n    let component: ModalComponent;\n    let fixture: ComponentFixture<ModalComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [NgbModule],\n            declarations: [ModalComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(ModalComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/modal/modal.component.ts",
    "content": "import { Component } from '@angular/core';\nimport { ModalDismissReasons, NgbModal } from '@ng-bootstrap/ng-bootstrap';\n\n@Component({\n    selector: 'app-modal',\n    templateUrl: './modal.component.html',\n    styleUrls: ['./modal.component.scss']\n})\nexport class ModalComponent {\n    closeResult: string;\n\n    constructor(private modalService: NgbModal) {}\n\n    open(content) {\n        this.modalService.open(content).result.then(\n            (result) => {\n                this.closeResult = `Closed with: ${result}`;\n            },\n            (reason) => {\n                this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n            }\n        );\n    }\n\n    private getDismissReason(reason: any): string {\n        if (reason === ModalDismissReasons.ESC) {\n            return 'by pressing ESC';\n        } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n            return 'by clicking on a backdrop';\n        } else {\n            return `with: ${reason}`;\n        }\n    }\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/pagination/pagination.component.html",
    "content": "<div class=\"row\">\n    <div class=\"col col-sm-6\">\n        <div class=\"card mt-3\">\n            <div class=\"card-header\">Basic Pagination</div>\n            <div class=\"card-body\">\n                <div class=\"text-uppercase text-muted fs-12\">Default pagination</div>\n                <ngb-pagination [(page)]=\"defaultPagination\" [collectionSize]=\"70\"></ngb-pagination>\n                <div class=\"text-uppercase text-muted fs-12\">directionLinks = false</div>\n                <ngb-pagination\n                    [(page)]=\"defaultPagination\"\n                    [collectionSize]=\"70\"\n                    [directionLinks]=\"false\"\n                ></ngb-pagination>\n                <div class=\"text-uppercase text-muted fs-12\">boundaryLinks = true</div>\n                <ngb-pagination\n                    [(page)]=\"defaultPagination\"\n                    [boundaryLinks]=\"true\"\n                    [collectionSize]=\"70\"\n                ></ngb-pagination>\n                <div class=\"alert alert-info\"><b>Current page: </b>{{ defaultPagination }}</div>\n            </div>\n        </div>\n    </div>\n    <div class=\"col col-sm-6\">\n        <div class=\"card mt-3\">\n            <div class=\"card-header\">Advanced Pagination</div>\n            <div class=\"card-body\">\n                <div class=\"text-uppercase text-muted fs-12\">maxSize = 5, rotate = false</div>\n                <ngb-pagination\n                    [(page)]=\"advancedPagination\"\n                    [boundaryLinks]=\"true\"\n                    [collectionSize]=\"120\"\n                    [maxSize]=\"5\"\n                ></ngb-pagination>\n\n                <div class=\"text-uppercase text-muted fs-12\">maxSize = 5, rotate = true</div>\n                <ngb-pagination\n                    [(page)]=\"advancedPagination\"\n                    [boundaryLinks]=\"true\"\n                    [collectionSize]=\"120\"\n                    [maxSize]=\"5\"\n                    [rotate]=\"true\"\n                ></ngb-pagination>\n\n                <div class=\"text-uppercase text-muted fs-12\">maxSize = 5, rotate = true, ellipses = false</div>\n                <ngb-pagination\n                    [(page)]=\"advancedPagination\"\n                    [boundaryLinks]=\"true\"\n                    [collectionSize]=\"120\"\n                    [ellipses]=\"false\"\n                    [maxSize]=\"5\"\n                    [rotate]=\"true\"\n                ></ngb-pagination>\n                <div class=\"alert alert-info\"><b>Current page: </b>{{ advancedPagination }}</div>\n            </div>\n        </div>\n    </div>\n</div>\n<div class=\"row\">\n    <div class=\"col col-sm-6\">\n        <div class=\"card mt-3\">\n            <div class=\"card-header\">Pagination size</div>\n            <div class=\"card-body\">\n                <ngb-pagination [(page)]=\"paginationSize\" [collectionSize]=\"50\" size=\"lg\"></ngb-pagination>\n                <ngb-pagination [(page)]=\"paginationSize\" [collectionSize]=\"50\"></ngb-pagination>\n                <ngb-pagination [(page)]=\"paginationSize\" [collectionSize]=\"50\" size=\"sm\"></ngb-pagination>\n            </div>\n        </div>\n    </div>\n    <div class=\"col col-sm-6\">\n        <div class=\"card mt-3\">\n            <div class=\"card-header\">Disabled pagination</div>\n            <div class=\"card-body\">\n                <p>Pagination control can be disabled:</p>\n                <ngb-pagination\n                    [(page)]=\"disabledPagination\"\n                    [collectionSize]=\"70\"\n                    [disabled]=\"isDisabled\"\n                ></ngb-pagination>\n                <hr />\n                <button (click)=\"toggleDisabled()\" class=\"btn btn-outline-primary\">\n                    Toggle disabled\n                </button>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/pagination/pagination.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/pagination/pagination.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { PaginationComponent } from './pagination.component';\n\ndescribe('PaginationComponent', () => {\n    let component: PaginationComponent;\n    let fixture: ComponentFixture<PaginationComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [NgbModule],\n            declarations: [PaginationComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(PaginationComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/pagination/pagination.component.ts",
    "content": "import { Component } from '@angular/core';\n\n@Component({\n    selector: 'app-pagination',\n    templateUrl: './pagination.component.html',\n    styleUrls: ['./pagination.component.scss']\n})\nexport class PaginationComponent {\n    defaultPagination: number;\n    advancedPagination: number;\n    paginationSize: number;\n    disabledPagination: number;\n    isDisabled: boolean;\n\n    constructor() {\n        this.defaultPagination = 1;\n        this.advancedPagination = 1;\n        this.paginationSize = 1;\n        this.disabledPagination = 1;\n        this.isDisabled = true;\n    }\n\n    toggleDisabled() {\n        this.isDisabled = !this.isDisabled;\n    }\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/pop-over/pop-over.component.html",
    "content": "<div class=\"card mt-3\">\n    <div class=\"card-header\">\n        Pop over\n    </div>\n    <div class=\"card-body\">\n        <button\n            class=\"btn btn-secondary\"\n            ngbPopover=\"Vivamus sagittis lacus vel augue laoreet rutrum faucibus.\"\n            placement=\"top\"\n            popoverTitle=\"Popover on top\"\n            type=\"button\"\n        >\n            Popover on top\n        </button>\n\n        <button\n            class=\"btn btn-secondary\"\n            ngbPopover=\"Vivamus sagittis lacus vel augue laoreet rutrum faucibus.\"\n            placement=\"right\"\n            popoverTitle=\"Popover on right\"\n            type=\"button\"\n        >\n            Popover on right\n        </button>\n\n        <button\n            class=\"btn btn-secondary\"\n            ngbPopover=\"Vivamus sagittis lacus vel augue laoreet rutrum faucibus.\"\n            placement=\"bottom\"\n            popoverTitle=\"Popover on bottom\"\n            type=\"button\"\n        >\n            Popover on bottom\n        </button>\n\n        <button\n            class=\"btn btn-secondary\"\n            ngbPopover=\"Vivamus sagittis lacus vel augue laoreet rutrum faucibus.\"\n            placement=\"left\"\n            popoverTitle=\"Popover on left\"\n            type=\"button\"\n        >\n            Popover on left\n        </button>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/pop-over/pop-over.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/pop-over/pop-over.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { PopOverComponent } from './pop-over.component';\n\ndescribe('PopOverComponent', () => {\n    let component: PopOverComponent;\n    let fixture: ComponentFixture<PopOverComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [PopOverComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(PopOverComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/pop-over/pop-over.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-pop-over',\n    templateUrl: './pop-over.component.html',\n    styleUrls: ['./pop-over.component.scss']\n})\nexport class PopOverComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/progressbar/progressbar.component.html",
    "content": "<div class=\"card mt-3\">\n    <div class=\"card-header\">Progressbar</div>\n    <div class=\"card-body\">\n        <p>\n            <ngb-progressbar [value]=\"50\" type=\"info\"></ngb-progressbar>\n        </p>\n        <p>\n            <ngb-progressbar [max]=\"200\" [value]=\"150\" showValue=\"true\" type=\"warning\"></ngb-progressbar>\n        </p>\n        <p>\n            <ngb-progressbar [striped]=\"true\" [value]=\"100\" type=\"danger\"></ngb-progressbar>\n        </p>\n        <p>\n            <ngb-progressbar [value]=\"25\" type=\"success\">25</ngb-progressbar>\n        </p>\n        <p>\n            <ngb-progressbar [value]=\"50\" type=\"info\">Copying file <b>2 of 4</b>...</ngb-progressbar>\n        </p>\n        <p>\n            <ngb-progressbar [animated]=\"true\" [striped]=\"true\" [value]=\"75\" type=\"warning\"><i>50%</i></ngb-progressbar>\n        </p>\n        <p class=\"mb-0\">\n            <ngb-progressbar [striped]=\"true\" [value]=\"100\" type=\"danger\">Completed!</ngb-progressbar>\n        </p>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/progressbar/progressbar.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/progressbar/progressbar.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { ProgressbarComponent } from './progressbar.component';\n\ndescribe('ProgressbarComponent', () => {\n    let component: ProgressbarComponent;\n    let fixture: ComponentFixture<ProgressbarComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [NgbModule],\n            declarations: [ProgressbarComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(ProgressbarComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/progressbar/progressbar.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-progressbar',\n    templateUrl: './progressbar.component.html',\n    styleUrls: ['./progressbar.component.scss']\n})\nexport class ProgressbarComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/rating/rating.component.html",
    "content": "<div class=\"card\">\n    <div class=\"card-header\">Rating (<strong>Basic demo</strong>)</div>\n    <div class=\"card-body\">\n        <ngb-rating [(rate)]=\"currentRate\"></ngb-rating>\n        <hr />\n        <pre>Rate: <b>{{currentRate}}</b></pre>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/rating/rating.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/rating/rating.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\nimport { BsComponentModule } from '../../bs-component.module';\n\nimport { RatingComponent } from './rating.component';\n\ndescribe('RatingComponent', () => {\n    let component: RatingComponent;\n    let fixture: ComponentFixture<RatingComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [BsComponentModule, RouterTestingModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(RatingComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/rating/rating.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-rating',\n    templateUrl: './rating.component.html',\n    styleUrls: ['./rating.component.scss']\n})\nexport class RatingComponent implements OnInit {\n    currentRate = 8;\n\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/tabs/tabs.component.html",
    "content": "<div class=\"row mt-3\">\n    <div class=\"col-sm-6\">\n        <div class=\"card\">\n            <div class=\"card-header\">Tabset</div>\n            <div class=\"card-body\">\n                <ngb-tabset>\n                    <ngb-tab title=\"Simple\">\n                        <ng-template ngbTabContent>\n                            <p>\n                                Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown\n                                aliqua, retro synth master cleanse. Mustache cliche tempor, williamsburg carles vegan\n                                helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu\n                                banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone.\n                                Seitan aliquip quis cardigan american apparel, butcher voluptate nisi qui.\n                            </p>\n                        </ng-template>\n                    </ngb-tab>\n                    <ngb-tab>\n                        <ng-template ngbTabTitle><b>Fancy</b> title</ng-template>\n                        <ng-template ngbTabContent>\n                            <p>\n                                Exercitation +1 labore velit, blog sartorial PBR leggings next level wes anderson\n                                artisan four loko farm-to-table craft beer twee. Qui photo booth letterpress, commodo\n                                enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud\n                                organic, assumenda labore aesthetic magna delectus mollit. Keytar helvetica VHS salvia\n                                yr, vero magna velit sapiente labore stumptown. Vegan fanny pack odio cillum wes\n                                anderson 8-bit, sustainable jean shorts beard ut DIY ethical culpa terry richardson\n                                biodiesel. Art party scenester stumptown, tumblr butcher vero sint qui sapiente\n                                accusamus tattooed echo park.\n                            </p>\n                        </ng-template>\n                    </ngb-tab>\n                    <ngb-tab [disabled]=\"true\" title=\"Disabled\">\n                        <ng-template ngbTabContent>\n                            <p>\n                                Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown\n                                aliqua, retro synth master cleanse. Mustache cliche tempor, williamsburg carles vegan\n                                helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu\n                                banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone.\n                                Seitan aliquip quis cardigan american apparel, butcher voluptate nisi qui.\n                            </p>\n                        </ng-template>\n                    </ngb-tab>\n                </ngb-tabset>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-sm-6\">\n        <div class=\"card\">\n            <div class=\"card-header\">Pills</div>\n            <div class=\"card-body\">\n                <ngb-tabset type=\"pills\">\n                    <ngb-tab title=\"Simple\">\n                        <ng-template ngbTabContent>\n                            <p>\n                                Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown\n                                aliqua, retro synth master cleanse. Mustache cliche tempor, williamsburg carles vegan\n                                helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu\n                                banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone.\n                                Seitan aliquip quis cardigan american apparel, butcher voluptate nisi qui.\n                            </p>\n                        </ng-template>\n                    </ngb-tab>\n                    <ngb-tab>\n                        <ng-template ngbTabTitle><b>Fancy</b> title</ng-template>\n                        <ng-template ngbTabContent\n                            >Food truck fixie locavore, accusamus mcsweeney's marfa nulla single-origin coffee squid.\n                            <p>\n                                Exercitation +1 labore velit, blog sartorial PBR leggings next level wes anderson\n                                artisan four loko farm-to-table craft beer twee. Qui photo booth letterpress, commodo\n                                enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud\n                                organic, assumenda labore aesthetic magna delectus mollit. Keytar helvetica VHS salvia\n                                yr, vero magna velit sapiente labore stumptown. Vegan fanny pack odio cillum wes\n                                anderson 8-bit, sustainable jean shorts beard ut DIY ethical culpa terry richardson\n                                biodiesel. Art party scenester stumptown, tumblr butcher vero sint qui sapiente\n                                accusamus tattooed echo park.\n                            </p>\n                        </ng-template>\n                    </ngb-tab>\n                    <ngb-tab [disabled]=\"true\" title=\"Disabled\">\n                        <ng-template ngbTabContent>\n                            <p>\n                                Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown\n                                aliqua, retro synth master cleanse. Mustache cliche tempor, williamsburg carles vegan\n                                helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu\n                                banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone.\n                                Seitan aliquip quis cardigan american apparel, butcher voluptate nisi qui.\n                            </p>\n                        </ng-template>\n                    </ngb-tab>\n                </ngb-tabset>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/tabs/tabs.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/tabs/tabs.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { TabsComponent } from './tabs.component';\n\ndescribe('TabsComponent', () => {\n    let component: TabsComponent;\n    let fixture: ComponentFixture<TabsComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [NgbModule],\n            declarations: [TabsComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(TabsComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/tabs/tabs.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-tabs',\n    templateUrl: './tabs.component.html',\n    styleUrls: ['./tabs.component.scss']\n})\nexport class TabsComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/timepicker/timepicker.component.html",
    "content": "<div class=\"row mt-3\">\n    <div class=\"col-sm-6\">\n        <div class=\"card\">\n            <div class=\"card-header\">Timepicker (<b>Default</b>)</div>\n            <div class=\"card-body\">\n                <ngb-timepicker [(ngModel)]=\"defaultTime\"></ngb-timepicker>\n                <div class=\"alert alert-info\"><b>Selected time: </b>{{ defaultTime | json }}</div>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-sm-6\">\n        <div class=\"card\">\n            <div class=\"card-header\">Timepicker (<b>Default</b>)</div>\n            <div class=\"card-body\">\n                <ngb-timepicker [(ngModel)]=\"meridianTime\" [meridian]=\"meridian\"></ngb-timepicker>\n                <button (click)=\"toggleMeridian()\" class=\"btn btn-sm btn-outline-{{ meridian ? 'success' : 'danger' }}\">\n                    Meridian - {{ meridian ? 'ON' : 'OFF' }}\n                </button>\n                <div class=\"alert alert-info mt-3 mb-0\"><b>Selected time: </b>{{ meridianTime | json }}</div>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-sm-6\">\n        <div class=\"card\">\n            <div class=\"card-header\">Timepicker (<b>Seconds</b>)</div>\n            <div class=\"card-body\">\n                <ngb-timepicker [(ngModel)]=\"SecondsTime\" [seconds]=\"seconds\"></ngb-timepicker>\n                <button (click)=\"toggleSeconds()\" class=\"btn btn-sm btn-outline-{{ seconds ? 'success' : 'danger' }}\">\n                    Seconds - {{ seconds ? 'ON' : 'OFF' }}\n                </button>\n                <div class=\"alert alert-info mt-3 mb-0\"><b>Selected time: </b>{{ SecondsTime | json }}</div>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-sm-6 mt-3\">\n        <div class=\"card\">\n            <div class=\"card-header\">Timepicker (<b>Custom Step</b>)</div>\n            <div class=\"card-body\">\n                <ngb-timepicker\n                    [(ngModel)]=\"customTime\"\n                    [hourStep]=\"hourStep\"\n                    [minuteStep]=\"minuteStep\"\n                    [secondStep]=\"secondStep\"\n                    [seconds]=\"true\"\n                ></ngb-timepicker>\n\n                <div class=\"row\">\n                    <div class=\"col-sm-4\">\n                        <label for=\"changeHourStep\">Hour Step</label>\n                        <input [(ngModel)]=\"hourStep\" class=\"form-control\" type=\"number\" />\n                    </div>\n                    <div class=\"col-sm-4\">\n                        <label for=\"changeMinuteStep\">Minute Step</label>\n                        <input [(ngModel)]=\"minuteStep\" class=\"form-control\" type=\"number\" />\n                    </div>\n                    <div class=\"col-sm-4\">\n                        <label for=\"changeSecondStep\">Second Step</label>\n                        <input [(ngModel)]=\"secondStep\" class=\"form-control\" type=\"number\" />\n                    </div>\n                </div>\n                <div class=\"alert alert-info mt-3 mb-0\"><b>Selected time: </b>{{ customTime | json }}</div>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/timepicker/timepicker.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/timepicker/timepicker.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { FormsModule } from '@angular/forms';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n\nimport { TimepickerComponent } from './timepicker.component';\n\ndescribe('TimepickerComponent', () => {\n    let component: TimepickerComponent;\n    let fixture: ComponentFixture<TimepickerComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [FormsModule, NgbModule],\n            declarations: [TimepickerComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(TimepickerComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/timepicker/timepicker.component.ts",
    "content": "import { Component } from '@angular/core';\nimport { NgbTimeStruct } from '@ng-bootstrap/ng-bootstrap';\n\n@Component({\n    selector: 'app-timepicker',\n    templateUrl: './timepicker.component.html',\n    styleUrls: ['./timepicker.component.scss']\n})\nexport class TimepickerComponent {\n    defaultTime = { hour: 13, minute: 30 };\n    meridianTime = { hour: 13, minute: 30 };\n    meridian = true;\n\n    SecondsTime: NgbTimeStruct = { hour: 13, minute: 30, second: 30 };\n    seconds = true;\n\n    customTime: NgbTimeStruct = { hour: 13, minute: 30, second: 0 };\n    hourStep = 1;\n    minuteStep = 15;\n    secondStep = 30;\n\n    toggleSeconds() {\n        this.seconds = !this.seconds;\n    }\n\n    toggleMeridian() {\n        this.meridian = !this.meridian;\n    }\n}\n"
  },
  {
    "path": "src/app/layout/bs-component/components/tooltip/tooltip.component.html",
    "content": "<div class=\"card\">\n    <div class=\"card-header\">\n        Tooltip\n    </div>\n    <div class=\"card-body\">\n        <button class=\"btn btn-secondary\" ngbTooltip=\"Tooltip on top\" placement=\"top\" type=\"button\">\n            Tooltip on top\n        </button>\n        <button class=\"btn btn-secondary\" ngbTooltip=\"Tooltip on right\" placement=\"right\" type=\"button\">\n            Tooltip on right\n        </button>\n        <button class=\"btn btn-secondary\" ngbTooltip=\"Tooltip on bottom\" placement=\"bottom\" type=\"button\">\n            Tooltip on bottom\n        </button>\n        <button class=\"btn btn-secondary\" ngbTooltip=\"Tooltip on left\" placement=\"left\" type=\"button\">\n            Tooltip on left\n        </button>\n        <ng-template #StaticTipContent><em>Tooltip</em> <u>with</u> <b>HTML</b></ng-template>\n        <button [ngbTooltip]=\"StaticTipContent\" class=\"btn btn-secondary\" data-html=\"true\" type=\"button\">\n            Tooltip with HTML\n        </button>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-component/components/tooltip/tooltip.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-component/components/tooltip/tooltip.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\nimport { BsComponentModule } from '../../bs-component.module';\n\nimport { TooltipComponent } from './tooltip.component';\n\ndescribe('TooltipComponent', () => {\n    let component: TooltipComponent;\n    let fixture: ComponentFixture<TooltipComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [BsComponentModule, RouterTestingModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(TooltipComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-component/components/tooltip/tooltip.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-tooltip',\n    templateUrl: './tooltip.component.html',\n    styleUrls: ['./tooltip.component.scss']\n})\nexport class TooltipComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-element/bs-element-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { BsElementComponent } from './bs-element.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: BsElementComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class BsElementRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/bs-element/bs-element.component.html",
    "content": "<div [@routerTransition]>\n    <app-page-header [heading]=\"'Bootstrap Elements'\" [icon]=\"'fa-desktop'\"></app-page-header>\n    <!-- Main jumbotron for a primary marketing message or call to action -->\n    <div class=\"jumbotron\">\n        <h1>Hello, world!</h1>\n        <p>\n            This is a template for a simple marketing or informational website. It includes a large callout called a\n            jumbotron and three supporting pieces of content. Use it as a starting point to create something more\n            unique.\n        </p>\n        <p>\n            <a class=\"btn btn-primary btn-lg\" href=\"javascript:void(0)\" role=\"button\">Learn more »</a>\n        </p>\n    </div>\n\n    <div class=\"page-header\">\n        <h1>Buttons</h1>\n        <hr />\n    </div>\n    <p>\n        <button class=\"btn btn-lg btn-default\" type=\"button\">Default</button>\n        <button class=\"btn btn-lg btn-primary\" type=\"button\">Primary</button>\n        <button class=\"btn btn-lg btn-secondary\" type=\"button\">Secondary</button>\n        <button class=\"btn btn-lg btn-success\" type=\"button\">Success</button>\n        <button class=\"btn btn-lg btn-info\" type=\"button\">Info</button>\n        <button class=\"btn btn-lg btn-warning\" type=\"button\">Warning</button>\n        <button class=\"btn btn-lg btn-danger\" type=\"button\">Danger</button>\n        <button class=\"btn btn-lg btn-link\" type=\"button\">Link</button>\n    </p>\n    <p>\n        <button class=\"btn btn-default\" type=\"button\">Default</button>\n        <button class=\"btn btn-primary\" type=\"button\">Primary</button>\n        <button class=\"btn btn-secondary\" type=\"button\">Secondary</button>\n        <button class=\"btn btn-success\" type=\"button\">Success</button>\n        <button class=\"btn btn-info\" type=\"button\">Info</button>\n        <button class=\"btn btn-warning\" type=\"button\">Warning</button>\n        <button class=\"btn btn-danger\" type=\"button\">Danger</button>\n        <button class=\"btn btn-link\" type=\"button\">Link</button>\n    </p>\n    <p>\n        <button class=\"btn btn-sm btn-default\" type=\"button\">Default</button>\n        <button class=\"btn btn-sm btn-primary\" type=\"button\">Primary</button>\n        <button class=\"btn btn-sm btn-secondary\" type=\"button\">Secondary</button>\n        <button class=\"btn btn-sm btn-success\" type=\"button\">Success</button>\n        <button class=\"btn btn-sm btn-info\" type=\"button\">Info</button>\n        <button class=\"btn btn-sm btn-warning\" type=\"button\">Warning</button>\n        <button class=\"btn btn-sm btn-danger\" type=\"button\">Danger</button>\n        <button class=\"btn btn-sm btn-link\" type=\"button\">Link</button>\n    </p>\n\n    <br />\n\n    <div class=\"page-header\">\n        <h1>Thumbnails</h1>\n        <hr />\n    </div>\n    <img alt=\"\" class=\"img-thumbnail\" src=\"http://placehold.it/400x400\" />\n\n    <div class=\"page-header\">\n        <h1>Dropdown menus</h1>\n        <hr />\n    </div>\n    <div class=\"dropdown theme-dropdown clearfix\" ngbDropdown>\n        <button class=\"btn btn-secondary\" ngbDropdownToggle>\n            Dropdown\n        </button>\n        <div aria-labelledby=\"dropdownMenu1\" class=\"dropdown-menu\" ngbDropdownMenu>\n            <a class=\"dropdown-item\" href=\"javascript:void(0)\">Action</a>\n            <a class=\"dropdown-item\" href=\"javascript:void(0)\">Another action</a>\n            <a class=\"dropdown-item\" href=\"javascript:void(0)\">Something else here</a>\n        </div>\n    </div>\n    <br />\n\n    <div class=\"page-header\">\n        <h1>Navbars</h1>\n    </div>\n    <nav class=\"navbar navbar-expand-lg navbar-light bg-light\">\n        <a class=\"navbar-brand\" href=\"#\">Navbar</a>\n        <button class=\"navbar-toggler\" type=\"button\">\n            <span class=\"navbar-toggler-icon\"></span>\n        </button>\n        <div class=\"collapse navbar-collapse\">\n            <ul class=\"navbar-nav mr-auto\">\n                <li class=\"nav-item active\">\n                    <a class=\"nav-link\" href=\"#\">Home <span class=\"sr-only\">(current)</span></a>\n                </li>\n                <li class=\"nav-item\">\n                    <a class=\"nav-link\" href=\"#\">Link</a>\n                </li>\n                <li class=\"nav-item\">\n                    <a class=\"nav-link disabled\" href=\"#\">Disabled</a>\n                </li>\n            </ul>\n            <form class=\"form-inline my-2 my-lg-0\">\n                <input aria-label=\"Search\" class=\"form-control mr-sm-2\" placeholder=\"Search\" type=\"text\" />\n                <button class=\"btn btn-outline-success my-2 my-sm-0\" type=\"submit\">Search</button>\n            </form>\n        </div>\n    </nav>\n    <br />\n    <nav class=\"navbar navbar-expand-lg navbar-dark bg-dark mb-3\">\n        <a class=\"navbar-brand\" href=\"#\">Navbar</a>\n        <button class=\"navbar-toggler\" type=\"button\">\n            <span class=\"navbar-toggler-icon\"></span>\n        </button>\n        <div class=\"collapse navbar-collapse\">\n            <ul class=\"navbar-nav mr-auto\">\n                <li class=\"nav-item active\">\n                    <a class=\"nav-link\" href=\"#\">Home <span class=\"sr-only\">(current)</span></a>\n                </li>\n                <li class=\"nav-item\">\n                    <a class=\"nav-link\" href=\"#\">Link</a>\n                </li>\n                <li class=\"nav-item\">\n                    <a class=\"nav-link disabled\" href=\"#\">Disabled</a>\n                </li>\n            </ul>\n            <form class=\"form-inline my-2 my-lg-0\">\n                <input aria-label=\"Search\" class=\"form-control mr-sm-2\" placeholder=\"Search\" type=\"text\" />\n                <button class=\"btn btn-outline-success my-2 my-sm-0\" type=\"submit\">Search</button>\n            </form>\n        </div>\n    </nav>\n\n    <div class=\"page-header\">\n        <h1>Alerts</h1>\n        <hr />\n    </div>\n    <div class=\"alert alert-success\">\n        <strong>Well done!</strong> You successfully read this important alert message.\n    </div>\n    <div class=\"alert alert-info\">\n        <strong>Heads up!</strong> This alert needs your attention, but it's not super important.\n    </div>\n    <div class=\"alert alert-warning\"><strong>Warning!</strong> Best check yo self, you're not looking too good.</div>\n    <div class=\"alert alert-danger\"><strong>Oh snap!</strong> Change a few things up and try submitting again.</div>\n\n    <div class=\"page-header\">\n        <h1>Progress bars</h1>\n        <hr />\n    </div>\n    <div class=\"progress\">\n        <div\n            aria-valuemax=\"100\"\n            aria-valuemin=\"0\"\n            aria-valuenow=\"25\"\n            class=\"progress-bar\"\n            role=\"progressbar\"\n            style=\"width: 25%; height: 10px;\"\n        ></div>\n    </div>\n    <br />\n    <div class=\"progress\">\n        <div\n            aria-valuemax=\"100\"\n            aria-valuemin=\"0\"\n            aria-valuenow=\"25\"\n            class=\"progress-bar bg-success\"\n            role=\"progressbar\"\n            style=\"width: 25%;\"\n        ></div>\n    </div>\n    <br />\n    <div class=\"progress\">\n        <div\n            aria-valuemax=\"100\"\n            aria-valuemin=\"0\"\n            aria-valuenow=\"50\"\n            class=\"progress-bar bg-info\"\n            role=\"progressbar\"\n            style=\"width: 50%;\"\n        ></div>\n    </div>\n    <br />\n    <div class=\"progress\">\n        <div\n            aria-valuemax=\"100\"\n            aria-valuemin=\"0\"\n            aria-valuenow=\"15\"\n            class=\"progress-bar\"\n            role=\"progressbar\"\n            style=\"width: 15%;\"\n        ></div>\n        <div\n            aria-valuemax=\"100\"\n            aria-valuemin=\"0\"\n            aria-valuenow=\"30\"\n            class=\"progress-bar bg-success\"\n            role=\"progressbar\"\n            style=\"width: 30%;\"\n        ></div>\n        <div\n            aria-valuemax=\"100\"\n            aria-valuemin=\"0\"\n            aria-valuenow=\"20\"\n            class=\"progress-bar bg-info\"\n            role=\"progressbar\"\n            style=\"width: 20%;\"\n        ></div>\n    </div>\n    <br />\n    <div class=\"progress\">\n        <div\n            aria-valuemax=\"100\"\n            aria-valuemin=\"0\"\n            aria-valuenow=\"100\"\n            class=\"progress-bar progress-bar-striped bg-danger\"\n            role=\"progressbar\"\n            style=\"width: 100%;\"\n        ></div>\n    </div>\n    <br />\n\n    <div class=\"page-header\">\n        <h1>List groups</h1>\n        <hr />\n    </div>\n    <div class=\"row\">\n        <div class=\"col-sm-4\">\n            <ul class=\"list-group\">\n                <li class=\"list-group-item\">Cras justo odio</li>\n                <li class=\"list-group-item\">Dapibus ac facilisis in</li>\n                <li class=\"list-group-item\">Morbi leo risus</li>\n                <li class=\"list-group-item\">Porta ac consectetur ac</li>\n                <li class=\"list-group-item\">Vestibulum at eros</li>\n            </ul>\n        </div>\n        <!-- /.col-sm-4 -->\n        <div class=\"col-sm-4\">\n            <div class=\"list-group\">\n                <a class=\"list-group-item active\" href=\"javascript:void(0)\">Cras justo odio</a>\n                <a class=\"list-group-item\" href=\"javascript:void(0)\">Dapibus ac facilisis in</a>\n                <a class=\"list-group-item\" href=\"javascript:void(0)\">Morbi leo risus</a>\n                <a class=\"list-group-item\" href=\"javascript:void(0)\">Porta ac consectetur ac</a>\n                <a class=\"list-group-item\" href=\"javascript:void(0)\">Vestibulum at eros</a>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n        <div class=\"col-sm-4\">\n            <div class=\"list-group\">\n                <a class=\"list-group-item active\" href=\"javascript:void(0)\">\n                    <h4 class=\"list-group-item-heading\">List group item heading</h4>\n                    <p class=\"list-group-item-text\">\n                        Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.\n                    </p>\n                </a>\n                <a class=\"list-group-item\" href=\"javascript:void(0)\">\n                    <h4 class=\"list-group-item-heading\">List group item heading</h4>\n                    <p class=\"list-group-item-text\">\n                        Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.\n                    </p>\n                </a>\n                <a class=\"list-group-item\" href=\"javascript:void(0)\">\n                    <h4 class=\"list-group-item-heading\">List group item heading</h4>\n                    <p class=\"list-group-item-text\">\n                        Donec id elit non mi porta gravida at eget metus. Maecenas sed diam eget risus varius blandit.\n                    </p>\n                </a>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n    </div>\n\n    <div class=\"page-header\">\n        <h1>Cards</h1>\n        <hr />\n    </div>\n    <div class=\"row\">\n        <div class=\"col-sm-4\">\n            <div class=\"card text-white bg-primary mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Primary card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-sm-4\">\n            <div class=\"card text-white bg-secondary mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Secondary card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n        <div class=\"col-sm-4\">\n            <div class=\"card text-white bg-success mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Success card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-sm-4\">\n            <div class=\"card text-white bg-danger mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Danger card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n        <div class=\"col-sm-4\">\n            <div class=\"card text-white bg-warning mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Warning card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-sm-4\">\n            <div class=\"card text-white bg-info mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Info card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n        <div class=\"col-sm-4\">\n            <div class=\"card bg-light mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Light card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n        <div class=\"col-sm-4\">\n            <div class=\"card text-white bg-dark mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Dark card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n        <div class=\"col-sm-4\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Header</div>\n                <div class=\"card-body\">\n                    <h4 class=\"card-title\">Dark card title</h4>\n                    <p class=\"card-text\">\n                        Some quick example text to build on the card title and make up the bulk of the card's content.\n                    </p>\n                </div>\n            </div>\n        </div>\n        <!-- /.col-sm-4 -->\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/bs-element/bs-element.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/bs-element/bs-element.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { BsElementComponent } from './bs-element.component';\nimport { BsElementModule } from './bs-element.module';\n\ndescribe('BsElementComponent', () => {\n    let component: BsElementComponent;\n    let fixture: ComponentFixture<BsElementComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [BsElementModule, RouterTestingModule, BrowserAnimationsModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(BsElementComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-element/bs-element.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { routerTransition } from '../../router.animations';\n\n@Component({\n    selector: 'app-bs-element',\n    templateUrl: './bs-element.component.html',\n    styleUrls: ['./bs-element.component.scss'],\n    animations: [routerTransition()]\n})\nexport class BsElementComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/bs-element/bs-element.module.spec.ts",
    "content": "import { BsElementModule } from './bs-element.module';\n\ndescribe('BsElementModule', () => {\n    let bsElementModule: BsElementModule;\n\n    beforeEach(() => {\n        bsElementModule = new BsElementModule();\n    });\n\n    it('should create an instance', () => {\n        expect(bsElementModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/bs-element/bs-element.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\nimport { PageHeaderModule } from './../../shared';\n\nimport { BsElementRoutingModule } from './bs-element-routing.module';\nimport { BsElementComponent } from './bs-element.component';\n\n@NgModule({\n    imports: [CommonModule, BsElementRoutingModule, PageHeaderModule, NgbModule],\n    declarations: [BsElementComponent]\n})\nexport class BsElementModule {}\n"
  },
  {
    "path": "src/app/layout/charts/charts-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { ChartsComponent } from './charts.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: ChartsComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class ChartsRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/charts/charts.component.html",
    "content": "<div [@routerTransition]>\n    <app-page-header [heading]=\"'Charts'\" [icon]=\"'fa-bar-chart-o'\"></app-page-header>\n    <div class=\"row\">\n        <div class=\"col col-sm-6\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">\n                    Bar Chart\n                </div>\n                <div class=\"card-body\">\n                    <canvas\n                        (chartClick)=\"chartClicked($event)\"\n                        (chartHover)=\"chartHovered($event)\"\n                        [type]=\"barChartType\"\n                        [datasets]=\"barChartData\"\n                        [labels]=\"barChartLabels\"\n                        [legend]=\"barChartLegend\"\n                        [options]=\"barChartOptions\"\n                        baseChart\n                    >\n                    </canvas>\n                </div>\n                <div class=\"card-footer\">\n                    <button (click)=\"randomize()\" class=\"btn btn-info btn-sm\">Update</button>\n                </div>\n            </div>\n        </div>\n        <div class=\"col col-sm-6\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">\n                    Doughnut Chart\n                </div>\n                <div class=\"card-body\">\n                    <canvas\n                        (chartClick)=\"chartClicked($event)\"\n                        (chartHover)=\"chartHovered($event)\"\n                        [type]=\"doughnutChartType\"\n                        [data]=\"doughnutChartData\"\n                        [labels]=\"doughnutChartLabels\"\n                        baseChart\n                        height=\"180px\"\n                    >\n                    </canvas>\n                </div>\n            </div>\n        </div>\n    </div>\n    <div class=\"row\">\n        <div class=\"col col-sm-6\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">\n                    Radar Chart\n                </div>\n                <div class=\"card-body\">\n                    <canvas\n                        (chartClick)=\"chartClicked($event)\"\n                        (chartHover)=\"chartHovered($event)\"\n                        [type]=\"radarChartType\"\n                        [datasets]=\"radarChartData\"\n                        [labels]=\"radarChartLabels\"\n                        baseChart\n                        height=\"150px\"\n                    >\n                    </canvas>\n                </div>\n            </div>\n        </div>\n        <div class=\"col col-sm-6\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">\n                    Pie Chart\n                </div>\n                <div class=\"card-body\">\n                    <canvas\n                        (chartClick)=\"chartClicked($event)\"\n                        (chartHover)=\"chartHovered($event)\"\n                        [type]=\"pieChartType\"\n                        [data]=\"pieChartData\"\n                        baseChart\n                        height=\"150px\"\n                    >\n                    </canvas>\n                </div>\n            </div>\n        </div>\n    </div>\n    <div class=\"row\">\n        <div class=\"col col-sm-6\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">\n                    Polar Area Chart\n                </div>\n                <div class=\"card-body\">\n                    <canvas\n                        (chartClick)=\"chartClicked($event)\"\n                        (chartHover)=\"chartHovered($event)\"\n                        [type]=\"polarAreaChartType\"\n                        [data]=\"polarAreaChartData\"\n                        [labels]=\"polarAreaChartLabels\"\n                        [legend]=\"polarAreaLegend\"\n                        baseChart\n                        height=\"130px\"\n                    >\n                    </canvas>\n                </div>\n            </div>\n        </div>\n        <div class=\"col col-sm-6\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">\n                    Line Chart\n                </div>\n                <div class=\"card-body\">\n                    <!--[colors]=\"lineChartColors\"-->\n                    <canvas\n                        (chartClick)=\"chartClicked($event)\"\n                        (chartHover)=\"chartHovered($event)\"\n                        [type]=\"lineChartType\"\n                        [datasets]=\"lineChartData\"\n                        [labels]=\"lineChartLabels\"\n                        [legend]=\"lineChartLegend\"\n                        [options]=\"lineChartOptions\"\n                        baseChart\n                        height=\"130\"\n                    >\n                    </canvas>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/charts/charts.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/charts/charts.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { ChartsComponent } from './charts.component';\nimport { ChartsModule } from './charts.module';\n\ndescribe('ChartsComponent', () => {\n    let component: ChartsComponent;\n    let fixture: ComponentFixture<ChartsComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [ChartsModule, RouterTestingModule, BrowserAnimationsModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(ChartsComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/charts/charts.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { routerTransition } from '../../router.animations';\nimport { ChartData, ChartType } from \"chart.js\";\n\n@Component({\n    selector: 'app-charts',\n    templateUrl: './charts.component.html',\n    styleUrls: ['./charts.component.scss'],\n    animations: [routerTransition()]\n})\nexport class ChartsComponent implements OnInit {\n    // bar chart\n    public barChartOptions: any = {\n        scaleShowVerticalLines: false,\n        responsive: true\n    };\n    public barChartLabels: string[] = ['2006', '2007', '2008', '2009', '2010', '2011', '2012'];\n    public barChartType: ChartType;\n    public barChartLegend: boolean;\n\n    public barChartData: any[] = [\n        { data: [65, 59, 80, 81, 56, 55, 40], label: 'Series A' },\n        { data: [28, 48, 40, 19, 86, 27, 90], label: 'Series B' }\n    ];\n\n    // Doughnut\n    public doughnutChartLabels: string[] = ['Download Sales', 'In-Store Sales', 'Mail-Order Sales'];\n    public doughnutChartData: ChartData<'doughnut'> = {\n        labels: this.doughnutChartLabels,\n        datasets: [\n            { data: [ 350, 450, 100 ] },\n            { data: [ 50, 150, 120 ] },\n            { data: [ 250, 130, 70 ] }\n        ]\n    };\n    public doughnutChartType: ChartType = 'doughnut';\n\n    // Radar\n    public radarChartLabels: string[] = ['Eating', 'Drinking', 'Sleeping', 'Designing', 'Coding', 'Cycling', 'Running'];\n    public radarChartData: any = [\n        { data: [65, 59, 90, 81, 56, 55, 40], label: 'Series A' },\n        { data: [28, 48, 40, 19, 96, 27, 100], label: 'Series B' }\n    ];\n    public radarChartType: ChartType;\n\n    // Pie\n    // public pieChartLabels: string[] = ['Download Sales', 'In-Store Sales', 'Mail Sales'];\n    // public pieChartData: number[] = [300, 500, 100];\n    public pieChartData: ChartData<'pie', number[], string | string[]> = {\n        labels: [ [ 'Download', 'Sales' ], [ 'In', 'Store', 'Sales' ], 'Mail Sales' ],\n        datasets: [ {\n            data: [ 300, 500, 100 ]\n        } ]\n    };\n    public pieChartType: ChartType;\n\n    // PolarArea\n    public polarAreaChartLabels: string[] = [\n        'Download Sales',\n        'In-Store Sales',\n        'Mail Sales',\n        'Telesales',\n        'Corporate Sales'\n    ];\n    public polarAreaChartData: ChartData<'polarArea'> = {\n        labels: this.polarAreaChartLabels,\n        datasets: [ {\n            data: [ 300, 500, 100, 40, 120 ],\n            label: 'Series 1'\n        } ]\n    };\n\n    public polarAreaLegend: boolean;\n\n    public polarAreaChartType: ChartType;\n\n    // lineChart\n    public lineChartData: Array<any> = [\n        { data: [65, 59, 80, 81, 56, 55, 40], label: 'Series A' },\n        { data: [28, 48, 40, 19, 86, 27, 90], label: 'Series B' },\n        { data: [18, 48, 77, 9, 100, 27, 40], label: 'Series C' }\n    ];\n    public lineChartLabels: Array<any> = ['January', 'February', 'March', 'April', 'May', 'June', 'July'];\n    public lineChartOptions: any = {\n        responsive: true\n    };\n    public lineChartColors: Array<any> = [\n        {\n            // grey\n            backgroundColor: 'rgba(148,159,177,0.2)',\n            borderColor: 'rgba(148,159,177,1)',\n            pointBackgroundColor: 'rgba(148,159,177,1)',\n            pointBorderColor: '#fff',\n            pointHoverBackgroundColor: '#fff',\n            pointHoverBorderColor: 'rgba(148,159,177,0.8)'\n        },\n        {\n            // dark grey\n            backgroundColor: 'rgba(77,83,96,0.2)',\n            borderColor: 'rgba(77,83,96,1)',\n            pointBackgroundColor: 'rgba(77,83,96,1)',\n            pointBorderColor: '#fff',\n            pointHoverBackgroundColor: '#fff',\n            pointHoverBorderColor: 'rgba(77,83,96,1)'\n        },\n        {\n            // grey\n            backgroundColor: 'rgba(148,159,177,0.2)',\n            borderColor: 'rgba(148,159,177,1)',\n            pointBackgroundColor: 'rgba(148,159,177,1)',\n            pointBorderColor: '#fff',\n            pointHoverBackgroundColor: '#fff',\n            pointHoverBorderColor: 'rgba(148,159,177,0.8)'\n        }\n    ];\n    public lineChartLegend: boolean;\n    public lineChartType: ChartType;\n\n    constructor() {}\n\n    // events\n    public chartClicked(e: any): void {\n        // console.log(e);\n    }\n\n    public chartHovered(e: any): void {\n        // console.log(e);\n    }\n\n    public randomize(): void {\n        // Only Change 3 values\n        const data = [Math.round(Math.random() * 100), 59, 80, Math.random() * 100, 56, Math.random() * 100, 40];\n        const clone = JSON.parse(JSON.stringify(this.barChartData));\n        clone[0].data = data;\n        this.barChartData = clone;\n        /**\n         * (My guess), for Angular to recognize the change in the dataset\n         * it has to change the dataset variable directly,\n         * so one way around it, is to clone the data, change it and then\n         * assign it;\n         */\n    }\n\n    ngOnInit() {\n        this.barChartType = 'bar';\n        this.barChartLegend = true;\n        // this.doughnutChartType = 'doughnut';\n        this.radarChartType = 'radar';\n        this.pieChartType = 'pie';\n        this.polarAreaLegend = true;\n        this.polarAreaChartType = 'polarArea';\n        this.lineChartLegend = true;\n        this.lineChartType = 'line';\n    }\n}\n"
  },
  {
    "path": "src/app/layout/charts/charts.module.spec.ts",
    "content": "import { ChartsModule } from './charts.module';\n\ndescribe('ChartsModule', () => {\n    let chartsModule: ChartsModule;\n\n    beforeEach(() => {\n        chartsModule = new ChartsModule();\n    });\n\n    it('should create an instance', () => {\n        expect(chartsModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/charts/charts.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NgChartsModule  as Ng2Charts } from 'ng2-charts';\n\nimport { PageHeaderModule } from '../../shared';\n\nimport { ChartsRoutingModule } from './charts-routing.module';\nimport { ChartsComponent } from './charts.component';\n\n@NgModule({\n    imports: [CommonModule, Ng2Charts, ChartsRoutingModule, PageHeaderModule],\n    declarations: [ChartsComponent]\n})\nexport class ChartsModule {}\n"
  },
  {
    "path": "src/app/layout/components/header/header.component.html",
    "content": "<nav class=\"navbar navbar-expand-lg fixed-top\">\n    <a class=\"navbar-brand\" href=\"#\">SB Admin Ng17 BS5</a>\n    <button (click)=\"toggleSidebar()\" class=\"navbar-toggler\" type=\"button\">\n        <i aria-hidden=\"true\" class=\"fa fa-bars text-muted\"></i>\n    </button>\n    <div class=\"collapse navbar-collapse\">\n        <form class=\"form-inline my-2 my-lg-0\">\n            <input class=\"form-control mr-sm-2\" placeholder=\"{{ 'Search' | translate }}\" type=\"text\" />\n        </form>\n        <ul class=\"navbar-nav ml-auto\">\n            <li class=\"nav-item d-none d-xl-block\">\n                <a\n                    class=\"nav-link btn mt-1\"\n                    href=\"https://github.com/start-angular/SB-Admin-BS4-Angular-7/archive/master.zip\"\n                    role=\"button\"\n                    style=\"padding: 0.375rem 1rem !important; border-color: #999;\"\n                >\n                    {{ 'Download Now' | translate }}\n                </a>\n            </li>\n            &nbsp;\n            <li class=\"nav-item\">\n                <a\n                    (click)=\"rltAndLtr()\"\n                    class=\"nav-link mt-1\"\n                    href=\"javascript:void(0)\"\n                    style=\"padding: 0.375rem 1rem !important; border-color: #999;\"\n                >\n                    RTL/LTR\n                </a>\n            </li>\n            &nbsp;\n            <li class=\"nav-item dropdown\" ngbDropdown>\n                <a class=\"nav-link\" href=\"javascript:void(0)\" ngbDropdownToggle>\n                    <i class=\"fa fa-envelope\"></i> <b class=\"caret\"></b><span class=\"sr-only\">(current)</span>\n                </a>\n                <ul class=\"dropdown-menu-right messages\" ngbDropdownMenu>\n                    <li class=\"media\">\n                        <img\n                            alt=\"Generic placeholder image\"\n                            class=\"d-flex align-self-center mr-3\"\n                            src=\"http://i.huffpost.com/gadgets/slideshows/461162/slide_461162_6224974_sq50.jpg\"\n                        />\n                        <div class=\"media-body\">\n                            <h5 class=\"mt-0 mb-1\">John Smith</h5>\n                            <p class=\"small text-muted\"><i class=\"fa fa-clock-o\"></i> Yesterday at 4:32 PM</p>\n                            <p class=\"last\">Lorem ipsum dolor sit amet, consectetur...</p>\n                        </div>\n                    </li>\n                    <li class=\"media\">\n                        <img\n                            alt=\"Generic placeholder image\"\n                            class=\"d-flex align-self-center mr-3\"\n                            src=\"http://i.huffpost.com/gadgets/slideshows/461162/slide_461162_6224974_sq50.jpg\"\n                        />\n                        <div class=\"media-body\">\n                            <h5 class=\"mt-0 mb-1\">John Smith</h5>\n                            <p class=\"small text-muted\"><i class=\"fa fa-clock-o\"></i> Yesterday at 4:32 PM</p>\n                            <p class=\"last\">Lorem ipsum dolor sit amet, consectetur...</p>\n                        </div>\n                    </li>\n                    <li class=\"media\">\n                        <img\n                            alt=\"Generic placeholder image\"\n                            class=\"d-flex align-self-center mr-3\"\n                            src=\"http://i.huffpost.com/gadgets/slideshows/461162/slide_461162_6224974_sq50.jpg\"\n                        />\n                        <div class=\"media-body\">\n                            <h5 class=\"mt-0 mb-1\">John Smith</h5>\n                            <p class=\"small text-muted\"><i class=\"fa fa-clock-o\"></i> Yesterday at 4:32 PM</p>\n                            <p class=\"last\">Lorem ipsum dolor sit amet, consectetur...</p>\n                        </div>\n                    </li>\n                </ul>\n            </li>\n            <li class=\"nav-item dropdown\" ngbDropdown>\n                <a class=\"nav-link\" href=\"javascript:void(0)\" ngbDropdownToggle>\n                    <i class=\"fa fa-bell\"></i> <b class=\"caret\"></b><span class=\"sr-only\">(current)</span>\n                </a>\n                <div class=\"dropdown-menu-right\" ngbDropdownMenu>\n                    <a class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'Pending Task' | translate }} <span class=\"badge badge-info\">6</span>\n                    </a>\n                    <a class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'In queue' | translate }} <span class=\"badge badge-info\"> 13</span>\n                    </a>\n                    <a class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'Mail' | translate }} <span class=\"badge badge-info\"> 45</span>\n                    </a>\n                    <div class=\"dropdown-divider\"></div>\n                    <a class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'View All' | translate }}\n                    </a>\n                </div>\n            </li>\n            <li class=\"nav-item dropdown\" ngbDropdown>\n                <a class=\"nav-link\" href=\"javascript:void(0)\" ngbDropdownToggle>\n                    <i class=\"fa fa-language\"></i> {{ 'Language' | translate }} <b class=\"caret\"></b>\n                </a>\n                <div class=\"dropdown-menu-right\" ngbDropdownMenu>\n                    <a (click)=\"changeLang('en')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'English' | translate }}\n                    </a>\n                    <a (click)=\"changeLang('fr')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'French' | translate }}\n                    </a>\n                    <a (click)=\"changeLang('ur')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'Urdu' | translate }}\n                    </a>\n                    <a (click)=\"changeLang('es')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'Spanish' | translate }}\n                    </a>\n                    <a (click)=\"changeLang('it')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'Italian' | translate }}\n                    </a>\n                    <a (click)=\"changeLang('fa')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'Farsi' | translate }}\n                    </a>\n                    <a (click)=\"changeLang('de')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'German' | translate }}\n                    </a>\n                    <a (click)=\"changeLang('zh-CHS')\" class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        {{ 'Simplified Chinese' | translate }}\n                    </a>\n                </div>\n            </li>\n            <li class=\"nav-item dropdown\" ngbDropdown>\n                <a class=\"nav-link\" href=\"javascript:void(0)\" ngbDropdownToggle>\n                    <i class=\"fa fa-user\"></i> John Smith <b class=\"caret\"></b>\n                </a>\n                <div class=\"dropdown-menu-right\" ngbDropdownMenu>\n                    <a class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        <i class=\"fa fa-fw fa-user\"></i> {{ 'Profile' | translate }}\n                    </a>\n                    <a class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        <i class=\"fa fa-fw fa-envelope\"></i> {{ 'Inbox' | translate }}\n                    </a>\n                    <a class=\"dropdown-item\" href=\"javascript:void(0)\">\n                        <i class=\"fa fa-fw fa-gear\"></i> {{ 'Settings' | translate }}\n                    </a>\n                    <a (click)=\"onLoggedout()\" [routerLink]=\"['/login']\" class=\"dropdown-item\">\n                        <i class=\"fa fa-fw fa-power-off\"></i> {{ 'Log Out' | translate }}\n                    </a>\n                </div>\n            </li>\n        </ul>\n    </div>\n</nav>\n"
  },
  {
    "path": "src/app/layout/components/header/header.component.scss",
    "content": "$topnav-background-color: #222;\n:host {\n    .navbar {\n        background-color: $topnav-background-color;\n\n        .navbar-brand {\n            color: #fff;\n        }\n\n        .nav-item > a {\n            color: #999;\n\n            &:hover {\n                color: #fff;\n            }\n        }\n        .ml-auto {\n            margin-left: auto;\n        }\n        .navbar-brand {\n            width: 235px;\n            margin-left: 15px;\n        }\n    }\n\n    .messages {\n        width: 300px;\n\n        .media {\n            border-bottom: 1px solid #ddd;\n            padding: 5px 10px;\n\n            &:last-child {\n                border-bottom: none;\n            }\n        }\n\n        .media-body {\n            h5 {\n                font-size: 13px;\n                font-weight: 600;\n            }\n\n            .small {\n                margin: 0;\n            }\n\n            .last {\n                font-size: 12px;\n                margin: 0;\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "src/app/layout/components/header/header.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { LayoutModule } from '../../layout.module';\n\nimport { HeaderComponent } from './header.component';\n\ndescribe('HeaderComponent', () => {\n    let component: HeaderComponent;\n    let fixture: ComponentFixture<HeaderComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [LayoutModule, RouterTestingModule, TranslateModule.forRoot()]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(HeaderComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/components/header/header.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n    selector: 'app-header',\n    templateUrl: './header.component.html',\n    styleUrls: ['./header.component.scss']\n})\nexport class HeaderComponent implements OnInit {\n    public pushRightClass: string;\n\n    constructor(private translate: TranslateService, public router: Router) {\n        this.router.events.subscribe((val) => {\n            if (val instanceof NavigationEnd && window.innerWidth <= 992 && this.isToggled()) {\n                this.toggleSidebar();\n            }\n        });\n    }\n\n    ngOnInit() {\n        this.pushRightClass = 'push-right';\n    }\n\n    isToggled(): boolean {\n        const dom: Element = document.querySelector('body');\n        return dom.classList.contains(this.pushRightClass);\n    }\n\n    toggleSidebar() {\n        const dom: any = document.querySelector('body');\n        dom.classList.toggle(this.pushRightClass);\n    }\n\n    rltAndLtr() {\n        const dom: any = document.querySelector('body');\n        dom.classList.toggle('rtl');\n    }\n\n    onLoggedout() {\n        localStorage.removeItem('isLoggedin');\n    }\n\n    changeLang(language: string) {\n        this.translate.use(language);\n    }\n}\n"
  },
  {
    "path": "src/app/layout/components/sidebar/sidebar.component.html",
    "content": "<nav [ngClass]=\"{ sidebarPushRight: isActive, collapsed: collapsed }\" class=\"sidebar\">\n    <div class=\"list-group\">\n        <a [routerLinkActive]=\"['router-link-active']\" class=\"list-group-item\" routerLink=\"/dashboard\">\n            <i class=\"fa fa-fw fa-dashboard\"></i>&nbsp;\n            <span>{{ 'Dashboard' | translate }}</span>\n        </a>\n        <a [routerLinkActive]=\"['router-link-active']\" [routerLink]=\"['/charts']\" class=\"list-group-item\">\n            <i class=\"fa fa-fw fa-bar-chart-o\"></i>&nbsp;\n            <span>{{ 'Charts' | translate }}</span>\n        </a>\n        <a [routerLinkActive]=\"['router-link-active']\" [routerLink]=\"['/tables']\" class=\"list-group-item\">\n            <i class=\"fa fa-fw fa-table\"></i>&nbsp;\n            <span>{{ 'Tables' | translate }}</span>\n        </a>\n        <a [routerLinkActive]=\"['router-link-active']\" [routerLink]=\"['/forms']\" class=\"list-group-item\">\n            <i class=\"fa fa-fw fa-edit\"></i>&nbsp;\n            <span>{{ 'Forms' | translate }}</span>\n        </a>\n        <a [routerLinkActive]=\"['router-link-active']\" [routerLink]=\"['/bs-element']\" class=\"list-group-item\">\n            <i class=\"fa fa-fw fa-desktop\"></i>&nbsp;\n            <span>{{ 'Bootstrap Element' | translate }}</span>\n        </a>\n        <a [routerLinkActive]=\"['router-link-active']\" [routerLink]=\"['/grid']\" class=\"list-group-item\">\n            <i class=\"fa fa-fw fa-wrench\"></i>&nbsp;\n            <span>{{ 'Bootstrap Grid' | translate }}</span>\n        </a>\n        <a [routerLinkActive]=\"['router-link-active']\" [routerLink]=\"['/components']\" class=\"list-group-item\">\n            <i class=\"fa fa-th-list\"></i>&nbsp;\n            <span>{{ 'Component' | translate }}</span>\n        </a>\n        <div class=\"nested-menu\">\n            <a (click)=\"addExpandClass('pages')\" class=\"list-group-item\">\n                <i class=\"fa fa-plus\"></i>&nbsp;\n                <span>{{ 'Menu' | translate }}</span>\n            </a>\n            <li [class.expand]=\"showMenu === 'pages'\" class=\"nested\">\n                <ul class=\"submenu\">\n                    <li>\n                        <a href=\"javascript:void(0)\">\n                            <i class=\"fa fa-monument\"></i>&nbsp;\n                            <span>{{ 'Submenu' | translate }}</span>\n                        </a>\n                    </li>\n                    <li>\n                        <a href=\"javascript:void(0)\">\n                            <i class=\"fa fa-monument\"></i>&nbsp;\n                            <span>{{ 'Submenu' | translate }}</span>\n                        </a>\n                    </li>\n                    <li>\n                        <a href=\"javascript:void(0)\">\n                            <i class=\"fa fa-monument\"></i>&nbsp;\n                            <span>{{ 'Submenu' | translate }}</span>\n                        </a>\n                    </li>\n                </ul>\n            </li>\n        </div>\n        <a [routerLinkActive]=\"['router-link-active']\" [routerLink]=\"['/blank-page']\" class=\"list-group-item\">\n            <i class=\"fa fa-file-o\"></i>&nbsp;\n            <span>{{ 'Blank Page' | translate }}</span>\n        </a>\n        <a class=\"list-group-item\" href=\"http://www.strapui.com/\">\n            <i class=\"fa fa-caret-down\"></i>&nbsp;\n            <span>{{ 'More Themes' | translate }}</span>\n        </a>\n\n        <div class=\"header-fields\">\n            <a (click)=\"rltAndLtr()\" class=\"list-group-item\">\n                <span><i class=\"fa fa-arrows-h\"></i>&nbsp; RTL/LTR</span>\n            </a>\n            <div class=\"nested-menu\">\n                <a (click)=\"addExpandClass('languages')\" class=\"list-group-item\">\n                    <span><i class=\"fa fa-language\"></i>&nbsp; {{ 'Language' | translate }} <b class=\"caret\"></b></span>\n                </a>\n                <li [class.expand]=\"showMenu === 'languages'\" class=\"nested\">\n                    <ul class=\"submenu\">\n                        <li>\n                            <a (click)=\"changeLang('en')\" href=\"javascript:void(0)\">\n                                {{ 'English' | translate }}\n                            </a>\n                        </li>\n                        <li>\n                            <a (click)=\"changeLang('fr')\" href=\"javascript:void(0)\">\n                                {{ 'French' | translate }}\n                            </a>\n                        </li>\n                        <li>\n                            <a (click)=\"changeLang('ur')\" href=\"javascript:void(0)\">\n                                {{ 'Urdu' | translate }}\n                            </a>\n                        </li>\n                        <li>\n                            <a (click)=\"changeLang('es')\" href=\"javascript:void(0)\">\n                                {{ 'Spanish' | translate }}\n                            </a>\n                        </li>\n                        <li>\n                            <a (click)=\"changeLang('it')\" href=\"javascript:void(0)\">\n                                {{ 'Italian' | translate }}\n                            </a>\n                        </li>\n                        <li>\n                            <a (click)=\"changeLang('fa')\" href=\"javascript:void(0)\">\n                                {{ 'Farsi' | translate }}\n                            </a>\n                        </li>\n                        <li>\n                            <a (click)=\"changeLang('de')\" href=\"javascript:void(0)\">\n                                {{ 'German' | translate }}\n                            </a>\n                        </li>\n                    </ul>\n                </li>\n            </div>\n            <div class=\"nested-menu\">\n                <a (click)=\"addExpandClass('profile')\" class=\"list-group-item\">\n                    <span><i class=\"fa fa-user\"></i>&nbsp; John Smith</span>\n                </a>\n                <li [class.expand]=\"showMenu === 'profile'\" class=\"nested\">\n                    <ul class=\"submenu\">\n                        <li>\n                            <a href=\"javascript:void(0)\">\n                                <span><i class=\"fa fa-fw fa-user\"></i> {{ 'Profile' | translate }}</span>\n                            </a>\n                        </li>\n                        <li>\n                            <a href=\"javascript:void(0)\">\n                                <span><i class=\"fa fa-fw fa-envelope\"></i> {{ 'Inbox' | translate }}</span>\n                            </a>\n                        </li>\n                        <li>\n                            <a href=\"javascript:void(0)\">\n                                <span><i class=\"fa fa-fw fa-gear\"></i> {{ 'Settings' | translate }}</span>\n                            </a>\n                        </li>\n                        <li>\n                            <a (click)=\"onLoggedout()\" [routerLink]=\"['/login']\">\n                                <span><i class=\"fa fa-fw fa-power-off\"></i> {{ 'Log Out' | translate }}</span>\n                            </a>\n                        </li>\n                    </ul>\n                </li>\n            </div>\n        </div>\n    </div>\n    <div (click)=\"toggleCollapsed()\" [ngClass]=\"{ collapsed: collapsed }\" class=\"toggle-button\">\n        <i class=\"fa fa-fw fa-angle-double-{{ collapsed ? 'right' : 'left' }}\"></i>&nbsp;\n        <span>{{ 'Collapse Sidebar' | translate }}</span>\n    </div>\n</nav>\n"
  },
  {
    "path": "src/app/layout/components/sidebar/sidebar.component.scss",
    "content": "$topnav-background-color: #222;\n.sidebar {\n    border-radius: 0;\n    position: fixed;\n    z-index: 1000;\n    top: 56px;\n    left: 235px;\n    width: 235px;\n    margin-left: -235px;\n    margin-bottom: 48px;\n    border: none;\n    border-radius: 0;\n    overflow-y: auto;\n    background-color: $topnav-background-color;\n    bottom: 0;\n    overflow-x: hidden;\n    padding-bottom: 40px;\n    white-space: nowrap;\n    -webkit-transition: all 0.2s ease-in-out;\n    -moz-transition: all 0.2s ease-in-out;\n    -ms-transition: all 0.2s ease-in-out;\n    -o-transition: all 0.2s ease-in-out;\n    transition: all 0.2s ease-in-out;\n    // border-top: 1px solid rgba(255,255,255,0.3);\n    .list-group {\n        a.list-group-item {\n            background: $topnav-background-color;\n            border: 0;\n            border-radius: 0;\n            color: #999;\n            text-decoration: none;\n\n            .fa {\n                margin-right: 10px;\n            }\n        }\n\n        a:hover {\n            background: darken($topnav-background-color, 5%);\n            color: #fff;\n        }\n\n        a.router-link-active {\n            background: darken($topnav-background-color, 5%);\n            color: #fff;\n        }\n\n        .header-fields {\n            padding-top: 10px;\n\n            > .list-group-item:first-child {\n                border-top: 1px solid rgba(255, 255, 255, 0.2);\n            }\n        }\n    }\n\n    .sidebar-dropdown {\n        *:focus {\n            border-radius: none;\n            border: none;\n        }\n\n        .panel-title {\n            font-size: 1rem;\n            height: 50px;\n            margin-bottom: 0;\n\n            a {\n                color: #999;\n                text-decoration: none;\n                font-weight: 400;\n                background: $topnav-background-color;\n\n                span {\n                    position: relative;\n                    display: block;\n                    padding: 0.75rem 1.5rem;\n                    padding-top: 1rem;\n                }\n            }\n\n            a:hover,\n            a:focus {\n                color: #fff;\n                outline: none;\n                outline-offset: -2px;\n            }\n        }\n\n        .panel-title:hover {\n            background: darken($topnav-background-color, 5%);\n        }\n\n        .panel-collapse {\n            border-radious: 0;\n            border: none;\n\n            .panel-body {\n                .list-group-item {\n                    border-radius: 0;\n                    background-color: $topnav-background-color;\n                    border: 0 solid transparent;\n\n                    a {\n                        color: #999;\n                    }\n\n                    a:hover {\n                        color: #fff;\n                    }\n                }\n\n                .list-group-item:hover {\n                    background: darken($topnav-background-color, 5%);\n                }\n            }\n        }\n    }\n}\n\n.nested-menu {\n    .list-group-item {\n        cursor: pointer;\n    }\n\n    .nested {\n        list-style-type: none;\n    }\n\n    ul.submenu {\n        display: none;\n        height: 0;\n    }\n\n    & .expand {\n        ul.submenu {\n            display: block;\n            list-style-type: none;\n            height: auto;\n\n            li {\n                a {\n                    color: #fff;\n                    padding: 10px;\n                    display: block;\n                }\n            }\n        }\n    }\n}\n\n@media screen and (max-width: 992px) {\n    .sidebar {\n        top: 54px;\n        left: 0px;\n    }\n}\n\n@media print {\n    .sidebar {\n        display: none !important;\n    }\n}\n\n@media (min-width: 992px) {\n    .header-fields {\n        display: none;\n    }\n}\n\n::-webkit-scrollbar {\n    width: 8px;\n}\n\n::-webkit-scrollbar-track {\n    -webkit-box-shadow: inset 0 0 0px rgba(255, 255, 255, 1);\n    border-radius: 3px;\n}\n\n::-webkit-scrollbar-thumb {\n    border-radius: 3px;\n    -webkit-box-shadow: inset 0 0 3px rgba(255, 255, 255, 1);\n}\n\n.toggle-button {\n    position: fixed;\n    width: 236px;\n    cursor: pointer;\n    padding: 12px;\n    bottom: 0;\n    color: #999;\n    background: #212529;\n\n    i {\n        font-size: 23px;\n    }\n\n    &:hover {\n        background: darken($topnav-background-color, 5%);\n        color: #fff;\n    }\n\n    border-top: 1px solid #999;\n    -webkit-transition: all 0.2s ease-in-out;\n    -moz-transition: all 0.2s ease-in-out;\n    -ms-transition: all 0.2s ease-in-out;\n    -o-transition: all 0.2s ease-in-out;\n    transition: all 0.2s ease-in-out;\n}\n\n.collapsed {\n    width: 60px;\n\n    span {\n        display: none;\n    }\n}\n"
  },
  {
    "path": "src/app/layout/components/sidebar/sidebar.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { LayoutModule } from '../../layout.module';\n\nimport { SidebarComponent } from './sidebar.component';\n\ndescribe('SidebarComponent', () => {\n    let component: SidebarComponent;\n    let fixture: ComponentFixture<SidebarComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [LayoutModule, RouterTestingModule, TranslateModule.forRoot()]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(SidebarComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/components/sidebar/sidebar.component.ts",
    "content": "import { Component, EventEmitter, OnInit, Output } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n    selector: 'app-sidebar',\n    templateUrl: './sidebar.component.html',\n    styleUrls: ['./sidebar.component.scss']\n})\nexport class SidebarComponent implements OnInit {\n    isActive: boolean;\n    collapsed: boolean;\n    showMenu: string;\n    pushRightClass: string;\n\n    @Output() collapsedEvent = new EventEmitter<boolean>();\n\n    constructor(private translate: TranslateService, public router: Router) {\n        this.router.events.subscribe((val) => {\n            if (val instanceof NavigationEnd && window.innerWidth <= 992 && this.isToggled()) {\n                this.toggleSidebar();\n            }\n        });\n    }\n\n    ngOnInit() {\n        this.isActive = false;\n        this.collapsed = false;\n        this.showMenu = '';\n        this.pushRightClass = 'push-right';\n    }\n\n    eventCalled() {\n        this.isActive = !this.isActive;\n    }\n\n    addExpandClass(element: any) {\n        if (element === this.showMenu) {\n            this.showMenu = '0';\n        } else {\n            this.showMenu = element;\n        }\n    }\n\n    toggleCollapsed() {\n        this.collapsed = !this.collapsed;\n        this.collapsedEvent.emit(this.collapsed);\n    }\n\n    isToggled(): boolean {\n        const dom: Element = document.querySelector('body');\n        return dom.classList.contains(this.pushRightClass);\n    }\n\n    toggleSidebar() {\n        const dom: any = document.querySelector('body');\n        dom.classList.toggle(this.pushRightClass);\n    }\n\n    rltAndLtr() {\n        const dom: any = document.querySelector('body');\n        dom.classList.toggle('rtl');\n    }\n\n    changeLang(language: string) {\n        this.translate.use(language);\n    }\n\n    onLoggedout() {\n        localStorage.removeItem('isLoggedin');\n    }\n}\n"
  },
  {
    "path": "src/app/layout/dashboard/components/chat/chat.component.html",
    "content": "<div class=\"chat-panel card card-default\">\n    <div class=\"card-header\">\n        <i class=\"fa fa-comments fa-fw\"></i>\n        Chat\n        <div class=\"pull-right\" ngbDropdown>\n            <button class=\"btn btn-secondary btn-sm\" ngbDropdownToggle>\n                <span class=\"caret\"></span>\n            </button>\n            <ul class=\"dropdown-menu dropdown-menu-right\">\n                <li role=\"menuitem\">\n                    <a class=\"dropdown-item\" href=\"#\"> <i class=\"fa fa-refresh fa-fw\"></i> Refresh</a>\n                </li>\n                <li role=\"menuitem\">\n                    <a class=\"dropdown-item\" href=\"#\"> <i class=\"fa fa-check-circle fa-fw\"></i> Available</a>\n                </li>\n                <li role=\"menuitem\">\n                    <a class=\"dropdown-item\" href=\"#\"> <i class=\"fa fa-times fa-fw\"></i> Busy</a>\n                </li>\n                <li class=\"divider dropdown-divider\"></li>\n                <li role=\"menuitem\">\n                    <a class=\"dropdown-item\" href=\"#\"> <i class=\"fa fa-times fa-fw\"></i> Busy </a>\n                </li>\n                <li>\n                    <a class=\"dropdown-item\" href=\"#\"> <i class=\"fa fa-clock-o fa-fw\"></i> Away </a>\n                </li>\n                <li class=\"divider\"></li>\n                <li>\n                    <a class=\"dropdown-item\" href=\"#\"> <i class=\"fa fa-sign-out fa-fw\"></i> Sign Out </a>\n                </li>\n            </ul>\n        </div>\n    </div>\n    <!-- /.panel-heading -->\n    <div class=\"card-body\">\n        <ul class=\"chat\">\n            <li class=\"left clearfix\">\n                <span class=\"chat-img pull-left\">\n                    <img alt=\"User Avatar\" class=\"img-circle\" src=\"http://placehold.it/50/55C1E7/fff\" />\n                </span>\n                <div class=\"chat-body clearfix\">\n                    <div class=\"header\">\n                        <strong class=\"primary-font\">Jack Sparrow</strong>\n                        <small class=\"pull-right text-muted\"> <i class=\"fa fa-clock-o fa-fw\"></i> 12 mins ago </small>\n                    </div>\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor, quis\n                        ullamcorper ligula sodales.\n                    </p>\n                </div>\n            </li>\n            <li class=\"right clearfix\">\n                <span class=\"chat-img pull-right\">\n                    <img alt=\"User Avatar\" class=\"img-circle\" src=\"http://placehold.it/50/FA6F57/fff\" />\n                </span>\n                <div class=\"chat-body clearfix\">\n                    <div class=\"header\">\n                        <small class=\"text-muted\"> <i class=\"fa fa-clock-o fa-fw\"></i> 13 mins ago </small>\n                        <strong class=\"pull-right primary-font\">Bhaumik Patel</strong>\n                    </div>\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor, quis\n                        ullamcorper ligula sodales.\n                    </p>\n                </div>\n            </li>\n            <li class=\"left clearfix\">\n                <span class=\"chat-img pull-left\">\n                    <img alt=\"User Avatar\" class=\"img-circle\" src=\"http://placehold.it/50/55C1E7/fff\" />\n                </span>\n                <div class=\"chat-body clearfix\">\n                    <div class=\"header\">\n                        <strong class=\"primary-font\">Jack Sparrow</strong>\n                        <small class=\"pull-right text-muted\"> <i class=\"fa fa-clock-o fa-fw\"></i> 14 mins ago </small>\n                    </div>\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor, quis\n                        ullamcorper ligula sodales.\n                    </p>\n                </div>\n            </li>\n            <li class=\"right clearfix\">\n                <span class=\"chat-img pull-right\">\n                    <img alt=\"User Avatar\" class=\"img-circle\" src=\"http://placehold.it/50/FA6F57/fff\" />\n                </span>\n                <div class=\"chat-body clearfix\">\n                    <div class=\"header\">\n                        <small class=\"text-muted\"> <i class=\"fa fa-clock-o fa-fw\"></i> 15 mins ago </small>\n                        <strong class=\"pull-right primary-font\">Bhaumik Patel</strong>\n                    </div>\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor, quis\n                        ullamcorper ligula sodales.\n                    </p>\n                </div>\n            </li>\n        </ul>\n    </div>\n    <!-- /.card-body -->\n    <div class=\"card-footer\">\n        <div class=\"input-group\">\n            <input class=\"form-control input-sm\" id=\"btn-input\" placeholder=\"Type your message here...\" type=\"text\" />\n            <span class=\"input-group-btn\">\n                <button class=\"btn btn-warning btn-sm\" id=\"btn-chat\">\n                    Send\n                </button>\n            </span>\n        </div>\n    </div>\n    <!-- /.card-footer -->\n</div>\n"
  },
  {
    "path": "src/app/layout/dashboard/components/chat/chat.component.scss",
    "content": ".chat-panel {\n    .chat-dropdown {\n        margin-top: -3px;\n    }\n\n    .chat {\n        .left {\n            img {\n                margin-right: 15px;\n            }\n        }\n\n        .right {\n            img {\n                margin-left: 15px;\n            }\n        }\n\n        height: 350px;\n        overflow-y: scroll;\n        margin: 0;\n        padding: 0;\n        list-style: none;\n\n        li {\n            margin-bottom: 10px;\n            margin-right: 15px;\n            padding-bottom: 5px;\n            border-bottom: 1px dotted #999;\n        }\n    }\n\n    .card-footer {\n        input {\n            padding: 3px;\n        }\n    }\n}\n"
  },
  {
    "path": "src/app/layout/dashboard/components/chat/chat.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { ChatComponent } from './chat.component';\n\ndescribe('ChatComponent', () => {\n    let component: ChatComponent;\n    let fixture: ComponentFixture<ChatComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [ChatComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(ChatComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/dashboard/components/chat/chat.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-chat',\n    templateUrl: './chat.component.html',\n    styleUrls: ['./chat.component.scss']\n})\nexport class ChatComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/dashboard/components/index.ts",
    "content": "export * from './timeline/timeline.component';\nexport * from './notification/notification.component';\nexport * from './chat/chat.component';\n"
  },
  {
    "path": "src/app/layout/dashboard/components/notification/notification.component.html",
    "content": "<div class=\"card-body\">\n    <div class=\"list-group\">\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-comment fa-fw\"></i> New Comment\n            <span class=\"float-right text-muted small\"><em>4 minutes ago</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-twitter fa-fw\"></i> 3 New Followers\n            <span class=\"float-right text-muted small\"><em>12 minutes ago</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-envelope fa-fw\"></i> Message Sent\n            <span class=\"float-right text-muted small\"><em>27 minutes ago</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-tasks fa-fw\"></i> New Task\n            <span class=\"float-right text-muted small\"><em>43 minutes ago</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-upload fa-fw\"></i> Server Rebooted\n            <span class=\"float-right text-muted small\"><em>11:32 AM</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-bolt fa-fw\"></i> Server Crashed!\n            <span class=\"float-right text-muted small\"><em>11:13 AM</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-warning fa-fw\"></i> Server Not Responding\n            <span class=\"float-right text-muted small\"><em>10:57 AM</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-shopping-cart fa-fw\"></i> New Order Placed\n            <span class=\"float-right text-muted small\"><em>9:49 AM</em></span>\n        </a>\n        <a class=\"list-group-item clearfix d-block\" href=\"#\">\n            <i class=\"fa fa-money fa-fw\"></i> Payment Received\n            <span class=\"float-right text-muted small\"><em>Yesterday</em></span>\n        </a>\n    </div>\n    <!-- /.list-group -->\n    <a class=\"btn btn-default btn-block\" href=\"#\">View All Alerts</a>\n</div>\n"
  },
  {
    "path": "src/app/layout/dashboard/components/notification/notification.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/dashboard/components/notification/notification.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { NotificationComponent } from './notification.component';\n\ndescribe('NotificationComponent', () => {\n    let component: NotificationComponent;\n    let fixture: ComponentFixture<NotificationComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [NotificationComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(NotificationComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/dashboard/components/notification/notification.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-notification',\n    templateUrl: './notification.component.html',\n    styleUrls: ['./notification.component.scss']\n})\nexport class NotificationComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/dashboard/components/timeline/timeline.component.html",
    "content": "<div class=\"card-body\">\n    <ul class=\"timeline\">\n        <li>\n            <div class=\"timeline-badge\"><i class=\"fa fa-check\"></i></div>\n            <div class=\"timeline-panel\">\n                <div class=\"timeline-heading\">\n                    <h4 class=\"timeline-title\">Lorem ipsum dolor</h4>\n                    <p>\n                        <small class=\"text-muted\"><i class=\"fa fa-clock-o\"></i> 11 hours ago via Twitter</small>\n                    </p>\n                </div>\n                <div class=\"timeline-body\">\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Libero laboriosam dolor perspiciatis\n                        omnis exercitationem. Beatae, officia pariatur? Est cum veniam excepturi. Maiores praesentium,\n                        porro voluptas suscipit facere rem dicta, debitis.\n                    </p>\n                </div>\n            </div>\n        </li>\n        <li class=\"timeline-inverted\">\n            <div class=\"timeline-badge warning\"><i class=\"fa fa-credit-card\"></i></div>\n            <div class=\"timeline-panel\">\n                <div class=\"timeline-heading\">\n                    <h4 class=\"timeline-title\">Lorem ipsum dolor</h4>\n                </div>\n                <div class=\"timeline-body\">\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Autem dolorem quibusdam, tenetur\n                        commodi provident cumque magni voluptatem libero, quis rerum. Fugiat esse debitis optio,\n                        tempore. Animi officiis alias, officia repellendus.\n                    </p>\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laudantium maiores odit qui est\n                        tempora eos, nostrum provident explicabo dignissimos debitis vel! Adipisci eius voluptates, ad\n                        aut recusandae minus eaque facere.\n                    </p>\n                </div>\n            </div>\n        </li>\n        <li>\n            <div class=\"timeline-badge danger\"><i class=\"fa fa-bomb\"></i></div>\n            <div class=\"timeline-panel\">\n                <div class=\"timeline-heading\">\n                    <h4 class=\"timeline-title\">Lorem ipsum dolor</h4>\n                </div>\n                <div class=\"timeline-body\">\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Repellendus numquam facilis enim\n                        eaque, tenetur nam id qui vel velit similique nihil iure molestias aliquam, voluptatem totam\n                        quaerat, magni commodi quisquam.\n                    </p>\n                </div>\n            </div>\n        </li>\n        <li class=\"timeline-inverted\">\n            <div class=\"timeline-panel\">\n                <div class=\"timeline-heading\">\n                    <h4 class=\"timeline-title\">Lorem ipsum dolor</h4>\n                </div>\n                <div class=\"timeline-body\">\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptates est quaerat asperiores\n                        sapiente, eligendi, nihil. Itaque quos, alias sapiente rerum quas odit! Aperiam officiis quidem\n                        delectus libero, omnis ut debitis!\n                    </p>\n                </div>\n            </div>\n        </li>\n        <li>\n            <div class=\"timeline-badge info\"><i class=\"fa fa-save\"></i></div>\n            <div class=\"timeline-panel\">\n                <div class=\"timeline-heading\">\n                    <h4 class=\"timeline-title\">Lorem ipsum dolor</h4>\n                </div>\n                <div class=\"timeline-body\">\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nobis minus modi quam ipsum alias at\n                        est molestiae excepturi delectus nesciunt, quibusdam debitis amet, beatae consequuntur impedit\n                        nulla qui! Laborum, atque.\n                    </p>\n                    <hr />\n                    <div class=\"btn-group\">\n                        <button class=\"btn btn-primary btn-sm dropdown-toggle\" data-toggle=\"dropdown\" type=\"button\">\n                            <i class=\"fa fa-gear\"></i> <span class=\"caret\"></span>\n                        </button>\n                        <ul class=\"dropdown-menu\" role=\"menu\">\n                            <li><a href=\"#\">Action</a></li>\n                            <li><a href=\"#\">Another action</a></li>\n                            <li><a href=\"#\">Something else here</a></li>\n                            <li class=\"divider\"></li>\n                            <li><a href=\"#\">Separated link</a></li>\n                        </ul>\n                    </div>\n                </div>\n            </div>\n        </li>\n        <li>\n            <div class=\"timeline-panel\">\n                <div class=\"timeline-heading\">\n                    <h4 class=\"timeline-title\">Lorem ipsum dolor</h4>\n                </div>\n                <div class=\"timeline-body\">\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sequi fuga odio quibusdam. Iure\n                        expedita, incidunt unde quis nam! Quod, quisquam. Officia quam qui adipisci quas consequuntur\n                        nostrum sequi. Consequuntur, commodi.\n                    </p>\n                </div>\n            </div>\n        </li>\n        <li class=\"timeline-inverted\">\n            <div class=\"timeline-badge success\"><i class=\"fa fa-graduation-cap\"></i></div>\n            <div class=\"timeline-panel\">\n                <div class=\"timeline-heading\">\n                    <h4 class=\"timeline-title\">Lorem ipsum dolor</h4>\n                </div>\n                <div class=\"timeline-body\">\n                    <p>\n                        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deserunt obcaecati, quaerat tempore\n                        officia voluptas debitis consectetur culpa amet, accusamus dolorum fugiat, animi dicta aperiam,\n                        enim incidunt quisquam maxime neque eaque.\n                    </p>\n                </div>\n            </div>\n        </li>\n    </ul>\n</div>\n"
  },
  {
    "path": "src/app/layout/dashboard/components/timeline/timeline.component.scss",
    "content": ".timeline {\n    position: relative;\n    padding: 20px 0 20px;\n    list-style: none;\n}\n\n.timeline:before {\n    content: ' ';\n    position: absolute;\n    top: 0;\n    bottom: 0;\n    left: 50%;\n    width: 3px;\n    margin-left: -1.5px;\n    background-color: #eeeeee;\n}\n\n.timeline > li {\n    position: relative;\n    margin-bottom: 20px;\n}\n\n.timeline > li:before,\n.timeline > li:after {\n    content: ' ';\n    display: table;\n}\n\n.timeline > li:after {\n    clear: both;\n}\n\n.timeline > li:before,\n.timeline > li:after {\n    content: ' ';\n    display: table;\n}\n\n.timeline > li:after {\n    clear: both;\n}\n\n.timeline > li > .timeline-panel {\n    float: left;\n    position: relative;\n    width: 46%;\n    padding: 20px;\n    border: 1px solid #d4d4d4;\n    border-radius: 2px;\n    -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);\n    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);\n}\n\n.timeline > li > .timeline-panel:before {\n    content: ' ';\n    display: inline-block;\n    position: absolute;\n    top: 26px;\n    right: -15px;\n    border-top: 15px solid transparent;\n    border-right: 0 solid #ccc;\n    border-bottom: 15px solid transparent;\n    border-left: 15px solid #ccc;\n}\n\n.timeline > li > .timeline-panel:after {\n    content: ' ';\n    display: inline-block;\n    position: absolute;\n    top: 27px;\n    right: -14px;\n    border-top: 14px solid transparent;\n    border-right: 0 solid #fff;\n    border-bottom: 14px solid transparent;\n    border-left: 14px solid #fff;\n}\n\n.timeline > li > .timeline-badge {\n    z-index: 100;\n    position: absolute;\n    top: 16px;\n    left: 50%;\n    width: 50px;\n    height: 50px;\n    margin-left: -25px;\n    border-radius: 50% 50% 50% 50%;\n    text-align: center;\n    font-size: 1.4em;\n    line-height: 50px;\n    color: #fff;\n    background-color: #999999;\n}\n\n.timeline > li.timeline-inverted > .timeline-panel {\n    float: right;\n}\n\n.timeline > li.timeline-inverted > .timeline-panel:before {\n    right: auto;\n    left: -15px;\n    border-right-width: 15px;\n    border-left-width: 0;\n}\n\n.timeline > li.timeline-inverted > .timeline-panel:after {\n    right: auto;\n    left: -14px;\n    border-right-width: 14px;\n    border-left-width: 0;\n}\n\n.timeline-badge.primary {\n    background-color: #2e6da4 !important;\n}\n\n.timeline-badge.success {\n    background-color: #3f903f !important;\n}\n\n.timeline-badge.warning {\n    background-color: #f0ad4e !important;\n}\n\n.timeline-badge.danger {\n    background-color: #d9534f !important;\n}\n\n.timeline-badge.info {\n    background-color: #5bc0de !important;\n}\n\n.timeline-title {\n    margin-top: 0;\n    color: inherit;\n}\n\n.timeline-body > p,\n.timeline-body > ul {\n    margin-bottom: 0;\n}\n\n.timeline-body > p + p {\n    margin-top: 5px;\n}\n\n@media (max-width: 767px) {\n    ul.timeline:before {\n        left: 40px;\n    }\n\n    ul.timeline > li > .timeline-panel {\n        width: calc(100% - 90px);\n        width: -moz-calc(100% - 90px);\n        width: -webkit-calc(100% - 90px);\n    }\n\n    ul.timeline > li > .timeline-badge {\n        top: 16px;\n        left: 15px;\n        margin-left: 0;\n    }\n\n    ul.timeline > li > .timeline-panel {\n        float: right;\n    }\n\n    ul.timeline > li > .timeline-panel:before {\n        right: auto;\n        left: -15px;\n        border-right-width: 15px;\n        border-left-width: 0;\n    }\n\n    ul.timeline > li > .timeline-panel:after {\n        right: auto;\n        left: -14px;\n        border-right-width: 14px;\n        border-left-width: 0;\n    }\n}\n"
  },
  {
    "path": "src/app/layout/dashboard/components/timeline/timeline.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { TimelineComponent } from './timeline.component';\n\ndescribe('TimelineComponent', () => {\n    let component: TimelineComponent;\n    let fixture: ComponentFixture<TimelineComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [TimelineComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(TimelineComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/dashboard/components/timeline/timeline.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-timeline',\n    templateUrl: './timeline.component.html',\n    styleUrls: ['./timeline.component.scss']\n})\nexport class TimelineComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/dashboard/dashboard-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { DashboardComponent } from './dashboard.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: DashboardComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class DashboardRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/dashboard/dashboard.component.html",
    "content": "<div [@routerTransition]>\n    <h2 class=\"text-muted\">Dashboard <small>Statistics Overview</small></h2>\n    <div class=\"row\">\n        <div class=\"col-md-12\">\n            <ngb-carousel>\n                <ng-template *ngFor=\"let slider of sliders\" ngbSlide>\n                    <img\n                        [src]=\"slider.imagePath\"\n                        alt=\"Random first slide\"\n                        class=\"img-fluid mx-auto d-block\"\n                        width=\"100%\"\n                    />\n                    <div class=\"carousel-caption\">\n                        <h3>{{ slider.label }}</h3>\n                        <p>{{ slider.text }}</p>\n                    </div>\n                </ng-template>\n            </ngb-carousel>\n        </div>\n    </div>\n    <hr />\n    <div class=\"row\">\n        <div class=\"col-xl-3 col-lg-6\">\n            <app-stat [bgClass]=\"'primary'\" [count]=\"26\" [icon]=\"'fa-comments'\" [label]=\"'New Comments!'\"></app-stat>\n        </div>\n        <div class=\"col-xl-3 col-lg-6\">\n            <app-stat [bgClass]=\"'warning'\" [count]=\"12\" [icon]=\"'fa-tasks'\" [label]=\"'New task!'\"></app-stat>\n        </div>\n        <div class=\"col-xl-3 col-lg-6\">\n            <app-stat\n                [bgClass]=\"'success'\"\n                [count]=\"124\"\n                [icon]=\"'fa-shopping-cart'\"\n                [label]=\"'New Orders!'\"\n            ></app-stat>\n        </div>\n        <div class=\"col-xl-3 col-lg-6\">\n            <app-stat [bgClass]=\"'danger'\" [count]=\"13\" [icon]=\"'fa-support'\" [label]=\"'New Tickets!'\"></app-stat>\n        </div>\n    </div>\n    <hr />\n    <ngb-alert (close)=\"closeAlert(alert)\" *ngFor=\"let alert of alerts\" [type]=\"alert.type\">{{\n        alert.message\n    }}</ngb-alert>\n    <hr />\n    <div class=\"row\">\n        <div class=\"col-lg-8\">\n            <div class=\"card card-default\">\n                <div class=\"card-header\"><i class=\"fa fa-clock-o fa-fw\"></i> Responsive Timeline</div>\n                <!-- /.card-header -->\n                <app-timeline></app-timeline>\n                <!-- /.card-body -->\n            </div>\n            <!-- /.card -->\n        </div>\n        <!-- /.col-lg-8 -->\n        <div class=\"col-lg-4\">\n            <div class=\"card card-default mb-3\">\n                <div class=\"card-header\"><i class=\"fa fa-bell fa-fw\"></i> Notifications card</div>\n                <!-- /.card-header -->\n                <app-notification></app-notification>\n                <!-- /.card-body -->\n            </div>\n            <!-- /.card -->\n\n            <app-chat></app-chat>\n            <!-- /.card .chat-card -->\n        </div>\n        <!-- /.col-lg-4 -->\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/dashboard/dashboard.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/dashboard/dashboard.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { DashboardComponent } from './dashboard.component';\nimport { DashboardModule } from './dashboard.module';\n\ndescribe('DashboardComponent', () => {\n    let component: DashboardComponent;\n    let fixture: ComponentFixture<DashboardComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [DashboardModule, RouterTestingModule, BrowserAnimationsModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(DashboardComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/dashboard/dashboard.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { routerTransition } from '../../router.animations';\n\n@Component({\n    selector: 'app-dashboard',\n    templateUrl: './dashboard.component.html',\n    styleUrls: ['./dashboard.component.scss'],\n    animations: [routerTransition()]\n})\nexport class DashboardComponent implements OnInit {\n    public alerts: Array<any> = [];\n    public sliders: Array<any> = [];\n\n    constructor() {\n        this.sliders.push(\n            {\n                imagePath: 'assets/images/slider1.jpg',\n                label: 'First slide label',\n                text: 'Nulla vitae elit libero, a pharetra augue mollis interdum.'\n            },\n            {\n                imagePath: 'assets/images/slider2.jpg',\n                label: 'Second slide label',\n                text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.'\n            },\n            {\n                imagePath: 'assets/images/slider3.jpg',\n                label: 'Third slide label',\n                text: 'Praesent commodo cursus magna, vel scelerisque nisl consectetur.'\n            }\n        );\n\n        this.alerts.push(\n            {\n                id: 1,\n                type: 'success',\n                message: `Lorem ipsum dolor sit amet, consectetur adipisicing elit.\n                Voluptates est animi quibusdam praesentium quam, et perspiciatis,\n                consectetur velit culpa molestias dignissimos\n                voluptatum veritatis quod aliquam! Rerum placeat necessitatibus, vitae dolorum`\n            },\n            {\n                id: 2,\n                type: 'warning',\n                message: `Lorem ipsum dolor sit amet, consectetur adipisicing elit.\n                Voluptates est animi quibusdam praesentium quam, et perspiciatis,\n                consectetur velit culpa molestias dignissimos\n                voluptatum veritatis quod aliquam! Rerum placeat necessitatibus, vitae dolorum`\n            }\n        );\n    }\n\n    ngOnInit() {}\n\n    public closeAlert(alert: any) {\n        const index: number = this.alerts.indexOf(alert);\n        this.alerts.splice(index, 1);\n    }\n}\n"
  },
  {
    "path": "src/app/layout/dashboard/dashboard.module.spec.ts",
    "content": "import { DashboardModule } from './dashboard.module';\n\ndescribe('DashboardModule', () => {\n    let dashboardModule: DashboardModule;\n\n    beforeEach(() => {\n        dashboardModule = new DashboardModule();\n    });\n\n    it('should create an instance', () => {\n        expect(dashboardModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/dashboard/dashboard.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NgbAlertModule, NgbCarouselModule } from '@ng-bootstrap/ng-bootstrap';\nimport { StatModule } from '../../shared';\nimport { ChatComponent, NotificationComponent, TimelineComponent } from './components';\n\nimport { DashboardRoutingModule } from './dashboard-routing.module';\nimport { DashboardComponent } from './dashboard.component';\n\n@NgModule({\n    imports: [CommonModule, NgbCarouselModule, NgbAlertModule, DashboardRoutingModule, StatModule],\n    declarations: [DashboardComponent, TimelineComponent, NotificationComponent, ChatComponent]\n})\nexport class DashboardModule {}\n"
  },
  {
    "path": "src/app/layout/form/form-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { FormComponent } from './form.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: FormComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class FormRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/form/form.component.html",
    "content": "<div [@routerTransition]>\n    <app-page-header [heading]=\"'Forms'\" [icon]=\"'fa-edit'\"></app-page-header>\n\n    <div class=\"row\">\n        <div class=\"col-lg-6\">\n            <form role=\"form\">\n                <fieldset class=\"form-group\">\n                    <label>Text Input</label>\n                    <input class=\"form-control\" />\n                    <p class=\"help-block\">Example block-level help text here.</p>\n                </fieldset>\n\n                <fieldset class=\"form-group\">\n                    <label>Text Input with Placeholder</label>\n                    <input class=\"form-control\" placeholder=\"Enter text\" />\n                </fieldset>\n\n                <div class=\"form-group\">\n                    <label>Static Control</label>\n                    <p class=\"form-control-static\">email&#64;example.com</p>\n                </div>\n\n                <fieldset class=\"form-group\">\n                    <label for=\"exampleInputFile\">File input</label>\n                    <input class=\"form-control-file\" id=\"exampleInputFile\" type=\"file\" />\n                </fieldset>\n\n                <fieldset class=\"form-group\">\n                    <label>Text area</label>\n                    <textarea class=\"form-control\" rows=\"3\"></textarea>\n                </fieldset>\n\n                <div class=\"form-group\">\n                    <label>Checkboxes</label>\n                    <div class=\"checkbox\">\n                        <label> <input type=\"checkbox\" value=\"\" /> Checkbox 1 </label>\n                    </div>\n                    <div class=\"checkbox\">\n                        <label> <input type=\"checkbox\" value=\"\" /> Checkbox 2 </label>\n                    </div>\n                    <div class=\"checkbox\">\n                        <label> <input type=\"checkbox\" value=\"\" /> Checkbox 3 </label>\n                    </div>\n                </div>\n\n                <div class=\"form-group\">\n                    <label>Inline Checkboxes</label>\n                    <label class=\"checkbox-inline\"> <input type=\"checkbox\" />1 </label>\n                    <label class=\"checkbox-inline\"> <input type=\"checkbox\" />2 </label>\n                    <label class=\"checkbox-inline\"> <input type=\"checkbox\" />3 </label>\n                </div>\n\n                <fieldset class=\"form-group\">\n                    <label>Radio Buttons</label>\n                    <div class=\"radio\">\n                        <label>\n                            <input checked=\"\" id=\"optionsRadios1\" name=\"optionsRadios\" type=\"radio\" value=\"option1\" />\n                            Radio 1\n                        </label>\n                    </div>\n                    <div class=\"radio\">\n                        <label>\n                            <input id=\"optionsRadios2\" name=\"optionsRadios\" type=\"radio\" value=\"option2\" /> Radio 2\n                        </label>\n                    </div>\n                    <div class=\"radio\">\n                        <label>\n                            <input id=\"optionsRadios3\" name=\"optionsRadios\" type=\"radio\" value=\"option3\" /> Radio 3\n                        </label>\n                    </div>\n                </fieldset>\n\n                <fieldset class=\"form-group\">\n                    <label>Inline Radio Buttons</label>\n                    <label class=\"radio-inline\">\n                        <input\n                            checked=\"\"\n                            id=\"optionsRadiosInline1\"\n                            name=\"optionsRadiosInline\"\n                            type=\"radio\"\n                            value=\"option1\"\n                        />1\n                    </label>\n                    <label class=\"radio-inline\">\n                        <input id=\"optionsRadiosInline2\" name=\"optionsRadiosInline\" type=\"radio\" value=\"option2\" />2\n                    </label>\n                    <label class=\"radio-inline\">\n                        <input id=\"optionsRadiosInline3\" name=\"optionsRadiosInline\" type=\"radio\" value=\"option3\" />3\n                    </label>\n                </fieldset>\n\n                <div class=\"form-group\">\n                    <label>Selects</label>\n                    <select class=\"form-control\">\n                        <option>1</option>\n                        <option>2</option>\n                        <option>3</option>\n                        <option>4</option>\n                        <option>5</option>\n                    </select>\n                </div>\n\n                <fieldset class=\"form-group\">\n                    <label>Multiple Selects</label>\n                    <select class=\"form-control\" multiple=\"\">\n                        <option>1</option>\n                        <option>2</option>\n                        <option>3</option>\n                        <option>4</option>\n                        <option>5</option>\n                    </select>\n                </fieldset>\n\n                <button class=\"btn btn-secondary\" type=\"submit\">Submit Button</button>\n                <button class=\"btn btn-secondary\" type=\"reset\">Reset Button</button>\n            </form>\n        </div>\n        <div class=\"col-lg-6\">\n            <h4>Disabled Form States</h4>\n\n            <form role=\"form\">\n                <fieldset disabled=\"\">\n                    <div class=\"form-group\">\n                        <label for=\"disabledSelect\">Disabled input</label>\n                        <input\n                            class=\"form-control\"\n                            disabled=\"\"\n                            id=\"disabledInput\"\n                            placeholder=\"Disabled input\"\n                            type=\"text\"\n                        />\n                    </div>\n\n                    <div class=\"form-group\">\n                        <label for=\"disabledSelect\">Disabled select menu</label>\n                        <select class=\"form-control\" id=\"disabledSelect\">\n                            <option>Disabled select</option>\n                        </select>\n                    </div>\n\n                    <div class=\"checkbox\">\n                        <label> <input type=\"checkbox\" /> Disabled Checkbox </label>\n                    </div>\n\n                    <button class=\"btn btn-primary\" type=\"submit\">Disabled Button</button>\n                </fieldset>\n            </form>\n            <br />\n\n            <h4>Form Validation</h4>\n\n            <form role=\"form\">\n                <div class=\"form-group\">\n                    <label class=\"form-control-label\" for=\"inputSuccess\">Input with success</label>\n                    <input class=\"form-control is-valid\" id=\"inputSuccess\" type=\"text\" />\n                    <div class=\"valid-feedback\">\n                        Input success message\n                    </div>\n                </div>\n\n                <div class=\"form-group\">\n                    <label class=\"form-control-label\" for=\"inputError\">Input with danger</label>\n                    <input class=\"form-control is-invalid\" id=\"inputError\" type=\"text\" />\n                    <div class=\"invalid-feedback\">\n                        Input error message\n                    </div>\n                </div>\n            </form>\n\n            <h4>Input Groups</h4>\n\n            <form role=\"form\">\n                <div class=\"form-group input-group\">\n                    <div class=\"input-group-prepend\">\n                        <span class=\"input-group-text\" id=\"basic-addon1\">&#64;</span>\n                    </div>\n                    <!-- <span class=\"input-group-addon\">@</span> -->\n                    <input class=\"form-control\" placeholder=\"Username\" type=\"text\" />\n                </div>\n\n                <div class=\"form-group input-group\">\n                    <input class=\"form-control\" type=\"text\" />\n                    <div class=\"input-group-append\">\n                        <span class=\"input-group-text\">.00</span>\n                    </div>\n                </div>\n\n                <div class=\"form-group input-group\">\n                    <div class=\"input-group-prepend\">\n                        <span class=\"input-group-text\" id=\"basic-addon1\"><i class=\"fa fa-eur\"></i></span>\n                    </div>\n                    <input class=\"form-control\" placeholder=\"Font Awesome Icon\" type=\"text\" />\n                </div>\n\n                <div class=\"form-group input-group\">\n                    <div class=\"input-group-prepend\">\n                        <span class=\"input-group-text\" id=\"basic-addon1\">$</span>\n                    </div>\n                    <input class=\"form-control\" type=\"text\" />\n                    <div class=\"input-group-append\">\n                        <span class=\"input-group-text\">.00</span>\n                    </div>\n                </div>\n\n                <div class=\"form-group input-group\">\n                    <input class=\"form-control\" type=\"text\" />\n                    <div class=\"input-group-append\">\n                        <button class=\"btn btn-secondary\" type=\"button\"><i class=\"fa fa-search\"></i></button>\n                    </div>\n                </div>\n            </form>\n\n            <p>\n                For complete documentation, please visit\n                <a href=\"https://getbootstrap.com/docs/4.0/components/forms/\" target=\"_blank\"\n                    >Bootstrap's Form Documentation</a\n                >.\n            </p>\n        </div>\n    </div>\n    <!-- /.row -->\n</div>\n"
  },
  {
    "path": "src/app/layout/form/form.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/form/form.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { FormComponent } from './form.component';\nimport { FormModule } from './form.module';\n\ndescribe('FormComponent', () => {\n    let component: FormComponent;\n    let fixture: ComponentFixture<FormComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [FormModule, BrowserAnimationsModule, RouterTestingModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(FormComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/form/form.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { routerTransition } from '../../router.animations';\n\n@Component({\n    selector: 'app-form',\n    templateUrl: './form.component.html',\n    styleUrls: ['./form.component.scss'],\n    animations: [routerTransition()]\n})\nexport class FormComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/form/form.module.spec.ts",
    "content": "import { FormModule } from './form.module';\n\ndescribe('FormModule', () => {\n    let formModule: FormModule;\n\n    beforeEach(() => {\n        formModule = new FormModule();\n    });\n\n    it('should create an instance', () => {\n        expect(formModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/form/form.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { PageHeaderModule } from './../../shared';\n\nimport { FormRoutingModule } from './form-routing.module';\nimport { FormComponent } from './form.component';\n\n@NgModule({\n    imports: [CommonModule, FormRoutingModule, PageHeaderModule],\n    declarations: [FormComponent]\n})\nexport class FormModule {}\n"
  },
  {
    "path": "src/app/layout/grid/grid-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { GridComponent } from './grid.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: GridComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class GridRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/grid/grid.component.html",
    "content": "<div [@routerTransition]>\n    <app-page-header [heading]=\"'Bootstrap Grid'\" [icon]=\"'fa-wrench'\"></app-page-header>\n\n    <div class=\"row\">\n        <div class=\"col-xl-12 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-12\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n\n    <div class=\"row\">\n        <div class=\"col-xl-6 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-6\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-6 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-6\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n\n    <div class=\"row\">\n        <div class=\"col-xl-4 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-4\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-4 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-4\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-4 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-4\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n\n    <div class=\"row\">\n        <div class=\"col-xl-3 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-3\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-3 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-3\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-3 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-3\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-3 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-3\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n\n    <div class=\"row\">\n        <div class=\"col-xl-2 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-2\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-2 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-2\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-2 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-2\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-2 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-2\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-2 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-2\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-2 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-2\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n\n    <div class=\"row\">\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-1 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-1\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n\n    <div class=\"row\">\n        <div class=\"col-xl-8 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-8\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-4 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-4\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n\n    <div class=\"row\">\n        <div class=\"col-xl-3 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-3\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-6 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-6\n                </div>\n            </div>\n        </div>\n        <div class=\"col-xl-3 text-xs-center\">\n            <div class=\"card mb-3\">\n                <div class=\"card-body\">\n                    .col-xl-3\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- /.row -->\n</div>\n"
  },
  {
    "path": "src/app/layout/grid/grid.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/grid/grid.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { GridComponent } from './grid.component';\nimport { GridModule } from './grid.module';\n\ndescribe('GridComponent', () => {\n    let component: GridComponent;\n    let fixture: ComponentFixture<GridComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [GridModule, RouterTestingModule, BrowserAnimationsModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(GridComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/grid/grid.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { routerTransition } from '../../router.animations';\n\n@Component({\n    selector: 'app-grid',\n    templateUrl: './grid.component.html',\n    styleUrls: ['./grid.component.scss'],\n    animations: [routerTransition()]\n})\nexport class GridComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/grid/grid.module.spec.ts",
    "content": "import { GridModule } from './grid.module';\n\ndescribe('GridModule', () => {\n    let gridModule: GridModule;\n\n    beforeEach(() => {\n        gridModule = new GridModule();\n    });\n\n    it('should create an instance', () => {\n        expect(gridModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/grid/grid.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { PageHeaderModule } from './../../shared';\n\nimport { GridRoutingModule } from './grid-routing.module';\nimport { GridComponent } from './grid.component';\n\n@NgModule({\n    imports: [CommonModule, GridRoutingModule, PageHeaderModule],\n    declarations: [GridComponent]\n})\nexport class GridModule {}\n"
  },
  {
    "path": "src/app/layout/layout-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { LayoutComponent } from './layout.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: LayoutComponent,\n        children: [\n            { path: '', redirectTo: 'dashboard', pathMatch: 'prefix' },\n            {\n                path: 'dashboard',\n                loadChildren: () => import('./dashboard/dashboard.module').then((m) => m.DashboardModule)\n            },\n            { path: 'charts', loadChildren: () => import('./charts/charts.module').then((m) => m.ChartsModule) },\n            { path: 'tables', loadChildren: () => import('./tables/tables.module').then((m) => m.TablesModule) },\n            { path: 'forms', loadChildren: () => import('./form/form.module').then((m) => m.FormModule) },\n            {\n                path: 'bs-element',\n                loadChildren: () => import('./bs-element/bs-element.module').then((m) => m.BsElementModule)\n            },\n            { path: 'grid', loadChildren: () => import('./grid/grid.module').then((m) => m.GridModule) },\n            {\n                path: 'components',\n                loadChildren: () => import('./bs-component/bs-component.module').then((m) => m.BsComponentModule)\n            },\n            {\n                path: 'blank-page',\n                loadChildren: () => import('./blank-page/blank-page.module').then((m) => m.BlankPageModule)\n            }\n        ]\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class LayoutRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/layout.component.html",
    "content": "<app-header></app-header>\n<app-sidebar (collapsedEvent)=\"receiveCollapsed($event)\"></app-sidebar>\n<section [ngClass]=\"{ collapsed: collapedSideBar }\" class=\"main-container\">\n    <router-outlet></router-outlet>\n</section>\n"
  },
  {
    "path": "src/app/layout/layout.component.scss",
    "content": "* {\n    -webkit-transition: margin-left 0.2s ease-in-out;\n    -moz-transition: margin-left 0.2s ease-in-out;\n    -ms-transition: margin-left 0.2s ease-in-out;\n    -o-transition: margin-left 0.2s ease-in-out;\n    transition: margin-left 0.2s ease-in-out;\n}\n\n.main-container {\n    margin-top: 56px;\n    margin-left: 235px;\n    padding: 15px;\n    -ms-overflow-x: hidden;\n    overflow-x: hidden;\n    overflow-y: scroll;\n    position: relative;\n    overflow: hidden;\n}\n\n.collapsed {\n    margin-left: 60px;\n}\n\n@media screen and (max-width: 992px) {\n    .main-container {\n        margin-left: 0px !important;\n    }\n}\n\n@media print {\n    .main-container {\n        margin-top: 0px !important;\n        margin-left: 0px !important;\n    }\n}\n"
  },
  {
    "path": "src/app/layout/layout.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\nimport { TranslateModule } from '@ngx-translate/core';\n\nimport { LayoutComponent } from './layout.component';\nimport { LayoutModule } from './layout.module';\n\ndescribe('LayoutComponent', () => {\n    let component: LayoutComponent;\n    let fixture: ComponentFixture<LayoutComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [LayoutModule, RouterTestingModule, TranslateModule.forRoot()]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(LayoutComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/layout.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-layout',\n    templateUrl: './layout.component.html',\n    styleUrls: ['./layout.component.scss']\n})\nexport class LayoutComponent implements OnInit {\n    collapedSideBar: boolean;\n\n    constructor() {}\n\n    ngOnInit() {}\n\n    receiveCollapsed($event) {\n        this.collapedSideBar = $event;\n    }\n}\n"
  },
  {
    "path": "src/app/layout/layout.module.spec.ts",
    "content": "import { LayoutModule } from './layout.module';\n\ndescribe('LayoutModule', () => {\n    let layoutModule: LayoutModule;\n\n    beforeEach(() => {\n        layoutModule = new LayoutModule();\n    });\n\n    it('should create an instance', () => {\n        expect(layoutModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/layout.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { HeaderComponent } from './components/header/header.component';\nimport { SidebarComponent } from './components/sidebar/sidebar.component';\n\nimport { LayoutRoutingModule } from './layout-routing.module';\nimport { LayoutComponent } from './layout.component';\n\n@NgModule({\n    imports: [CommonModule, LayoutRoutingModule, TranslateModule, NgbDropdownModule],\n    declarations: [LayoutComponent, SidebarComponent, HeaderComponent]\n})\nexport class LayoutModule {}\n"
  },
  {
    "path": "src/app/layout/tables/tables-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TablesComponent } from './tables.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: TablesComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class TablesRoutingModule {}\n"
  },
  {
    "path": "src/app/layout/tables/tables.component.html",
    "content": "<div [@routerTransition]>\n    <app-page-header [heading]=\"'Tables'\" [icon]=\"'fa-table'\"></app-page-header>\n    <div class=\"row\">\n        <div class=\"col col-xl-6 col-lg-12\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">\n                    Basic example\n                </div>\n                <div class=\"card-body table-responsive\">\n                    <table class=\"table\">\n                        <thead>\n                            <tr>\n                                <th>#</th>\n                                <th>First Name</th>\n                                <th>Last Name</th>\n                                <th>Username</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            <tr>\n                                <th scope=\"row\">1</th>\n                                <td>Mark</td>\n                                <td>Otto</td>\n                                <td>&#64;mdo</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">2</th>\n                                <td>Jacob</td>\n                                <td>Thornton</td>\n                                <td>&#64;fat</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">3</th>\n                                <td>Larry</td>\n                                <td>the Bird</td>\n                                <td>&#64;twitter</td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </div>\n            </div>\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Table head options</div>\n                <div class=\"card-body table-responsive\">\n                    <table class=\"table\">\n                        <thead class=\"thead-inverse\">\n                            <tr>\n                                <th>#</th>\n                                <th>First Name</th>\n                                <th>Last Name</th>\n                                <th>Username</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            <tr>\n                                <th scope=\"row\">1</th>\n                                <td>Mark</td>\n                                <td>Otto</td>\n                                <td>&#64;mdo</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">2</th>\n                                <td>Jacob</td>\n                                <td>Thornton</td>\n                                <td>&#64;fat</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">3</th>\n                                <td>Larry</td>\n                                <td>the Bird</td>\n                                <td>&#64;twitter</td>\n                            </tr>\n                        </tbody>\n                    </table>\n                    <table class=\"table\">\n                        <thead class=\"thead-default\">\n                            <tr>\n                                <th>#</th>\n                                <th>First Name</th>\n                                <th>Last Name</th>\n                                <th>Username</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            <tr>\n                                <th scope=\"row\">1</th>\n                                <td>Mark</td>\n                                <td>Otto</td>\n                                <td>&#64;mdo</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">2</th>\n                                <td>Jacob</td>\n                                <td>Thornton</td>\n                                <td>&#64;fat</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">3</th>\n                                <td>Larry</td>\n                                <td>the Bird</td>\n                                <td>&#64;twitter</td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </div>\n            </div>\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Bordered table</div>\n                <div class=\"card-body table-responsive\">\n                    <table class=\"table table-bordered\">\n                        <thead>\n                            <tr>\n                                <th>#</th>\n                                <th>First Name</th>\n                                <th>Last Name</th>\n                                <th>Username</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            <tr>\n                                <th scope=\"row\">1</th>\n                                <td>Mark</td>\n                                <td>Otto</td>\n                                <td>&#64;mdo</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">2</th>\n                                <td>Mark</td>\n                                <td>Otto</td>\n                                <td>&#64;TwBootstrap</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">3</th>\n                                <td>Jacob</td>\n                                <td>Thornton</td>\n                                <td>&#64;fat</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">4</th>\n                                <td colspan=\"2\">Larry the Bird</td>\n                                <td>&#64;twitter</td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </div>\n            </div>\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Small table</div>\n                <table class=\"table table-sm\">\n                    <thead>\n                        <tr>\n                            <th>#</th>\n                            <th>First Name</th>\n                            <th>Last Name</th>\n                            <th>Username</th>\n                        </tr>\n                    </thead>\n                    <tbody>\n                        <tr>\n                            <th scope=\"row\">1</th>\n                            <td>Mark</td>\n                            <td>Otto</td>\n                            <td>&#64;mdo</td>\n                        </tr>\n                        <tr>\n                            <th scope=\"row\">2</th>\n                            <td>Jacob</td>\n                            <td>Thornton</td>\n                            <td>&#64;fat</td>\n                        </tr>\n                        <tr>\n                            <th scope=\"row\">3</th>\n                            <td colspan=\"2\">Larry the Bird</td>\n                            <td>&#64;twitter</td>\n                        </tr>\n                    </tbody>\n                </table>\n            </div>\n        </div>\n        <div class=\"col col-xl-6 col-lg-12\">\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Inverse table</div>\n                <div class=\"card-body table-responsive\">\n                    <table class=\"table table-inverse\">\n                        <thead>\n                            <tr>\n                                <th>#</th>\n                                <th>First Name</th>\n                                <th>Last Name</th>\n                                <th>Username</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            <tr>\n                                <th scope=\"row\">1</th>\n                                <td>Mark</td>\n                                <td>Otto</td>\n                                <td>&#64;mdo</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">2</th>\n                                <td>Jacob</td>\n                                <td>Thornton</td>\n                                <td>&#64;fat</td>\n                            </tr>\n                            <tr>\n                                <th scope=\"row\">3</th>\n                                <td>Larry</td>\n                                <td>the Bird</td>\n                                <td>&#64;twitter</td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </div>\n            </div>\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Striped Rows</div>\n                <div class=\"card-body table-responsive\">\n                    <table class=\"table table-hover table-striped\">\n                        <thead>\n                            <tr>\n                                <th>Page</th>\n                                <th>Visits</th>\n                                <th>% New Visits</th>\n                                <th>Revenue</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            <tr>\n                                <td>/index.html</td>\n                                <td>1265</td>\n                                <td>32.3%</td>\n                                <td>$321.33</td>\n                            </tr>\n                            <tr>\n                                <td>/about.html</td>\n                                <td>261</td>\n                                <td>33.3%</td>\n                                <td>$234.12</td>\n                            </tr>\n                            <tr>\n                                <td>/sales.html</td>\n                                <td>665</td>\n                                <td>21.3%</td>\n                                <td>$16.34</td>\n                            </tr>\n                            <tr>\n                                <td>/blog.html</td>\n                                <td>9516</td>\n                                <td>89.3%</td>\n                                <td>$1644.43</td>\n                            </tr>\n                            <tr>\n                                <td>/404.html</td>\n                                <td>23</td>\n                                <td>34.3%</td>\n                                <td>$23.52</td>\n                            </tr>\n                            <tr>\n                                <td>/services.html</td>\n                                <td>421</td>\n                                <td>60.3%</td>\n                                <td>$724.32</td>\n                            </tr>\n                            <tr>\n                                <td>/blog/post.html</td>\n                                <td>1233</td>\n                                <td>93.2%</td>\n                                <td>$126.34</td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </div>\n            </div>\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Hoverable rows</div>\n                <table class=\"card-body table table-hover\">\n                    <thead>\n                        <tr>\n                            <th>#</th>\n                            <th>First Name</th>\n                            <th>Last Name</th>\n                            <th>Username</th>\n                        </tr>\n                    </thead>\n                    <tbody>\n                        <tr>\n                            <th scope=\"row\">1</th>\n                            <td>Mark</td>\n                            <td>Otto</td>\n                            <td>&#64;mdo</td>\n                        </tr>\n                        <tr>\n                            <th scope=\"row\">2</th>\n                            <td>Jacob</td>\n                            <td>Thornton</td>\n                            <td>&#64;fat</td>\n                        </tr>\n                        <tr>\n                            <th scope=\"row\">3</th>\n                            <td colspan=\"2\">Larry the Bird</td>\n                            <td>&#64;twitter</td>\n                        </tr>\n                    </tbody>\n                </table>\n            </div>\n            <div class=\"card mb-3\">\n                <div class=\"card-header\">Contextual classes</div>\n                <table class=\"card-body table\">\n                    <thead>\n                        <tr>\n                            <th>#</th>\n                            <th>First Name</th>\n                            <th>Last Name</th>\n                            <th>Username</th>\n                        </tr>\n                    </thead>\n                    <tbody>\n                        <tr class=\"table-active\">\n                            <th scope=\"row\">1</th>\n                            <td>Mark</td>\n                            <td>Otto</td>\n                            <td>&#64;mdo</td>\n                        </tr>\n                        <tr class=\"table-success\">\n                            <th scope=\"row\">2</th>\n                            <td>Jacob</td>\n                            <td>Thornton</td>\n                            <td>&#64;fat</td>\n                        </tr>\n                        <tr class=\"table-info\">\n                            <th scope=\"row\">3</th>\n                            <td>Larry</td>\n                            <td>the Bird</td>\n                            <td>&#64;twitter</td>\n                        </tr>\n                        <tr class=\"table-warning\">\n                            <th scope=\"row\">3</th>\n                            <td>Larry</td>\n                            <td>the Bird</td>\n                            <td>&#64;twitter</td>\n                        </tr>\n                        <tr class=\"table-danger\">\n                            <th scope=\"row\">3</th>\n                            <td>Larry</td>\n                            <td>the Bird</td>\n                            <td>&#64;twitter</td>\n                        </tr>\n                    </tbody>\n                </table>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/layout/tables/tables.component.scss",
    "content": ""
  },
  {
    "path": "src/app/layout/tables/tables.component.spec.ts",
    "content": "import { TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { TablesComponent } from './tables.component';\nimport { TablesModule } from './tables.module';\n\ndescribe('TablesComponent', () => {\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [TablesModule, RouterTestingModule]\n        }).compileComponents();\n    }));\n\n    it('should create', () => {\n        const fixture = TestBed.createComponent(TablesComponent);\n        const component = fixture.componentInstance;\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/tables/tables.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { routerTransition } from '../../router.animations';\n\n@Component({\n    selector: 'app-tables',\n    templateUrl: './tables.component.html',\n    styleUrls: ['./tables.component.scss'],\n    animations: [routerTransition()]\n})\nexport class TablesComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/layout/tables/tables.module.spec.ts",
    "content": "import { TablesModule } from './tables.module';\n\ndescribe('TablesModule', () => {\n    let tablesModule: TablesModule;\n\n    beforeEach(() => {\n        tablesModule = new TablesModule();\n    });\n\n    it('should create an instance', () => {\n        expect(tablesModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/layout/tables/tables.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { PageHeaderModule } from './../../shared';\n\nimport { TablesRoutingModule } from './tables-routing.module';\nimport { TablesComponent } from './tables.component';\n\n@NgModule({\n    imports: [CommonModule, TablesRoutingModule, PageHeaderModule],\n    declarations: [TablesComponent]\n})\nexport class TablesModule {}\n"
  },
  {
    "path": "src/app/login/login-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { LoginComponent } from './login.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: LoginComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class LoginRoutingModule {}\n"
  },
  {
    "path": "src/app/login/login.component.html",
    "content": "<div [@routerTransition] class=\"login-page\">\n    <div class=\"row justify-content-md-center align-items-center h-100\">\n        <div class=\"col-md-4\">\n            <img class=\"user-avatar\" src=\"assets/images/logo.png\" [style.width.px]=\"150\" alt=\"logo\"/>\n            <h1>SB Admin BS5 Angular17</h1>\n            <form role=\"form\">\n                <div class=\"form-content\">\n                    <div class=\"form-group\">\n                        <input\n                            [placeholder]=\"'Email' | translate\"\n                            class=\"form-control input-underline input-lg\"\n                            type=\"text\"\n                        />\n                    </div>\n\n                    <div class=\"form-group\">\n                        <input\n                            [placeholder]=\"'Password' | translate\"\n                            class=\"form-control input-underline input-lg\"\n                            type=\"password\"\n                        />\n                    </div>\n                </div>\n                <a (click)=\"onLoggedin()\" [routerLink]=\"['/dashboard']\" class=\"btn rounded-btn\">\n                    {{'Log in' | translate}}\n                </a>\n                &nbsp;\n                <a [routerLink]=\"['/signup']\" class=\"btn rounded-btn\">{{ 'Register' | translate }}</a>\n            </form>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/login/login.component.scss",
    "content": "$topnav-background-color: #222;\n:host {\n    display: block;\n}\n\n.login-page {\n    position: absolute;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    overflow: auto;\n    background: $topnav-background-color;\n    text-align: center;\n    color: #fff;\n    padding: 3em;\n\n    .col-lg-4 {\n        padding: 0;\n    }\n\n    .input-lg {\n        height: 46px;\n        padding: 10px 16px;\n        font-size: 18px;\n        line-height: 1.3333333;\n        border-radius: 0;\n    }\n\n    .input-underline {\n        background: 0 0;\n        border: none;\n        box-shadow: none;\n        border-bottom: 2px solid rgba(255, 255, 255, 0.5);\n        color: #fff;\n        border-radius: 0;\n    }\n\n    .input-underline:focus {\n        border-bottom: 2px solid #fff;\n        box-shadow: none;\n    }\n\n    .rounded-btn {\n        -webkit-border-radius: 50px;\n        border-radius: 50px;\n        color: rgba(255, 255, 255, 0.8);\n        background: $topnav-background-color;\n        border: 2px solid rgba(255, 255, 255, 0.8);\n        font-size: 18px;\n        line-height: 40px;\n        padding: 0 25px;\n    }\n\n    .rounded-btn:hover,\n    .rounded-btn:focus,\n    .rounded-btn:active,\n    .rounded-btn:visited {\n        color: rgba(255, 255, 255, 1);\n        border: 2px solid rgba(255, 255, 255, 1);\n        outline: none;\n    }\n\n    h1 {\n        font-weight: 300;\n        margin-top: 20px;\n        margin-bottom: 10px;\n        font-size: 36px;\n\n        small {\n            color: rgba(255, 255, 255, 0.7);\n        }\n    }\n\n    .form-group {\n        padding: 8px 0;\n\n        input::-webkit-input-placeholder {\n            color: rgba(255, 255, 255, 0.6) !important;\n        }\n\n        input:-moz-placeholder {\n            /* Firefox 18- */\n            color: rgba(255, 255, 255, 0.6) !important;\n        }\n\n        input::-moz-placeholder {\n            /* Firefox 19+ */\n            color: rgba(255, 255, 255, 0.6) !important;\n        }\n\n        input:-ms-input-placeholder {\n            color: rgba(255, 255, 255, 0.6) !important;\n        }\n    }\n\n    .form-content {\n        padding: 40px 0;\n    }\n\n    .user-avatar {\n        -webkit-border-radius: 50%;\n        border-radius: 50%;\n        border: 2px solid #fff;\n    }\n}\n"
  },
  {
    "path": "src/app/login/login.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { LoginComponent } from './login.component';\nimport { LoginModule } from './login.module';\n\ndescribe('LoginComponent', () => {\n    let component: LoginComponent;\n    let fixture: ComponentFixture<LoginComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [LoginModule, RouterTestingModule, BrowserAnimationsModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(LoginComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/login/login.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { routerTransition } from '../router.animations';\n\n@Component({\n    selector: 'app-login',\n    templateUrl: './login.component.html',\n    styleUrls: ['./login.component.scss'],\n    animations: [routerTransition()]\n})\nexport class LoginComponent implements OnInit {\n    constructor(public router: Router) {}\n\n    ngOnInit() {}\n\n    onLoggedin() {\n        localStorage.setItem('isLoggedin', 'true');\n    }\n}\n"
  },
  {
    "path": "src/app/login/login.module.spec.ts",
    "content": "import { LoginModule } from './login.module';\n\ndescribe('LoginModule', () => {\n    let loginModule: LoginModule;\n\n    beforeEach(() => {\n        loginModule = new LoginModule();\n    });\n\n    it('should create an instance', () => {\n        expect(loginModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/login/login.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\n\nimport { LoginRoutingModule } from './login-routing.module';\nimport { LoginComponent } from './login.component';\n\n@NgModule({\n    imports: [CommonModule, TranslateModule, LoginRoutingModule],\n    declarations: [LoginComponent]\n})\nexport class LoginModule {}\n"
  },
  {
    "path": "src/app/not-found/not-found-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { NotFoundComponent } from './not-found.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: NotFoundComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class NotFoundRoutingModule {}\n"
  },
  {
    "path": "src/app/not-found/not-found.component.html",
    "content": "<p>\n    not-found works!\n</p>\n"
  },
  {
    "path": "src/app/not-found/not-found.component.scss",
    "content": ""
  },
  {
    "path": "src/app/not-found/not-found.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { NotFoundComponent } from './not-found.component';\n\ndescribe('NotFoundComponent', () => {\n    let component: NotFoundComponent;\n    let fixture: ComponentFixture<NotFoundComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [NotFoundComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(NotFoundComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/not-found/not-found.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-not-found',\n    templateUrl: './not-found.component.html',\n    styleUrls: ['./not-found.component.scss']\n})\nexport class NotFoundComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/not-found/not-found.module.spec.ts",
    "content": "import { NotFoundModule } from './not-found.module';\n\ndescribe('NotFoundModule', () => {\n    let notFoundModule: NotFoundModule;\n\n    beforeEach(() => {\n        notFoundModule = new NotFoundModule();\n    });\n\n    it('should create an instance', () => {\n        expect(notFoundModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/not-found/not-found.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NotFoundRoutingModule } from './not-found-routing.module';\nimport { NotFoundComponent } from './not-found.component';\n\n@NgModule({\n    imports: [CommonModule, NotFoundRoutingModule],\n    declarations: [NotFoundComponent]\n})\nexport class NotFoundModule {}\n"
  },
  {
    "path": "src/app/router.animations.ts",
    "content": "import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport function routerTransition() {\n    return fadeInAnimation();\n}\n\nexport function noTransition() {\n    return trigger('routerTransition', []);\n}\n\nexport function fadeInAnimation() {\n    return trigger('routerTransition', [\n        state('void', style({})),\n        state('*', style({})),\n        transition(':enter', [style({ opacity: 0 }), animate(500, style({ opacity: 1 }))]),\n        transition(':leave', [animate(500, style({ opacity: 0 }))])\n    ]);\n}\n\nexport function slideToRight() {\n    return trigger('routerTransition', [\n        state('void', style({})),\n        state('*', style({})),\n        transition(':enter', [\n            style({ transform: 'translateX(-100%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateX(0%)' }))\n        ]),\n        transition(':leave', [\n            style({ transform: 'translateX(0%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateX(100%)' }))\n        ])\n    ]);\n}\n\nexport function slideToLeft() {\n    return trigger('routerTransition', [\n        state('void', style({})),\n        state('*', style({})),\n        transition(':enter', [\n            style({ transform: 'translateX(100%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateX(0%)' }))\n        ]),\n        transition(':leave', [\n            style({ transform: 'translateX(0%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateX(-100%)' }))\n        ])\n    ]);\n}\n\nexport function slideToBottom() {\n    return trigger('routerTransition', [\n        state('void', style({})),\n        state('*', style({})),\n        transition(':enter', [\n            style({ transform: 'translateY(-100%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateY(0%)' }))\n        ]),\n        transition(':leave', [\n            style({ transform: 'translateY(0%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateY(100%)' }))\n        ])\n    ]);\n}\n\nexport function slideToTop() {\n    return trigger('routerTransition', [\n        state('void', style({})),\n        state('*', style({})),\n        transition(':enter', [\n            style({ transform: 'translateY(100%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateY(0%)' }))\n        ]),\n        transition(':leave', [\n            style({ transform: 'translateY(0%)' }),\n            animate('0.5s ease-in-out', style({ transform: 'translateY(-100%)' }))\n        ])\n    ]);\n}\n"
  },
  {
    "path": "src/app/server-error/server-error-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { ServerErrorComponent } from './server-error.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: ServerErrorComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class ServerErrorRoutingModule {}\n"
  },
  {
    "path": "src/app/server-error/server-error.component.html",
    "content": "<p>\n    server-error works!\n</p>\n"
  },
  {
    "path": "src/app/server-error/server-error.component.scss",
    "content": ""
  },
  {
    "path": "src/app/server-error/server-error.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { ServerErrorComponent } from './server-error.component';\n\ndescribe('ServerErrorComponent', () => {\n    let component: ServerErrorComponent;\n    let fixture: ComponentFixture<ServerErrorComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [ServerErrorComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(ServerErrorComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/server-error/server-error.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-server-error',\n    templateUrl: './server-error.component.html',\n    styleUrls: ['./server-error.component.scss']\n})\nexport class ServerErrorComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/server-error/server-error.module.spec.ts",
    "content": "import { ServerErrorModule } from './server-error.module';\n\ndescribe('ServerErrorModule', () => {\n    let serverErrorModule: ServerErrorModule;\n\n    beforeEach(() => {\n        serverErrorModule = new ServerErrorModule();\n    });\n\n    it('should create an instance', () => {\n        expect(serverErrorModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/server-error/server-error.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ServerErrorRoutingModule } from './server-error-routing.module';\nimport { ServerErrorComponent } from './server-error.component';\n\n@NgModule({\n    imports: [CommonModule, ServerErrorRoutingModule],\n    declarations: [ServerErrorComponent]\n})\nexport class ServerErrorModule {}\n"
  },
  {
    "path": "src/app/shared/guard/auth.guard.spec.ts",
    "content": "import { inject, TestBed } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { AuthGuard } from './auth.guard';\n\ndescribe('AuthGuard', () => {\n    beforeEach(() => {\n        TestBed.configureTestingModule({\n            imports: [RouterTestingModule],\n            providers: [AuthGuard]\n        });\n    });\n\n    it('should ...', inject([AuthGuard], (guard: AuthGuard) => {\n        expect(guard).toBeTruthy();\n    }));\n});\n"
  },
  {
    "path": "src/app/shared/guard/auth.guard.ts",
    "content": "import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Injectable()\nexport class AuthGuard  {\n    constructor(private router: Router) {}\n\n    canActivate() {\n        if (localStorage.getItem('isLoggedin')) {\n            return true;\n        }\n\n        this.router.navigate(['/login']);\n        return false;\n    }\n}\n"
  },
  {
    "path": "src/app/shared/guard/index.ts",
    "content": "export * from './auth.guard';\n"
  },
  {
    "path": "src/app/shared/index.ts",
    "content": "export * from './modules';\nexport * from './pipes/shared-pipes.module';\nexport * from './guard';\n"
  },
  {
    "path": "src/app/shared/modules/index.ts",
    "content": "export * from './page-header/page-header.module';\nexport * from './stat/stat.module';\n"
  },
  {
    "path": "src/app/shared/modules/language-translation/language-translation.module.ts",
    "content": "/**\n * This module is used to language translations.\n * The translations are saved in a json file in /src/app/assets/i18n directory\n * Docs: https://www.codeandweb.com/babeledit/tutorials/how-to-translate-your-angular7-app-with-ngx-translate\n */\nimport { HttpClient } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\n// import ngx-translate and the http loader\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\n\n// ngx-translate - required for AOT compilation\nexport function HttpLoaderFactory(http: HttpClient) {\n    return new TranslateHttpLoader(http);\n}\n\n@NgModule({\n    declarations: [],\n    imports: [\n        TranslateModule.forRoot({\n            loader: {\n                provide: TranslateLoader,\n                useFactory: HttpLoaderFactory,\n                deps: [HttpClient]\n            }\n        })\n    ],\n    exports: [TranslateModule]\n})\nexport class LanguageTranslationModule {\n    constructor(private translate: TranslateService) {\n        // Gets Default language from browser if available, otherwise set English ad default\n        this.translate.addLangs(['en', 'fr', 'ur', 'es', 'it', 'fa', 'de', 'zh-CHS']);\n        this.translate.setDefaultLang('en');\n        const browserLang = this.translate.getBrowserLang();\n        this.translate.use(browserLang.match(/en|fr|ur|es|it|fa|de|zh-CHS/) ? browserLang : 'en');\n    }\n}\n"
  },
  {
    "path": "src/app/shared/modules/page-header/page-header.component.html",
    "content": "<div class=\"row\">\n    <div class=\"col-xl-12\">\n        <h2 class=\"page-header\">\n            {{ heading }}\n        </h2>\n        <ol class=\"breadcrumb\">\n            <li class=\"breadcrumb-item\">\n                <i class=\"fa fa-dashboard\"></i> <a [routerLink]=\"['/dashboard']\" href=\"Javascript:void(0)\">Dashboard</a>\n            </li>\n            <li class=\"breadcrumb-item active\"><i class=\"fa {{ icon }}\"></i> {{ heading }}</li>\n        </ol>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/shared/modules/page-header/page-header.component.scss",
    "content": ""
  },
  {
    "path": "src/app/shared/modules/page-header/page-header.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { PageHeaderComponent } from './page-header.component';\nimport { PageHeaderModule } from './page-header.module';\n\ndescribe('PageHeaderComponent', () => {\n    let component: PageHeaderComponent;\n    let fixture: ComponentFixture<PageHeaderComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [PageHeaderModule, RouterTestingModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(PageHeaderComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/shared/modules/page-header/page-header.component.ts",
    "content": "import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'app-page-header',\n    templateUrl: './page-header.component.html',\n    styleUrls: ['./page-header.component.scss']\n})\nexport class PageHeaderComponent implements OnInit {\n    @Input() heading: string;\n    @Input() icon: string;\n\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/shared/modules/page-header/page-header.module.spec.ts",
    "content": "import { PageHeaderModule } from './page-header.module';\n\ndescribe('PageHeaderModule', () => {\n    let pageHeaderModule: PageHeaderModule;\n\n    beforeEach(() => {\n        pageHeaderModule = new PageHeaderModule();\n    });\n\n    it('should create an instance', () => {\n        expect(pageHeaderModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/shared/modules/page-header/page-header.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { PageHeaderComponent } from './page-header.component';\n\n@NgModule({\n    imports: [CommonModule, RouterModule],\n    declarations: [PageHeaderComponent],\n    exports: [PageHeaderComponent]\n})\nexport class PageHeaderModule {}\n"
  },
  {
    "path": "src/app/shared/modules/stat/stat.component.html",
    "content": "<div class=\"card text-white bg-{{ bgClass }}\">\n    <div class=\"card-header\">\n        <div class=\"row\">\n            <div class=\"col col-xs-3\">\n                <i class=\"fa {{ icon }} fa-5x\"></i>\n            </div>\n            <div class=\"col col-xs-9 text-right\">\n                <div class=\"d-block huge\">{{ count }}</div>\n                <div class=\"d-block\">{{ label }}</div>\n            </div>\n        </div>\n    </div>\n    <div class=\"card-footer\">\n        <span class=\"float-left\">View Details {{ data }}</span>\n        <a class=\"float-right card-inverse\" href=\"javascript:void(0)\">\n            <span><i class=\"fa fa-arrow-circle-right\"></i></span>\n        </a>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/shared/modules/stat/stat.component.scss",
    "content": ""
  },
  {
    "path": "src/app/shared/modules/stat/stat.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\n\nimport { StatComponent } from './stat.component';\n\ndescribe('StatComponent', () => {\n    let component: StatComponent;\n    let fixture: ComponentFixture<StatComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            declarations: [StatComponent]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(StatComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/shared/modules/stat/stat.component.ts",
    "content": "import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n    selector: 'app-stat',\n    templateUrl: './stat.component.html',\n    styleUrls: ['./stat.component.scss']\n})\nexport class StatComponent implements OnInit {\n    @Input() bgClass: string;\n    @Input() icon: string;\n    @Input() count: number;\n    @Input() label: string;\n    @Input() data: number;\n    @Output() event: EventEmitter<any> = new EventEmitter();\n\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/shared/modules/stat/stat.module.spec.ts",
    "content": "import { StatModule } from './stat.module';\n\ndescribe('StatModule', () => {\n    let statModule: StatModule;\n\n    beforeEach(() => {\n        statModule = new StatModule();\n    });\n\n    it('should create an instance', () => {\n        expect(statModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/shared/modules/stat/stat.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { StatComponent } from './stat.component';\n\n@NgModule({\n    imports: [CommonModule],\n    declarations: [StatComponent],\n    exports: [StatComponent]\n})\nexport class StatModule {}\n"
  },
  {
    "path": "src/app/shared/pipes/shared-pipes.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\n@NgModule({\n    imports: [CommonModule],\n    declarations: []\n})\nexport class SharedPipesModule {}\n"
  },
  {
    "path": "src/app/shared/services/index.ts",
    "content": ""
  },
  {
    "path": "src/app/signup/signup-routing.module.ts",
    "content": "import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SignupComponent } from './signup.component';\n\nconst routes: Routes = [\n    {\n        path: '',\n        component: SignupComponent\n    }\n];\n\n@NgModule({\n    imports: [RouterModule.forChild(routes)],\n    exports: [RouterModule]\n})\nexport class SignupRoutingModule {}\n"
  },
  {
    "path": "src/app/signup/signup.component.html",
    "content": "<div [@routerTransition] class=\"login-page\">\n    <div class=\"row justify-content-md-center align-items-center h-100\">\n        <div class=\"col-md-4\">\n            <img class=\"user-avatar\" src=\"assets/images/logo.png\" [style.width.px]=\"150\" alt=\"logo\" />\n            <h1>SB Admin BS5 Angular17</h1>\n            <form role=\"form\">\n                <div class=\"form-content\">\n                    <div class=\"form-group\">\n                        <input\n                            [placeholder]=\"'Full Name' | translate\"\n                            class=\"form-control input-underline input-lg\"\n                            type=\"text\"\n                        />\n                    </div>\n\n                    <div class=\"form-group\">\n                        <input\n                            [placeholder]=\"'Email' | translate\"\n                            class=\"form-control input-underline input-lg\"\n                            type=\"text\"\n                        />\n                    </div>\n\n                    <div class=\"form-group\">\n                        <input\n                            [placeholder]=\"'Password' | translate\"\n                            class=\"form-control input-underline input-lg\"\n                            type=\"password\"\n                        />\n                    </div>\n                    <div class=\"form-group\">\n                        <input\n                            [placeholder]=\"'Repeat Password' | translate\"\n                            class=\"form-control input-underline input-lg\"\n                            type=\"password\"\n                        />\n                    </div>\n                </div>\n                <a [routerLink]=\"['/dashboard']\" class=\"btn rounded-btn me-2\">{{ 'Register' | translate }}</a>\n                <a [routerLink]=\"['/login']\" class=\"btn rounded-btn\">{{ 'Log in' | translate }}</a>\n            </form>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/signup/signup.component.scss",
    "content": "// shared css for the login and signup page\n@import '../login/login.component.scss';\n"
  },
  {
    "path": "src/app/signup/signup.component.spec.ts",
    "content": "import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouterTestingModule } from '@angular/router/testing';\n\nimport { SignupComponent } from './signup.component';\nimport { SignupModule } from './signup.module';\n\ndescribe('SignupComponent', () => {\n    let component: SignupComponent;\n    let fixture: ComponentFixture<SignupComponent>;\n\n    beforeEach(waitForAsync(() => {\n        TestBed.configureTestingModule({\n            imports: [SignupModule, RouterTestingModule, BrowserAnimationsModule]\n        }).compileComponents();\n    }));\n\n    beforeEach(() => {\n        fixture = TestBed.createComponent(SignupComponent);\n        component = fixture.componentInstance;\n        fixture.detectChanges();\n    });\n\n    it('should create', () => {\n        expect(component).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/signup/signup.component.ts",
    "content": "import { Component, OnInit } from '@angular/core';\nimport { routerTransition } from '../router.animations';\n\n@Component({\n    selector: 'app-signup',\n    templateUrl: './signup.component.html',\n    styleUrls: ['./signup.component.scss'],\n    animations: [routerTransition()]\n})\nexport class SignupComponent implements OnInit {\n    constructor() {}\n\n    ngOnInit() {}\n}\n"
  },
  {
    "path": "src/app/signup/signup.module.spec.ts",
    "content": "import { SignupModule } from './signup.module';\n\ndescribe('SignupModule', () => {\n    let signupModule: SignupModule;\n\n    beforeEach(() => {\n        signupModule = new SignupModule();\n    });\n\n    it('should create an instance', () => {\n        expect(signupModule).toBeTruthy();\n    });\n});\n"
  },
  {
    "path": "src/app/signup/signup.module.ts",
    "content": "import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\n\nimport { SignupRoutingModule } from './signup-routing.module';\nimport { SignupComponent } from './signup.component';\n\n@NgModule({\n    imports: [CommonModule, TranslateModule, SignupRoutingModule],\n    declarations: [SignupComponent]\n})\nexport class SignupModule {}\n"
  },
  {
    "path": "src/assets/i18n/de.json",
    "content": "{\n    \"Dashboard\": \"Dashboard\",\n    \"Charts\": \"Graphen\",\n    \"Tables\": \"Tabellen\",\n    \"Forms\": \"Formulare\",\n    \"Bootstrap Element\": \"Bootstrap Element\",\n    \"Bootstrap Grid\": \"Bootstrap Grid\",\n    \"Component\": \"Komponente\",\n    \"Menu\": \"Menü\",\n    \"Submenu\": \"Submenü\",\n    \"Blank Page\": \"Leere Seite\",\n    \"More Theme\": \"Mehr Themes\",\n    \"Download Now\": \"Jetzt runterladen\",\n    \"Language\": \"Sprache\",\n    \"English\": \"Englisch\",\n    \"French\": \"Französisch\",\n    \"Urdu\": \"Urdu\",\n    \"Spanish\": \"Spanisch\",\n    \"Italian\": \"Italienisch\",\n    \"Farsi\": \"Farsi\",\n    \"German\": \"Deutsch\",\n    \"Simplified Chinese\": \"Vereinfachtes Chinesisch\",\n    \"Search\" : \"Suchen\",\n    \"Settings\" : \"Einstellungen\",\n    \"Profile\" : \"Profil\",\n    \"Inbox\" : \"Posteingang\",\n    \"Log Out\" : \"Ausloggen\",\n    \"Pending Task\" : \"Ausstehende Aufgabe\",\n    \"In queue\" : \"In der Warteschlange\",\n    \"Mail\" : \"Post\",\n    \"View All\" : \"Alle Anzeigen\",\n    \"More Themes\" : \"More Themes\",\n    \"Collapse Sidebar\" : \"Collapse Sidebar\",\n    \"Full Name\": \"Full Name\",\n    \"Email\": \"Email\",\n    \"Password\": \"Password\",\n    \"Repeat Password\": \"Repeat Password\",\n    \"Register\": \"Register\",\n    \"Log in\": \"Log in\"\n}\n"
  },
  {
    "path": "src/assets/i18n/en.json",
    "content": "{\n    \"Dashboard\": \"Dashboard\",\n    \"Charts\": \"Charts\",\n    \"Tables\": \"Tables\",\n    \"Forms\": \"Forms\",\n    \"Bootstrap Element\": \"Bootstrap Element\",\n    \"Bootstrap Grid\": \"Bootstrap Grid\",\n    \"Component\": \"Component\",\n    \"Menu\": \"Menu\",\n    \"Submenu\": \"Submenu\",\n    \"Blank Page\": \"Blank Page\",\n    \"More Theme\": \"More Themes\",\n    \"Download Now\": \"Download Now\",\n    \"Language\": \"Language\",\n    \"English\": \"English\",\n    \"French\": \"French\",\n    \"Urdu\": \"Urdu\",\n    \"Spanish\": \"Spanish\",\n    \"Italian\": \"Italian\",\n    \"Farsi\": \"Farsi\",\n    \"German\": \"German\",\n    \"Simplified Chinese\": \"Simplified Chinese\",\n    \"Search\" : \"Search\",\n    \"Settings\" : \"Settings\",\n    \"Profile\" : \"Profile\",\n    \"Inbox\" : \"Inbox\",\n    \"Log Out\" : \"Log Out\",\n    \"Pending Task\" : \"Pending Task\",\n    \"In queue\" : \"In queue\",\n    \"Mail\" : \"Mail\",\n    \"View All\" : \"View All\",\n    \"More Themes\" : \"More Themes\",\n    \"Collapse Sidebar\" : \"Collapse Sidebar\",\n    \"Full Name\": \"Full Name\",\n    \"Email\": \"Email\",\n    \"Password\": \"Password\",\n    \"Repeat Password\": \"Repeat Password\",\n    \"Register\": \"Register\",\n    \"Log in\": \"Log in\"\n}\n"
  },
  {
    "path": "src/assets/i18n/es.json",
    "content": "{\n    \"Dashboard\": \"Principal\",\n    \"Charts\": \"Gráficos\",\n    \"Tables\": \"Tablas\",\n    \"Forms\": \"Formularios\",\n    \"Bootstrap Element\": \"Elementos Bootstrap\",\n    \"Bootstrap Grid\": \"Cuadrícula Bootstrap\",\n    \"Component\": \"Componentes\",\n    \"Menu\": \"Menú\",\n    \"Submenu\": \"Submenú\",\n    \"Blank Page\": \"Página en Blanco\",\n    \"More Theme\": \"Más temas\",\n    \"Download Now\": \"Descarga Ahora\",\n    \"Language\": \"Idioma\",\n    \"English\": \"Inglés\",\n    \"French\": \"Francés\",\n    \"Urdu\": \"Urdu\",\n    \"Spanish\": \"Español\",\n    \"Italian\": \"Italiano\",\n    \"Farsi\": \"Farsi\",\n    \"German\": \"Alemán\",\n    \"Simplified Chinese\": \"Chino simplificado\",\n    \"Search\" : \"Búsqueda\",\n    \"Settings\" : \"Ajustes\",\n    \"Profile\" : \"Perfil\",\n    \"Inbox\" : \"Bandeja de entrada\",\n    \"Log Out\" : \"Cerrar Sesión\",\n    \"Pending Task\" : \"Tarea pendiente\",\n    \"In queue\" : \"En cola\",\n    \"Mail\" : \"Correo\",\n    \"View All\" : \"Ver todo\",\n    \"More Themes\" : \"Más temas\",\n    \"Collapse Sidebar\" : \"Contraer barra lateral\",\n    \"Full Name\": \"Nombre Completo\",\n    \"Email\": \"Correo Electrónico\",\n    \"Password\": \"Contraseña\",\n    \"Repeat Password\": \"Repetir Contraseña\",\n    \"Register\": \"Registrarse\",\n    \"Log in\": \"Entrar\"\n}\n"
  },
  {
    "path": "src/assets/i18n/fa.json",
    "content": "{\n    \"Dashboard\": \"داشبورد\",\n    \"Charts\": \"چارت ها\",\n    \"Tables\": \"جداول\",\n    \"Forms\": \"فرم ها\",\n    \"Bootstrap Element\": \"عناصر بوتسترپ\",\n    \"Bootstrap Grid\": \"جداول بوتسترپ\",\n    \"Component\": \"کامپوننت\",\n    \"Menu\": \"منوها\",\n    \"Submenu\": \"زیر منوها\",\n    \"Blank Page\": \"صفحه خالی\",\n    \"More Theme\": \"تم های بیشتر\",\n    \"Download Now\": \"دانلود\",\n    \"Language\": \"زبان\",\n    \"English\": \"انگلیسی\",\n    \"French\": \"فرانسوی\",\n    \"Urdu\": \"اردو\",\n    \"Spanish\": \"اسپانیایی\",\n    \"Italian\": \"ایتالیایی\",\n    \"Farsi\": \"فارسی\",\n    \"German\": \"آلمانی\",\n    \"Simplified Chinese\": \"چینی ساده شده\",\n    \"Search\" : \"جستجو\",\n    \"Settings\" : \"تنظیمات\",\n    \"Profile\" : \"مشخصات\",\n    \"Inbox\" : \"صندوق ورودی\",\n    \"Log Out\" : \"خروج از سیستم\",\n    \"Pending Task\" : \"وظایف در انتظار\",\n    \"In queue\" : \"در صف\",\n    \"Mail\" : \"ایمیل\",\n    \"View All\" : \"نمایش همه\",\n    \"More Themes\" : \"More Themes\",\n    \"Collapse Sidebar\" : \"Collapse Sidebar\",\n    \"Full Name\": \"Full Name\",\n    \"Email\": \"Email\",\n    \"Password\": \"Password\",\n    \"Repeat Password\": \"Repeat Password\",\n    \"Register\": \"Register\",\n    \"Log in\": \"Log in\"\n}\n"
  },
  {
    "path": "src/assets/i18n/fr.json",
    "content": "{\n    \"Dashboard\": \"Tableau de bord\",\n    \"Charts\": \"Hit-parade\",\n    \"Tables\": \"Tableaux\",\n    \"Forms\": \"Froms\",\n    \"Bootstrap Element\": \"Bootstrap Élément\",\n    \"Bootstrap Grid\": \"Bootstrap Grille\",\n    \"Component\": \"Composant\",\n    \"Menu\": \"Menu\",\n    \"Submenu\": \"Sous-menu\",\n    \"Blank Page\": \"Blanc Page\",\n    \"More Theme\": \"Plus Thèmes\",\n    \"Download Now\": \"Télécharger\",\n    \"Language\": \"Langue\",\n    \"English\": \"Anglais\",\n    \"French\": \"Français\",\n    \"Urdu\": \"Ourdou\",\n    \"Spanish\": \"Spanish\",\n    \"Italian\": \"Italien\",\n    \"Farsi\": \"Farsi\",\n    \"German\": \"Allemand\",\n    \"Simplified Chinese\": \"Chinois Simplifié\",\n    \"Search\" : \"Chercher\",\n    \"Settings\" : \"Paramètres\",\n    \"Profile\" : \"Profile\",\n    \"Inbox\" : \"Boîte de réception\",\n    \"Log Out\" : \"Connectez - Out\",\n    \"Pending Task\" : \"Tâche en attente\",\n    \"In queue\" : \"Dans la queue\",\n    \"Mail\" : \"Courrier\",\n    \"View All\" : \"Voir tout\",\n    \"More Themes\" : \"More Themes\",\n    \"Collapse Sidebar\" : \"Collapse Sidebar\",\n    \"Full Name\": \"Nom complet\",\n    \"Email\": \"Email\",\n    \"Password\": \"mot de passe\",\n    \"Repeat Password\": \"Répéter le mot de passe\",\n    \"Register\": \"registre\",\n    \"Log in\": \"S'identifier\"\n}\n"
  },
  {
    "path": "src/assets/i18n/it.json",
    "content": "{\n    \"Dashboard\": \"Principale\",\n    \"Charts\": \"Grafici\",\n    \"Tables\": \"Tabelle\",\n    \"Forms\": \"Formulari\",\n    \"Bootstrap Element\": \"Elementi Bootstrap\",\n    \"Bootstrap Grid\": \"Griglia Bootstrap\",\n    \"Component\": \"Componenti\",\n    \"Menu\": \"Menu\",\n    \"Submenu\": \"Submenu\",\n    \"Blank Page\": \"Pagina in Bianco\",\n    \"More Theme\": \"Altri temi\",\n    \"Download Now\": \"Scarica Adesso\",\n    \"Language\": \"Lingua\",\n    \"English\": \"Inglese\",\n    \"French\": \"Francese\",\n    \"Urdu\": \"Urdu\",\n    \"Spanish\": \"Spagnolo\",\n    \"Italian\": \"Italiano\",\n    \"Farsi\": \"Farsi\",\n    \"German\": \"Tedesco\",\n    \"Simplified Chinese\": \"Cinese semplificato\",\n    \"Search\" : \"Ricerca\",\n    \"Settings\" : \"Impostazioni\",\n    \"Profile\" : \"Profilo\",\n    \"Inbox\" : \"Posta in arrivo\",\n    \"Log Out\" : \"Uscire\",\n    \"Pending Task\" : \"Attività in sospeso\",\n    \"In queue\" : \"In coda\",\n    \"Mail\" : \"Posta\",\n    \"View All\" : \"Visualizza tutti\",\n    \"More Themes\" : \"Altri Temi\",\n    \"Collapse Sidebar\" : \"Collassa Sidebar\",\n    \"Full Name\": \"Nome Completo\",\n    \"Email\": \"Posta Elettronica\",\n    \"Password\": \"Password\",\n    \"Repeat Password\": \"Ripetere la password\",\n    \"Register\": \"Registrarsi\",\n    \"Log in\": \"Entrare\"\n}\n"
  },
  {
    "path": "src/assets/i18n/ur.json",
    "content": "{\n    \"Dashboard\": \"داشبورد\",\n    \"Charts\": \"چارت ها\",\n    \"Tables\": \"جداول\",\n    \"Forms\": \"فرم ها\",\n    \"Bootstrap Element\": \"عنصر بوتسترپ\",\n    \"Bootstrap Grid\": \"جدول بوتسترپ\",\n    \"Component\": \"کامپوننت\",\n    \"Menu\": \"منو\",\n    \"Submenu\": \"زیر منو\",\n    \"Blank Page\": \"صفحه خالی\",\n    \"More Theme\": \"تم های بیشتر\",\n    \"Download Now\": \"دانلود\",\n    \"Language\": \"زبان\",\n    \"English\": \"انگریزی\",\n    \"French\": \"فرانسیسی\",\n    \"Urdu\": \"اردو\",\n    \"Spanish\": \"ہسپانوی\",\n    \"Italian\": \"اطالوی\",\n    \"Farsi\": \"فارسی\",\n    \"German\": \"جرمن\",\n    \"Simplified Chinese\": \"چینی چینی\",\n    \"Search\" : \"تلاش کریں\",\n    \"Settings\" : \"ترتیبات\",\n    \"Profile\" : \"پروفائل\",\n    \"Inbox\" : \"ان باکس\",\n    \"Log Out\" : \"لاگ آوٹ\",\n    \"Pending Task\" : \"زیر التواء ٹاسک\",\n    \"In queue\" : \"قطار میں\",\n    \"Mail\" : \"میل\",\n    \"View All\" : \"سب دیکھیں\",\n    \"More Themes\" : \"More Themes\",\n    \"Collapse Sidebar\" : \"Collapse Sidebar\",\n    \"Full Name\": \"Full Name\",\n    \"Email\": \"Email\",\n    \"Password\": \"Password\",\n    \"Repeat Password\": \"Repeat Password\",\n    \"Register\": \"Register\",\n    \"Log in\": \"Log in\"\n}\n"
  },
  {
    "path": "src/assets/i18n/zh-CHS.json",
    "content": "{\n    \"Dashboard\": \"仪表板\",\n    \"Charts\": \"图表\",\n    \"Tables\": \"表格\",\n    \"Forms\": \"表单\",\n    \"Bootstrap Element\": \"Bootstrap 元素\",\n    \"Bootstrap Grid\": \"Bootstrap 网格\",\n    \"Component\": \"组件\",\n    \"Menu\": \"菜单\",\n    \"Submenu\": \"子菜单\",\n    \"Blank Page\": \"空白页\",\n    \"More Theme\": \"更多主题\",\n    \"Download Now\": \"现在下载\",\n    \"Language\": \"语言\",\n    \"English\": \"英语\",\n    \"French\": \"法语\",\n    \"Urdu\": \"乌尔都语\",\n    \"Spanish\": \"西班牙语\",\n    \"Italian\": \"意大利语\",\n    \"Farsi\": \"波斯语\",\n    \"German\": \"德语\",\n    \"Simplified Chinese\": \"简体中文\",\n    \"Search\" : \"搜索\",\n    \"Settings\" : \"设置\",\n    \"Profile\" : \"个人配置\",\n    \"Inbox\" : \"收件箱\",\n    \"Log Out\" : \"退出\",\n    \"Pending Task\" : \"挂起任务\",\n    \"In queue\" : \"队列中\",\n    \"Mail\" : \"邮件\",\n    \"View All\" : \"查看所有\",\n    \"More Themes\" : \"More Themes\",\n    \"Collapse Sidebar\" : \"Collapse Sidebar\",\n    \"Full Name\": \"Full Name\",\n    \"Email\": \"Email\",\n    \"Password\": \"Password\",\n    \"Repeat Password\": \"Repeat Password\",\n    \"Register\": \"Register\",\n    \"Log in\": \"Log in\"\n}\n"
  },
  {
    "path": "src/environments/environment.prod.ts",
    "content": "export const environment = {\n    production: true\n};\n"
  },
  {
    "path": "src/environments/environment.ts",
    "content": "// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n    production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/plugins/zone-error';  // Included with Angular CLI.\n"
  },
  {
    "path": "src/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\" />\n        <title>SB Admin Angular14 BS5</title>\n        <base href=\"/\" />\n\n        <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n        <link rel=\"icon\" type=\"image/x-icon\" href=\"favicon.ico\" />\n    </head>\n    <body>\n        <app-root>\n            <div class=\"spinner\">\n                <div class=\"bounce1\"></div>\n                <div class=\"bounce2\"></div>\n                <div class=\"bounce3\"></div>\n            </div>\n        </app-root>\n    </body>\n</html>\n"
  },
  {
    "path": "src/karma.conf.js",
    "content": "// Karma configuration file, see link for more information\n// https://karma-runner.github.io/1.0/config/configuration-file.html\n\nmodule.exports = function (config) {\n    const defaults = {\n        basePath: '',\n        frameworks: ['jasmine', '@angular-devkit/build-angular'],\n        plugins: [\n            require('karma-jasmine'),\n            require('karma-chrome-launcher'),\n            require('karma-jasmine-html-reporter'),\n            require('karma-coverage-istanbul-reporter'),\n            require('@angular-devkit/build-angular/plugins/karma')\n        ],\n        client: {\n            clearContext: false // leave Jasmine Spec Runner output visible in browser\n        },\n        coverageIstanbulReporter: {\n            dir: require('path').join(__dirname, '../coverage'),\n            reports: ['html', 'lcovonly'],\n            fixWebpackSourcePaths: true\n        },\n        angularCli: {\n            environment: 'dev'\n        },\n        reporters: ['progress', 'kjhtml'],\n        port: 9876,\n        colors: true,\n        logLevel: config.LOG_INFO,\n        autoWatch: true,\n        browsers: ['Chrome'],\n        singleRun: false\n    };\n\n    if (process.env.TEST_CI) {\n        Object.assign(defaults, {\n            autoWatch: false,\n            browsers: ['ChromeHeadlessNoSandbox'],\n            singleRun: true,\n            customLaunchers: {\n                ChromeHeadlessNoSandbox: {\n                    base: 'ChromeHeadless',\n                    flags: ['--no-sandbox']\n                }\n            },\n            browserNoActivityTimeout: 60000\n        });\n    }\n\n    config.set(defaults);\n};\n"
  },
  {
    "path": "src/main.ts",
    "content": "import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n    enableProdMode();\n}\n\nplatformBrowserDynamic()\n    .bootstrapModule(AppModule)\n    .catch((err) => console.error(err));\n"
  },
  {
    "path": "src/polyfills.ts",
    "content": "/***************************************************************************************************\n * Load `$localize` onto the global scope - used if i18n tags appear in Angular templates.\n */\nimport '@angular/localize/init';\n/** IE10 and IE11 requires the following for the Reflect API. */\nimport 'core-js/es/reflect';\n/***************************************************************************************************\n * Zone JS is required by default for Angular itself.\n */\nimport 'zone.js'; // Included with Angular CLI.\n/**\n * This file includes polyfills needed by Angular and is loaded before the app.\n * You can add your own extra polyfills to this file.\n *\n * This file is divided into 2 sections:\n *   1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.\n *   2. Application imports. Files imported after ZoneJS that should be loaded before your main\n *      file.\n *\n * The current setup is for so-called \"evergreen\" browsers; the last versions of browsers that\n * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),\n * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.\n *\n * Learn more in https://angular.io/guide/browser-support\n */\n\n/***************************************************************************************************\n * BROWSER POLYFILLS\n */\n\n/**\n * If the application will be indexed by Google Search, the following is required.\n * Googlebot uses a renderer based on Chrome 41.\n * https://developers.google.com/search/docs/guides/rendering\n **/\n// import 'core-js/es6/array';\n\n/**\n * By default, zone.js will patch all possible macroTask and DomEvents\n * user can disable parts of macroTask/DomEvents patch by setting following flags\n */\n\n// (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame\n// (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick\n// (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames\n\n/*\n * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js\n * with the following flag, it will bypass `zone.js` patch for IE/Edge\n */\n// (window as any).__Zone_enable_cross_context_check = true;\n\n/***************************************************************************************************\n * APPLICATION IMPORTS\n */\n"
  },
  {
    "path": "src/styles/_responsive.scss",
    "content": "@media screen and (max-width: 992px) {\n    .push-right {\n        .sidebar {\n            left: 235px !important;\n        }\n    }\n}\n"
  },
  {
    "path": "src/styles/_rtl.scss",
    "content": ".rtl {\n    .sidebar {\n        left: auto !important;\n        right: 0 !important;\n        text-align: right;\n        > ul.list-group {\n            padding: 0;\n        }\n    }\n    .main-container {\n        margin-left: 0 !important;\n        margin-right: 235px;\n    }\n    /*rtl dropdown items correction*/\n    .dropdown-menu {\n        text-align: right;\n    }\n    * {\n        direction: rtl;\n    }\n    .navbar * {\n        direction: ltr;\n    }\n\n    .sidebar * {\n        direction: rtl;\n    }\n\n    .navbar .dropdown-menu {\n        text-align: left;\n    }\n\n    .breadcrumb {\n        direction: ltr;\n        justify-content: flex-end;\n\n        * {\n            direction: ltr;\n        }\n    }\n\n    .datepicker-input {\n        direction: ltr;\n        .dropdown-menu {\n            direction: ltr;\n\n            * {\n                direction: ltr;\n            }\n        }\n    }\n\n    .input-group {\n        direction: ltr;\n    }\n}\n@media screen and (max-width: 992px) {\n    .rtl {\n        .navbar-brand {\n            direction: ltr;\n        }\n        .sidebar {\n            right: -235px !important;\n        }\n        .main-container {\n            margin-right: 0;\n        }\n        &.push-right {\n            .sidebar {\n                left: auto !important;\n                right: 0 !important;\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "src/styles/_spinner.scss",
    "content": ".spinner {\n    position: absolute;\n    top: 50%;\n    left: 50%;\n    -ms-transform: translate(-50%, -50%); /* IE 9 */\n    -webkit-transform: translate(-50%, -50%); /* Safari */\n    transform: translate(-50%, -50%); /* Standard syntax */\n    width: 70px;\n    height: 70px;\n    > div {\n        width: 18px;\n        height: 18px;\n        background-color: #333;\n\n        border-radius: 100%;\n        display: inline-block;\n        -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;\n        animation: sk-bouncedelay 1.4s infinite ease-in-out both;\n    }\n    .bounce1 {\n        -webkit-animation-delay: -0.32s;\n        animation-delay: -0.32s;\n    }\n\n    .bounce2 {\n        -webkit-animation-delay: -0.16s;\n        animation-delay: -0.16s;\n    }\n}\n\n@-webkit-keyframes sk-bouncedelay {\n    0%,\n    80%,\n    100% {\n        -webkit-transform: scale(0);\n    }\n    40% {\n        -webkit-transform: scale(1);\n    }\n}\n\n@keyframes sk-bouncedelay {\n    0%,\n    80%,\n    100% {\n        -webkit-transform: scale(0);\n        transform: scale(0);\n    }\n    40% {\n        -webkit-transform: scale(1);\n        transform: scale(1);\n    }\n}\n"
  },
  {
    "path": "src/styles/_utils.scss",
    "content": ".fs-12 {\n    font-size: 12px;\n}\n"
  },
  {
    "path": "src/styles/app.scss",
    "content": "/* You can add global styles to this file, and also import other style files */\n@import 'bootstrap/scss/bootstrap';\n@import 'spinner';\n@import 'utils';\n@import 'rtl';\n@import 'responsive';\n\n@media print {\n    .breadcrumb {\n        display: none !important;\n    }\n}\n"
  },
  {
    "path": "src/test.ts",
    "content": "// This file is required by karma.conf.js and loads recursively all the .spec and framework files\n\nimport { getTestBed } from '@angular/core/testing';\nimport { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing';\nimport 'zone.js/dist/async-test';\nimport 'zone.js/dist/fake-async-test';\nimport 'zone.js/dist/jasmine-patch';\nimport 'zone.js/dist/long-stack-trace-zone';\nimport 'zone.js/dist/proxy.js';\nimport 'zone.js/dist/sync-test';\n\n// Unfortunately there's no typing for the `__karma__` variable. Just declare it as any.\ndeclare const __karma__: any;\n\n// Prevent Karma from running prematurely.\n__karma__.loaded = function () {};\n\n// First, initialize the Angular testing environment.\ngetTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting(), {\n    teardown: { destroyAfterEach: false }\n});\n// Finally, start Karma to run the tests.\n__karma__.start();\n"
  },
  {
    "path": "src/tsconfig.app.json",
    "content": "{\n    \"extends\": \"../tsconfig.json\",\n    \"compilerOptions\": {\n        \"outDir\": \"../out-tsc/app\",\n        \"baseUrl\": \"./\",\n        \"types\": [\"node\"]\n    },\n    \"files\": [\"main.ts\", \"polyfills.ts\"],\n    \"include\": [\"src/**/*.d.ts\"]\n}\n"
  },
  {
    "path": "src/tsconfig.spec.json",
    "content": "{\n    \"extends\": \"../tsconfig.json\",\n    \"compilerOptions\": {\n        \"outDir\": \"../out-tsc/spec\",\n        \"types\": [\"jasmine\", \"node\"]\n    },\n    \"files\": [\"test.ts\", \"polyfills.ts\"],\n    \"include\": [\"**/*.spec.ts\", \"**/*.d.ts\"]\n}\n"
  },
  {
    "path": "src/typings.d.ts",
    "content": "/* SystemJS module definition */\ndeclare var module: NodeModule;\ninterface NodeModule {\n    id: string;\n}\n"
  },
  {
    "path": "tsconfig.json",
    "content": "{\n    \"compileOnSave\": false,\n    \"compilerOptions\": {\n      \"baseUrl\": \"./\",\n      \"importHelpers\": true,\n      \"outDir\": \"./dist/out-tsc\",\n      \"sourceMap\": true,\n      \"declaration\": false,\n      \"module\": \"esnext\",\n      \"moduleResolution\": \"node\",\n      \"experimentalDecorators\": true,\n      \"target\": \"ES2022\",\n      \"typeRoots\": [\n        \"node_modules/@types\"\n      ],\n      \"lib\": [\n        \"es2018\",\n        \"dom\"\n      ],\n      \"useDefineForClassFields\": false\n    }\n}\n"
  },
  {
    "path": "tslint.json",
    "content": "{\n    \"rulesDirectory\": [\"node_modules/codelyzer\"],\n    \"rules\": {\n        \"arrow-return-shorthand\": true,\n        \"callable-types\": true,\n        \"class-name\": true,\n        \"comment-format\": [true, \"check-space\"],\n        \"curly\": true,\n        \"deprecation\": {\n            \"severity\": \"warn\"\n        },\n        \"eofline\": true,\n        \"forin\": true,\n        \"import-blacklist\": [true, \"rxjs/Rx\"],\n        \"import-spacing\": true,\n        \"indent\": [true, \"spaces\"],\n        \"interface-over-type-literal\": true,\n        \"label-position\": true,\n        \"max-line-length\": [true, 140],\n        \"member-access\": false,\n        \"member-ordering\": [\n            true,\n            {\n                \"order\": [\"static-field\", \"instance-field\", \"static-method\", \"instance-method\"]\n            }\n        ],\n        \"no-arg\": true,\n        \"no-bitwise\": true,\n        \"no-console\": [true, \"debug\", \"info\", \"time\", \"timeEnd\", \"trace\"],\n        \"no-construct\": true,\n        \"no-debugger\": true,\n        \"no-duplicate-super\": true,\n        \"no-empty\": false,\n        \"no-empty-interface\": true,\n        \"no-eval\": true,\n        \"no-inferrable-types\": [true, \"ignore-params\"],\n        \"no-misused-new\": true,\n        \"no-non-null-assertion\": true,\n        \"no-redundant-jsdoc\": true,\n        \"no-shadowed-variable\": true,\n        \"no-string-literal\": false,\n        \"no-string-throw\": true,\n        \"no-switch-case-fall-through\": true,\n        \"no-trailing-whitespace\": true,\n        \"no-unnecessary-initializer\": true,\n        \"no-unused-expression\": true,\n        \"no-use-before-declare\": true,\n        \"no-var-keyword\": true,\n        \"object-literal-sort-keys\": false,\n        \"one-line\": [true, \"check-open-brace\", \"check-catch\", \"check-else\", \"check-whitespace\"],\n        \"prefer-const\": true,\n        \"quotemark\": [true, \"single\"],\n        \"radix\": true,\n        \"semicolon\": [true, \"always\"],\n        \"triple-equals\": [true, \"allow-null-check\"],\n        \"typedef-whitespace\": [\n            true,\n            {\n                \"call-signature\": \"nospace\",\n                \"index-signature\": \"nospace\",\n                \"parameter\": \"nospace\",\n                \"property-declaration\": \"nospace\",\n                \"variable-declaration\": \"nospace\"\n            }\n        ],\n        \"unified-signatures\": true,\n        \"variable-name\": false,\n        \"whitespace\": [true, \"check-branch\", \"check-decl\", \"check-operator\", \"check-separator\", \"check-type\"],\n        \"directive-selector\": [true, \"attribute\", \"app\", \"camelCase\"],\n        \"component-selector\": [true, \"element\", \"app\", \"kebab-case\"],\n        \"no-output-on-prefix\": true,\n        \"no-inputs-metadata-property\": true,\n        \"no-outputs-metadata-property\": true,\n        \"no-host-metadata-property\": true,\n        \"no-input-rename\": true,\n        \"no-output-rename\": true,\n        \"use-lifecycle-interface\": true,\n        \"use-pipe-transform-interface\": true,\n        \"component-class-suffix\": true,\n        \"directive-class-suffix\": true\n    }\n}\n"
  }
]