37 changed files with 204 additions and 187 deletions
@ -0,0 +1,9 @@ |
|||||
|
<div class="component-detail container"> |
||||
|
<div class="row"> |
||||
|
<div class="col-11 col-md-10 col-lg-12 content mx-auto"> |
||||
|
<button class="back icon-back" (click)="back()"></button> |
||||
|
<h2 class="title">{{details.title}}</h2> |
||||
|
<div class="text" [innerHTML]="details.text"></div> |
||||
|
<span class="tags"><b>Tags:</b> {{details.tags}}</span> |
||||
|
</div> |
||||
|
</div> |
@ -0,0 +1,63 @@ |
|||||
|
@import "../../assets/scss/variables"; |
||||
|
|
||||
|
.component-detail { |
||||
|
z-index: 0; |
||||
|
|
||||
|
.content { |
||||
|
position: relative; |
||||
|
margin: 150px auto 80px auto; |
||||
|
padding: 40px 50px; |
||||
|
background: $white-alpha; |
||||
|
color: $black; |
||||
|
box-shadow: 0px 0px 25px $white-alpha; |
||||
|
border-radius: 10px; |
||||
|
|
||||
|
.title { |
||||
|
margin-top: 0; |
||||
|
font-size: $font-34; |
||||
|
font-weight: bold; |
||||
|
text-transform: uppercase; |
||||
|
} |
||||
|
|
||||
|
.text { |
||||
|
font-size: $font-18; |
||||
|
text-align: justify; |
||||
|
} |
||||
|
|
||||
|
.tags { |
||||
|
display: block; |
||||
|
font-size: $font-12; |
||||
|
text-transform: uppercase; |
||||
|
padding-top: 40px; |
||||
|
} |
||||
|
|
||||
|
.back { |
||||
|
position: absolute; |
||||
|
top: -40px; |
||||
|
left: 0px; |
||||
|
height: 40px; |
||||
|
width: 60px; |
||||
|
appearance: none; |
||||
|
border: none; |
||||
|
padding: 0; |
||||
|
font-size: $font-40; |
||||
|
color: $white-alpha; |
||||
|
background: transparent; |
||||
|
cursor: pointer; |
||||
|
transition: transform .3s; |
||||
|
-webkit-backface-visibility: hidden; |
||||
|
|
||||
|
&:hover { |
||||
|
transform: scale(1.1) translateX(-10px); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
@media (min-width: map-get($grid-breakpoints, 'md')) { |
||||
|
.component-detail { |
||||
|
.content { |
||||
|
transform: rotate(2deg) skew(0deg, -6deg); |
||||
|
} |
||||
|
} |
||||
|
} |
@ -1,20 +1,20 @@ |
|||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing'; |
import { async, ComponentFixture, TestBed } from '@angular/core/testing'; |
||||
|
|
||||
import { ExhibitionsComponent } from './exhibitions.component'; |
|
||||
|
import { DetailComponent } from './detail.component'; |
||||
|
|
||||
describe('ExhibitionsComponent', () => { |
|
||||
let component: ExhibitionsComponent; |
|
||||
let fixture: ComponentFixture<ExhibitionsComponent>; |
|
||||
|
describe('DetailComponent', () => { |
||||
|
let component: DetailComponent; |
||||
|
let fixture: ComponentFixture<DetailComponent>; |
||||
|
|
||||
beforeEach(async(() => { |
beforeEach(async(() => { |
||||
TestBed.configureTestingModule({ |
TestBed.configureTestingModule({ |
||||
declarations: [ ExhibitionsComponent ] |
|
||||
|
declarations: [ DetailComponent ] |
||||
}) |
}) |
||||
.compileComponents(); |
.compileComponents(); |
||||
})); |
})); |
||||
|
|
||||
beforeEach(() => { |
beforeEach(() => { |
||||
fixture = TestBed.createComponent(ExhibitionsComponent); |
|
||||
|
fixture = TestBed.createComponent(DetailComponent); |
||||
component = fixture.componentInstance; |
component = fixture.componentInstance; |
||||
fixture.detectChanges(); |
fixture.detectChanges(); |
||||
}); |
}); |
@ -0,0 +1,38 @@ |
|||||
|
import { Component, OnInit } from '@angular/core' |
||||
|
import { Router, NavigationEnd } from '@angular/router' |
||||
|
import { Location } from '@angular/common' |
||||
|
import { ApisService } from '../services/apis.service' |
||||
|
|
||||
|
@Component({ |
||||
|
selector: 'app-detail', |
||||
|
templateUrl: './detail.component.html', |
||||
|
styleUrls: ['./detail.component.scss'] |
||||
|
}) |
||||
|
export class DetailComponent implements OnInit { |
||||
|
|
||||
|
public details: any = {} |
||||
|
|
||||
|
constructor( |
||||
|
private apisService: ApisService, |
||||
|
private router: Router, |
||||
|
private location: Location |
||||
|
){ } |
||||
|
|
||||
|
ngOnInit(): void { |
||||
|
this.showDetails(this.router.url.split('/')[2]) |
||||
|
} |
||||
|
|
||||
|
showDetails(id): void { |
||||
|
this.apisService.getDetails(id).toPromise().then((response) => { |
||||
|
this.details = response.item |
||||
|
},(error) => { |
||||
|
console.error('getPortfolio ERROR', error) |
||||
|
}).catch((e) => { |
||||
|
console.error('getPortfolio CATCH', e) |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
back() { |
||||
|
this.location.back() |
||||
|
} |
||||
|
} |
@ -1 +0,0 @@ |
|||||
<p>entertainment works!</p> |
|
@ -1,25 +0,0 @@ |
|||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing'; |
|
||||
|
|
||||
import { EntertainmentComponent } from './entertainment.component'; |
|
||||
|
|
||||
describe('EntertainmentComponent', () => { |
|
||||
let component: EntertainmentComponent; |
|
||||
let fixture: ComponentFixture<EntertainmentComponent>; |
|
||||
|
|
||||
beforeEach(async(() => { |
|
||||
TestBed.configureTestingModule({ |
|
||||
declarations: [ EntertainmentComponent ] |
|
||||
}) |
|
||||
.compileComponents(); |
|
||||
})); |
|
||||
|
|
||||
beforeEach(() => { |
|
||||
fixture = TestBed.createComponent(EntertainmentComponent); |
|
||||
component = fixture.componentInstance; |
|
||||
fixture.detectChanges(); |
|
||||
}); |
|
||||
|
|
||||
it('should create', () => { |
|
||||
expect(component).toBeTruthy(); |
|
||||
}); |
|
||||
}); |
|
@ -1,15 +0,0 @@ |
|||||
import { Component, OnInit } from '@angular/core'; |
|
||||
|
|
||||
@Component({ |
|
||||
selector: 'app-entertainment', |
|
||||
templateUrl: './entertainment.component.html', |
|
||||
styleUrls: ['./entertainment.component.scss'] |
|
||||
}) |
|
||||
export class EntertainmentComponent implements OnInit { |
|
||||
|
|
||||
constructor() { } |
|
||||
|
|
||||
ngOnInit(): void { |
|
||||
} |
|
||||
|
|
||||
} |
|
@ -1 +0,0 @@ |
|||||
<p>exhibitions works!</p> |
|
@ -1,15 +0,0 @@ |
|||||
import { Component, OnInit } from '@angular/core'; |
|
||||
|
|
||||
@Component({ |
|
||||
selector: 'app-exhibitions', |
|
||||
templateUrl: './exhibitions.component.html', |
|
||||
styleUrls: ['./exhibitions.component.scss'] |
|
||||
}) |
|
||||
export class ExhibitionsComponent implements OnInit { |
|
||||
|
|
||||
constructor() { } |
|
||||
|
|
||||
ngOnInit(): void { |
|
||||
} |
|
||||
|
|
||||
} |
|
@ -1 +0,0 @@ |
|||||
<p>installations works!</p> |
|
@ -1,25 +0,0 @@ |
|||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing'; |
|
||||
|
|
||||
import { InstallationsComponent } from './installations.component'; |
|
||||
|
|
||||
describe('InstallationsComponent', () => { |
|
||||
let component: InstallationsComponent; |
|
||||
let fixture: ComponentFixture<InstallationsComponent>; |
|
||||
|
|
||||
beforeEach(async(() => { |
|
||||
TestBed.configureTestingModule({ |
|
||||
declarations: [ InstallationsComponent ] |
|
||||
}) |
|
||||
.compileComponents(); |
|
||||
})); |
|
||||
|
|
||||
beforeEach(() => { |
|
||||
fixture = TestBed.createComponent(InstallationsComponent); |
|
||||
component = fixture.componentInstance; |
|
||||
fixture.detectChanges(); |
|
||||
}); |
|
||||
|
|
||||
it('should create', () => { |
|
||||
expect(component).toBeTruthy(); |
|
||||
}); |
|
||||
}); |
|
@ -1,15 +0,0 @@ |
|||||
import { Component, OnInit } from '@angular/core'; |
|
||||
|
|
||||
@Component({ |
|
||||
selector: 'app-installations', |
|
||||
templateUrl: './installations.component.html', |
|
||||
styleUrls: ['./installations.component.scss'] |
|
||||
}) |
|
||||
export class InstallationsComponent implements OnInit { |
|
||||
|
|
||||
constructor() { } |
|
||||
|
|
||||
ngOnInit(): void { |
|
||||
} |
|
||||
|
|
||||
} |
|
@ -1 +0,0 @@ |
|||||
<p>performances works!</p> |
|
@ -1,25 +0,0 @@ |
|||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing'; |
|
||||
|
|
||||
import { PerformancesComponent } from './performances.component'; |
|
||||
|
|
||||
describe('PerformancesComponent', () => { |
|
||||
let component: PerformancesComponent; |
|
||||
let fixture: ComponentFixture<PerformancesComponent>; |
|
||||
|
|
||||
beforeEach(async(() => { |
|
||||
TestBed.configureTestingModule({ |
|
||||
declarations: [ PerformancesComponent ] |
|
||||
}) |
|
||||
.compileComponents(); |
|
||||
})); |
|
||||
|
|
||||
beforeEach(() => { |
|
||||
fixture = TestBed.createComponent(PerformancesComponent); |
|
||||
component = fixture.componentInstance; |
|
||||
fixture.detectChanges(); |
|
||||
}); |
|
||||
|
|
||||
it('should create', () => { |
|
||||
expect(component).toBeTruthy(); |
|
||||
}); |
|
||||
}); |
|
@ -1,15 +0,0 @@ |
|||||
import { Component, OnInit } from '@angular/core'; |
|
||||
|
|
||||
@Component({ |
|
||||
selector: 'app-performances', |
|
||||
templateUrl: './performances.component.html', |
|
||||
styleUrls: ['./performances.component.scss'] |
|
||||
}) |
|
||||
export class PerformancesComponent implements OnInit { |
|
||||
|
|
||||
constructor() { } |
|
||||
|
|
||||
ngOnInit(): void { |
|
||||
} |
|
||||
|
|
||||
} |
|
Binary file not shown.
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 18 KiB |
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Loading…
Reference in new issue