@norwegian/core-components 7.9.0 → 7.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { Component, Input } from '@angular/core';
6
6
  import { NasComponentBase } from '../../core/base/nas-component.base';
7
- import { FlightType } from './models/flight-type.enum';
7
+ import { MarketingCarrier } from './models/marketing-carrier.enum';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/common";
10
10
  import * as i2 from "../../core/services/date/date-helper.service";
@@ -57,7 +57,7 @@ export class JourneyComponent extends NasComponentBase {
57
57
  this.timeZone = 'UTC';
58
58
  }
59
59
  ngOnInit() {
60
- this.flightTypeIcon = this.getFlightTypeIcon();
60
+ this.marketingCarrierIcon = this.getMarketingCarrierIcon();
61
61
  }
62
62
  ngOnChanges(changes) {
63
63
  this.setDisplayDates();
@@ -84,15 +84,15 @@ export class JourneyComponent extends NasComponentBase {
84
84
  return this.getClass('line');
85
85
  }
86
86
  }
87
- getFlightTypeIcon() {
88
- if (this.journeyModel?.departure?.flightType) {
89
- const flightType = this.journeyModel?.departure?.flightType;
90
- switch (flightType) {
91
- case FlightType.DY:
92
- case FlightType.D8:
93
- return 'flight-type-norwegian';
94
- case FlightType.WF:
95
- return 'flight-type-wideroe';
87
+ getMarketingCarrierIcon() {
88
+ if (this.journeyModel?.departure?.marketingCarrier) {
89
+ const marketingCarrier = this.journeyModel?.departure?.marketingCarrier;
90
+ switch (marketingCarrier) {
91
+ case MarketingCarrier.DY:
92
+ case MarketingCarrier.D8:
93
+ return 'marketing-carrier-norwegian';
94
+ case MarketingCarrier.WF:
95
+ return 'marketing-carrier-wideroe';
96
96
  }
97
97
  }
98
98
  }
@@ -114,11 +114,11 @@ export class JourneyComponent extends NasComponentBase {
114
114
  return this.datePipe.transform(this.dateService.date(date), format, this.timeZone, this.locale);
115
115
  }
116
116
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: JourneyComponent, deps: [{ token: i1.DatePipe }, { token: i2.DateHelper }], target: i0.ɵɵFactoryTarget.Component }); }
117
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: JourneyComponent, selector: "nas-journey", inputs: { journeyModel: "journeyModel", dateFormat: "dateFormat", timeFormat: "timeFormat", arrivalLabel: "arrivalLabel", departureLabel: "departureLabel", locale: "locale", timeZone: "timeZone" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyModel\">\n <span [nasClass]=\"getLineClass()\"></span>\n\n <div [nasClass]=\"getClass('body')\">\n <div [nasClass]=\"getClass('flight-details', ['departure'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.departure?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.departure?.airportCode\n }}</span>\n <span *ngIf=\"journeyModel?.departure?.flightCode\"> ({{journeyModel.departure.flightCode}})</span>\n </div>\n <div *ngIf=\"journeyModel?.departure?.airlineName && flightTypeIcon\" [nasClass]=\"getClass('flight-type')\">\n <nas-icon [type]=\"flightTypeIcon\"></nas-icon> {{ journeyModel.departure.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.departure)\">\n <span>{{ departureLabel }} {{ currentJourney?.departureDate }} {{ currentJourney?.departureTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.departure?.estimatedTime ||\n journeyModel?.departure?.estimatedDate\n \"\n >\n {{ departureLabel }}\n {{ currentJourney?.estimatedDepartureDate }}\n {{ currentJourney?.estimatedDepartureTime }}\n </div>\n </div>\n\n <div [nasClass]=\"getClass('journey-details')\">\n <ng-content></ng-content>\n </div>\n\n <div [nasClass]=\"getClass('flight-details', ['arrival'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.arrival?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.arrival?.airportCode\n }}</span>\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.arrival)\">\n <span>{{ arrivalLabel }} {{ currentJourney?.arrivalDate }} {{ currentJourney?.arrivalTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.arrival?.estimatedTime ||\n journeyModel?.arrival?.estimatedDate\n \"\n >\n {{ arrivalLabel }} {{ currentJourney?.estimatedArrivalDate }}\n {{ currentJourney?.estimatedArrivalTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey{position:relative}.nas-journey__line{position:absolute;top:18px;bottom:15px;left:4px;width:9px;background-image:radial-gradient(circle,#E9E7E4 3px,transparent 21%);background-position:center;background-repeat:repeat-y;background-size:6px 16px}.nas-journey__line--delayed{bottom:33px}.nas-journey__line:before,.nas-journey__line:after{content:\"\";position:absolute;left:-1.5px;width:12px;height:12px;border-radius:50%}.nas-journey__line:before{top:-7px;background-color:#15273f}.nas-journey__line:after{bottom:-4px;background-color:#15273f}.nas-journey__body{padding-left:36px}.nas-journey__body .nas-journey__flight-details .nas-journey--date{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--place{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px}.nas-journey__body .nas-journey__flight-details .nas-journey--place .nas-journey__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px;top:-.5em;letter-spacing:0}.nas-journey__body .nas-journey__flight-details .nas-journey--time{line-height:24px!important;font-size:16px;line-height:24px;color:#15273f;font-weight:400}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time{color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time span{text-decoration:line-through}.nas-journey__body .nas-journey__flight-details .nas-journey--estimated-time{color:#b12a0b}.nas-journey__body .nas-journey__flight-details:first-child{padding-bottom:8px}.nas-journey__body .nas-journey__flight-details:last-child{padding-top:8px}.nas-journey__flight-type{margin-bottom:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "component", type: i4.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }] }); }
117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: JourneyComponent, selector: "nas-journey", inputs: { journeyModel: "journeyModel", dateFormat: "dateFormat", timeFormat: "timeFormat", arrivalLabel: "arrivalLabel", departureLabel: "departureLabel", locale: "locale", timeZone: "timeZone" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyModel\">\n <span [nasClass]=\"getLineClass()\"></span>\n\n <div [nasClass]=\"getClass('body')\">\n <div [nasClass]=\"getClass('flight-details', ['departure'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.departure?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.departure?.airportCode\n }}</span>\n <span *ngIf=\"journeyModel?.departure?.flightCode\"> ({{journeyModel.departure.flightCode}})</span>\n </div>\n <div *ngIf=\"journeyModel?.departure?.airlineName && marketingCarrierIcon\" [nasClass]=\"getClass('marketing-carrier')\">\n <nas-icon [type]=\"marketingCarrierIcon\"></nas-icon> {{ journeyModel.departure.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.departure)\">\n <span>{{ departureLabel }} {{ currentJourney?.departureDate }} {{ currentJourney?.departureTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.departure?.estimatedTime ||\n journeyModel?.departure?.estimatedDate\n \"\n >\n {{ departureLabel }}\n {{ currentJourney?.estimatedDepartureDate }}\n {{ currentJourney?.estimatedDepartureTime }}\n </div>\n </div>\n\n <div [nasClass]=\"getClass('journey-details')\">\n <ng-content></ng-content>\n </div>\n\n <div [nasClass]=\"getClass('flight-details', ['arrival'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.arrival?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.arrival?.airportCode\n }}</span>\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.arrival)\">\n <span>{{ arrivalLabel }} {{ currentJourney?.arrivalDate }} {{ currentJourney?.arrivalTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.arrival?.estimatedTime ||\n journeyModel?.arrival?.estimatedDate\n \"\n >\n {{ arrivalLabel }} {{ currentJourney?.estimatedArrivalDate }}\n {{ currentJourney?.estimatedArrivalTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey{position:relative}.nas-journey__line{position:absolute;top:18px;bottom:15px;left:4px;width:9px;background-image:radial-gradient(circle,#E9E7E4 3px,transparent 21%);background-position:center;background-repeat:repeat-y;background-size:6px 16px}.nas-journey__line--delayed{bottom:33px}.nas-journey__line:before,.nas-journey__line:after{content:\"\";position:absolute;left:-1.5px;width:12px;height:12px;border-radius:50%}.nas-journey__line:before{top:-7px;background-color:#15273f}.nas-journey__line:after{bottom:-4px;background-color:#15273f}.nas-journey__body{padding-left:36px}.nas-journey__body .nas-journey__flight-details .nas-journey--date{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--place{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px}.nas-journey__body .nas-journey__flight-details .nas-journey--place .nas-journey__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px;top:-.5em;letter-spacing:0}.nas-journey__body .nas-journey__flight-details .nas-journey--time{line-height:24px!important;font-size:16px;line-height:24px;color:#15273f;font-weight:400}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time{color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time span{text-decoration:line-through}.nas-journey__body .nas-journey__flight-details .nas-journey--estimated-time{color:#b12a0b}.nas-journey__body .nas-journey__flight-details:first-child{padding-bottom:8px}.nas-journey__body .nas-journey__flight-details:last-child{padding-top:8px}.nas-journey__marketing-carrier{margin-bottom:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "component", type: i4.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }] }); }
118
118
  }
119
119
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: JourneyComponent, decorators: [{
120
120
  type: Component,
121
- args: [{ selector: 'nas-journey', template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyModel\">\n <span [nasClass]=\"getLineClass()\"></span>\n\n <div [nasClass]=\"getClass('body')\">\n <div [nasClass]=\"getClass('flight-details', ['departure'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.departure?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.departure?.airportCode\n }}</span>\n <span *ngIf=\"journeyModel?.departure?.flightCode\"> ({{journeyModel.departure.flightCode}})</span>\n </div>\n <div *ngIf=\"journeyModel?.departure?.airlineName && flightTypeIcon\" [nasClass]=\"getClass('flight-type')\">\n <nas-icon [type]=\"flightTypeIcon\"></nas-icon> {{ journeyModel.departure.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.departure)\">\n <span>{{ departureLabel }} {{ currentJourney?.departureDate }} {{ currentJourney?.departureTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.departure?.estimatedTime ||\n journeyModel?.departure?.estimatedDate\n \"\n >\n {{ departureLabel }}\n {{ currentJourney?.estimatedDepartureDate }}\n {{ currentJourney?.estimatedDepartureTime }}\n </div>\n </div>\n\n <div [nasClass]=\"getClass('journey-details')\">\n <ng-content></ng-content>\n </div>\n\n <div [nasClass]=\"getClass('flight-details', ['arrival'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.arrival?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.arrival?.airportCode\n }}</span>\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.arrival)\">\n <span>{{ arrivalLabel }} {{ currentJourney?.arrivalDate }} {{ currentJourney?.arrivalTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.arrival?.estimatedTime ||\n journeyModel?.arrival?.estimatedDate\n \"\n >\n {{ arrivalLabel }} {{ currentJourney?.estimatedArrivalDate }}\n {{ currentJourney?.estimatedArrivalTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey{position:relative}.nas-journey__line{position:absolute;top:18px;bottom:15px;left:4px;width:9px;background-image:radial-gradient(circle,#E9E7E4 3px,transparent 21%);background-position:center;background-repeat:repeat-y;background-size:6px 16px}.nas-journey__line--delayed{bottom:33px}.nas-journey__line:before,.nas-journey__line:after{content:\"\";position:absolute;left:-1.5px;width:12px;height:12px;border-radius:50%}.nas-journey__line:before{top:-7px;background-color:#15273f}.nas-journey__line:after{bottom:-4px;background-color:#15273f}.nas-journey__body{padding-left:36px}.nas-journey__body .nas-journey__flight-details .nas-journey--date{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--place{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px}.nas-journey__body .nas-journey__flight-details .nas-journey--place .nas-journey__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px;top:-.5em;letter-spacing:0}.nas-journey__body .nas-journey__flight-details .nas-journey--time{line-height:24px!important;font-size:16px;line-height:24px;color:#15273f;font-weight:400}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time{color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time span{text-decoration:line-through}.nas-journey__body .nas-journey__flight-details .nas-journey--estimated-time{color:#b12a0b}.nas-journey__body .nas-journey__flight-details:first-child{padding-bottom:8px}.nas-journey__body .nas-journey__flight-details:last-child{padding-top:8px}.nas-journey__flight-type{margin-bottom:4px}\n"] }]
121
+ args: [{ selector: 'nas-journey', template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyModel\">\n <span [nasClass]=\"getLineClass()\"></span>\n\n <div [nasClass]=\"getClass('body')\">\n <div [nasClass]=\"getClass('flight-details', ['departure'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.departure?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.departure?.airportCode\n }}</span>\n <span *ngIf=\"journeyModel?.departure?.flightCode\"> ({{journeyModel.departure.flightCode}})</span>\n </div>\n <div *ngIf=\"journeyModel?.departure?.airlineName && marketingCarrierIcon\" [nasClass]=\"getClass('marketing-carrier')\">\n <nas-icon [type]=\"marketingCarrierIcon\"></nas-icon> {{ journeyModel.departure.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.departure)\">\n <span>{{ departureLabel }} {{ currentJourney?.departureDate }} {{ currentJourney?.departureTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.departure?.estimatedTime ||\n journeyModel?.departure?.estimatedDate\n \"\n >\n {{ departureLabel }}\n {{ currentJourney?.estimatedDepartureDate }}\n {{ currentJourney?.estimatedDepartureTime }}\n </div>\n </div>\n\n <div [nasClass]=\"getClass('journey-details')\">\n <ng-content></ng-content>\n </div>\n\n <div [nasClass]=\"getClass('flight-details', ['arrival'])\">\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyModel?.arrival?.airportName }}\n <span [nasClass]=\"getClass('airport-code')\">{{\n journeyModel?.arrival?.airportCode\n }}</span>\n </div>\n <div [nasClass]=\"getTimeClass(journeyModel?.arrival)\">\n <span>{{ arrivalLabel }} {{ currentJourney?.arrivalDate }} {{ currentJourney?.arrivalTime }}</span>\n </div>\n <div\n [nasClass]=\"getClass('', ['estimated-time'])\"\n *ngIf=\"\n journeyModel?.arrival?.estimatedTime ||\n journeyModel?.arrival?.estimatedDate\n \"\n >\n {{ arrivalLabel }} {{ currentJourney?.estimatedArrivalDate }}\n {{ currentJourney?.estimatedArrivalTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey{position:relative}.nas-journey__line{position:absolute;top:18px;bottom:15px;left:4px;width:9px;background-image:radial-gradient(circle,#E9E7E4 3px,transparent 21%);background-position:center;background-repeat:repeat-y;background-size:6px 16px}.nas-journey__line--delayed{bottom:33px}.nas-journey__line:before,.nas-journey__line:after{content:\"\";position:absolute;left:-1.5px;width:12px;height:12px;border-radius:50%}.nas-journey__line:before{top:-7px;background-color:#15273f}.nas-journey__line:after{bottom:-4px;background-color:#15273f}.nas-journey__body{padding-left:36px}.nas-journey__body .nas-journey__flight-details .nas-journey--date{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:400;font-size:14px;line-height:20px;color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--place{line-height:24px!important;font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px}.nas-journey__body .nas-journey__flight-details .nas-journey--place .nas-journey__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:24px;top:-.5em;letter-spacing:0}.nas-journey__body .nas-journey__flight-details .nas-journey--time{line-height:24px!important;font-size:16px;line-height:24px;color:#15273f;font-weight:400}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time{color:#6f6f6f}.nas-journey__body .nas-journey__flight-details .nas-journey--crossed-time span{text-decoration:line-through}.nas-journey__body .nas-journey__flight-details .nas-journey--estimated-time{color:#b12a0b}.nas-journey__body .nas-journey__flight-details:first-child{padding-bottom:8px}.nas-journey__body .nas-journey__flight-details:last-child{padding-top:8px}.nas-journey__marketing-carrier{margin-bottom:4px}\n"] }]
122
122
  }], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i2.DateHelper }]; }, propDecorators: { journeyModel: [{
123
123
  type: Input
124
124
  }], dateFormat: [{
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
134
134
  }], timeZone: [{
135
135
  type: Input
136
136
  }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXkvam91cm5leS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXkvam91cm5leS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFPdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7QUFFdkQ7OztHQUdHO0FBTUgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQWdGcEQsWUFBb0IsUUFBa0IsRUFBVSxXQUF1QjtRQUNyRSxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFESCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUEzRHZFOzs7Ozs7O1dBT0c7UUFDTSxlQUFVLEdBQUcsY0FBYyxDQUFDO1FBRXJDOzs7Ozs7O1dBT0c7UUFDTSxlQUFVLEdBQUcsT0FBTyxDQUFDO1FBb0I5Qjs7Ozs7OztXQU9HO1FBQ00sV0FBTSxHQUFHLE9BQU8sQ0FBQztRQUUxQjs7Ozs7OztXQU9HO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztJQUsxQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUE7SUFDaEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsZUFBZSxFQUFFLENB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QyxJQUFhLEVBQUUsTUFBYztRQUNqRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRyxDQUFDOytHQWxKVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixxU0N2QjdCLGt5RUEwREE7OzRGRG5DYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYTt3SEF1QmQsWUFBWTtzQkFBcEIsS0FBSztnQkFVRyxVQUFVO3NCQUFsQixLQUFLO2dCQVVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBU0csWUFBWTtzQkFBcEIsS0FBSztnQkFTRyxjQUFjO3NCQUF0QixLQUFLO2dCQVVHLE1BQU07c0JBQWQsS0FBSztnQkFVRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IE5vcndlZ2lhbiBBaXIgU2h1dHRsZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgU2ltcGxlQ2hhbmdlcywgT25DaGFuZ2VzLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hc0NvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UvbmFzLWNvbXBvbmVudC5iYXNlJztcbmltcG9ydCB7IEpvdXJuZXlNb2RlbCB9IGZyb20gJy4vbW9kZWxzL2pvdXJuZXkubW9kZWwnO1xuaW1wb3J0IHsgQ2xhc3NNb2RlbCB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL2NsYXNzLm1vZGVsJztcbmltcG9ydCB7IERhdGVIZWxwZXIgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL2RhdGUvZGF0ZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBKb3VybmV5RmxpZ2h0TW9kZWwgfSBmcm9tICcuL21vZGVscy9qb3VybmV5LWZsaWdodC5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBVdGNEYXRlIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvdXRjLWRhdGUubW9kZWwnO1xuaW1wb3J0IHsgRmxpZ2h0VHlwZSB9IGZyb20gJy4vbW9kZWxzL2ZsaWdodC10eXBlLmVudW0nO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICogTm9yd2VnaWFuIGpvdXJuZXkgQ29tcG9uZW50IHwgRnVuY3Rpb25hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduYXMtam91cm5leScsXG4gIHRlbXBsYXRlVXJsOiAnLi9qb3VybmV5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vam91cm5leS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEpvdXJuZXlDb21wb25lbnQgZXh0ZW5kcyBOYXNDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuXG4gIGN1cnJlbnRKb3VybmV5OiB7XG4gICAgZGVwYXJ0dXJlVGltZTogc3RyaW5nOyBhcnJpdmFsVGltZTogc3RyaW5nO1xuICAgIGRlcGFydHVyZURhdGU6IHN0cmluZzsgYXJyaXZhbERhdGU6IHN0cmluZztcbiAgICBlc3RpbWF0ZWRBcnJpdmFsVGltZT86IHN0cmluZzsgZXN0aW1hdGVkRGVwYXJ0dXJlVGltZT86IHN0cmluZztcbiAgICBlc3RpbWF0ZWRBcnJpdmFsRGF0ZT86IHN0cmluZzsgZXN0aW1hdGVkRGVwYXJ0dXJlRGF0ZT86IHN0cmluZztcbiAgfTtcblxuICBmbGlnaHRUeXBlSWNvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgcmVjb3JkIGNvbnRhaW5pbmcgSm91cm5leSBkZXRhaWxzLlxuICAgKiBAcmVxdWlyZWRcbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5IFtqb3VybmV5TW9kZWxdPVwiam91cm5leU1vZGVsXCI+PC9uYXMtam91cm5leT5cbiAgICovXG4gIEBJbnB1dCgpIGpvdXJuZXlNb2RlbDogSm91cm5leU1vZGVsO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyBkYXRlIGRpc3BsYXkgZm9ybWF0LCBpZiBub3QgcHJvdmlkZWQsIGRlZmF1bHQgZm9ybWF0dGluZyBvbiBkYXRlIHdpbGwgYmUgYXBwbGllZFxuICAgKiBpLmUgJ2RkIE1NTSB5eXl5Jywgd2hpY2ggd2lsbCByZXN1bHQgaW4gZGlzcGxheWluZyBkYXRlIGxpa2UgJzIxLCBGZWIgMjAxOScuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leSBbZGF0ZUZvcm1hdF09XCInZGQsIE1NTSB5eXl5J1wiPjwvbmFzLWpvdXJuZXk+XG4gICAqL1xuICBASW5wdXQoKSBkYXRlRm9ybWF0ID0gJ2RkLCBNTU0geXl5eSc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRpbWUgZGlzcGxheSBmb3JtYXQsIGlmIG5vdCBwcm92aWRlZCwgZGVmYXVsdCBmb3JtYXR0aW5nIG9uIGRhdGUgd2lsbCBiZSBhcHBsaWVkXG4gICAqIGkuZSAnSEg6bW0nICwgd2hpY2ggd2lsbCByZXN1bHQgaW4gZGlzcGxheWluZyB0aW1lIGxpa2UgJzA5OjIzJy5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5IFt0aW1lRm9ybWF0XT1cIidISDptbSdcIj48L25hcy1qb3VybmV5PlxuICAgKi9cbiAgQElucHV0KCkgdGltZUZvcm1hdCA9ICdISDptbSc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICogQGRlc2NyaXB0aW9uXG4gKiBBIHN0cmluZyByZXByZXNlbnRpbmcgYXJyaXZhbCBsYWJlbCwgaXQgd2lsbCBiZSBkaXNwbGF5ZWQgYmVmb3JlIHRoZSBhcnJpdmFsIHRpbWUuXG4gKiBAZXhhbXBsZVxuICogPG5hcy1qb3VybmV5IFthcnJpdmFsTGFiZWxdPVwiJ0Fycml2YWwnXCI+PC9uYXMtam91cm5leT5cbiAqL1xuICBASW5wdXQoKSBhcnJpdmFsTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgZGVwYXJ0dXJlIGxhYmVsLCBpdCB3aWxsIGJlIGRpc3BsYXllZCBiZWZvcmUgdGhlIGRlcGFydHVyZSB0aW1lLlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXkgW2RlcGFydHVyZUxhYmVsXT1cIidEZXBhcnR1cmUnXCI+PC9uYXMtam91cm5leT5cbiAgICovXG4gIEBJbnB1dCgpIGRlcGFydHVyZUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBsb2NhbGUgY29kZSBmb3IgdGhlIGxvY2FsZSBmb3JtYXQgcnVsZXMgdG8gdXNlLiBXaGVuIG5vdCBzdXBwbGllZCwgdXNlcyB0aGUgdmFsdWUgb2YgTE9DQUxFX0lELCB3aGljaCBpcyBlbi1VUyBieSBkZWZhdWx0LlxuICAgKiBUaGlzIHJlcXVpcmVzIHRoYXQgcmVnaXN0ZXJMb2NhbGVEYXRhIGlzIGNhbGxlZCB3aXRoIHRoZSByZXNwZWN0aXZlIGxvY2FsZS5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5IFtsb2NhbGVdPVwiJ2VzJ1wiPjwvbmFzLWpvdXJuZXk+XG4gICAqL1xuICBASW5wdXQoKSBsb2NhbGUgPSAnZW4tVVMnO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFVzZXIgY2FuIGlucHV0IHRoZSB0aW1lem9uZSB0byBsb2NhbGl6ZSB0aGUgZGF0ZS5cbiAgICogRGVmYXVsdCBpcyBzZXQgdG8gVVRDIGFuZCBpdCB3aWxsIGJ5IGRlZmF1bHQgc2hvdyB0aGUgZGF0ZSBleGFjdGx5IHdoYXQgaXMgcGFzc2VkIHRvIGl0LlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXkgW3RpbWVab25lXT1cIidVVEMnXCI+PC9uYXMtam91cm5leT5cbiAgICovXG4gIEBJbnB1dCgpIHRpbWVab25lID0gJ1VUQyc7XG5cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSwgcHJpdmF0ZSBkYXRlU2VydmljZTogRGF0ZUhlbHBlcikge1xuICAgIHN1cGVyKCduYXMtam91cm5leScpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mbGlnaHRUeXBlSWNvbiA9IHRoaXMuZ2V0RmxpZ2h0VHlwZUljb24oKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuc2V0RGlzcGxheURhdGVzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGltZUNsYXNzKGpvdXJuZXlGbGlnaHQ6IEpvdXJuZXlGbGlnaHRNb2RlbCk6IENsYXNzTW9kZWwge1xuICAgIGlmICgham91cm5leUZsaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChqb3VybmV5RmxpZ2h0LmVzdGltYXRlZFRpbWUgfHwgam91cm5leUZsaWdodC5lc3RpbWF0ZWREYXRlKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnJywgWydjcm9zc2VkLXRpbWUnXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmdldENsYXNzKCcnLCBbJ3RpbWUnXSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldExpbmVDbGFzcygpOiBDbGFzc01vZGVsIHtcbiAgICBpZiAoIXRoaXMuam91cm5leU1vZGVsIHx8ICF0aGlzLmpvdXJuZXlNb2RlbC5hcnJpdmFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZXN0aW1hdGVkVGltZSB8fCB0aGlzLmpvdXJuZXlNb2RlbC5hcnJpdmFsLmVzdGltYXRlZERhdGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldENsYXNzKCdsaW5lJywgWydkZWxheWVkJ10pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnbGluZScpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmxpZ2h0VHlwZUljb24oKTogc3RyaW5nIHtcbiAgICBpZih0aGlzLmpvdXJuZXlNb2RlbD8uZGVwYXJ0dXJlPy5mbGlnaHRUeXBlKSB7XG4gICAgICBjb25zdCBmbGlnaHRUeXBlID0gdGhpcy5qb3VybmV5TW9kZWw/LmRlcGFydHVyZT8uZmxpZ2h0VHlwZTtcbiAgICAgIHN3aXRjaChmbGlnaHRUeXBlKSB7XG4gICAgICAgIGNhc2UgRmxpZ2h0VHlwZS5EWTpcbiAgICAgICAgY2FzZSBGbGlnaHRUeXBlLkQ4OlxuICAgICAgICAgIHJldHVybiAnZmxpZ2h0LXR5cGUtbm9yd2VnaWFuJztcbiAgICAgICAgY2FzZSBGbGlnaHRUeXBlLldGOiBcbiAgICAgICAgICByZXR1cm4gJ2ZsaWdodC10eXBlLXdpZGVyb2UnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0RGlzcGxheURhdGVzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmpvdXJuZXlNb2RlbCkge1xuICAgICAgdGhpcy5jdXJyZW50Sm91cm5leSA9IHtcbiAgICAgICAgZGVwYXJ0dXJlVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS50aW1lLCB0aGlzLnRpbWVGb3JtYXQpLFxuICAgICAgICBhcnJpdmFsVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwudGltZSwgdGhpcy50aW1lRm9ybWF0KSxcbiAgICAgICAgZGVwYXJ0dXJlRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS5kYXRlLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBhcnJpdmFsRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZGF0ZSwgdGhpcy5kYXRlRm9ybWF0KSxcbiAgICAgICAgZXN0aW1hdGVkRGVwYXJ0dXJlRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS5lc3RpbWF0ZWREYXRlLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWRBcnJpdmFsRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZXN0aW1hdGVkRGF0ZSwgdGhpcy5kYXRlRm9ybWF0KSxcbiAgICAgICAgZXN0aW1hdGVkRGVwYXJ0dXJlVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS5lc3RpbWF0ZWRUaW1lLCB0aGlzLnRpbWVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWRBcnJpdmFsVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZXN0aW1hdGVkVGltZSwgdGhpcy50aW1lRm9ybWF0KSxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB0cmFuc2Zvcm1EYXRlKGRhdGU6IFV0Y0RhdGUsIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5kYXRlU2VydmljZS5kYXRlKGRhdGUpLCBmb3JtYXQsIHRoaXMudGltZVpvbmUsIHRoaXMubG9jYWxlKTtcbiAgfVxufVxuIiwiPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoKVwiICpuZ0lmPVwiam91cm5leU1vZGVsXCI+XG4gIDxzcGFuIFtuYXNDbGFzc109XCJnZXRMaW5lQ2xhc3MoKVwiPjwvc3Bhbj5cblxuICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzcygnYm9keScpXCI+XG4gICAgPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2ZsaWdodC1kZXRhaWxzJywgWydkZXBhcnR1cmUnXSlcIj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ3BsYWNlJ10pXCI+XG4gICAgICAgIHt7IGpvdXJuZXlNb2RlbD8uZGVwYXJ0dXJlPy5haXJwb3J0TmFtZSB9fVxuICAgICAgICA8c3BhbiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2FpcnBvcnQtY29kZScpXCI+e3tcbiAgICAgICAgICBqb3VybmV5TW9kZWw/LmRlcGFydHVyZT8uYWlycG9ydENvZGVcbiAgICAgICAgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiam91cm5leU1vZGVsPy5kZXBhcnR1cmU/LmZsaWdodENvZGVcIj4gKHt7am91cm5leU1vZGVsLmRlcGFydHVyZS5mbGlnaHRDb2RlfX0pPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiam91cm5leU1vZGVsPy5kZXBhcnR1cmU/LmFpcmxpbmVOYW1lICYmIGZsaWdodFR5cGVJY29uXCIgW25hc0NsYXNzXT1cImdldENsYXNzKCdmbGlnaHQtdHlwZScpXCI+XG4gICAgICAgICAgPG5hcy1pY29uIFt0eXBlXT1cImZsaWdodFR5cGVJY29uXCI+PC9uYXMtaWNvbj4ge3sgam91cm5leU1vZGVsLmRlcGFydHVyZS5haXJsaW5lTmFtZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3Moam91cm5leU1vZGVsPy5kZXBhcnR1cmUpXCI+XG4gICAgICAgIDxzcGFuPnt7IGRlcGFydHVyZUxhYmVsIH19IHt7IGN1cnJlbnRKb3VybmV5Py5kZXBhcnR1cmVEYXRlIH19IHt7IGN1cnJlbnRKb3VybmV5Py5kZXBhcnR1cmVUaW1lIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIFtuYXNDbGFzc109XCJnZXRDbGFzcygnJywgWydlc3RpbWF0ZWQtdGltZSddKVwiXG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgam91cm5leU1vZGVsPy5kZXBhcnR1cmU/LmVzdGltYXRlZFRpbWUgfHxcbiAgICAgICAgICBqb3VybmV5TW9kZWw/LmRlcGFydHVyZT8uZXN0aW1hdGVkRGF0ZVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICB7eyBkZXBhcnR1cmVMYWJlbCB9fVxuICAgICAgICB7eyBjdXJyZW50Sm91cm5leT8uZXN0aW1hdGVkRGVwYXJ0dXJlRGF0ZSB9fVxuICAgICAgICB7eyBjdXJyZW50Sm91cm5leT8uZXN0aW1hdGVkRGVwYXJ0dXJlVGltZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzcygnam91cm5leS1kZXRhaWxzJylcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCdmbGlnaHQtZGV0YWlscycsIFsnYXJyaXZhbCddKVwiPlxuICAgICAgPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJycsIFsncGxhY2UnXSlcIj5cbiAgICAgICAge3sgam91cm5leU1vZGVsPy5hcnJpdmFsPy5haXJwb3J0TmFtZSB9fVxuICAgICAgICA8c3BhbiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2FpcnBvcnQtY29kZScpXCI+e3tcbiAgICAgICAgICBqb3VybmV5TW9kZWw/LmFycml2YWw/LmFpcnBvcnRDb2RlXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3Moam91cm5leU1vZGVsPy5hcnJpdmFsKVwiPlxuICAgICAgICA8c3Bhbj57eyBhcnJpdmFsTGFiZWwgfX0ge3sgY3VycmVudEpvdXJuZXk/LmFycml2YWxEYXRlIH19IHt7IGN1cnJlbnRKb3VybmV5Py5hcnJpdmFsVGltZSB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJycsIFsnZXN0aW1hdGVkLXRpbWUnXSlcIlxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIGpvdXJuZXlNb2RlbD8uYXJyaXZhbD8uZXN0aW1hdGVkVGltZSB8fFxuICAgICAgICAgIGpvdXJuZXlNb2RlbD8uYXJyaXZhbD8uZXN0aW1hdGVkRGF0ZVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICB7eyBhcnJpdmFsTGFiZWwgfX0ge3sgY3VycmVudEpvdXJuZXk/LmVzdGltYXRlZEFycml2YWxEYXRlIH19XG4gICAgICAgIHt7IGN1cnJlbnRKb3VybmV5Py5lc3RpbWF0ZWRBcnJpdmFsVGltZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXkvam91cm5leS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXkvam91cm5leS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFPdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7OztBQUVuRTs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZ0JBQWdCO0lBZ0ZwRCxZQUFvQixRQUFrQixFQUFVLFdBQXVCO1FBQ3JFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQURILGFBQVEsR0FBUixRQUFRLENBQVU7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQTNEdkU7Ozs7Ozs7V0FPRztRQUNNLGVBQVUsR0FBRyxjQUFjLENBQUM7UUFFckM7Ozs7Ozs7V0FPRztRQUNNLGVBQVUsR0FBRyxPQUFPLENBQUM7UUFvQjlCOzs7Ozs7O1dBT0c7UUFDTSxXQUFNLEdBQUcsT0FBTyxDQUFDO1FBRTFCOzs7Ozs7O1dBT0c7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBSzFCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFBO0lBQzVELENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLGVBQWUsRUFB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Q0FBQztJQUVPLGFBQWEsQ0FBQyxJQUFhLEVBQUUsTUFBYztRQUNqRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRyxDQUFDOytHQWxKVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixxU0N2QjdCLG96RUEwREE7OzRGRG5DYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYTt3SEF1QmQsWUFBWTtzQkFBcEIsS0FBSztnQkFVRyxVQUFVO3NCQUFsQixLQUFLO2dCQVVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBU0csWUFBWTtzQkFBcEIsS0FBSztnQkFTRyxjQUFjO3NCQUF0QixLQUFLO2dCQVVHLE1BQU07c0JBQWQsS0FBSztnQkFVRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IE5vcndlZ2lhbiBBaXIgU2h1dHRsZS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgU2ltcGxlQ2hhbmdlcywgT25DaGFuZ2VzLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hc0NvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UvbmFzLWNvbXBvbmVudC5iYXNlJztcbmltcG9ydCB7IEpvdXJuZXlNb2RlbCB9IGZyb20gJy4vbW9kZWxzL2pvdXJuZXkubW9kZWwnO1xuaW1wb3J0IHsgQ2xhc3NNb2RlbCB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL2NsYXNzLm1vZGVsJztcbmltcG9ydCB7IERhdGVIZWxwZXIgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL2RhdGUvZGF0ZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBKb3VybmV5RmxpZ2h0TW9kZWwgfSBmcm9tICcuL21vZGVscy9qb3VybmV5LWZsaWdodC5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBVdGNEYXRlIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvdXRjLWRhdGUubW9kZWwnO1xuaW1wb3J0IHsgTWFya2V0aW5nQ2FycmllciB9IGZyb20gJy4vbW9kZWxzL21hcmtldGluZy1jYXJyaWVyLmVudW0nO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICogTm9yd2VnaWFuIGpvdXJuZXkgQ29tcG9uZW50IHwgRnVuY3Rpb25hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduYXMtam91cm5leScsXG4gIHRlbXBsYXRlVXJsOiAnLi9qb3VybmV5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vam91cm5leS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEpvdXJuZXlDb21wb25lbnQgZXh0ZW5kcyBOYXNDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuXG4gIGN1cnJlbnRKb3VybmV5OiB7XG4gICAgZGVwYXJ0dXJlVGltZTogc3RyaW5nOyBhcnJpdmFsVGltZTogc3RyaW5nO1xuICAgIGRlcGFydHVyZURhdGU6IHN0cmluZzsgYXJyaXZhbERhdGU6IHN0cmluZztcbiAgICBlc3RpbWF0ZWRBcnJpdmFsVGltZT86IHN0cmluZzsgZXN0aW1hdGVkRGVwYXJ0dXJlVGltZT86IHN0cmluZztcbiAgICBlc3RpbWF0ZWRBcnJpdmFsRGF0ZT86IHN0cmluZzsgZXN0aW1hdGVkRGVwYXJ0dXJlRGF0ZT86IHN0cmluZztcbiAgfTtcblxuICBtYXJrZXRpbmdDYXJyaWVySWNvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgcmVjb3JkIGNvbnRhaW5pbmcgSm91cm5leSBkZXRhaWxzLlxuICAgKiBAcmVxdWlyZWRcbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5IFtqb3VybmV5TW9kZWxdPVwiam91cm5leU1vZGVsXCI+PC9uYXMtam91cm5leT5cbiAgICovXG4gIEBJbnB1dCgpIGpvdXJuZXlNb2RlbDogSm91cm5leU1vZGVsO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyBkYXRlIGRpc3BsYXkgZm9ybWF0LCBpZiBub3QgcHJvdmlkZWQsIGRlZmF1bHQgZm9ybWF0dGluZyBvbiBkYXRlIHdpbGwgYmUgYXBwbGllZFxuICAgKiBpLmUgJ2RkIE1NTSB5eXl5Jywgd2hpY2ggd2lsbCByZXN1bHQgaW4gZGlzcGxheWluZyBkYXRlIGxpa2UgJzIxLCBGZWIgMjAxOScuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leSBbZGF0ZUZvcm1hdF09XCInZGQsIE1NTSB5eXl5J1wiPjwvbmFzLWpvdXJuZXk+XG4gICAqL1xuICBASW5wdXQoKSBkYXRlRm9ybWF0ID0gJ2RkLCBNTU0geXl5eSc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRpbWUgZGlzcGxheSBmb3JtYXQsIGlmIG5vdCBwcm92aWRlZCwgZGVmYXVsdCBmb3JtYXR0aW5nIG9uIGRhdGUgd2lsbCBiZSBhcHBsaWVkXG4gICAqIGkuZSAnSEg6bW0nICwgd2hpY2ggd2lsbCByZXN1bHQgaW4gZGlzcGxheWluZyB0aW1lIGxpa2UgJzA5OjIzJy5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5IFt0aW1lRm9ybWF0XT1cIidISDptbSdcIj48L25hcy1qb3VybmV5PlxuICAgKi9cbiAgQElucHV0KCkgdGltZUZvcm1hdCA9ICdISDptbSc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICogQGRlc2NyaXB0aW9uXG4gKiBBIHN0cmluZyByZXByZXNlbnRpbmcgYXJyaXZhbCBsYWJlbCwgaXQgd2lsbCBiZSBkaXNwbGF5ZWQgYmVmb3JlIHRoZSBhcnJpdmFsIHRpbWUuXG4gKiBAZXhhbXBsZVxuICogPG5hcy1qb3VybmV5IFthcnJpdmFsTGFiZWxdPVwiJ0Fycml2YWwnXCI+PC9uYXMtam91cm5leT5cbiAqL1xuICBASW5wdXQoKSBhcnJpdmFsTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgZGVwYXJ0dXJlIGxhYmVsLCBpdCB3aWxsIGJlIGRpc3BsYXllZCBiZWZvcmUgdGhlIGRlcGFydHVyZSB0aW1lLlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXkgW2RlcGFydHVyZUxhYmVsXT1cIidEZXBhcnR1cmUnXCI+PC9uYXMtam91cm5leT5cbiAgICovXG4gIEBJbnB1dCgpIGRlcGFydHVyZUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBsb2NhbGUgY29kZSBmb3IgdGhlIGxvY2FsZSBmb3JtYXQgcnVsZXMgdG8gdXNlLiBXaGVuIG5vdCBzdXBwbGllZCwgdXNlcyB0aGUgdmFsdWUgb2YgTE9DQUxFX0lELCB3aGljaCBpcyBlbi1VUyBieSBkZWZhdWx0LlxuICAgKiBUaGlzIHJlcXVpcmVzIHRoYXQgcmVnaXN0ZXJMb2NhbGVEYXRhIGlzIGNhbGxlZCB3aXRoIHRoZSByZXNwZWN0aXZlIGxvY2FsZS5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5IFtsb2NhbGVdPVwiJ2VzJ1wiPjwvbmFzLWpvdXJuZXk+XG4gICAqL1xuICBASW5wdXQoKSBsb2NhbGUgPSAnZW4tVVMnO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFVzZXIgY2FuIGlucHV0IHRoZSB0aW1lem9uZSB0byBsb2NhbGl6ZSB0aGUgZGF0ZS5cbiAgICogRGVmYXVsdCBpcyBzZXQgdG8gVVRDIGFuZCBpdCB3aWxsIGJ5IGRlZmF1bHQgc2hvdyB0aGUgZGF0ZSBleGFjdGx5IHdoYXQgaXMgcGFzc2VkIHRvIGl0LlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXkgW3RpbWVab25lXT1cIidVVEMnXCI+PC9uYXMtam91cm5leT5cbiAgICovXG4gIEBJbnB1dCgpIHRpbWVab25lID0gJ1VUQyc7XG5cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSwgcHJpdmF0ZSBkYXRlU2VydmljZTogRGF0ZUhlbHBlcikge1xuICAgIHN1cGVyKCduYXMtam91cm5leScpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrZXRpbmdDYXJyaWVySWNvbiA9IHRoaXMuZ2V0TWFya2V0aW5nQ2Fycmllckljb24oKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuc2V0RGlzcGxheURhdGVzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VGltZUNsYXNzKGpvdXJuZXlGbGlnaHQ6IEpvdXJuZXlGbGlnaHRNb2RlbCk6IENsYXNzTW9kZWwge1xuICAgIGlmICgham91cm5leUZsaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChqb3VybmV5RmxpZ2h0LmVzdGltYXRlZFRpbWUgfHwgam91cm5leUZsaWdodC5lc3RpbWF0ZWREYXRlKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnJywgWydjcm9zc2VkLXRpbWUnXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmdldENsYXNzKCcnLCBbJ3RpbWUnXSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldExpbmVDbGFzcygpOiBDbGFzc01vZGVsIHtcbiAgICBpZiAoIXRoaXMuam91cm5leU1vZGVsIHx8ICF0aGlzLmpvdXJuZXlNb2RlbC5hcnJpdmFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZXN0aW1hdGVkVGltZSB8fCB0aGlzLmpvdXJuZXlNb2RlbC5hcnJpdmFsLmVzdGltYXRlZERhdGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldENsYXNzKCdsaW5lJywgWydkZWxheWVkJ10pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnbGluZScpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0TWFya2V0aW5nQ2Fycmllckljb24oKTogc3RyaW5nIHtcbiAgICBpZih0aGlzLmpvdXJuZXlNb2RlbD8uZGVwYXJ0dXJlPy5tYXJrZXRpbmdDYXJyaWVyKSB7XG4gICAgICBjb25zdCBtYXJrZXRpbmdDYXJyaWVyID0gdGhpcy5qb3VybmV5TW9kZWw/LmRlcGFydHVyZT8ubWFya2V0aW5nQ2FycmllcjtcbiAgICAgIHN3aXRjaChtYXJrZXRpbmdDYXJyaWVyKSB7XG4gICAgICAgIGNhc2UgTWFya2V0aW5nQ2Fycmllci5EWTpcbiAgICAgICAgY2FzZSBNYXJrZXRpbmdDYXJyaWVyLkQ4OlxuICAgICAgICAgIHJldHVybiAnbWFya2V0aW5nLWNhcnJpZXItbm9yd2VnaWFuJztcbiAgICAgICAgY2FzZSBNYXJrZXRpbmdDYXJyaWVyLldGOiBcbiAgICAgICAgICByZXR1cm4gJ21hcmtldGluZy1jYXJyaWVyLXdpZGVyb2UnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0RGlzcGxheURhdGVzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmpvdXJuZXlNb2RlbCkge1xuICAgICAgdGhpcy5jdXJyZW50Sm91cm5leSA9IHtcbiAgICAgICAgZGVwYXJ0dXJlVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS50aW1lLCB0aGlzLnRpbWVGb3JtYXQpLFxuICAgICAgICBhcnJpdmFsVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwudGltZSwgdGhpcy50aW1lRm9ybWF0KSxcbiAgICAgICAgZGVwYXJ0dXJlRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS5kYXRlLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBhcnJpdmFsRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZGF0ZSwgdGhpcy5kYXRlRm9ybWF0KSxcbiAgICAgICAgZXN0aW1hdGVkRGVwYXJ0dXJlRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS5lc3RpbWF0ZWREYXRlLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWRBcnJpdmFsRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZXN0aW1hdGVkRGF0ZSwgdGhpcy5kYXRlRm9ybWF0KSxcbiAgICAgICAgZXN0aW1hdGVkRGVwYXJ0dXJlVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmRlcGFydHVyZS5lc3RpbWF0ZWRUaW1lLCB0aGlzLnRpbWVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWRBcnJpdmFsVGltZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leU1vZGVsLmFycml2YWwuZXN0aW1hdGVkVGltZSwgdGhpcy50aW1lRm9ybWF0KSxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB0cmFuc2Zvcm1EYXRlKGRhdGU6IFV0Y0RhdGUsIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5kYXRlU2VydmljZS5kYXRlKGRhdGUpLCBmb3JtYXQsIHRoaXMudGltZVpvbmUsIHRoaXMubG9jYWxlKTtcbiAgfVxufVxuIiwiPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoKVwiICpuZ0lmPVwiam91cm5leU1vZGVsXCI+XG4gIDxzcGFuIFtuYXNDbGFzc109XCJnZXRMaW5lQ2xhc3MoKVwiPjwvc3Bhbj5cblxuICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzcygnYm9keScpXCI+XG4gICAgPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2ZsaWdodC1kZXRhaWxzJywgWydkZXBhcnR1cmUnXSlcIj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ3BsYWNlJ10pXCI+XG4gICAgICAgIHt7IGpvdXJuZXlNb2RlbD8uZGVwYXJ0dXJlPy5haXJwb3J0TmFtZSB9fVxuICAgICAgICA8c3BhbiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2FpcnBvcnQtY29kZScpXCI+e3tcbiAgICAgICAgICBqb3VybmV5TW9kZWw/LmRlcGFydHVyZT8uYWlycG9ydENvZGVcbiAgICAgICAgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiam91cm5leU1vZGVsPy5kZXBhcnR1cmU/LmZsaWdodENvZGVcIj4gKHt7am91cm5leU1vZGVsLmRlcGFydHVyZS5mbGlnaHRDb2RlfX0pPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiam91cm5leU1vZGVsPy5kZXBhcnR1cmU/LmFpcmxpbmVOYW1lICYmIG1hcmtldGluZ0NhcnJpZXJJY29uXCIgW25hc0NsYXNzXT1cImdldENsYXNzKCdtYXJrZXRpbmctY2FycmllcicpXCI+XG4gICAgICAgICAgPG5hcy1pY29uIFt0eXBlXT1cIm1hcmtldGluZ0NhcnJpZXJJY29uXCI+PC9uYXMtaWNvbj4ge3sgam91cm5leU1vZGVsLmRlcGFydHVyZS5haXJsaW5lTmFtZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3Moam91cm5leU1vZGVsPy5kZXBhcnR1cmUpXCI+XG4gICAgICAgIDxzcGFuPnt7IGRlcGFydHVyZUxhYmVsIH19IHt7IGN1cnJlbnRKb3VybmV5Py5kZXBhcnR1cmVEYXRlIH19IHt7IGN1cnJlbnRKb3VybmV5Py5kZXBhcnR1cmVUaW1lIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIFtuYXNDbGFzc109XCJnZXRDbGFzcygnJywgWydlc3RpbWF0ZWQtdGltZSddKVwiXG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgam91cm5leU1vZGVsPy5kZXBhcnR1cmU/LmVzdGltYXRlZFRpbWUgfHxcbiAgICAgICAgICBqb3VybmV5TW9kZWw/LmRlcGFydHVyZT8uZXN0aW1hdGVkRGF0ZVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICB7eyBkZXBhcnR1cmVMYWJlbCB9fVxuICAgICAgICB7eyBjdXJyZW50Sm91cm5leT8uZXN0aW1hdGVkRGVwYXJ0dXJlRGF0ZSB9fVxuICAgICAgICB7eyBjdXJyZW50Sm91cm5leT8uZXN0aW1hdGVkRGVwYXJ0dXJlVGltZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzcygnam91cm5leS1kZXRhaWxzJylcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCdmbGlnaHQtZGV0YWlscycsIFsnYXJyaXZhbCddKVwiPlxuICAgICAgPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJycsIFsncGxhY2UnXSlcIj5cbiAgICAgICAge3sgam91cm5leU1vZGVsPy5hcnJpdmFsPy5haXJwb3J0TmFtZSB9fVxuICAgICAgICA8c3BhbiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ2FpcnBvcnQtY29kZScpXCI+e3tcbiAgICAgICAgICBqb3VybmV5TW9kZWw/LmFycml2YWw/LmFpcnBvcnRDb2RlXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3Moam91cm5leU1vZGVsPy5hcnJpdmFsKVwiPlxuICAgICAgICA8c3Bhbj57eyBhcnJpdmFsTGFiZWwgfX0ge3sgY3VycmVudEpvdXJuZXk/LmFycml2YWxEYXRlIH19IHt7IGN1cnJlbnRKb3VybmV5Py5hcnJpdmFsVGltZSB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJycsIFsnZXN0aW1hdGVkLXRpbWUnXSlcIlxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIGpvdXJuZXlNb2RlbD8uYXJyaXZhbD8uZXN0aW1hdGVkVGltZSB8fFxuICAgICAgICAgIGpvdXJuZXlNb2RlbD8uYXJyaXZhbD8uZXN0aW1hdGVkRGF0ZVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICB7eyBhcnJpdmFsTGFiZWwgfX0ge3sgY3VycmVudEpvdXJuZXk/LmVzdGltYXRlZEFycml2YWxEYXRlIH19XG4gICAgICAgIHt7IGN1cnJlbnRKb3VybmV5Py5lc3RpbWF0ZWRBcnJpdmFsVGltZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1mbGlnaHQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXkvbW9kZWxzL2pvdXJuZXktZmxpZ2h0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVdGNEYXRlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9tb2RlbHMvdXRjLWRhdGUubW9kZWwnO1xuaW1wb3J0IHsgRmxpZ2h0VHlwZSB9IGZyb20gJy4vZmxpZ2h0LXR5cGUuZW51bSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSm91cm5leUZsaWdodE1vZGVsIHtcbiAgZGF0ZTogVXRjRGF0ZTtcbiAgYWlycG9ydE5hbWU6IHN0cmluZztcbiAgYWlycG9ydENvZGU/OiBzdHJpbmc7XG4gIGFpcmxpbmVOYW1lPzogc3RyaW5nO1xuICBmbGlnaHRDb2RlPzogc3RyaW5nO1xuICBmbGlnaHRUeXBlPzogRmxpZ2h0VHlwZTtcbiAgdGltZTogVXRjRGF0ZTtcbiAgZXN0aW1hdGVkVGltZT86IFV0Y0RhdGU7XG4gIGVzdGltYXRlZERhdGU/OiBVdGNEYXRlO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1mbGlnaHQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXkvbW9kZWxzL2pvdXJuZXktZmxpZ2h0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVdGNEYXRlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9tb2RlbHMvdXRjLWRhdGUubW9kZWwnO1xuaW1wb3J0IHsgTWFya2V0aW5nQ2FycmllciB9IGZyb20gJy4vbWFya2V0aW5nLWNhcnJpZXIuZW51bSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSm91cm5leUZsaWdodE1vZGVsIHtcbiAgZGF0ZTogVXRjRGF0ZTtcbiAgYWlycG9ydE5hbWU6IHN0cmluZztcbiAgYWlycG9ydENvZGU/OiBzdHJpbmc7XG4gIGFpcmxpbmVOYW1lPzogc3RyaW5nO1xuICBmbGlnaHRDb2RlPzogc3RyaW5nO1xuICBtYXJrZXRpbmdDYXJyaWVyPzogTWFya2V0aW5nQ2FycmllcjtcbiAgdGltZTogVXRjRGF0ZTtcbiAgZXN0aW1hdGVkVGltZT86IFV0Y0RhdGU7XG4gIGVzdGltYXRlZERhdGU/OiBVdGNEYXRlO1xufVxuIl19
@@ -0,0 +1,8 @@
1
+ export var MarketingCarrier;
2
+ (function (MarketingCarrier) {
3
+ MarketingCarrier[MarketingCarrier["NotSet"] = 0] = "NotSet";
4
+ MarketingCarrier[MarketingCarrier["DY"] = 1] = "DY";
5
+ MarketingCarrier[MarketingCarrier["D8"] = 2] = "D8";
6
+ MarketingCarrier[MarketingCarrier["WF"] = 3] = "WF";
7
+ })(MarketingCarrier || (MarketingCarrier = {}));
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2V0aW5nLWNhcnJpZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvam91cm5leS9tb2RlbHMvbWFya2V0aW5nLWNhcnJpZXIuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxnQkFLWDtBQUxELFdBQVksZ0JBQWdCO0lBQ3hCLDJEQUFVLENBQUE7SUFDVixtREFBTSxDQUFBO0lBQ04sbURBQU0sQ0FBQTtJQUNOLG1EQUFNLENBQUE7QUFDVixDQUFDLEVBTFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUszQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE1hcmtldGluZ0NhcnJpZXIge1xuICAgIE5vdFNldCA9IDAsXG4gICAgRFkgPSAxLFxuICAgIEQ4ID0gMixcbiAgICBXRiA9IDNcbn1cbiJdfQ==
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { Component, Input } from '@angular/core';
6
6
  import { NasComponentBase } from '../../core/base/nas-component.base';
7
- import { FlightType } from '../journey/models/flight-type.enum';
7
+ import { MarketingCarrier } from '../journey/models/marketing-carrier.enum';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/common";
10
10
  import * as i2 from "../../core/services/date/date-helper.service";
@@ -70,7 +70,7 @@ export class JourneyStopoverComponent extends NasComponentBase {
70
70
  this.timeZone = 'UTC';
71
71
  }
72
72
  ngOnInit() {
73
- this.flightTypeIcon = this.getFlightTypeIcon();
73
+ this.marketingCarrierIcon = this.getMarketingCarrierIcon();
74
74
  }
75
75
  ngOnChanges(_changes) {
76
76
  this.setDisplayDates();
@@ -100,15 +100,15 @@ export class JourneyStopoverComponent extends NasComponentBase {
100
100
  numberOfMinutes: Math.floor(differenceInMinutes % 60)
101
101
  };
102
102
  }
103
- getFlightTypeIcon() {
104
- if (this.journeyStopoverModel?.flightType) {
105
- const flightType = this.journeyStopoverModel?.flightType;
106
- switch (flightType) {
107
- case FlightType.DY:
108
- case FlightType.D8:
109
- return 'flight-type-norwegian';
110
- case FlightType.WF:
111
- return 'flight-type-wideroe';
103
+ getMarketingCarrierIcon() {
104
+ if (this.journeyStopoverModel?.marketingCarrier) {
105
+ const marketingCarrier = this.journeyStopoverModel?.marketingCarrier;
106
+ switch (marketingCarrier) {
107
+ case MarketingCarrier.DY:
108
+ case MarketingCarrier.D8:
109
+ return 'marketing-carrier-norwegian';
110
+ case MarketingCarrier.WF:
111
+ return 'marketing-carrier-wideroe';
112
112
  }
113
113
  }
114
114
  }
@@ -121,11 +121,11 @@ export class JourneyStopoverComponent extends NasComponentBase {
121
121
  }
122
122
  }
123
123
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: JourneyStopoverComponent, deps: [{ token: i1.DatePipe }, { token: i2.DateHelper }], target: i0.ɵɵFactoryTarget.Component }); }
124
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: JourneyStopoverComponent, selector: "nas-journey-stopover", inputs: { journeyStopoverModel: "journeyStopoverModel", transitLabel: "transitLabel", arrivalTimeLabel: "arrivalTimeLabel", departureTimeLabel: "departureTimeLabel", timeFormat: "timeFormat", dateFormat: "dateFormat", transitHoursIndicator: "transitHoursIndicator", transitMinutesIndicator: "transitMinutesIndicator", locale: "locale", timeZone: "timeZone" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyStopoverModel\">\n <span [nasClass]=\"lineClass\"></span>\n\n <div [nasClass]=\"getClass('stopover-details')\">\n <div\n [nasClass]=\"getClass('', ['stopover-time'])\"\n *ngIf=\"displayStopoverTime\"\n >\n {{ transitLabel }}\n (<span *ngIf=\"stopoverTime?.numberOfHours\"\n >{{ stopoverTime?.numberOfHours\n }}{{ transitHoursIndicator }}&nbsp;</span\n >\n <span *ngIf=\"stopoverTime?.numberOfMinutes\"\n >{{ stopoverTime?.numberOfMinutes }} {{ transitMinutesIndicator }}</span\n >)\n </div>\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyStopoverModel?.airportName }}\n {{ journeyStopoverModel?.airportCode }}\n <span *ngIf=\"journeyStopoverModel?.flightCode\">({{ journeyStopoverModel?.flightCode }})</span>\n </div>\n <div *ngIf=\"journeyStopoverModel?.airlineName && flightTypeIcon\" [nasClass]=\"getClass('flight-type')\">\n <nas-icon [type]=\"flightTypeIcon\"></nas-icon> {{ journeyStopoverModel.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedArrivalTime, currentStopover?.estimatedArrivalDate)\">\n <div [nasClass]=\"getClass('', ['arrival'])\">\n <span>{{arrivalTimeLabel}} {{currentStopover?.arrivalDate}} {{currentStopover?.arrivalTime}}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedArrivalDate || currentStopover?.estimatedArrivalTime\">\n {{ arrivalTimeLabel }} {{ currentStopover?.estimatedArrivalDate }}\n {{ currentStopover?.estimatedArrivalTime }}\n </div>\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedDepartureTime, currentStopover?.estimatedDepartureDate)\">\n <div [nasClass]=\"getClass('', ['departure'])\">\n <span>{{ departureTimeLabel }} {{ currentStopover?.departureDate }} {{ currentStopover?.departureTime }}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedDepartureDate || currentStopover?.estimatedDepartureTime\">\n {{ departureTimeLabel }} {{ currentStopover?.estimatedDepartureDate }}\n {{ currentStopover?.estimatedDepartureTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey-stopover{position:relative}.nas-journey-stopover__line{position:absolute;top:20px;left:-31px;background-image:radial-gradient(circle closest-side,#E9E7E4 6px,transparent 100%);background-position:0 100%;background-repeat:repeat-x;background-size:6px 10px}.nas-journey-stopover__line--transit-label{top:0}.nas-journey-stopover__line:before{content:\"\";position:absolute;left:-2.5px;width:12px;height:12px;border-radius:50%}.nas-journey-stopover__line:before{top:25px;background-color:#15273f}.nas-journey-stopover .nas-journey-stopover__stopover-details{padding-top:15px;padding-bottom:15px}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--stopover-time{font-size:12px;font-weight:600}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place .nas-journey-stopover__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:14px;line-height:20px;top:-.5em;letter-spacing:0;vertical-align:super}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time{color:#6f6f6f}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time span{text-decoration:line-through}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--estimated-time{color:#b12a0b}.nas-journey-stopover__flight-type{margin-bottom:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "component", type: i4.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }] }); }
124
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: JourneyStopoverComponent, selector: "nas-journey-stopover", inputs: { journeyStopoverModel: "journeyStopoverModel", transitLabel: "transitLabel", arrivalTimeLabel: "arrivalTimeLabel", departureTimeLabel: "departureTimeLabel", timeFormat: "timeFormat", dateFormat: "dateFormat", transitHoursIndicator: "transitHoursIndicator", transitMinutesIndicator: "transitMinutesIndicator", locale: "locale", timeZone: "timeZone" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyStopoverModel\">\n <span [nasClass]=\"lineClass\"></span>\n\n <div [nasClass]=\"getClass('stopover-details')\">\n <div\n [nasClass]=\"getClass('', ['stopover-time'])\"\n *ngIf=\"displayStopoverTime\"\n >\n {{ transitLabel }}\n (<span *ngIf=\"stopoverTime?.numberOfHours\"\n >{{ stopoverTime?.numberOfHours\n }}{{ transitHoursIndicator }}&nbsp;</span\n >\n <span *ngIf=\"stopoverTime?.numberOfMinutes\"\n >{{ stopoverTime?.numberOfMinutes }} {{ transitMinutesIndicator }}</span\n >)\n </div>\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyStopoverModel?.airportName }}\n {{ journeyStopoverModel?.airportCode }}\n <span *ngIf=\"journeyStopoverModel?.flightCode\">({{ journeyStopoverModel?.flightCode }})</span>\n </div>\n <div *ngIf=\"journeyStopoverModel?.airlineName && marketingCarrierIcon\" [nasClass]=\"getClass('marketing-carrier')\">\n <nas-icon [type]=\"marketingCarrierIcon\"></nas-icon> {{ journeyStopoverModel.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedArrivalTime, currentStopover?.estimatedArrivalDate)\">\n <div [nasClass]=\"getClass('', ['arrival'])\">\n <span>{{arrivalTimeLabel}} {{currentStopover?.arrivalDate}} {{currentStopover?.arrivalTime}}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedArrivalDate || currentStopover?.estimatedArrivalTime\">\n {{ arrivalTimeLabel }} {{ currentStopover?.estimatedArrivalDate }}\n {{ currentStopover?.estimatedArrivalTime }}\n </div>\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedDepartureTime, currentStopover?.estimatedDepartureDate)\">\n <div [nasClass]=\"getClass('', ['departure'])\">\n <span>{{ departureTimeLabel }} {{ currentStopover?.departureDate }} {{ currentStopover?.departureTime }}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedDepartureDate || currentStopover?.estimatedDepartureTime\">\n {{ departureTimeLabel }} {{ currentStopover?.estimatedDepartureDate }}\n {{ currentStopover?.estimatedDepartureTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey-stopover{position:relative}.nas-journey-stopover__line{position:absolute;top:20px;left:-31px;background-image:radial-gradient(circle closest-side,#E9E7E4 6px,transparent 100%);background-position:0 100%;background-repeat:repeat-x;background-size:6px 10px}.nas-journey-stopover__line--transit-label{top:0}.nas-journey-stopover__line:before{content:\"\";position:absolute;left:-2.5px;width:12px;height:12px;border-radius:50%}.nas-journey-stopover__line:before{top:25px;background-color:#15273f}.nas-journey-stopover .nas-journey-stopover__stopover-details{padding-top:15px;padding-bottom:15px}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--stopover-time{font-size:12px;font-weight:600}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place .nas-journey-stopover__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:14px;line-height:20px;top:-.5em;letter-spacing:0;vertical-align:super}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time{color:#6f6f6f}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time span{text-decoration:line-through}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--estimated-time{color:#b12a0b}.nas-journey-stopover__marketing-carrier{margin-bottom:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "component", type: i4.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }] }); }
125
125
  }
126
126
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: JourneyStopoverComponent, decorators: [{
127
127
  type: Component,
128
- args: [{ selector: 'nas-journey-stopover', template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyStopoverModel\">\n <span [nasClass]=\"lineClass\"></span>\n\n <div [nasClass]=\"getClass('stopover-details')\">\n <div\n [nasClass]=\"getClass('', ['stopover-time'])\"\n *ngIf=\"displayStopoverTime\"\n >\n {{ transitLabel }}\n (<span *ngIf=\"stopoverTime?.numberOfHours\"\n >{{ stopoverTime?.numberOfHours\n }}{{ transitHoursIndicator }}&nbsp;</span\n >\n <span *ngIf=\"stopoverTime?.numberOfMinutes\"\n >{{ stopoverTime?.numberOfMinutes }} {{ transitMinutesIndicator }}</span\n >)\n </div>\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyStopoverModel?.airportName }}\n {{ journeyStopoverModel?.airportCode }}\n <span *ngIf=\"journeyStopoverModel?.flightCode\">({{ journeyStopoverModel?.flightCode }})</span>\n </div>\n <div *ngIf=\"journeyStopoverModel?.airlineName && flightTypeIcon\" [nasClass]=\"getClass('flight-type')\">\n <nas-icon [type]=\"flightTypeIcon\"></nas-icon> {{ journeyStopoverModel.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedArrivalTime, currentStopover?.estimatedArrivalDate)\">\n <div [nasClass]=\"getClass('', ['arrival'])\">\n <span>{{arrivalTimeLabel}} {{currentStopover?.arrivalDate}} {{currentStopover?.arrivalTime}}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedArrivalDate || currentStopover?.estimatedArrivalTime\">\n {{ arrivalTimeLabel }} {{ currentStopover?.estimatedArrivalDate }}\n {{ currentStopover?.estimatedArrivalTime }}\n </div>\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedDepartureTime, currentStopover?.estimatedDepartureDate)\">\n <div [nasClass]=\"getClass('', ['departure'])\">\n <span>{{ departureTimeLabel }} {{ currentStopover?.departureDate }} {{ currentStopover?.departureTime }}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedDepartureDate || currentStopover?.estimatedDepartureTime\">\n {{ departureTimeLabel }} {{ currentStopover?.estimatedDepartureDate }}\n {{ currentStopover?.estimatedDepartureTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey-stopover{position:relative}.nas-journey-stopover__line{position:absolute;top:20px;left:-31px;background-image:radial-gradient(circle closest-side,#E9E7E4 6px,transparent 100%);background-position:0 100%;background-repeat:repeat-x;background-size:6px 10px}.nas-journey-stopover__line--transit-label{top:0}.nas-journey-stopover__line:before{content:\"\";position:absolute;left:-2.5px;width:12px;height:12px;border-radius:50%}.nas-journey-stopover__line:before{top:25px;background-color:#15273f}.nas-journey-stopover .nas-journey-stopover__stopover-details{padding-top:15px;padding-bottom:15px}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--stopover-time{font-size:12px;font-weight:600}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place .nas-journey-stopover__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:14px;line-height:20px;top:-.5em;letter-spacing:0;vertical-align:super}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time{color:#6f6f6f}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time span{text-decoration:line-through}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--estimated-time{color:#b12a0b}.nas-journey-stopover__flight-type{margin-bottom:4px}\n"] }]
128
+ args: [{ selector: 'nas-journey-stopover', template: "<div [nasClass]=\"getClass()\" *ngIf=\"journeyStopoverModel\">\n <span [nasClass]=\"lineClass\"></span>\n\n <div [nasClass]=\"getClass('stopover-details')\">\n <div\n [nasClass]=\"getClass('', ['stopover-time'])\"\n *ngIf=\"displayStopoverTime\"\n >\n {{ transitLabel }}\n (<span *ngIf=\"stopoverTime?.numberOfHours\"\n >{{ stopoverTime?.numberOfHours\n }}{{ transitHoursIndicator }}&nbsp;</span\n >\n <span *ngIf=\"stopoverTime?.numberOfMinutes\"\n >{{ stopoverTime?.numberOfMinutes }} {{ transitMinutesIndicator }}</span\n >)\n </div>\n <div [nasClass]=\"getClass('', ['place'])\">\n {{ journeyStopoverModel?.airportName }}\n {{ journeyStopoverModel?.airportCode }}\n <span *ngIf=\"journeyStopoverModel?.flightCode\">({{ journeyStopoverModel?.flightCode }})</span>\n </div>\n <div *ngIf=\"journeyStopoverModel?.airlineName && marketingCarrierIcon\" [nasClass]=\"getClass('marketing-carrier')\">\n <nas-icon [type]=\"marketingCarrierIcon\"></nas-icon> {{ journeyStopoverModel.airlineName }}\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedArrivalTime, currentStopover?.estimatedArrivalDate)\">\n <div [nasClass]=\"getClass('', ['arrival'])\">\n <span>{{arrivalTimeLabel}} {{currentStopover?.arrivalDate}} {{currentStopover?.arrivalTime}}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedArrivalDate || currentStopover?.estimatedArrivalTime\">\n {{ arrivalTimeLabel }} {{ currentStopover?.estimatedArrivalDate }}\n {{ currentStopover?.estimatedArrivalTime }}\n </div>\n </div>\n <div [nasClass]=\"getTimeClass(currentStopover?.estimatedDepartureTime, currentStopover?.estimatedDepartureDate)\">\n <div [nasClass]=\"getClass('', ['departure'])\">\n <span>{{ departureTimeLabel }} {{ currentStopover?.departureDate }} {{ currentStopover?.departureTime }}</span>\n </div>\n <div [nasClass]=\"getClass('', ['estimated-time'])\" *ngIf=\"currentStopover?.estimatedDepartureDate || currentStopover?.estimatedDepartureTime\">\n {{ departureTimeLabel }} {{ currentStopover?.estimatedDepartureDate }}\n {{ currentStopover?.estimatedDepartureTime }}\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-journey-stopover{position:relative}.nas-journey-stopover__line{position:absolute;top:20px;left:-31px;background-image:radial-gradient(circle closest-side,#E9E7E4 6px,transparent 100%);background-position:0 100%;background-repeat:repeat-x;background-size:6px 10px}.nas-journey-stopover__line--transit-label{top:0}.nas-journey-stopover__line:before{content:\"\";position:absolute;left:-2.5px;width:12px;height:12px;border-radius:50%}.nas-journey-stopover__line:before{top:25px;background-color:#15273f}.nas-journey-stopover .nas-journey-stopover__stopover-details{padding-top:15px;padding-bottom:15px}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--stopover-time{font-size:12px;font-weight:600}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--place .nas-journey-stopover__airport-code{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:700;font-size:14px;line-height:20px;top:-.5em;letter-spacing:0;vertical-align:super}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time{color:#6f6f6f}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--crossed-time span{text-decoration:line-through}.nas-journey-stopover .nas-journey-stopover__stopover-details .nas-journey-stopover--estimated-time{color:#b12a0b}.nas-journey-stopover__marketing-carrier{margin-bottom:4px}\n"] }]
129
129
  }], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i2.DateHelper }]; }, propDecorators: { journeyStopoverModel: [{
130
130
  type: Input
131
131
  }], transitLabel: [{
@@ -147,4 +147,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
147
147
  }], timeZone: [{
148
148
  type: Input
149
149
  }] } });
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXktc3RvcG92ZXIvam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXktc3RvcG92ZXIvam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFPdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7QUFFaEU7OztHQUdHO0FBTUgsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGdCQUFnQjtJQTZHNUQsSUFBSSxtQkFBbUI7UUFDckIsT0FBTyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsTUFBTSxHQUFHLENBQUM7ZUFDMUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLE1BQU0sR0FBRyxDQUFDO2VBQ3RDLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxhQUFhLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsZUFBZSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUM1QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUI7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxlQUFl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QkFVRyxVQUFVO3NCQUFsQixLQUFLO2dCQVVHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFVRyx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBVUcsTUFBTTtzQkFBZCxLQUFLO2dCQVVHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgTm9yd2VnaWFuIEFpciBTaHV0dGxlLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmFzQ29tcG9uZW50QmFzZSB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS9uYXMtY29tcG9uZW50LmJhc2UnO1xuaW1wb3J0IHsgSm91cm5leVN0b3BvdmVyTW9kZWwgfSBmcm9tICcuLi8uLi9zaGFyZWQvbW9kZWxzL2pvdXJuZXktc3RvcG92ZXIubW9kZWwnO1xuaW1wb3J0IHsgU3RvcG92ZXJUaW1lTW9kZWwgfSBmcm9tICcuL21vZGVscy9zdG9wb3Zlci10aW1lLm1vZGVsJztcbmltcG9ydCB7IENsYXNzTW9kZWwgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9jbGFzcy5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRlSGVscGVyIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9kYXRlL2RhdGUtaGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXRjRGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL3V0Yy1kYXRlLm1vZGVsJztcbmltcG9ydCB7IEZsaWdodFR5cGUgfSBmcm9tICcuLi9qb3VybmV5L21vZGVscy9mbGlnaHQtdHlwZS5lbnVtJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIE5vcndlZ2lhbiBqb3VybmV5LXN0b3BvdmVyIENvbXBvbmVudCB8IEZ1bmN0aW9uYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmFzLWpvdXJuZXktc3RvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2pvdXJuZXktc3RvcG92ZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBKb3VybmV5U3RvcG92ZXJDb21wb25lbnQgZXh0ZW5kcyBOYXNDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuXG4gIHN0b3BvdmVyVGltZTogU3RvcG92ZXJUaW1lTW9kZWw7XG4gIGZsaWdodFR5cGVJY29uOiBzdHJpbmc7XG4gIGN1cnJlbnRTdG9wb3Zlcjoge1xuICAgIGRlcGFydHVyZVRpbWU6IHN0cmluZzsgYXJyaXZhbFRpbWU6IHN0cmluZztcbiAgICBkZXBhcnR1cmVEYXRlOiBzdHJpbmc7IGFycml2YWxEYXRlOiBzdHJpbmc7XG4gICAgZXN0aW1hdGVkQXJyaXZhbFRpbWU/OiBzdHJpbmc7IGVzdGltYXRlZERlcGFydHVyZVRpbWU/OiBzdHJpbmc7XG4gICAgZXN0aW1hdGVkQXJyaXZhbERhdGU/OiBzdHJpbmc7IGVzdGltYXRlZERlcGFydHVyZURhdGU/OiBzdHJpbmc7XG4gIH07XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSByZWNvcmQgY29udGFpbmluZyBKb3VybmV5LXN0b3BvdmVyIGRldGFpbHMuXG4gICAqIEByZXF1aXJlZFxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXktc3RvcG92ZXIgW2pvdXJuZXlTdG9wb3Zlck1vZGVsXT1cImpvdXJuZXlTdG9wb3Zlck1vZGVsXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgICovXG4gIEBJbnB1dCgpIGpvdXJuZXlTdG9wb3Zlck1vZGVsOiBKb3VybmV5U3RvcG92ZXJNb2RlbDtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgbGFiZWwgcGxhY2VkIGJlZm9yZSB0cmFuc2l0IHN0b3AgdGltZS5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5LXN0b3BvdmVyIFt0cmFuc2l0TGFiZWxdPVwiJ1RyYW5zaXQgc3RvcCdcIj48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAgKi9cbiAgQElucHV0KCkgdHJhbnNpdExhYmVsOiBzdHJpbmc7XG5cblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGxhYmVsIHBsYWNlZCBiZWZvcmUgYXJyaXZhbCB0aW1lLlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXktc3RvcG92ZXIgW2Fycml2YWxUaW1lTGFiZWxdPVwiJ0Fycml2YWwnXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgICovXG4gIEBJbnB1dCgpIGFycml2YWxUaW1lTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGxhYmVsIHBsYWNlZCBiZWZvcmUgZGVwYXJ0dXJlIHRpbWUuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbZGVwYXJ0dXJlVGltZUxhYmVsXT1cIidEZXBhcnR1cmUnXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgICovXG4gIEBJbnB1dCgpIGRlcGFydHVyZVRpbWVMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aW1lIGRpc3BsYXkgZm9ybWF0LCBpZiBub3QgcHJvdmlkZWQsIGRlZmF1bHQgZm9ybWF0dGluZyBvbiBkYXRlIHdpbGwgYmUgYXBwbGllZFxuICAgKiBpLmUgJ0hIOm1tJyAsIHdoaWNoIHdpbGwgcmVzdWx0IGluIGRpc3BsYXlpbmcgdGltZSBsaWtlICcwOToyMycuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbdGltZUZvcm1hdF09J0hIOm1tJz48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAgKi9cbiAgQElucHV0KCkgdGltZUZvcm1hdCA9ICdISDptbSc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIGRhdGUgZGlzcGxheSBmb3JtYXQsIGlmIG5vdCBwcm92aWRlZCwgZGVmYXVsdCBmb3JtYXR0aW5nIG9uIGRhdGUgd2lsbCBiZSBhcHBsaWVkXG4gICAqIGkuZSAnZGQgTU1NLCcgLCB3aGljaCB3aWxsIHJlc3VsdCBpbiBkaXNwbGF5aW5nIHRpbWUgbGlrZSAnMjEgRmViLCcuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbZGF0ZUZvcm1hdF09J2RkIE1NTSwnPjwvbmFzLWpvdXJuZXktc3RvcG92ZXI+XG4gICovXG4gIEBJbnB1dCgpIGRhdGVGb3JtYXQgPSAnZGQgTU1NLCc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIFRyYW5zaXQgSG91ciBpbmRpY2F0b3IuXG4gICAqIGlmIG5vdCBwcm92aWRlZCwgdHJhbnNpdCB0aW1lIHdpbGwgbm90IGJlIHNob3duXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbdHJhbnNpdEhvdXJzSW5kaWNhdG9yXT0naCc+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgKi9cbiAgQElucHV0KCkgdHJhbnNpdEhvdXJzSW5kaWNhdG9yOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIFRyYW5zaXQgTWludXRlcyBpbmRpY2F0b3IuXG4gICAqIGlmIG5vdCBwcm92aWRlZCwgdHJhbnNpdCB0aW1lIHdpbGwgbm90IGJlIHNob3duXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbdHJhbnNpdE1pbnV0ZXNJbmRpY2F0b3JdPSdtJz48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAqL1xuICBASW5wdXQoKSB0cmFuc2l0TWludXRlc0luZGljYXRvcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS4gV2hlbiBub3Qgc3VwcGxpZWQsIHVzZXMgdGhlIHZhbHVlIG9mIExPQ0FMRV9JRCwgd2hpY2ggaXMgZW4tVVMgYnkgZGVmYXVsdC5cbiAgICogVGhpcyByZXF1aXJlcyB0aGF0IHJlZ2lzdGVyTG9jYWxlRGF0YSBpcyBjYWxsZWQgd2l0aCB0aGUgcmVzcGVjdGl2ZSBsb2NhbGUuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbbG9jYWxlXT1cIidlcydcIj48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAqL1xuICBASW5wdXQoKSBsb2NhbGUgPSAnZW4tVVMnO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFVzZXIgY2FuIGlucHV0IHRoZSB0aW1lem9uZSB0byBsb2NhbGl6ZSB0aGUgZGF0ZS5cbiAgICogRGVmYXVsdCBpcyBzZXQgdG8gVVRDIGFuZCBpdCB3aWxsIGJ5IGRlZmF1bHQgc2hvdyB0aGUgZGF0ZSBleGFjdGx5IHdoYXQgaXMgcGFzc2VkIHRvIGl0LlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXktc3RvcG92ZXIgW3RpbWVab25lXT1cIidVVEMnXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgKi9cbiAgQElucHV0KCkgdGltZVpvbmUgPSAnVVRDJztcblxuICBnZXQgZGlzcGxheVN0b3BvdmVyVGltZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2l0TWludXRlc0luZGljYXRvcj8ubGVuZ3RoID4gMFxuICAgICAgJiYgdGhpcy50cmFuc2l0SG91cnNJbmRpY2F0b3I/Lmxlbmd0aCA+IDBcbiAgICAgICYmICh0aGlzLnN0b3BvdmVyVGltZT8ubnVtYmVyT2ZIb3VycyA+IDAgfHwgdGhpcy5zdG9wb3ZlclRpbWU/Lm51bWJlck9mTWludXRlcyA+IDApO1xuICB9XG5cbiAgZ2V0IGxpbmVDbGFzcygpOiBDbGFzc01vZGVsIHtcbiAgICBpZiAodGhpcy5kaXNwbGF5U3RvcG92ZXJUaW1lKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnbGluZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnbGluZScsIFsndHJhbnNpdC1sYWJlbCddKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSwgcHJpdmF0ZSBkYXRlU2VydmljZTogRGF0ZUhlbHBlcikge1xuICAgIHN1cGVyKCduYXMtam91cm5leS1zdG9wb3ZlcicpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mbGlnaHRUeXBlSWNvbiA9IHRoaXMuZ2V0RmxpZ2h0VHlwZUljb24oKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoX2NoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLnNldERpc3BsYXlEYXRlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREaXNwbGF5RGF0ZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuam91cm5leVN0b3BvdmVyTW9kZWwpIHtcblxuICAgICAgdGhpcy5zdG9wb3ZlclRpbWUgPSB0aGlzLmdldFN0b3BvdmVyVGltZSh0aGlzLmRhdGVTZXJ2aWNlLmRhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbERlcGFydHVyZVRpbWUpLFxuICAgICAgICB0aGlzLmRhdGVTZXJ2aWNlLmRhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbEFycml2YWxUaW1lKSk7XG5cbiAgICAgIHRoaXMuY3VycmVudFN0b3BvdmVyID0ge1xuICAgICAgICBkZXBhcnR1cmVUaW1lOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbERlcGFydHVyZVRpbWUsIHRoaXMudGltZUZvcm1hdCksXG4gICAgICAgIGFycml2YWxUaW1lOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbEFycml2YWxUaW1lLCB0aGlzLnRpbWVGb3JtYXQpLFxuICAgICAgICBkZXBhcnR1cmVEYXRlOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbERlcGFydHVyZURhdGUsIHRoaXMuZGF0ZUZvcm1hdCksXG4gICAgICAgIGFycml2YWxEYXRlOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbEFycml2YWxEYXRlLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWREZXBhcnR1cmVEYXRlOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5lc3RpbWF0ZWREZXBhcnR1cmVUaW1lLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWRBcnJpdmFsRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leVN0b3BvdmVyTW9kZWwuZXN0aW1hdGVkQXJyaXZhbFRpbWUsIHRoaXMuZGF0ZUZvcm1hdCksXG4gICAgICAgIGVzdGltYXRlZERlcGFydHVyZVRpbWU6IHRoaXMudHJhbnNmb3JtRGF0ZSh0aGlzLmpvdXJuZXlTdG9wb3Zlck1vZGVsLmVzdGltYXRlZERlcGFydHVyZVRpbWUsIHRoaXMudGltZUZvcm1hdCksXG4gICAgICAgIGVzdGltYXRlZEFycml2YWxUaW1lOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5lc3RpbWF0ZWRBcnJpdmFsVGltZSwgdGhpcy50aW1lRm9ybWF0KVxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRyYW5zZm9ybURhdGUoZGF0ZTogVXRjRGF0ZSwgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLmRhdGVTZXJ2aWNlLmRhdGUoZGF0ZSksIGZvcm1hdCwgdGhpcy50aW1lWm9uZSwgdGhpcy5sb2NhbGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTdG9wb3ZlclRpbWUoZGVwYXJ0dXJlVGltZTogRGF0ZSwgYXJyaXZhbFRpbWU6IERhdGUpOiBTdG9wb3ZlclRpbWVNb2RlbCB7XG4gICAgY29uc3QgZGlmZmVyZW5jZUluTWludXRlcyA9ICgoKGRlcGFydHVyZVRpbWUuZ2V0VGltZSgpKSAtIChhcnJpdmFsVGltZS5nZXRUaW1lKCkpKSAvICgxMDAwICogNjApKTtcbiAgICByZXR1cm4ge1xuICAgICAgbnVtYmVyT2ZIb3VyczogTWF0aC5mbG9vcihkaWZmZXJlbmNlSW5NaW51dGVzIC8gNjApLFxuICAgICAgbnVtYmVyT2ZNaW51dGVzOiBNYXRoLmZsb29yKGRpZmZlcmVuY2VJbk1pbnV0ZXMgJSA2MClcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGbGlnaHRUeXBlSWNvbigpOiBzdHJpbmcge1xuICAgIGlmKHRoaXMuam91cm5leVN0b3BvdmVyTW9kZWw/LmZsaWdodFR5cGUpIHtcbiAgICAgIGNvbnN0IGZsaWdodFR5cGUgPSB0aGlzLmpvdXJuZXlTdG9wb3Zlck1vZGVsPy5mbGlnaHRUeXBlO1xuICAgICAgc3dpdGNoKGZsaWdodFR5cGUpIHtcbiAgICAgICAgY2FzZSBGbGlnaHRUeXBlLkRZOlxuICAgICAgICBjYXNlIEZsaWdodFR5cGUuRDg6XG4gICAgICAgICAgcmV0dXJuICdmbGlnaHQtdHlwZS1ub3J3ZWdpYW4nO1xuICAgICAgICBjYXNlIEZsaWdodFR5cGUuV0Y6IFxuICAgICAgICAgIHJldHVybiAnZmxpZ2h0LXR5cGUtd2lkZXJvZSc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFRpbWVDbGFzcyhlc3RpbWF0ZWRUaW1lOiBzdHJpbmcsIGVzdGltYXRlZERhdGU6IHN0cmluZyk6IENsYXNzTW9kZWwge1xuICAgIGlmIChlc3RpbWF0ZWRUaW1lIHx8IGVzdGltYXRlZERhdGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldENsYXNzKCcnLCBbJ2Nyb3NzZWQtdGltZSddKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Q2xhc3MoJycsIFsndGltZSddKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKClcIiAqbmdJZj1cImpvdXJuZXlTdG9wb3Zlck1vZGVsXCI+XG4gIDxzcGFuIFtuYXNDbGFzc109XCJsaW5lQ2xhc3NcIj48L3NwYW4+XG5cbiAgPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ3N0b3BvdmVyLWRldGFpbHMnKVwiPlxuICAgIDxkaXZcbiAgICAgIFtuYXNDbGFzc109XCJnZXRDbGFzcygnJywgWydzdG9wb3Zlci10aW1lJ10pXCJcbiAgICAgICpuZ0lmPVwiZGlzcGxheVN0b3BvdmVyVGltZVwiXG4gICAgPlxuICAgICAge3sgdHJhbnNpdExhYmVsIH19XG4gICAgICAoPHNwYW4gKm5nSWY9XCJzdG9wb3ZlclRpbWU/Lm51bWJlck9mSG91cnNcIlxuICAgICAgICA+e3sgc3RvcG92ZXJUaW1lPy5udW1iZXJPZkhvdXJzXG4gICAgICAgIH19e3sgdHJhbnNpdEhvdXJzSW5kaWNhdG9yIH19Jm5ic3A7PC9zcGFuXG4gICAgICA+XG4gICAgICA8c3BhbiAqbmdJZj1cInN0b3BvdmVyVGltZT8ubnVtYmVyT2ZNaW51dGVzXCJcbiAgICAgICAgPnt7IHN0b3BvdmVyVGltZT8ubnVtYmVyT2ZNaW51dGVzIH19IHt7IHRyYW5zaXRNaW51dGVzSW5kaWNhdG9yIH19PC9zcGFuXG4gICAgICA+KVxuICAgIDwvZGl2PlxuICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ3BsYWNlJ10pXCI+XG4gICAgICB7eyBqb3VybmV5U3RvcG92ZXJNb2RlbD8uYWlycG9ydE5hbWUgfX1cbiAgICAgIHt7IGpvdXJuZXlTdG9wb3Zlck1vZGVsPy5haXJwb3J0Q29kZSB9fVxuICAgICAgPHNwYW4gKm5nSWY9XCJqb3VybmV5U3RvcG92ZXJNb2RlbD8uZmxpZ2h0Q29kZVwiPih7eyBqb3VybmV5U3RvcG92ZXJNb2RlbD8uZmxpZ2h0Q29kZSB9fSk8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImpvdXJuZXlTdG9wb3Zlck1vZGVsPy5haXJsaW5lTmFtZSAmJiBmbGlnaHRUeXBlSWNvblwiIFtuYXNDbGFzc109XCJnZXRDbGFzcygnZmxpZ2h0LXR5cGUnKVwiPlxuICAgICAgPG5hcy1pY29uIFt0eXBlXT1cImZsaWdodFR5cGVJY29uXCI+PC9uYXMtaWNvbj4ge3sgam91cm5leVN0b3BvdmVyTW9kZWwuYWlybGluZU5hbWUgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3MoY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsVGltZSwgY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsRGF0ZSlcIj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ2Fycml2YWwnXSlcIj5cbiAgICAgICAgPHNwYW4+e3thcnJpdmFsVGltZUxhYmVsfX0ge3tjdXJyZW50U3RvcG92ZXI/LmFycml2YWxEYXRlfX0ge3tjdXJyZW50U3RvcG92ZXI/LmFycml2YWxUaW1lfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ2VzdGltYXRlZC10aW1lJ10pXCIgICpuZ0lmPVwiY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsRGF0ZSB8fCBjdXJyZW50U3RvcG92ZXI/LmVzdGltYXRlZEFycml2YWxUaW1lXCI+XG4gICAgICAgIHt7IGFycml2YWxUaW1lTGFiZWwgfX0ge3sgY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsRGF0ZSB9fVxuICAgICAgICB7eyBjdXJyZW50U3RvcG92ZXI/LmVzdGltYXRlZEFycml2YWxUaW1lIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3MoY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWREZXBhcnR1cmVUaW1lLCBjdXJyZW50U3RvcG92ZXI/LmVzdGltYXRlZERlcGFydHVyZURhdGUpXCI+XG4gICAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzcygnJywgWydkZXBhcnR1cmUnXSlcIj5cbiAgICAgICAgPHNwYW4+e3sgZGVwYXJ0dXJlVGltZUxhYmVsIH19IHt7IGN1cnJlbnRTdG9wb3Zlcj8uZGVwYXJ0dXJlRGF0ZSB9fSB7eyBjdXJyZW50U3RvcG92ZXI/LmRlcGFydHVyZVRpbWUgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ2VzdGltYXRlZC10aW1lJ10pXCIgICpuZ0lmPVwiY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWREZXBhcnR1cmVEYXRlIHx8IGN1cnJlbnRTdG9wb3Zlcj8uZXN0aW1hdGVkRGVwYXJ0dXJlVGltZVwiPlxuICAgICAgICB7eyBkZXBhcnR1cmVUaW1lTGFiZWwgfX0ge3sgY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWREZXBhcnR1cmVEYXRlIH19XG4gICAgICAgIHt7IGN1cnJlbnRTdG9wb3Zlcj8uZXN0aW1hdGVkRGVwYXJ0dXJlVGltZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXktc3RvcG92ZXIvam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2pvdXJuZXktc3RvcG92ZXIvam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFPdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7OztBQUU1RTs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsZ0JBQWdCO0lBNkc1RCxJQUFJLG1CQUFtQjtRQUNyQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxNQUFNLEdBQUcsQ0FBQztlQUMxQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsTUFBTSxHQUFHLENBQUM7ZUFDdEMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLGFBQWEsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxlQUFlLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQzVCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUM5QjthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLGVB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VUFBVTtzQkFBbEIsS0FBSztnQkFVRyxVQUFVO3NCQUFsQixLQUFLO2dCQVVHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFVRyx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBVUcsTUFBTTtzQkFBZCxLQUFLO2dCQVVHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgTm9yd2VnaWFuIEFpciBTaHV0dGxlLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmFzQ29tcG9uZW50QmFzZSB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS9uYXMtY29tcG9uZW50LmJhc2UnO1xuaW1wb3J0IHsgSm91cm5leVN0b3BvdmVyTW9kZWwgfSBmcm9tICcuLi8uLi9zaGFyZWQvbW9kZWxzL2pvdXJuZXktc3RvcG92ZXIubW9kZWwnO1xuaW1wb3J0IHsgU3RvcG92ZXJUaW1lTW9kZWwgfSBmcm9tICcuL21vZGVscy9zdG9wb3Zlci10aW1lLm1vZGVsJztcbmltcG9ydCB7IENsYXNzTW9kZWwgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9jbGFzcy5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYXRlSGVscGVyIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9kYXRlL2RhdGUtaGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXRjRGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL3V0Yy1kYXRlLm1vZGVsJztcbmltcG9ydCB7IE1hcmtldGluZ0NhcnJpZXIgfSBmcm9tICcuLi9qb3VybmV5L21vZGVscy9tYXJrZXRpbmctY2Fycmllci5lbnVtJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIE5vcndlZ2lhbiBqb3VybmV5LXN0b3BvdmVyIENvbXBvbmVudCB8IEZ1bmN0aW9uYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmFzLWpvdXJuZXktc3RvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vam91cm5leS1zdG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2pvdXJuZXktc3RvcG92ZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBKb3VybmV5U3RvcG92ZXJDb21wb25lbnQgZXh0ZW5kcyBOYXNDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuXG4gIHN0b3BvdmVyVGltZTogU3RvcG92ZXJUaW1lTW9kZWw7XG4gIG1hcmtldGluZ0NhcnJpZXJJY29uOiBzdHJpbmc7XG4gIGN1cnJlbnRTdG9wb3Zlcjoge1xuICAgIGRlcGFydHVyZVRpbWU6IHN0cmluZzsgYXJyaXZhbFRpbWU6IHN0cmluZztcbiAgICBkZXBhcnR1cmVEYXRlOiBzdHJpbmc7IGFycml2YWxEYXRlOiBzdHJpbmc7XG4gICAgZXN0aW1hdGVkQXJyaXZhbFRpbWU/OiBzdHJpbmc7IGVzdGltYXRlZERlcGFydHVyZVRpbWU/OiBzdHJpbmc7XG4gICAgZXN0aW1hdGVkQXJyaXZhbERhdGU/OiBzdHJpbmc7IGVzdGltYXRlZERlcGFydHVyZURhdGU/OiBzdHJpbmc7XG4gIH07XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSByZWNvcmQgY29udGFpbmluZyBKb3VybmV5LXN0b3BvdmVyIGRldGFpbHMuXG4gICAqIEByZXF1aXJlZFxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXktc3RvcG92ZXIgW2pvdXJuZXlTdG9wb3Zlck1vZGVsXT1cImpvdXJuZXlTdG9wb3Zlck1vZGVsXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgICovXG4gIEBJbnB1dCgpIGpvdXJuZXlTdG9wb3Zlck1vZGVsOiBKb3VybmV5U3RvcG92ZXJNb2RlbDtcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgbGFiZWwgcGxhY2VkIGJlZm9yZSB0cmFuc2l0IHN0b3AgdGltZS5cbiAgICogQGV4YW1wbGVcbiAgICogPG5hcy1qb3VybmV5LXN0b3BvdmVyIFt0cmFuc2l0TGFiZWxdPVwiJ1RyYW5zaXQgc3RvcCdcIj48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAgKi9cbiAgQElucHV0KCkgdHJhbnNpdExhYmVsOiBzdHJpbmc7XG5cblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGxhYmVsIHBsYWNlZCBiZWZvcmUgYXJyaXZhbCB0aW1lLlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXktc3RvcG92ZXIgW2Fycml2YWxUaW1lTGFiZWxdPVwiJ0Fycml2YWwnXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgICovXG4gIEBJbnB1dCgpIGFycml2YWxUaW1lTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IElucHV0XG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGxhYmVsIHBsYWNlZCBiZWZvcmUgZGVwYXJ0dXJlIHRpbWUuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbZGVwYXJ0dXJlVGltZUxhYmVsXT1cIidEZXBhcnR1cmUnXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgICovXG4gIEBJbnB1dCgpIGRlcGFydHVyZVRpbWVMYWJlbDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aW1lIGRpc3BsYXkgZm9ybWF0LCBpZiBub3QgcHJvdmlkZWQsIGRlZmF1bHQgZm9ybWF0dGluZyBvbiBkYXRlIHdpbGwgYmUgYXBwbGllZFxuICAgKiBpLmUgJ0hIOm1tJyAsIHdoaWNoIHdpbGwgcmVzdWx0IGluIGRpc3BsYXlpbmcgdGltZSBsaWtlICcwOToyMycuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbdGltZUZvcm1hdF09J0hIOm1tJz48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAgKi9cbiAgQElucHV0KCkgdGltZUZvcm1hdCA9ICdISDptbSc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIGRhdGUgZGlzcGxheSBmb3JtYXQsIGlmIG5vdCBwcm92aWRlZCwgZGVmYXVsdCBmb3JtYXR0aW5nIG9uIGRhdGUgd2lsbCBiZSBhcHBsaWVkXG4gICAqIGkuZSAnZGQgTU1NLCcgLCB3aGljaCB3aWxsIHJlc3VsdCBpbiBkaXNwbGF5aW5nIHRpbWUgbGlrZSAnMjEgRmViLCcuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbZGF0ZUZvcm1hdF09J2RkIE1NTSwnPjwvbmFzLWpvdXJuZXktc3RvcG92ZXI+XG4gICovXG4gIEBJbnB1dCgpIGRhdGVGb3JtYXQgPSAnZGQgTU1NLCc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIFRyYW5zaXQgSG91ciBpbmRpY2F0b3IuXG4gICAqIGlmIG5vdCBwcm92aWRlZCwgdHJhbnNpdCB0aW1lIHdpbGwgbm90IGJlIHNob3duXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbdHJhbnNpdEhvdXJzSW5kaWNhdG9yXT0naCc+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgKi9cbiAgQElucHV0KCkgdHJhbnNpdEhvdXJzSW5kaWNhdG9yOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBJbnB1dFxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIFRyYW5zaXQgTWludXRlcyBpbmRpY2F0b3IuXG4gICAqIGlmIG5vdCBwcm92aWRlZCwgdHJhbnNpdCB0aW1lIHdpbGwgbm90IGJlIHNob3duXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbdHJhbnNpdE1pbnV0ZXNJbmRpY2F0b3JdPSdtJz48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAqL1xuICBASW5wdXQoKSB0cmFuc2l0TWludXRlc0luZGljYXRvcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS4gV2hlbiBub3Qgc3VwcGxpZWQsIHVzZXMgdGhlIHZhbHVlIG9mIExPQ0FMRV9JRCwgd2hpY2ggaXMgZW4tVVMgYnkgZGVmYXVsdC5cbiAgICogVGhpcyByZXF1aXJlcyB0aGF0IHJlZ2lzdGVyTG9jYWxlRGF0YSBpcyBjYWxsZWQgd2l0aCB0aGUgcmVzcGVjdGl2ZSBsb2NhbGUuXG4gICAqIEBleGFtcGxlXG4gICAqIDxuYXMtam91cm5leS1zdG9wb3ZlciBbbG9jYWxlXT1cIidlcydcIj48L25hcy1qb3VybmV5LXN0b3BvdmVyPlxuICAqL1xuICBASW5wdXQoKSBsb2NhbGUgPSAnZW4tVVMnO1xuXG4gIC8qKlxuICAgKiBAcHJvcGVydHkgSW5wdXRcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFVzZXIgY2FuIGlucHV0IHRoZSB0aW1lem9uZSB0byBsb2NhbGl6ZSB0aGUgZGF0ZS5cbiAgICogRGVmYXVsdCBpcyBzZXQgdG8gVVRDIGFuZCBpdCB3aWxsIGJ5IGRlZmF1bHQgc2hvdyB0aGUgZGF0ZSBleGFjdGx5IHdoYXQgaXMgcGFzc2VkIHRvIGl0LlxuICAgKiBAZXhhbXBsZVxuICAgKiA8bmFzLWpvdXJuZXktc3RvcG92ZXIgW3RpbWVab25lXT1cIidVVEMnXCI+PC9uYXMtam91cm5leS1zdG9wb3Zlcj5cbiAgKi9cbiAgQElucHV0KCkgdGltZVpvbmUgPSAnVVRDJztcblxuICBnZXQgZGlzcGxheVN0b3BvdmVyVGltZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2l0TWludXRlc0luZGljYXRvcj8ubGVuZ3RoID4gMFxuICAgICAgJiYgdGhpcy50cmFuc2l0SG91cnNJbmRpY2F0b3I/Lmxlbmd0aCA+IDBcbiAgICAgICYmICh0aGlzLnN0b3BvdmVyVGltZT8ubnVtYmVyT2ZIb3VycyA+IDAgfHwgdGhpcy5zdG9wb3ZlclRpbWU/Lm51bWJlck9mTWludXRlcyA+IDApO1xuICB9XG5cbiAgZ2V0IGxpbmVDbGFzcygpOiBDbGFzc01vZGVsIHtcbiAgICBpZiAodGhpcy5kaXNwbGF5U3RvcG92ZXJUaW1lKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnbGluZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDbGFzcygnbGluZScsIFsndHJhbnNpdC1sYWJlbCddKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSwgcHJpdmF0ZSBkYXRlU2VydmljZTogRGF0ZUhlbHBlcikge1xuICAgIHN1cGVyKCduYXMtam91cm5leS1zdG9wb3ZlcicpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrZXRpbmdDYXJyaWVySWNvbiA9IHRoaXMuZ2V0TWFya2V0aW5nQ2Fycmllckljb24oKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoX2NoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLnNldERpc3BsYXlEYXRlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREaXNwbGF5RGF0ZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuam91cm5leVN0b3BvdmVyTW9kZWwpIHtcblxuICAgICAgdGhpcy5zdG9wb3ZlclRpbWUgPSB0aGlzLmdldFN0b3BvdmVyVGltZSh0aGlzLmRhdGVTZXJ2aWNlLmRhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbERlcGFydHVyZVRpbWUpLFxuICAgICAgICB0aGlzLmRhdGVTZXJ2aWNlLmRhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbEFycml2YWxUaW1lKSk7XG5cbiAgICAgIHRoaXMuY3VycmVudFN0b3BvdmVyID0ge1xuICAgICAgICBkZXBhcnR1cmVUaW1lOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbERlcGFydHVyZVRpbWUsIHRoaXMudGltZUZvcm1hdCksXG4gICAgICAgIGFycml2YWxUaW1lOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbEFycml2YWxUaW1lLCB0aGlzLnRpbWVGb3JtYXQpLFxuICAgICAgICBkZXBhcnR1cmVEYXRlOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbERlcGFydHVyZURhdGUsIHRoaXMuZGF0ZUZvcm1hdCksXG4gICAgICAgIGFycml2YWxEYXRlOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5sb2NhbEFycml2YWxEYXRlLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWREZXBhcnR1cmVEYXRlOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5lc3RpbWF0ZWREZXBhcnR1cmVUaW1lLCB0aGlzLmRhdGVGb3JtYXQpLFxuICAgICAgICBlc3RpbWF0ZWRBcnJpdmFsRGF0ZTogdGhpcy50cmFuc2Zvcm1EYXRlKHRoaXMuam91cm5leVN0b3BvdmVyTW9kZWwuZXN0aW1hdGVkQXJyaXZhbFRpbWUsIHRoaXMuZGF0ZUZvcm1hdCksXG4gICAgICAgIGVzdGltYXRlZERlcGFydHVyZVRpbWU6IHRoaXMudHJhbnNmb3JtRGF0ZSh0aGlzLmpvdXJuZXlTdG9wb3Zlck1vZGVsLmVzdGltYXRlZERlcGFydHVyZVRpbWUsIHRoaXMudGltZUZvcm1hdCksXG4gICAgICAgIGVzdGltYXRlZEFycml2YWxUaW1lOiB0aGlzLnRyYW5zZm9ybURhdGUodGhpcy5qb3VybmV5U3RvcG92ZXJNb2RlbC5lc3RpbWF0ZWRBcnJpdmFsVGltZSwgdGhpcy50aW1lRm9ybWF0KVxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRyYW5zZm9ybURhdGUoZGF0ZTogVXRjRGF0ZSwgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLmRhdGVTZXJ2aWNlLmRhdGUoZGF0ZSksIGZvcm1hdCwgdGhpcy50aW1lWm9uZSwgdGhpcy5sb2NhbGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTdG9wb3ZlclRpbWUoZGVwYXJ0dXJlVGltZTogRGF0ZSwgYXJyaXZhbFRpbWU6IERhdGUpOiBTdG9wb3ZlclRpbWVNb2RlbCB7XG4gICAgY29uc3QgZGlmZmVyZW5jZUluTWludXRlcyA9ICgoKGRlcGFydHVyZVRpbWUuZ2V0VGltZSgpKSAtIChhcnJpdmFsVGltZS5nZXRUaW1lKCkpKSAvICgxMDAwICogNjApKTtcbiAgICByZXR1cm4ge1xuICAgICAgbnVtYmVyT2ZIb3VyczogTWF0aC5mbG9vcihkaWZmZXJlbmNlSW5NaW51dGVzIC8gNjApLFxuICAgICAgbnVtYmVyT2ZNaW51dGVzOiBNYXRoLmZsb29yKGRpZmZlcmVuY2VJbk1pbnV0ZXMgJSA2MClcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNYXJrZXRpbmdDYXJyaWVySWNvbigpOiBzdHJpbmcge1xuICAgIGlmKHRoaXMuam91cm5leVN0b3BvdmVyTW9kZWw/Lm1hcmtldGluZ0NhcnJpZXIpIHtcbiAgICAgIGNvbnN0IG1hcmtldGluZ0NhcnJpZXIgPSB0aGlzLmpvdXJuZXlTdG9wb3Zlck1vZGVsPy5tYXJrZXRpbmdDYXJyaWVyO1xuICAgICAgc3dpdGNoKG1hcmtldGluZ0NhcnJpZXIpIHtcbiAgICAgICAgY2FzZSBNYXJrZXRpbmdDYXJyaWVyLkRZOlxuICAgICAgICBjYXNlIE1hcmtldGluZ0NhcnJpZXIuRDg6XG4gICAgICAgICAgcmV0dXJuICdtYXJrZXRpbmctY2Fycmllci1ub3J3ZWdpYW4nO1xuICAgICAgICBjYXNlIE1hcmtldGluZ0NhcnJpZXIuV0Y6IFxuICAgICAgICAgIHJldHVybiAnbWFya2V0aW5nLWNhcnJpZXItd2lkZXJvZSc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFRpbWVDbGFzcyhlc3RpbWF0ZWRUaW1lOiBzdHJpbmcsIGVzdGltYXRlZERhdGU6IHN0cmluZyk6IENsYXNzTW9kZWwge1xuICAgIGlmIChlc3RpbWF0ZWRUaW1lIHx8IGVzdGltYXRlZERhdGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldENsYXNzKCcnLCBbJ2Nyb3NzZWQtdGltZSddKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Q2xhc3MoJycsIFsndGltZSddKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKClcIiAqbmdJZj1cImpvdXJuZXlTdG9wb3Zlck1vZGVsXCI+XG4gIDxzcGFuIFtuYXNDbGFzc109XCJsaW5lQ2xhc3NcIj48L3NwYW4+XG5cbiAgPGRpdiBbbmFzQ2xhc3NdPVwiZ2V0Q2xhc3MoJ3N0b3BvdmVyLWRldGFpbHMnKVwiPlxuICAgIDxkaXZcbiAgICAgIFtuYXNDbGFzc109XCJnZXRDbGFzcygnJywgWydzdG9wb3Zlci10aW1lJ10pXCJcbiAgICAgICpuZ0lmPVwiZGlzcGxheVN0b3BvdmVyVGltZVwiXG4gICAgPlxuICAgICAge3sgdHJhbnNpdExhYmVsIH19XG4gICAgICAoPHNwYW4gKm5nSWY9XCJzdG9wb3ZlclRpbWU/Lm51bWJlck9mSG91cnNcIlxuICAgICAgICA+e3sgc3RvcG92ZXJUaW1lPy5udW1iZXJPZkhvdXJzXG4gICAgICAgIH19e3sgdHJhbnNpdEhvdXJzSW5kaWNhdG9yIH19Jm5ic3A7PC9zcGFuXG4gICAgICA+XG4gICAgICA8c3BhbiAqbmdJZj1cInN0b3BvdmVyVGltZT8ubnVtYmVyT2ZNaW51dGVzXCJcbiAgICAgICAgPnt7IHN0b3BvdmVyVGltZT8ubnVtYmVyT2ZNaW51dGVzIH19IHt7IHRyYW5zaXRNaW51dGVzSW5kaWNhdG9yIH19PC9zcGFuXG4gICAgICA+KVxuICAgIDwvZGl2PlxuICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ3BsYWNlJ10pXCI+XG4gICAgICB7eyBqb3VybmV5U3RvcG92ZXJNb2RlbD8uYWlycG9ydE5hbWUgfX1cbiAgICAgIHt7IGpvdXJuZXlTdG9wb3Zlck1vZGVsPy5haXJwb3J0Q29kZSB9fVxuICAgICAgPHNwYW4gKm5nSWY9XCJqb3VybmV5U3RvcG92ZXJNb2RlbD8uZmxpZ2h0Q29kZVwiPih7eyBqb3VybmV5U3RvcG92ZXJNb2RlbD8uZmxpZ2h0Q29kZSB9fSk8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImpvdXJuZXlTdG9wb3Zlck1vZGVsPy5haXJsaW5lTmFtZSAmJiBtYXJrZXRpbmdDYXJyaWVySWNvblwiIFtuYXNDbGFzc109XCJnZXRDbGFzcygnbWFya2V0aW5nLWNhcnJpZXInKVwiPlxuICAgICAgPG5hcy1pY29uIFt0eXBlXT1cIm1hcmtldGluZ0NhcnJpZXJJY29uXCI+PC9uYXMtaWNvbj4ge3sgam91cm5leVN0b3BvdmVyTW9kZWwuYWlybGluZU5hbWUgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3MoY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsVGltZSwgY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsRGF0ZSlcIj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ2Fycml2YWwnXSlcIj5cbiAgICAgICAgPHNwYW4+e3thcnJpdmFsVGltZUxhYmVsfX0ge3tjdXJyZW50U3RvcG92ZXI/LmFycml2YWxEYXRlfX0ge3tjdXJyZW50U3RvcG92ZXI/LmFycml2YWxUaW1lfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ2VzdGltYXRlZC10aW1lJ10pXCIgICpuZ0lmPVwiY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsRGF0ZSB8fCBjdXJyZW50U3RvcG92ZXI/LmVzdGltYXRlZEFycml2YWxUaW1lXCI+XG4gICAgICAgIHt7IGFycml2YWxUaW1lTGFiZWwgfX0ge3sgY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWRBcnJpdmFsRGF0ZSB9fVxuICAgICAgICB7eyBjdXJyZW50U3RvcG92ZXI/LmVzdGltYXRlZEFycml2YWxUaW1lIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRUaW1lQ2xhc3MoY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWREZXBhcnR1cmVUaW1lLCBjdXJyZW50U3RvcG92ZXI/LmVzdGltYXRlZERlcGFydHVyZURhdGUpXCI+XG4gICAgICA8ZGl2IFtuYXNDbGFzc109XCJnZXRDbGFzcygnJywgWydkZXBhcnR1cmUnXSlcIj5cbiAgICAgICAgPHNwYW4+e3sgZGVwYXJ0dXJlVGltZUxhYmVsIH19IHt7IGN1cnJlbnRTdG9wb3Zlcj8uZGVwYXJ0dXJlRGF0ZSB9fSB7eyBjdXJyZW50U3RvcG92ZXI/LmRlcGFydHVyZVRpbWUgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgW25hc0NsYXNzXT1cImdldENsYXNzKCcnLCBbJ2VzdGltYXRlZC10aW1lJ10pXCIgICpuZ0lmPVwiY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWREZXBhcnR1cmVEYXRlIHx8IGN1cnJlbnRTdG9wb3Zlcj8uZXN0aW1hdGVkRGVwYXJ0dXJlVGltZVwiPlxuICAgICAgICB7eyBkZXBhcnR1cmVUaW1lTGFiZWwgfX0ge3sgY3VycmVudFN0b3BvdmVyPy5lc3RpbWF0ZWREZXBhcnR1cmVEYXRlIH19XG4gICAgICAgIHt7IGN1cnJlbnRTdG9wb3Zlcj8uZXN0aW1hdGVkRGVwYXJ0dXJlVGltZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -63,11 +63,11 @@ export class ToggleComponent extends NasComponentBase {
63
63
  history.pushState(null, '', option.href);
64
64
  }
65
65
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
66
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToggleComponent, selector: "nas-toggle", inputs: { options: "options", large: "large", compact: "compact", rounded: "rounded", small: "small", big: "big", selectedValue: "selectedValue", label: "label", vertical: "vertical", grouped: "grouped", group: "group", nasFormControlName: "nasFormControlName", nasFormGroup: "nasFormGroup", scrollable: "scrollable" }, outputs: { handleChange: "handleChange" }, usesInheritance: true, ngImport: i0, template: "<div [nasClass]=\"mainClasses()\" *ngIf=\"!nasFormControlName; else reactiveForm\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\" [checked]=\"option.value === selectedValue\"\n [attr.name]=\"group\" type=\"radio\" [attr.value]=\"option.value\" (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n</div>\n<ng-template #reactiveForm>\n <div [nasClass]=\"mainClasses()\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\" [formGroup]=\"nasFormGroup\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [formControlName]=\"nasFormControlName\" [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\"\n [checked]=\"option.value === selectedValue\" [name]=\"group\" type=\"radio\" [value]=\"option.value\"\n (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n </div>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-toggle__items{display:flex;flex-grow:2;perspective:1000px}.nas-toggle__title{font-size:16px;line-height:24px}.nas-toggle .icon-small{display:none;margin-left:-3px;margin-right:9px}@media (min-width: 640px){.nas-toggle .icon-small{display:inline-block}}.nas-toggle__item{transform-origin:center top;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:flip-in .55s ease both;animation-delay:.42s;-webkit-user-select:none;user-select:none;width:100%}.nas-toggle__item:nth-child(1){animation-delay:60ms}.nas-toggle__item:nth-child(2){animation-delay:.12s}.nas-toggle__item:nth-child(3){animation-delay:.18s}.nas-toggle__item:nth-child(4){animation-delay:.24s}.nas-toggle__item:nth-child(5){animation-delay:.3s}.nas-toggle__item:nth-child(6){animation-delay:.36s}.nas-toggle__item:not(:first-child){margin-left:2px}.nas-toggle__item:not(:last-child){margin-right:2px}.nas-toggle__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-size:16px;line-height:24px;text-align:center;color:#15273f;white-space:nowrap;cursor:pointer;margin:0;border:2px solid #E9E7E4;background-color:#fff;transition:transform .15s cubic-bezier(0,0,.1,1)}.nas-toggle__label--content{padding:12px}.nas-toggle__label:hover,.nas-toggle__label:focus{border-color:#15273f}.nas-toggle__label:active{transform:translateY(3px)}.nas-toggle__price{display:block}@media (min-width: 640px){.nas-toggle__price{display:none}}.nas-toggle--compact .nas-toggle__label{font-size:14px;line-height:20px}.nas-toggle--compact .nas-toggle__label--content,.nas-toggle--compact .nas-toggle__link{padding:6px}.nas-toggle--large{align-items:stretch}.nas-toggle--large .icon-small{margin:0}.nas-toggle--large .nas-toggle__label{height:100%;border-color:#fff;background-color:#fff}.nas-toggle--large .nas-toggle__label--content{padding:24px}.nas-toggle--large .nas-toggle__label:hover,.nas-toggle--large .nas-toggle__label:focus{border-color:#15273f}.nas-toggle--large .nas-toggle__item:not(:first-child){margin-left:6px}.nas-toggle--large .nas-toggle__item:not(:last-child){margin-right:6px}.nas-toggle--large .nas-toggle__text{display:block}@media (min-width: 640px){.nas-toggle--large .nas-toggle__price{display:block;margin-bottom:-9px}}.nas-toggle--large .nas-toggle__link{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.nas-toggle--grouped{padding-bottom:3px;border-bottom:3px solid #15273F}.nas-toggle--vertical .nas-toggle__items{flex-direction:column;padding-bottom:0;border-bottom:0}.nas-toggle--vertical .nas-toggle__item,.nas-toggle--vertical .nas-toggle__item:not(:first-child),.nas-toggle--vertical .nas-toggle__item:not(:last-child){margin:0 0 3px}.nas-toggle--vertical .nas-toggle__label{text-align:left}.nas-toggle--vertical .nas-toggle__label--content,.nas-toggle--vertical .nas-toggle__link{padding:6px 24px}.nas-toggle--rounded .nas-toggle__label{margin:0 auto 6px;height:83px;width:83px;border-radius:100%}.nas-toggle--rounded .nas-toggle__label:hover,.nas-toggle--rounded .nas-toggle__label:focus{border-color:#fff;background-color:#fff}.nas-toggle--rounded .nas-toggle__item:not(:first-child){margin-left:12px}.nas-toggle--rounded .nas-toggle__item:not(:last-child){margin-right:12px}.nas-toggle--rounded .nas-toggle__text{display:block;text-align:center}.nas-toggle--big .nas-toggle__label{height:96px;width:96px;padding-top:9px}.nas-toggle--small .nas-toggle__label{padding-top:6px;height:65px;width:65px}.nas-toggle__radio{position:fixed;top:-99px;left:-99px;opacity:0}.nas-toggle__radio:checked~.nas-toggle__label{color:#15273f;border-color:#15273f;background-color:#ebf4ff}.nas-toggle__radio:focus-visible~.nas-toggle__label{box-shadow:0 0 1px 2px #e9e7e4,0 0 2px 3px #7ca4cd}.nas-toggle__radio:disabled~.nas-toggle__label{opacity:.4;pointer-events:none}.nas-toggle--scrollable .nas-toggle__items{overflow-x:auto;overflow-y:hidden;padding-bottom:20px;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar{height:4px;width:4px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-thumb{background:#15273f;border-radius:2px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:end{margin-right:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:start{margin-left:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-moz-scrollbar{height:4px;width:4px}.nas-toggle__link{display:block;color:#15273f;border:0;padding:12px}.nas-toggle__link--selected{color:#fff}::ng-deep .nas-icon-small{margin-right:6px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
66
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ToggleComponent, selector: "nas-toggle", inputs: { options: "options", large: "large", compact: "compact", rounded: "rounded", small: "small", big: "big", selectedValue: "selectedValue", label: "label", vertical: "vertical", grouped: "grouped", group: "group", nasFormControlName: "nasFormControlName", nasFormGroup: "nasFormGroup", scrollable: "scrollable" }, outputs: { handleChange: "handleChange" }, usesInheritance: true, ngImport: i0, template: "<div [nasClass]=\"mainClasses()\" *ngIf=\"!nasFormControlName; else reactiveForm\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\" [checked]=\"option.value === selectedValue\"\n [attr.name]=\"group\" type=\"radio\" [attr.value]=\"option.value\" (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n</div>\n<ng-template #reactiveForm>\n <div [nasClass]=\"mainClasses()\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\" [formGroup]=\"nasFormGroup\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [formControlName]=\"nasFormControlName\" [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\"\n [checked]=\"option.value === selectedValue\" [name]=\"group\" type=\"radio\" [value]=\"option.value\"\n (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n </div>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-toggle__items{display:flex;flex-grow:2;perspective:1000px}.nas-toggle__title{font-size:16px;line-height:24px}.nas-toggle .icon-small{display:none;margin-left:-3px;margin-right:9px}@media (min-width: 640px){.nas-toggle .icon-small{display:inline-block}}.nas-toggle__item{transform-origin:center top;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:flip-in .55s ease both;animation-delay:.42s;-webkit-user-select:none;user-select:none;width:100%}.nas-toggle__item:nth-child(1){animation-delay:60ms}.nas-toggle__item:nth-child(2){animation-delay:.12s}.nas-toggle__item:nth-child(3){animation-delay:.18s}.nas-toggle__item:nth-child(4){animation-delay:.24s}.nas-toggle__item:nth-child(5){animation-delay:.3s}.nas-toggle__item:nth-child(6){animation-delay:.36s}.nas-toggle__item:not(:first-child){margin-left:2px}.nas-toggle__item:not(:last-child){margin-right:2px}.nas-toggle__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-size:16px;line-height:24px;text-align:center;color:#15273f;white-space:nowrap;cursor:pointer;margin:0;border:2px solid #E9E7E4;background-color:#fff;transition:transform .15s cubic-bezier(0,0,.1,1)}.nas-toggle__label--content{padding:12px}.nas-toggle__label:hover,.nas-toggle__label:focus{border-color:#15273f}.nas-toggle__label:active{transform:translateY(3px)}.nas-toggle__price{display:block}@media (min-width: 640px){.nas-toggle__price{display:none}}.nas-toggle--compact .nas-toggle__label{font-size:14px;line-height:20px}.nas-toggle--compact .nas-toggle__label--content,.nas-toggle--compact .nas-toggle__link{padding:6px}.nas-toggle--large{align-items:stretch}.nas-toggle--large .icon-small{margin:0}.nas-toggle--large .nas-toggle__label{height:100%;border-color:#fff;background-color:#fff}.nas-toggle--large .nas-toggle__label--content{padding:24px}.nas-toggle--large .nas-toggle__label:hover,.nas-toggle--large .nas-toggle__label:focus{border-color:#15273f}.nas-toggle--large .nas-toggle__item:not(:first-child){margin-left:6px}.nas-toggle--large .nas-toggle__item:not(:last-child){margin-right:6px}.nas-toggle--large .nas-toggle__text{display:block}@media (min-width: 640px){.nas-toggle--large .nas-toggle__price{display:block;margin-bottom:-9px}}.nas-toggle--large .nas-toggle__link{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.nas-toggle--grouped{padding-bottom:3px;border-bottom:3px solid #15273F}.nas-toggle--vertical .nas-toggle__items{flex-direction:column;padding-bottom:0;border-bottom:0}.nas-toggle--vertical .nas-toggle__item,.nas-toggle--vertical .nas-toggle__item:not(:first-child),.nas-toggle--vertical .nas-toggle__item:not(:last-child){margin:0 0 3px}.nas-toggle--vertical .nas-toggle__label{text-align:left}.nas-toggle--vertical .nas-toggle__label--content,.nas-toggle--vertical .nas-toggle__link{padding:6px 24px}.nas-toggle--rounded .nas-toggle__label{margin:0 auto 6px;height:83px;width:83px;border-radius:100%}.nas-toggle--rounded .nas-toggle__label:hover,.nas-toggle--rounded .nas-toggle__label:focus{border-color:#fff;background-color:#fff}.nas-toggle--rounded .nas-toggle__item:not(:first-child){margin-left:12px}.nas-toggle--rounded .nas-toggle__item:not(:last-child){margin-right:12px}.nas-toggle--rounded .nas-toggle__text{display:block;text-align:center}.nas-toggle--big .nas-toggle__label{height:96px;width:96px;padding-top:9px}.nas-toggle--small .nas-toggle__label{padding-top:6px;height:65px;width:65px}.nas-toggle__radio{position:fixed;top:-99px;left:-99px;opacity:0}.nas-toggle__radio:checked~.nas-toggle__label{color:#15273f;border-color:#15273f;background-color:#ebf4ff}.nas-toggle__radio:focus-visible~.nas-toggle__label{box-shadow:0 0 1px 2px #e9e7e4,0 0 2px 3px #7ca4cd}.nas-toggle__radio:disabled~.nas-toggle__label{opacity:.4;pointer-events:none}.nas-toggle--scrollable .nas-toggle__items{overflow-x:auto;overflow-y:hidden;padding-bottom:20px;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar{height:4px;width:4px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-thumb{background:#15273f;border-radius:2px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:end{margin-right:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:start{margin-left:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-moz-scrollbar{height:4px;width:4px}.nas-toggle__link{display:block;color:#15273f;border:0;padding:12px}::ng-deep .nas-icon-small{margin-right:6px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "nas-icon", inputs: ["icon", "type", "isIndicator", "lightCircularBackground", "cssClass"] }, { kind: "directive", type: i3.NasClassDirective, selector: "[nasClass]", inputs: ["nasClass", "attr.class"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
67
67
  }
68
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToggleComponent, decorators: [{
69
69
  type: Component,
70
- args: [{ selector: 'nas-toggle', template: "<div [nasClass]=\"mainClasses()\" *ngIf=\"!nasFormControlName; else reactiveForm\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\" [checked]=\"option.value === selectedValue\"\n [attr.name]=\"group\" type=\"radio\" [attr.value]=\"option.value\" (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n</div>\n<ng-template #reactiveForm>\n <div [nasClass]=\"mainClasses()\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\" [formGroup]=\"nasFormGroup\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [formControlName]=\"nasFormControlName\" [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\"\n [checked]=\"option.value === selectedValue\" [name]=\"group\" type=\"radio\" [value]=\"option.value\"\n (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n </div>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-toggle__items{display:flex;flex-grow:2;perspective:1000px}.nas-toggle__title{font-size:16px;line-height:24px}.nas-toggle .icon-small{display:none;margin-left:-3px;margin-right:9px}@media (min-width: 640px){.nas-toggle .icon-small{display:inline-block}}.nas-toggle__item{transform-origin:center top;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:flip-in .55s ease both;animation-delay:.42s;-webkit-user-select:none;user-select:none;width:100%}.nas-toggle__item:nth-child(1){animation-delay:60ms}.nas-toggle__item:nth-child(2){animation-delay:.12s}.nas-toggle__item:nth-child(3){animation-delay:.18s}.nas-toggle__item:nth-child(4){animation-delay:.24s}.nas-toggle__item:nth-child(5){animation-delay:.3s}.nas-toggle__item:nth-child(6){animation-delay:.36s}.nas-toggle__item:not(:first-child){margin-left:2px}.nas-toggle__item:not(:last-child){margin-right:2px}.nas-toggle__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-size:16px;line-height:24px;text-align:center;color:#15273f;white-space:nowrap;cursor:pointer;margin:0;border:2px solid #E9E7E4;background-color:#fff;transition:transform .15s cubic-bezier(0,0,.1,1)}.nas-toggle__label--content{padding:12px}.nas-toggle__label:hover,.nas-toggle__label:focus{border-color:#15273f}.nas-toggle__label:active{transform:translateY(3px)}.nas-toggle__price{display:block}@media (min-width: 640px){.nas-toggle__price{display:none}}.nas-toggle--compact .nas-toggle__label{font-size:14px;line-height:20px}.nas-toggle--compact .nas-toggle__label--content,.nas-toggle--compact .nas-toggle__link{padding:6px}.nas-toggle--large{align-items:stretch}.nas-toggle--large .icon-small{margin:0}.nas-toggle--large .nas-toggle__label{height:100%;border-color:#fff;background-color:#fff}.nas-toggle--large .nas-toggle__label--content{padding:24px}.nas-toggle--large .nas-toggle__label:hover,.nas-toggle--large .nas-toggle__label:focus{border-color:#15273f}.nas-toggle--large .nas-toggle__item:not(:first-child){margin-left:6px}.nas-toggle--large .nas-toggle__item:not(:last-child){margin-right:6px}.nas-toggle--large .nas-toggle__text{display:block}@media (min-width: 640px){.nas-toggle--large .nas-toggle__price{display:block;margin-bottom:-9px}}.nas-toggle--large .nas-toggle__link{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.nas-toggle--grouped{padding-bottom:3px;border-bottom:3px solid #15273F}.nas-toggle--vertical .nas-toggle__items{flex-direction:column;padding-bottom:0;border-bottom:0}.nas-toggle--vertical .nas-toggle__item,.nas-toggle--vertical .nas-toggle__item:not(:first-child),.nas-toggle--vertical .nas-toggle__item:not(:last-child){margin:0 0 3px}.nas-toggle--vertical .nas-toggle__label{text-align:left}.nas-toggle--vertical .nas-toggle__label--content,.nas-toggle--vertical .nas-toggle__link{padding:6px 24px}.nas-toggle--rounded .nas-toggle__label{margin:0 auto 6px;height:83px;width:83px;border-radius:100%}.nas-toggle--rounded .nas-toggle__label:hover,.nas-toggle--rounded .nas-toggle__label:focus{border-color:#fff;background-color:#fff}.nas-toggle--rounded .nas-toggle__item:not(:first-child){margin-left:12px}.nas-toggle--rounded .nas-toggle__item:not(:last-child){margin-right:12px}.nas-toggle--rounded .nas-toggle__text{display:block;text-align:center}.nas-toggle--big .nas-toggle__label{height:96px;width:96px;padding-top:9px}.nas-toggle--small .nas-toggle__label{padding-top:6px;height:65px;width:65px}.nas-toggle__radio{position:fixed;top:-99px;left:-99px;opacity:0}.nas-toggle__radio:checked~.nas-toggle__label{color:#15273f;border-color:#15273f;background-color:#ebf4ff}.nas-toggle__radio:focus-visible~.nas-toggle__label{box-shadow:0 0 1px 2px #e9e7e4,0 0 2px 3px #7ca4cd}.nas-toggle__radio:disabled~.nas-toggle__label{opacity:.4;pointer-events:none}.nas-toggle--scrollable .nas-toggle__items{overflow-x:auto;overflow-y:hidden;padding-bottom:20px;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar{height:4px;width:4px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-thumb{background:#15273f;border-radius:2px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:end{margin-right:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:start{margin-left:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-moz-scrollbar{height:4px;width:4px}.nas-toggle__link{display:block;color:#15273f;border:0;padding:12px}.nas-toggle__link--selected{color:#fff}::ng-deep .nas-icon-small{margin-right:6px}\n"] }]
70
+ args: [{ selector: 'nas-toggle', template: "<div [nasClass]=\"mainClasses()\" *ngIf=\"!nasFormControlName; else reactiveForm\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\" [checked]=\"option.value === selectedValue\"\n [attr.name]=\"group\" type=\"radio\" [attr.value]=\"option.value\" (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n</div>\n<ng-template #reactiveForm>\n <div [nasClass]=\"mainClasses()\">\n <h3 [nasClass]=\"getClass('title')\">{{label}}</h3>\n <div [nasClass]=\"getClass('items')\" [formGroup]=\"nasFormGroup\">\n <span [nasClass]=\"getClass('item')\" *ngFor=\"let option of options\">\n <input [formControlName]=\"nasFormControlName\" [nasClass]=\"getClass('radio')\" [attr.id]=\"getOptionId(option)\"\n [checked]=\"option.value === selectedValue\" [name]=\"group\" type=\"radio\" [value]=\"option.value\"\n (change)=\"onChange(option)\">\n <label [nasClass]=\"getClass('label')\" [attr.for]=\"getOptionId(option)\">\n <ng-container *ngIf=\"option?.href; else noLink\">\n <a [nasClass]=\"getClass('link', selectedValue == option.value && 'selected')\" [href]=\"option.href\"\n (click)=\"onClickHref($event, option)\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </a>\n </ng-container>\n <ng-template #noLink>\n <div [nasClass]=\"getClass('label--content')\">\n <nas-icon *ngIf=\"option.icon\" [icon]=\"option.icon\" [type]=\"iconType\"></nas-icon>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"!isRounded\">{{ option.text }}</span>\n </div>\n </ng-template>\n </label>\n <span [nasClass]=\"getClass('text')\" *ngIf=\"isRounded\">{{option.text}}</span>\n </span>\n </div>\n </div>\n</ng-template>", styles: ["@keyframes fade-in{0%{opacity:0}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-30px)}}@keyframes fade-in-right{0%{opacity:0;transform:translate(30px)}}@keyframes fade-out{to{opacity:0}}@keyframes flip-in{0%{opacity:0;transform:rotateX(-90deg)}40%{opacity:1;transform:rotateX(10deg)}}@keyframes flip-out{to{opacity:0;transform:rotateX(-90deg)}}@keyframes pop-in-from-top{0%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-100,1,1);opacity:0}6.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-30.227,1,1)}13.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,1.76,1,1)}20%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,7.08,1,1)}26.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,3.838,1,1)}33.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.902,1,1);opacity:1}40%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.237,1,1)}46.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.312,1,1)}53.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.141,1,1)}60%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.021,1,1)}66.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.015,1,1)}73.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.013,1,1)}80%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,.005,1,1)}86.67%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1)}93.33%{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}to{transform:matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,-.001,1,1);-webkit-transform:translate3d(0,0,0)}}.nas-toggle__items{display:flex;flex-grow:2;perspective:1000px}.nas-toggle__title{font-size:16px;line-height:24px}.nas-toggle .icon-small{display:none;margin-left:-3px;margin-right:9px}@media (min-width: 640px){.nas-toggle .icon-small{display:inline-block}}.nas-toggle__item{transform-origin:center top;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:flip-in .55s ease both;animation-delay:.42s;-webkit-user-select:none;user-select:none;width:100%}.nas-toggle__item:nth-child(1){animation-delay:60ms}.nas-toggle__item:nth-child(2){animation-delay:.12s}.nas-toggle__item:nth-child(3){animation-delay:.18s}.nas-toggle__item:nth-child(4){animation-delay:.24s}.nas-toggle__item:nth-child(5){animation-delay:.3s}.nas-toggle__item:nth-child(6){animation-delay:.36s}.nas-toggle__item:not(:first-child){margin-left:2px}.nas-toggle__item:not(:last-child){margin-right:2px}.nas-toggle__label{font-family:NorwegianTextPro,Arial,Helvetica Neue,Helvetica,sans-serif;font-size:16px;line-height:24px;text-align:center;color:#15273f;white-space:nowrap;cursor:pointer;margin:0;border:2px solid #E9E7E4;background-color:#fff;transition:transform .15s cubic-bezier(0,0,.1,1)}.nas-toggle__label--content{padding:12px}.nas-toggle__label:hover,.nas-toggle__label:focus{border-color:#15273f}.nas-toggle__label:active{transform:translateY(3px)}.nas-toggle__price{display:block}@media (min-width: 640px){.nas-toggle__price{display:none}}.nas-toggle--compact .nas-toggle__label{font-size:14px;line-height:20px}.nas-toggle--compact .nas-toggle__label--content,.nas-toggle--compact .nas-toggle__link{padding:6px}.nas-toggle--large{align-items:stretch}.nas-toggle--large .icon-small{margin:0}.nas-toggle--large .nas-toggle__label{height:100%;border-color:#fff;background-color:#fff}.nas-toggle--large .nas-toggle__label--content{padding:24px}.nas-toggle--large .nas-toggle__label:hover,.nas-toggle--large .nas-toggle__label:focus{border-color:#15273f}.nas-toggle--large .nas-toggle__item:not(:first-child){margin-left:6px}.nas-toggle--large .nas-toggle__item:not(:last-child){margin-right:6px}.nas-toggle--large .nas-toggle__text{display:block}@media (min-width: 640px){.nas-toggle--large .nas-toggle__price{display:block;margin-bottom:-9px}}.nas-toggle--large .nas-toggle__link{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.nas-toggle--grouped{padding-bottom:3px;border-bottom:3px solid #15273F}.nas-toggle--vertical .nas-toggle__items{flex-direction:column;padding-bottom:0;border-bottom:0}.nas-toggle--vertical .nas-toggle__item,.nas-toggle--vertical .nas-toggle__item:not(:first-child),.nas-toggle--vertical .nas-toggle__item:not(:last-child){margin:0 0 3px}.nas-toggle--vertical .nas-toggle__label{text-align:left}.nas-toggle--vertical .nas-toggle__label--content,.nas-toggle--vertical .nas-toggle__link{padding:6px 24px}.nas-toggle--rounded .nas-toggle__label{margin:0 auto 6px;height:83px;width:83px;border-radius:100%}.nas-toggle--rounded .nas-toggle__label:hover,.nas-toggle--rounded .nas-toggle__label:focus{border-color:#fff;background-color:#fff}.nas-toggle--rounded .nas-toggle__item:not(:first-child){margin-left:12px}.nas-toggle--rounded .nas-toggle__item:not(:last-child){margin-right:12px}.nas-toggle--rounded .nas-toggle__text{display:block;text-align:center}.nas-toggle--big .nas-toggle__label{height:96px;width:96px;padding-top:9px}.nas-toggle--small .nas-toggle__label{padding-top:6px;height:65px;width:65px}.nas-toggle__radio{position:fixed;top:-99px;left:-99px;opacity:0}.nas-toggle__radio:checked~.nas-toggle__label{color:#15273f;border-color:#15273f;background-color:#ebf4ff}.nas-toggle__radio:focus-visible~.nas-toggle__label{box-shadow:0 0 1px 2px #e9e7e4,0 0 2px 3px #7ca4cd}.nas-toggle__radio:disabled~.nas-toggle__label{opacity:.4;pointer-events:none}.nas-toggle--scrollable .nas-toggle__items{overflow-x:auto;overflow-y:hidden;padding-bottom:20px;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar{height:4px;width:4px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-thumb{background:#15273f;border-radius:2px}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:end{margin-right:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-webkit-scrollbar-track-piece:start{margin-left:100px;background:#fff}.nas-toggle--scrollable .nas-toggle__items::-moz-scrollbar{height:4px;width:4px}.nas-toggle__link{display:block;color:#15273f;border:0;padding:12px}::ng-deep .nas-icon-small{margin-right:6px}\n"] }]
71
71
  }], ctorParameters: function () { return []; }, propDecorators: { options: [{
72
72
  type: Input
73
73
  }], large: [{
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zdG9wb3Zlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUtY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC9tb2RlbHMvam91cm5leS1zdG9wb3Zlci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxpZ2h0VHlwZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvam91cm5leS9tb2RlbHMvZmxpZ2h0LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBVdGNEYXRlIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvdXRjLWRhdGUubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEpvdXJuZXlTdG9wb3Zlck1vZGVsIHtcbiAgYWlycG9ydE5hbWU6IHN0cmluZztcbiAgYWlycG9ydENvZGU/OiBzdHJpbmc7XG4gIGFpcmxpbmVOYW1lPzogc3RyaW5nO1xuICBmbGlnaHRDb2RlPzogc3RyaW5nO1xuICBmbGlnaHRUeXBlPzogRmxpZ2h0VHlwZTtcbiAgbG9jYWxBcnJpdmFsVGltZTogVXRjRGF0ZTtcbiAgbG9jYWxEZXBhcnR1cmVUaW1lOiBVdGNEYXRlO1xuICBsb2NhbEFycml2YWxEYXRlPzogVXRjRGF0ZTtcbiAgbG9jYWxEZXBhcnR1cmVEYXRlPzogVXRjRGF0ZTtcbiAgZXN0aW1hdGVkQXJyaXZhbFRpbWU/OiBVdGNEYXRlO1xuICBlc3RpbWF0ZWREZXBhcnR1cmVUaW1lPzogVXRjRGF0ZTtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zdG9wb3Zlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUtY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC9tb2RlbHMvam91cm5leS1zdG9wb3Zlci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFya2V0aW5nQ2FycmllciB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvam91cm5leS9tb2RlbHMvbWFya2V0aW5nLWNhcnJpZXIuZW51bSc7XG5pbXBvcnQgeyBVdGNEYXRlIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvdXRjLWRhdGUubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEpvdXJuZXlTdG9wb3Zlck1vZGVsIHtcbiAgYWlycG9ydE5hbWU6IHN0cmluZztcbiAgYWlycG9ydENvZGU/OiBzdHJpbmc7XG4gIGFpcmxpbmVOYW1lPzogc3RyaW5nO1xuICBmbGlnaHRDb2RlPzogc3RyaW5nO1xuICBtYXJrZXRpbmdDYXJyaWVyPzogTWFya2V0aW5nQ2FycmllcjtcbiAgbG9jYWxBcnJpdmFsVGltZTogVXRjRGF0ZTtcbiAgbG9jYWxEZXBhcnR1cmVUaW1lOiBVdGNEYXRlO1xuICBsb2NhbEFycml2YWxEYXRlPzogVXRjRGF0ZTtcbiAgbG9jYWxEZXBhcnR1cmVEYXRlPzogVXRjRGF0ZTtcbiAgZXN0aW1hdGVkQXJyaXZhbFRpbWU/OiBVdGNEYXRlO1xuICBlc3RpbWF0ZWREZXBhcnR1cmVUaW1lPzogVXRjRGF0ZTtcbn1cbiJdfQ==