{"version":3,"sources":["webpack:///./src/app/views/overview/containers/overview.page.html","webpack:///./src/app/views/overview/containers/overview.page.scss","webpack:///./src/app/views/overview/containers/overview.page.ts","webpack:///./src/app/views/overview/overview-routing.module.ts","webpack:///./src/app/views/overview/overview.module.ts","webpack:///./src/app/views/overview/store/overview.actions.ts","webpack:///./src/app/views/overview/store/overview.effects.ts","webpack:///./src/app/views/overview/store/overview.reducer.ts","webpack:///./src/app/views/overview/store/overview.selectors.ts","webpack:///./src/app/views/overview/store/overview.state.ts"],"names":[],"mappings":"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","file":"views-overview-overview-module.js","sourcesContent":["module.exports = \"\\n
\\n
\\n
\\n
\\n

WORK AND PLAY,

\\n

JUST A FLOOR AWAY

\\n

\\n As the world walks into a new dawn of hybrid work and hyper-productivity, this landmark 207-metre office skyscraper will be at the forefront of creating spaces where professionals and talents can collaborate and innovate in a vibrant and dynamic community.

Being green is now a lifestyle, and this development envisions a work ecosystem rooted in sustainability and eco-consciousness, where the best and brightest can do business, network and play.\\n

\\n
\\n
\\n \\n
\\n Artist's Impression\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n

Copyright © 2023 Keppel Land Limited (Co. Reg No 189000001G). All rights reserved.

\\n
\\n
\\n
\\n
\"","module.exports = \"ion-content {\\n --overflow: auto;\\n background: #ffffff;\\n}\\n\\n.rotating {\\n height: 100vw;\\n margin-top: -4vw;\\n width: 100vw;\\n margin-left: -9vw;\\n}\\n\\n.locationmap {\\n height: 25vw;\\n}\\n\\n.innerblock {\\n margin-top: 26vw;\\n}\\n\\n.artimp {\\n position: absolute;\\n bottom: -6vw;\\n right: -2vw;\\n font-size: 2vw;\\n color: #999999;\\n font-family: \\\"Gotham\\\";\\n text-transform: uppercase;\\n}\\n\\n.mobile-flex-reverse {\\n flex-direction: column-reverse;\\n}\\n\\n.pt-4 {\\n padding-top: 0rem;\\n}\\n\\n@media (min-width: 568px) {\\n ion-content {\\n --overflow: hidden;\\n }\\n\\n .pt-4 {\\n padding-top: 1rem;\\n }\\n\\n .mobile-flex-reverse {\\n flex-direction: row;\\n }\\n\\n .rotating {\\n height: 50vw;\\n margin-top: -4vw;\\n width: 100%;\\n margin-left: auto;\\n }\\n\\n .innerblock {\\n margin-top: 8vw;\\n }\\n\\n .artimp {\\n bottom: 9vw;\\n right: 0.5vw;\\n font-size: 0.5vw;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9ibGFuY3QvRG9jdW1lbnRzL1Byb2plY3RzL0tlcHBlbCBTb3V0aCBDZW50cmFsL1dlYnNpdGUvc3JjL2FwcC92aWV3cy9vdmVydmlldy9jb250YWluZXJzL292ZXJ2aWV3LnBhZ2Uuc2NzcyIsInNyYy9hcHAvdmlld3Mvb3ZlcnZpZXcvY29udGFpbmVycy9vdmVydmlldy5wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7QUNDRjs7QURFQTtFQUNFLFlBQUE7QUNDRjs7QURFQTtFQUNFLGdCQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxxQkFBQTtFQUNBLHlCQUFBO0FDQ0Y7O0FERUE7RUFDRSw4QkFBQTtBQ0NGOztBREVBO0VBQ0UsaUJBQUE7QUNDRjs7QURFQTtFQUNFO0lBQ0Usa0JBQUE7RUNDRjs7RURFQTtJQUNFLGlCQUFBO0VDQ0Y7O0VERUE7SUFDRSxtQkFBQTtFQ0NGOztFREVBO0lBQ0UsWUFBQTtJQUNBLGdCQUFBO0lBQ0EsV0FBQTtJQUNBLGlCQUFBO0VDQ0Y7O0VERUE7SUFDRSxlQUFBO0VDQ0Y7O0VERUE7SUFDRSxXQUFBO0lBQ0EsWUFBQTtJQUNBLGdCQUFBO0VDQ0Y7QUFDRiIsImZpbGUiOiJzcmMvYXBwL3ZpZXdzL292ZXJ2aWV3L2NvbnRhaW5lcnMvb3ZlcnZpZXcucGFnZS5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiaW9uLWNvbnRlbnQge1xyXG4gIC0tb3ZlcmZsb3c6IGF1dG87XHJcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxufVxyXG5cclxuLnJvdGF0aW5nIHtcclxuICBoZWlnaHQ6IDEwMHZ3O1xyXG4gIG1hcmdpbi10b3A6IC00dnc7XHJcbiAgd2lkdGg6IDEwMHZ3O1xyXG4gIG1hcmdpbi1sZWZ0OiAtOXZ3O1xyXG59XHJcblxyXG4ubG9jYXRpb25tYXAge1xyXG4gIGhlaWdodDogMjV2dztcclxufVxyXG5cclxuLmlubmVyYmxvY2sge1xyXG4gIG1hcmdpbi10b3A6IDI2dnc7XHJcbn1cclxuXHJcbi5hcnRpbXAge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3R0b206IC02dnc7XHJcbiAgcmlnaHQ6IC0ydnc7XHJcbiAgZm9udC1zaXplOiAydnc7XHJcbiAgY29sb3I6ICM5OTk5OTk7XHJcbiAgZm9udC1mYW1pbHk6IFwiR290aGFtXCI7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLm1vYmlsZS1mbGV4LXJldmVyc2Uge1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxufVxyXG5cclxuLnB0LTQge1xyXG4gIHBhZGRpbmctdG9wOiAwcmVtO1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNTY4cHgpIHtcclxuICBpb24tY29udGVudCB7XHJcbiAgICAtLW92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAucHQtNCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcclxuICB9XHJcblxyXG4gIC5tb2JpbGUtZmxleC1yZXZlcnNlIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgfVxyXG5cclxuICAucm90YXRpbmcge1xyXG4gICAgaGVpZ2h0OiA1MHZ3O1xyXG4gICAgbWFyZ2luLXRvcDogLTR2dztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICAuaW5uZXJibG9jayB7XHJcbiAgICBtYXJnaW4tdG9wOiA4dnc7XHJcbiAgfVxyXG5cclxuICAuYXJ0aW1wIHtcclxuICAgIGJvdHRvbTogOXZ3O1xyXG4gICAgcmlnaHQ6IDAuNXZ3O1xyXG4gICAgZm9udC1zaXplOiAwLjV2dztcclxuICB9XHJcbn0iLCJpb24tY29udGVudCB7XG4gIC0tb3ZlcmZsb3c6IGF1dG87XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG59XG5cbi5yb3RhdGluZyB7XG4gIGhlaWdodDogMTAwdnc7XG4gIG1hcmdpbi10b3A6IC00dnc7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWFyZ2luLWxlZnQ6IC05dnc7XG59XG5cbi5sb2NhdGlvbm1hcCB7XG4gIGhlaWdodDogMjV2dztcbn1cblxuLmlubmVyYmxvY2sge1xuICBtYXJnaW4tdG9wOiAyNnZ3O1xufVxuXG4uYXJ0aW1wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC02dnc7XG4gIHJpZ2h0OiAtMnZ3O1xuICBmb250LXNpemU6IDJ2dztcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtZmFtaWx5OiBcIkdvdGhhbVwiO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ubW9iaWxlLWZsZXgtcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuLnB0LTQge1xuICBwYWRkaW5nLXRvcDogMHJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU2OHB4KSB7XG4gIGlvbi1jb250ZW50IHtcbiAgICAtLW92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAucHQtNCB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gIH1cblxuICAubW9iaWxlLWZsZXgtcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5yb3RhdGluZyB7XG4gICAgaGVpZ2h0OiA1MHZ3O1xuICAgIG1hcmdpbi10b3A6IC00dnc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuaW5uZXJibG9jayB7XG4gICAgbWFyZ2luLXRvcDogOHZ3O1xuICB9XG5cbiAgLmFydGltcCB7XG4gICAgYm90dG9tOiA5dnc7XG4gICAgcmlnaHQ6IDAuNXZ3O1xuICAgIGZvbnQtc2l6ZTogMC41dnc7XG4gIH1cbn0iXX0= */\"","import { Component, ElementRef, HostBinding, OnInit, Renderer2, ViewChild } from '@angular/core';\nimport { IonSlides, ModalController } from '@ionic/angular';\nimport { Observable } from 'rxjs';\nimport { Store, select } from '@ngrx/store';\nimport * as fromDesign from '../store/overview.actions';\nimport { AppState } from 'src/app/reducers';\nimport { map, concatMap } from 'rxjs/operators';\n\nimport { selectOverview } from '../store/overview.selectors';\nimport { ModalComponent } from 'src/app/shared/components/modal/modal.component';\nimport { animate, query, stagger, style, transition, trigger } from '@angular/animations';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\n\n@Component({\n selector: 'app-pg-overview',\n templateUrl: './overview.page.html',\n styleUrls: ['./overview.page.scss'],\n /* animations: [\n trigger('pageAnimations', [\n transition(':enter', [\n query('.heading *', [\n style({opacity: 0, transform: 'translateY(100px)'}),\n stagger(100, [\n animate('800ms cubic-bezier(0.35, 0, 0.25, 1)', style({ opacity: 1, transform: 'none' }))\n ])\n ])\n ]),\n transition(':leave', [\n query('.heading *', [\n style({opacity: 0, transform: 'translateY(-100px)'}),\n stagger(-100, [\n animate('800ms cubic-bezier(0.35, 0, 0.25, 1)', style({ opacity: 1, transform: 'none' }))\n ])\n ])\n ]),\n ]),\n ] */\n})\n\nexport class OverviewPage implements OnInit {\n stopIndex = 0;\n stops = [14, 99];\n pointerEvents = false;\n highlightShown = 14;\n layer = ['layer-one', 'layer-two'];\n frameLoaded = false;\n\n @ViewChild('frameWindow', {static: false}) frameWindow: ElementRef;\n @ViewChild('terms', {static: false, read: ElementRef}) terms: ElementRef;\n @ViewChild('privacy', {static: false, read: ElementRef}) privacy: ElementRef;\n @ViewChild('disclaimer', {static: false, read: ElementRef}) disclaimer: ElementRef;\n\n constructor(\n private store: Store,\n private renderer: Renderer2,\n public modalController: ModalController,\n public http: HttpClient,\n ) {}\n\n ngAfterViewInit() {\n this.frameWindow.nativeElement.src = \"assets/rotating/index.html\";\n\n this.renderer.listen(this.terms.nativeElement, 'click', (event) => {\n window.open(\"https://www.keppelland.com/sg/Terms-and-Conditions\", \"_blank\");\n });\n this.renderer.listen(this.privacy.nativeElement, 'click', (event) => {\n window.open(\"https://www.keppelland.com/sg/Privacy-Policy\", \"_blank\");\n });\n this.renderer.listen(this.disclaimer.nativeElement, 'click', (event) => {\n this.presentModal('disclaimer');\n });\n }\n\n ngOnDestroy() {\n this.frameWindow.nativeElement.src = \"\";\n }\n\n ngOnInit() {\n\n }\n\n async presentModal(mediatype) {\n const modal = await this.modalController.create({\n component: ModalComponent,\n cssClass: 'modal-fullscreen-'+mediatype,\n componentProps: {\n 'mediatype': mediatype,\n }\n });\n return await modal.present();\n }\n}","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { OverviewPage } from './containers/overview.page';\n\nconst routes: Routes = [\n { path: '', component: OverviewPage }\n];\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes)\n ],\n exports: [RouterModule]\n})\nexport class OverviewRoutingModule {}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { StoreModule } from '@ngrx/store';\nimport { OverviewRoutingModule } from './overview-routing.module';\nimport { IonicModule } from '@ionic/angular';\n\nimport { OverviewPage } from './containers/overview.page';\nimport { SharedModule } from '../../shared/shared.module';\nimport * as fromOverview from './store/overview.reducer';\nimport { EffectsModule } from '@ngrx/effects';\nimport { OverviewEffects } from './store/overview.effects';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n OverviewRoutingModule,\n IonicModule,\n SharedModule,\n StoreModule.forFeature('overview', fromOverview.overviewReducer),\n EffectsModule.forFeature([OverviewEffects])\n ],\n declarations: [OverviewPage],\n exports: [OverviewPage],\n})\nexport class OverviewPageModule {}","import { Action } from '@ngrx/store';\n\nexport enum OverviewActionTypes {\n OverviewContentRequested = '[Overview] Content Requested',\n OverviewContentLoaded = '[Overview] Content Loaded',\n OverviewFetchError = '[Overview] Fetch Error'\n}\n\nexport class OverviewContentsRequestedAction implements Action {\n readonly type = OverviewActionTypes.OverviewContentRequested;\n}\n\nexport class OverviewContentsLoadedAction implements Action {\n readonly type = OverviewActionTypes.OverviewContentLoaded;\n constructor(public payload: { data }) {}\n}\n\nexport class OverviewFetchErrorAction implements Action {\n readonly type = OverviewActionTypes.OverviewFetchError;\n constructor(public payload: { error: any }) {}\n}\n\nexport type OverviewActions =\n | OverviewContentsRequestedAction\n | OverviewContentsLoadedAction\n | OverviewFetchErrorAction;","import { Injectable } from '@angular/core';\nimport { Actions, Effect, ofType } from '@ngrx/effects';\nimport { DataService } from '../../../shared/services/data.service';\nimport { OverviewActionTypes, OverviewContentsRequestedAction, OverviewContentsLoadedAction, } from './overview.actions';\nimport { filter, map, mergeMap, withLatestFrom} from \"rxjs/operators\";\nimport { Store, select } from '@ngrx/store';\nimport { AppState } from '../../../reducers/index';\nimport { overviewContentsLoaded } from './overview.selectors';\n\n\n@Injectable()\nexport class OverviewEffects {\n\n constructor(private actions$: Actions, private overviewService: DataService, private store: Store) {}\n\n @Effect()\n selectCoreContents$ = this.actions$\n .pipe(\n ofType(OverviewActionTypes.OverviewContentRequested),\n withLatestFrom(this.store.pipe(select(overviewContentsLoaded))),\n filter(([action, overviewContentsLoaded]) => !overviewContentsLoaded),\n mergeMap(() => this.overviewService.getData('overview')),\n map(overview => new OverviewContentsLoadedAction(overview))\n );\n}","import { overviewInitialState, OverviewState } from './overview.state';\nimport { OverviewActions, OverviewActionTypes } from './overview.actions';\n\nexport function overviewReducer(state = overviewInitialState, action: OverviewActions): OverviewState {\n switch (action.type) {\n\n case OverviewActionTypes.OverviewContentRequested:\n return {...state, isLoading:true};\n\n case OverviewActionTypes.OverviewContentLoaded:\n return {...state, data: action.payload, isLoading:false, overviewContentsLoaded:true};\n\n case OverviewActionTypes.OverviewFetchError:\n return {...state, isLoading:false};\n\n default:{\n return state;\n }\n }\n}","import { createSelector, createFeatureSelector } from '@ngrx/store';\nimport { OverviewState } from './overview.state';\n\nexport const selectOverviewState = createFeatureSelector('overview');\n\nexport const selectOverview = createSelector(\n selectOverviewState,\n OverviewState => OverviewState.data\n);\n\nexport const overviewContentsLoaded = createSelector(\n selectOverviewState,\n OverviewState => OverviewState.overviewContentsLoaded\n);\n\nexport const getIsLoading = createSelector(\n selectOverviewState,\n OverviewState => OverviewState.isLoading\n);\n\nexport const getError = createSelector(\n selectOverviewState,\n OverviewState => OverviewState.error\n);","export interface OverviewState {\n data: any | null;\n isLoading: boolean;\n overviewContentsLoaded:boolean;\n error: any;\n}\n\nexport const overviewInitialState: OverviewState = {\n data: null,\n isLoading: true,\n overviewContentsLoaded: false,\n error: null,\n};"],"sourceRoot":""}