| @@ -18,7 +18,8 @@ | |||
| "polyfills": "src/polyfills.ts", | |||
| "assets": [ | |||
| "src/assets", | |||
| "src/favicon.ico" | |||
| "src/favicon.ico", | |||
| "src/manifest.webmanifest" | |||
| ], | |||
| "styles": [ | |||
| "node_modules/bootstrap/dist/css/bootstrap.min.css", | |||
| @@ -45,7 +46,9 @@ | |||
| "fileReplacements": [{ | |||
| "replace": "src/environments/environment.ts", | |||
| "with": "src/environments/environment.prod.ts" | |||
| }] | |||
| }], | |||
| "serviceWorker": true, | |||
| "ngswConfigPath": "ngsw-config.json" | |||
| } | |||
| } | |||
| }, | |||
| @@ -85,7 +88,8 @@ | |||
| ], | |||
| "assets": [ | |||
| "src/assets", | |||
| "src/favicon.ico" | |||
| "src/favicon.ico", | |||
| "src/manifest.webmanifest" | |||
| ] | |||
| } | |||
| }, | |||
| @@ -0,0 +1,29 @@ | |||
| { | |||
| "$schema": "./node_modules/@angular/service-worker/config/schema.json", | |||
| "index": "/index.html", | |||
| "assetGroups": [ | |||
| { | |||
| "name": "app", | |||
| "installMode": "prefetch", | |||
| "resources": { | |||
| "files": [ | |||
| "/favicon.ico", | |||
| "/index.html", | |||
| "/manifest.webmanifest", | |||
| "/*.css", | |||
| "/*.js" | |||
| ] | |||
| } | |||
| }, { | |||
| "name": "assets", | |||
| "installMode": "lazy", | |||
| "updateMode": "prefetch", | |||
| "resources": { | |||
| "files": [ | |||
| "/assets/**", | |||
| "/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)" | |||
| ] | |||
| } | |||
| } | |||
| ] | |||
| } | |||
| @@ -21,6 +21,7 @@ | |||
| "@angular/platform-browser": "9.0.6", | |||
| "@angular/platform-browser-dynamic": "9.0.6", | |||
| "@angular/router": "9.0.6", | |||
| "@angular/service-worker": "9.0.6", | |||
| "@fortawesome/fontawesome-free": "^5.13.0", | |||
| "@ng-bootstrap/ng-bootstrap": "6.0.0", | |||
| "bootstrap": "^4.5.0", | |||
| @@ -25,6 +25,8 @@ import { MusicComponent } from './pages/music/music.component'; | |||
| import { ResumePdfComponent } from './pages/resume-pdf/resume-pdf.component'; | |||
| import { PdfHeaderComponent } from './page-header/pdf-header/pdf-header.component'; | |||
| import { MusicHeaderComponent } from './page-header/music-header/music-header.component'; | |||
| import { ServiceWorkerModule } from '@angular/service-worker'; | |||
| import { environment } from '../environments/environment'; | |||
| @NgModule({ | |||
| @@ -55,6 +57,7 @@ import { MusicHeaderComponent } from './page-header/music-header/music-header.co | |||
| AppRoutingModule, | |||
| ComponentsModule, | |||
| PageHeaderModule, | |||
| ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production }), | |||
| ], | |||
| providers: [], | |||
| bootstrap: [AppComponent] | |||
| @@ -304,72 +304,15 @@ | |||
| <div class="row"> | |||
| <div class="col-md-8 mr-auto ml-auto"> | |||
| <h2 class="text-center">Keep in touch?</h2> | |||
| <form class="contact-form"> | |||
| <div class="row"> | |||
| <div class="col-md-6"> | |||
| <label>Name</label> | |||
| <div | |||
| class="input-group" | |||
| [ngClass]="{ 'input-group-focus': focus === true }" | |||
| > | |||
| <div class="input-group-prepend"> | |||
| <span class="input-group-text" | |||
| ><i class="nc-icon nc-single-02"></i | |||
| ></span> | |||
| </div> | |||
| <input | |||
| type="text" | |||
| class="form-control" | |||
| placeholder="Name" | |||
| (focus)="focus = true" | |||
| (blur)="focus = false" | |||
| /> | |||
| </div> | |||
| </div> | |||
| <div class="col-md-6"> | |||
| <label>Email</label> | |||
| <div | |||
| class="input-group" | |||
| [ngClass]="{ 'input-group-focus': focus1 === true }" | |||
| > | |||
| <div class="input-group-prepend"> | |||
| <span class="input-group-text"> | |||
| <i class="nc-icon nc-email-85"></i | |||
| ></span> | |||
| </div> | |||
| <input | |||
| type="text" | |||
| class="form-control" | |||
| placeholder="Email" | |||
| (focus)="focus1 = true" | |||
| (blur)="focus1 = false" | |||
| /> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| <label>Message</label> | |||
| <textarea | |||
| class="form-control" | |||
| rows="6" | |||
| placeholder="Tell us your thoughts and feelings..." | |||
| ></textarea> | |||
| <div class="row"> | |||
| <div class="col-md-4 mr-auto ml-auto"> | |||
| <button class="btn btn-danger btn-lg btn-fill" disabled> | |||
| Send Message | |||
| </button> | |||
| </div> | |||
| </div> | |||
| <div class="row text-center"> | |||
| <div class="col-md-5 mr-auto ml-auto"> | |||
| <a | |||
| class="btn btn-warning btn-lg btn-fill" | |||
| href="mailto:cziermann@mailbox.org" | |||
| >cziermann@mailbox.org</a | |||
| > | |||
| </div> | |||
| <div class="row text-center"> | |||
| <div class="col-md-5 mr-auto ml-auto"> | |||
| <a | |||
| class="btn btn-warning btn-lg btn-fill" | |||
| href="mailto:cziermann@mailbox.org" | |||
| >cziermann@mailbox.org</a | |||
| > | |||
| </div> | |||
| </form> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| @@ -21,14 +21,17 @@ | |||
| <link rel="icon" type="image/png" href="assets/img/favicon.ico"> | |||
| <link rel="apple-touch-icon" sizes="76x76" href="assets/img/apple-icon.png"> | |||
| <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> | |||
| <meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0' name='viewport' /> | |||
| <meta name="viewport" content="width=device-width" /> | |||
| <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/> | |||
| <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport"/> | |||
| <meta name="viewport" content="width=device-width"/> | |||
| <!-- Fonts and icons --> | |||
| <link href='https://fonts.googleapis.com/css?family=Montserrat:400,300,700' rel='stylesheet' type='text/css'> | |||
| <link href="https://fonts.googleapis.com/css?family=Montserrat:400,300,700" rel="stylesheet" type="text/css"> | |||
| <link rel="manifest" href="manifest.webmanifest"> | |||
| <meta name="theme-color" content="#1976d2"> | |||
| </head> | |||
| <body> | |||
| <app-root></app-root> | |||
| <noscript>Please enable JavaScript to continue using this application.</noscript> | |||
| </body> | |||
| </html> | |||
| @@ -0,0 +1,59 @@ | |||
| { | |||
| "name": "pk2-angular", | |||
| "short_name": "pk2-angular", | |||
| "theme_color": "#1976d2", | |||
| "background_color": "#fafafa", | |||
| "display": "standalone", | |||
| "scope": "./", | |||
| "start_url": "./", | |||
| "icons": [ | |||
| { | |||
| "src": "assets/icons/icon-72x72.png", | |||
| "sizes": "72x72", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| }, | |||
| { | |||
| "src": "assets/icons/icon-96x96.png", | |||
| "sizes": "96x96", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| }, | |||
| { | |||
| "src": "assets/icons/icon-128x128.png", | |||
| "sizes": "128x128", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| }, | |||
| { | |||
| "src": "assets/icons/icon-144x144.png", | |||
| "sizes": "144x144", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| }, | |||
| { | |||
| "src": "assets/icons/icon-152x152.png", | |||
| "sizes": "152x152", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| }, | |||
| { | |||
| "src": "assets/icons/icon-192x192.png", | |||
| "sizes": "192x192", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| }, | |||
| { | |||
| "src": "assets/icons/icon-384x384.png", | |||
| "sizes": "384x384", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| }, | |||
| { | |||
| "src": "assets/icons/icon-512x512.png", | |||
| "sizes": "512x512", | |||
| "type": "image/png", | |||
| "purpose": "maskable any" | |||
| } | |||
| ] | |||
| } | |||