@coolon/angular-ui-powerups 0.0.94 → 0.0.96

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.
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"exports":[{"from":"./lib/nav-item"},{"from":"./lib/navigation-session"},{"from":"./lib/place-component"},{"from":"./lib/place-config"},{"from":"./lib/place-definition"},{"from":"./lib/place-history"},{"from":"./lib/place-router"},{"from":"./lib/place.decorator"},{"from":"./lib/place.module"},{"from":"./lib/visit"},{"from":"./lib/components/abstract-place-navigation.component"},{"from":"./lib/components/busy-overlay/busy-overlay.component"},{"from":"./lib/components/empty-state/empty-state.component"},{"from":"./lib/components/list-place-nav/list-place-nav.component"},{"from":"./lib/components/place-outlet/place-outlet.component"},{"from":"./lib/components/place-outlet/route-animations"},{"from":"./lib/components/tabbed-place-navigation/tabbed-place-navigation.component"},{"from":"./lib/guards/abstract-enter-place.guard"},{"from":"./lib/guards/leave-place.guard"},{"from":"./lib/guards/noop-auth-guard.service"},{"from":"./lib/places/noop-gateway-place.component"},{"from":"./lib/route/formatter"},{"from":"./lib/route/json-types"},{"from":"./lib/route/parameter-decorators"},{"from":"./lib/route/parameter-definition.class"},{"from":"./lib/route/parameter-sanitiser"},{"from":"./lib/route/parameter-snapshot"},{"from":"./lib/route/visit-sanitiser"}],"metadata":{"AngularUiPowerupsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"declarations":[],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":15,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatInputModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatFormFieldModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatSelectModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":21,"character":4},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵbe"}],"exports":[{"__symbolic":"reference","name":"ɵbe"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵk"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":15,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatInputModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatFormFieldModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatSelectModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":21,"character":4}],"exports":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}]}]}],"members":{}},"ɵb":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":7,"character":47},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[pectinCommand]"}]}],"members":{"pectinCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"commandParameter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":34,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":34,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":34,"character":54}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"notifyClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":75,"character":3},"arguments":["click",["$event"]]}]}]}},"ɵc":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":6,"character":1},"arguments":[{"selector":"[pectinFocusBinding]"}]}],"members":{"pectinFocusBinding":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"focusBindingTarget":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"onFocusIn":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":17,"character":3},"arguments":["focusin"]}]}],"onFocusOut":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":24,"character":3},"arguments":["focusout"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":31,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":31,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":32,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":33,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":31,"character":55},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":32,"character":55},{"__symbolic":"reference","name":"any"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"hasBinding":[{"__symbolic":"method"}],"alreadyHasFocus":[{"__symbolic":"method"}],"isFocused":[{"__symbolic":"method"}],"tryAndFocus":[{"__symbolic":"method"}],"modelShouldStillHaveFocus":[{"__symbolic":"method"}],"canFocus":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":3,"character":41},"members":{"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵk"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":22,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatInputModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatFormFieldModule","line":26,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatSelectModule","line":27,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":28,"character":4},{"__symbolic":"reference","name":"ɵa"}],"exports":[{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵk"}]}]}],"members":{}},"ɵf":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"aup-number-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"number\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n","styles":[":host{display:block}input,mat-form-field{width:100%}input mat-hint.faux-error,mat-form-field mat-hint.faux-error{color:#f44336}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ɵd"},"members":{"userValueModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3},"arguments":["valueModel"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":11,"character":24}}]}],"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"floatLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"hint":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"focusCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3},"arguments":["command.focus"]}]}],"blurCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3},"arguments":["command.blur"]}]}],"enterCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3},"arguments":["command.enter"]}]}],"escapeCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3},"arguments":["command.escape"]}]}],"clickCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3},"arguments":["command.click"]}]}],"focus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"blur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"enterKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":33,"character":3}}]}],"escapeKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"notifyClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":39,"character":3},"arguments":["click"]}]}],"notifyFocusIn":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":44,"character":3},"arguments":["focusin"]}]}],"notifyFocusOut":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":50,"character":3},"arguments":["focusout"]}]}],"notifyEnterKey":[{"__symbolic":"method"}],"notifyEscapeKey":[{"__symbolic":"method"}],"safelyInvoke":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"isEnabled":[{"__symbolic":"method"}],"hasErrors":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-string-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n","styles":[":host{display:block}input,mat-form-field{width:100%}input mat-hint.faux-error,mat-form-field mat-hint.faux-error{color:#f44336}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-password-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"password\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n","styles":[":host{display:block}input,mat-form-field{width:100%}input mat-hint.faux-error,mat-form-field mat-hint.faux-error{color:#f44336}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵj":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"aup-select-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngFor=\"let option of optionsModel.value\" [value]=\"option\">{{optionLabelFormat(option)}}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n","styles":[":host{display:inline-block}mat-form-field{width:100%}"]}]}],"members":{"optionsModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":11,"character":12}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInListModel","line":14,"character":12},"arguments":["optionsModel"]}]}],"optionLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"optionLabelFormat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵk":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-noop","template":"","styles":[":host{display:block}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵl":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":20,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":22,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatProgressSpinnerModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":26,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":27,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":28,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":29,"character":4},{"__symbolic":"reference","name":"ɵa"}],"declarations":[{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵo"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵz"}],"entryComponents":[{"__symbolic":"reference","name":"ɵn"}],"exports":[{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵo"},{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵx"}],"providers":[]}]}],"members":{}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-empty-state","template":"\n <div class=\"container\">\n <ng-content></ng-content>\n </div>\n ","styles":[":host{display:flex;flex-direction:column;justify-content:center;align-items:center}.container{padding:var(--aup-default-padding);border:2px dashed rgba(0,0,0,.2);border-radius:5px;font-size:14px;font-weight:300}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-busy-overlay","template":"<ng-content></ng-content>\n<div class=\"busy-overlay-backdrop\" *ngIf=\"busyModel.value\">\n <mat-progress-spinner mode=\"indeterminate\" [diameter]=\"52\"></mat-progress-spinner>\n</div>\n","styles":[":host{position:relative}div.busy-overlay-backdrop{position:absolute;background-color:rgba(0,0,0,.2);top:0;left:0;bottom:0;right:0;display:-ms-grid;display:grid;-ms-grid-columns:auto;grid-template-columns:auto;-ms-grid-rows:auto;grid-template-rows:auto;place-content:center}"]}]}],"members":{"busyModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":10,"character":12}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":13,"character":12},"arguments":["busyModel"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵo":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":36,"character":1},"arguments":[{"selector":"aup-place-outlet","animations":[{"__symbolic":"reference","name":"ɵq"}],"template":"<div class=\"router-outlet-container\"\n [@routeAnimations]=\"{value: getAnimationOrder(), params:{duration: animationDuration}}\"\n [@.disabled]=\"!enableAnimation.value\"\n (@routeAnimations.start)=\"animationStarted()\"\n (@routeAnimations.done)=\"animationDone()\"\n>\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n</div>\n\n","styles":[":host{display:flex;flex-direction:column;min-height:0;overflow-x:hidden}.router-outlet-container{flex:1;display:block;position:relative;min-height:0}router-outlet{display:none}"]}]}],"members":{"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":44,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":44,"character":12},"arguments":["animateModel"]}]}],"animateModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3},"arguments":["animateModel"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":47,"character":26},"arguments":[{"defaultValue":true}]}]}],"customPlaceAnimationOrderModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":51,"character":3},"arguments":["placeAnimationOrderModel"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":51,"character":38}}]}],"customPlaceAnimationOrder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3},"arguments":["placeAnimationOrder"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInListModel","line":55,"character":33},"arguments":["customPlaceAnimationOrderModel"]}]}],"placeChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":58,"character":3}}]}],"routerOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":61,"character":3},"arguments":["routeOutlet",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":87,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":87,"character":27},"arguments":[{"__symbolic":"reference","name":"ɵr"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":88,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":88,"character":27}}]],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":85,"character":39},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵs"},{"__symbolic":"reference","name":"ɵo"}]}],"ngOnInit":[{"__symbolic":"method"}],"getAnimationOrder":[{"__symbolic":"method"}],"navigate":[{"__symbolic":"method"}],"pushRouteChangesToVisit":[{"__symbolic":"method"}],"pushVisitChangesToRoute":[{"__symbolic":"method"}],"onOutletActivated":[{"__symbolic":"method"}],"onOutletDeactivated":[{"__symbolic":"method"}],"animationStarted":[{"__symbolic":"method"}],"animationDone":[{"__symbolic":"method"}]}},"ɵp":{"__symbolic":"function","parameters":["duration"],"value":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":42,"character":9},"arguments":["routeAnimations",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":43,"character":4},"arguments":[":increment",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":24,"character":2},"arguments":[":enter, :leave",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":3,"character":28},"arguments":[{"position":"absolute","top":"0","left":"0","bottom":"0","right":"0"}]},{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":25,"character":2},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":26,"character":4},"arguments":[":enter",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":27,"character":6},"arguments":[{"transform":"translateX(100%)","minHeight":"1px"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":28,"character":6},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":28,"character":39},"arguments":[{"transform":"translateX(0%)"}]}]}],{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":32,"character":4},"arguments":[":leave",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":32,"character":21},"arguments":[{"transform":"translateX(0%)"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":32,"character":61},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":32,"character":94},"arguments":[{"transform":"translateX(-100%)","minHeight":"1px"}]}]}],{"optional":true}]}]]}],{"params":{"duration":{"__symbolic":"reference","name":"duration"}}}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":44,"character":4},"arguments":[":decrement",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":6,"character":2},"arguments":[":enter, :leave",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":3,"character":28},"arguments":[{"position":"absolute","top":"0","left":"0","bottom":"0","right":"0"}]},{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":7,"character":2},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":8,"character":4},"arguments":[":enter",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":9,"character":6},"arguments":[{"transform":"translateX(-100%)"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":10,"character":6},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":10,"character":39},"arguments":[{"transform":"translateX(0%)"}]}]}],{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":14,"character":4},"arguments":[":leave",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":15,"character":6},"arguments":[{"transform":"translateX(0%)"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":16,"character":6},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":16,"character":39},"arguments":[{"transform":"translateX(100%)"}]}]}],{"optional":true}]}]]}],{"params":{"duration":{"__symbolic":"reference","name":"duration"}}}]}]]}},"ɵq":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵp"},"arguments":["0.3s"]},"ɵr":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":2,"character":36},"arguments":["AUP_PLACE_CONFIG"]},"ɵs":{"__symbolic":"interface"},"ɵt":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":41,"character":33},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":38,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":54,"character":39},{"__symbolic":"reference","module":"@angular/router","name":"UrlSerializer","line":55,"character":46},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":57,"character":40},{"__symbolic":"reference","name":"ɵv"}]}],"navigate":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"Trace","line":110,"character":3}}]}],"pushVisitChangesToRoute":[{"__symbolic":"method"}],"doNavigation":[{"__symbolic":"method"}],"createRouteParameters":[{"__symbolic":"method"}],"onAngularRouterStarted":[{"__symbolic":"method"}],"onAngularRouterFinished":[{"__symbolic":"method"}],"extractChildPath":[{"__symbolic":"method"}],"parseUrl":[{"__symbolic":"method"}],"performInitialNavigationIntercept":[{"__symbolic":"method"}],"isInitialNavigation":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵu":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":6,"character":49},"members":{"__ctor__":[{"__symbolic":"constructor"}],"setActivityList":[{"__symbolic":"method"}],"getCurrentActivity":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"confirm":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}]}},"ɵv":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"add":[{"__symbolic":"method"}],"getHistory":[{"__symbolic":"method"}],"setHistory":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵw":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵx"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-tabbed-place-navigation","template":"<nav mat-tab-nav-bar>\n <a mat-tab-link *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span>{{getNav(placeDefinition).title()}}</span>\n </a>\n</nav>\n","styles":[""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵx":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"template":""}]}],"members":{"places":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInListModel","line":25,"character":12},"arguments":["placesModel"]}]}],"placesModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":28,"character":12}}]}],"placeOutlet":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":32,"character":12},"arguments":["placeOutletModel"]}]}],"placeOutletModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":35,"character":12}}]}],"__ctor__":[{"__symbolic":"constructor"}],"getNav":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@typescript-plus/fast-memoize-decorator/dist/src","name":"Memoize","line":53,"character":3}}]}],"isActive":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵy":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵx"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-list-place-nav","template":"<mat-nav-list class=\"app-menu\">\n <a mat-list-item *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [class.active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span class=\"expanded-only\">{{getNav(placeDefinition).title()}}</span>\n </a>\n</mat-nav-list>\n","styles":[":host{display:flex;flex-direction:column;--expanded-width:235px;--nav-item-width:var(--nav-bar-height);width:var(--nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--expanded-width);max-width:var(--expanded-width)}.expanded-only{max-width:0;overflow:hidden}.collapsed-only{max-width:100%;overflow:hidden}.header{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;height:var(--nav-bar-height);border-bottom:var(--pinstripe-border);cursor:pointer}.header .menu{flex:1}.header button{color:inherit;width:var(--nav-item-width);height:var(--nav-bar-height)}mat-nav-list{flex:1;display:flex;flex-direction:column}.mat-list-item{width:var(--nav-item-width);height:var(--nav-bar-height);color:rgba(0,0,0,.6)}.mat-list-item.active{background-color:rgba(0,0,0,.1);color:rgba(0,0,0,.9)}mat-icon{color:inherit}mat-icon.flip-horizontal{transform:scaleX(-1)}:host-context(.expanded) .expanded-only{max-width:100%}:host-context(.expanded) .collapsed-only{max-width:0}:host-context(.expanded) .mat-list-item mat-icon{margin-right:12px}:host-context(.expanded) .mat-list-item span{text-wrap:none;white-space:nowrap}a[ng-reflect-router-link=manage-instruments] mat-icon{transform:rotate(90deg)}.app-menu{padding-top:0}"]}]}],"members":{"expanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":10,"character":3},"arguments":["class.expanded"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"expandMenu":[{"__symbolic":"method"}],"collapseMenu":[{"__symbolic":"method"}],"toggleMenu":[{"__symbolic":"method"}]}},"ɵz":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵba"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵbb"},"arguments":[{"path":"aup-gateway-route","authenticate":false}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":12,"character":1},"arguments":[{"template":""}]}],"members":{"returnUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵbc"},"arguments":[{"storeInUrl":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵbd"},"member":"STRING"}}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":20,"character":30}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵba":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"members":{"canDeactivate":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor"}],"initialiseBindings":[{"__symbolic":"method"}],"installBinding":[{"__symbolic":"method"}],"placeDefinition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@typescript-plus/fast-memoize-decorator","name":"Memoize","line":61,"character":3}}]}],"onPlaceReady":[{"__symbolic":"method"}]}},"ɵbb":{"__symbolic":"function","parameters":["options"],"value":{"__symbolic":"error","message":"Lambda not supported","line":6,"character":9,"module":"./lib/place/place.decorator"}},"ɵbc":{"__symbolic":"function"},"ɵbd":{"__symbolic":"interface"},"ɵbe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatButtonModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatDialogModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatTabsModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/cdk/portal","name":"PortalModule","line":21,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":22,"character":4}],"declarations":[{"__symbolic":"reference","name":"ɵbf"},{"__symbolic":"reference","name":"ɵbh"},{"__symbolic":"reference","name":"ɵbm"},{"__symbolic":"reference","name":"ɵbn"},{"__symbolic":"reference","name":"ɵbg"},{"__symbolic":"reference","name":"ɵbp"},{"__symbolic":"reference","name":"ɵbq"}],"exports":[{"__symbolic":"reference","name":"ɵbf"},{"__symbolic":"reference","name":"ɵbg"},{"__symbolic":"reference","name":"ɵbp"},{"__symbolic":"reference","name":"ɵbq"}],"entryComponents":[{"__symbolic":"reference","name":"ɵbf"},{"__symbolic":"reference","name":"ɵbh"},{"__symbolic":"reference","name":"ɵbm"},{"__symbolic":"reference","name":"ɵbn"}],"providers":[{"__symbolic":"reference","name":"ɵbs"}]}]}],"members":{}},"ɵbf":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵu"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":72,"character":1},"arguments":[{"selector":"aup-activity-container","template":"<mat-tab-group #tabs no-tab-header [dynamicHeight]=\"dynamicHeight\" [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let tab of activityTabs.value\">\n <aup-activity-outlet [interactionContext]=\"this\" [activityContext]=\"tab\"></aup-activity-outlet>\n </mat-tab>\n</mat-tab-group>\n","styles":[":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]}]}],"members":{"initialActivityOutletContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":82,"character":3}}]}],"initialActivityOutletContextEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":110,"character":3},"arguments":["initialActivityOutletContext"]}]}],"dynamicHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":113,"character":3}}]}],"tabs":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":116,"character":3},"arguments":["tabs",{"static":true}]}]}],"outlets":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":119,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵbg"}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"isActive":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}],"finishInitialActivity":[{"__symbolic":"method"}],"onNestedActivityFinished":[{"__symbolic":"method"}],"cleanupStaleNestedActivities":[{"__symbolic":"method"}],"synchroniseSelectedTabIndex":[{"__symbolic":"method"}],"onAnimationFinished":[{"__symbolic":"method"}],"updateActivityList":[{"__symbolic":"method"}],"getSelectedOutlet":[{"__symbolic":"method"}]}},"ɵbg":{"__symbolic":"class","arity":3,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"aup-activity-outlet","template":"","styles":[":host{display:block}"]}]}],"members":{"interactionContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"activityContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":46,"character":38},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":47,"character":30},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":48,"character":22}]}],"ngOnInit":[{"__symbolic":"method"}],"loadActivity":[{"__symbolic":"method"}]}},"ɵbh":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵbi"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"aup-confirmation-dialog","template":"<h3 matDialogTitle *ngIf=\"confirm.title\">{{confirm.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of confirm.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-button (click)=\"cancel()\" data-cy=\"cancel-button\">{{confirm.cancel()}}</button>\n <button mat-raised-button [color]=\"isDestructive() ? 'warn' : 'primary'\"\n (click)=\"done()\" data-cy=\"confirm-button\">{{confirm.ok()}}</button>\n</div>\n\n","styles":[":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":13,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbj"}]}]],"parameters":[{"__symbolic":"reference","name":"ɵbl"}]}],"ngOnInit":[{"__symbolic":"method"}],"isDestructive":[{"__symbolic":"method"}]}},"ɵbi":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵbk"},"members":{}},"ɵbj":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":4,"character":33},"arguments":["InteractionActivityData"]},"ɵbk":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":6,"character":54},"members":{"initialise":[{"__symbolic":"method"}],"done":[{"__symbolic":"method"}],"cancel":[{"__symbolic":"method"}],"onActivityReady":[{"__symbolic":"method"}],"busyWhile":[{"__symbolic":"method"}],"isBusy":[{"__symbolic":"method"}]}},"ɵbl":{"__symbolic":"interface"},"ɵbm":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵbi"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"aup-confirmation-dialog","template":"<h3 matDialogTitle *ngIf=\"confirm.title\">{{confirm.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of confirm.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-button (click)=\"cancel()\" data-cy=\"cancel-button\">{{confirm.cancel()}}</button>\n <button mat-raised-button [color]=\"isDestructive() ? 'warn' : 'primary'\"\n (click)=\"onConfirm()\" data-cy=\"confirm-button\">{{confirm.ok()}}</button>\n</div>\n\n","styles":[":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":14,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbj"}]}],null],"parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵbm"},"member":"Data","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":14,"character":86,"context":{"typeName":"D"},"module":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component"},{"__symbolic":"error","message":"Could not resolve type","line":14,"character":88,"context":{"typeName":"R"},"module":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component"},{"__symbolic":"error","message":"Could not resolve type","line":14,"character":90,"context":{"typeName":"E"},"module":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component"}]},{"__symbolic":"reference","name":"ɵu"}]}],"ngOnInit":[{"__symbolic":"method"}],"isDestructive":[{"__symbolic":"method"}],"onConfirm":[{"__symbolic":"method"}]}},"ɵbn":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵbi"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"aup-alert-dialog","template":"<h3 matDialogTitle *ngIf=\"alert.title\">{{alert.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of alert.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-raised-button color=\"primary\" (click)=\"done()\" data-cy=\"close-button\">{{alert.ok()}}</button>\n</div>\n","styles":[":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":12,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbj"}]}]],"parameters":[{"__symbolic":"reference","name":"ɵbo"}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵbo":{"__symbolic":"interface"},"ɵbp":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-interaction-outlet","template":"<router-outlet name=\"interaction-context\"></router-outlet>\n","styles":[":host{display:block}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵbq":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵu"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"aup-inplace-interaction-context","template":"<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs [dynamicHeight]=\"false\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer\n [(initialActivityOutletContext)]=\"initialActivityContext\"\n [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n","styles":[":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]}]}],"members":{"interactionContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":21,"character":3},"arguments":["activityContainer",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngAfterViewInit":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"_startActivity":[{"__symbolic":"method"}]}},"ɵbr":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":25,"character":55},"arguments":["DIALOG_INTERACTION_SERVICE_DEFAULTS"]},"ɵbs":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵu"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":52,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":63,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":63,"character":27},"arguments":[{"__symbolic":"reference","name":"ɵbr"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":64,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":27},"arguments":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MAT_DIALOG_DEFAULT_OPTIONS","line":64,"character":34}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/material","name":"MatDialog","line":60,"character":46},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":61,"character":33},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":62,"character":31},{"__symbolic":"reference","name":"MatDialogConfig","module":"@angular/material/dialog","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"MatDialogConfig","module":"@angular/material/dialog","arguments":[{"__symbolic":"reference","name":"any"}]}]}],"isActive":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"_startActivity":[{"__symbolic":"method"}],"safelyUpdateActivityListDelegate":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"AngularUiPowerupsModule":"./lib/angular-ui-powerups.module","ɵa":"./lib/directives/directives.module","ɵb":"./lib/directives/command.directive","ɵc":"./lib/directives/focus-binding.directive","ɵd":"./lib/components/disposable-component","ɵe":"./lib/components/components.module","ɵf":"./lib/components/forms/number-input/number-input.component","ɵg":"./lib/components/forms/abstract-input.component","ɵh":"./lib/components/forms/string-input/string-input.component","ɵi":"./lib/components/forms/password-input/password-input.component","ɵj":"./lib/components/forms/select-input/select-input.component","ɵk":"./lib/components/noop/noop.component","ɵl":"./lib/place/place.module","ɵm":"./lib/place/components/empty-state/empty-state.component","ɵn":"./lib/place/components/busy-overlay/busy-overlay.component","ɵo":"./lib/place/components/place-outlet/place-outlet.component","ɵp":"./lib/place/components/place-outlet/route-animations","ɵq":"./lib/place/components/place-outlet/route-animations","ɵr":"./lib/place/place-config","ɵs":"./lib/place/place-config","ɵt":"./lib/place/place-router","ɵu":"./lib/interaction/interaction-context","ɵv":"./lib/place/place-history","ɵw":"./lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component","ɵx":"./lib/place/components/abstract-place-navigation.component","ɵy":"./lib/place/components/list-place-nav/list-place-nav.component","ɵz":"./lib/place/places/noop-gateway-place.component","ɵba":"./lib/place/place-component","ɵbb":"./lib/place/place.decorator","ɵbc":"./lib/place/route/parameter-decorators","ɵbd":"./lib/place/route/formatter","ɵbe":"./lib/interaction/interaction.module","ɵbf":"./lib/interaction/components/activity-container/activity-container.component","ɵbg":"./lib/interaction/components/activity-outlet/activity-outlet.component","ɵbh":"./lib/interaction/components/confirmation-dialog/confirmation-dialog.component","ɵbi":"./lib/interaction/abstract-activity","ɵbj":"./lib/interaction/activity","ɵbk":"./lib/interaction/activity","ɵbl":"./lib/interaction/confirm","ɵbm":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component","ɵbn":"./lib/interaction/components/alert-dialog/alert-dialog.component","ɵbo":"./lib/interaction/alert","ɵbp":"./lib/interaction/components/interaction-outlet/interaction-outlet.component","ɵbq":"./lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component","ɵbr":"./lib/interaction/services/dialog-interaction.service","ɵbs":"./lib/interaction/services/dialog-interaction.service"},"importAs":"@coolon/angular-ui-powerups"}
1
+ {"__symbolic":"module","version":4,"exports":[{"from":"./lib/nav-item"},{"from":"./lib/navigation-session"},{"from":"./lib/place-component"},{"from":"./lib/place-config"},{"from":"./lib/place-definition"},{"from":"./lib/place-history"},{"from":"./lib/place-router"},{"from":"./lib/place.decorator"},{"from":"./lib/place.module"},{"from":"./lib/visit"},{"from":"./lib/components/abstract-place-navigation.component"},{"from":"./lib/components/busy-overlay/busy-overlay.component"},{"from":"./lib/components/empty-state/empty-state.component"},{"from":"./lib/components/list-place-nav/list-place-nav.component"},{"from":"./lib/components/place-outlet/place-outlet.component"},{"from":"./lib/components/place-outlet/route-animations"},{"from":"./lib/components/tabbed-place-navigation/tabbed-place-navigation.component"},{"from":"./lib/guards/abstract-enter-place.guard"},{"from":"./lib/guards/leave-place.guard"},{"from":"./lib/guards/noop-auth-guard.service"},{"from":"./lib/places/noop-gateway-place.component"},{"from":"./lib/route/formatter"},{"from":"./lib/route/json-types"},{"from":"./lib/route/parameter-decorators"},{"from":"./lib/route/parameter-definition.class"},{"from":"./lib/route/parameter-sanitiser"},{"from":"./lib/route/parameter-snapshot"},{"from":"./lib/route/visit-sanitiser"}],"metadata":{"AngularUiPowerupsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"declarations":[],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":15,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatInputModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatFormFieldModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatSelectModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":21,"character":4},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵbe"}],"exports":[{"__symbolic":"reference","name":"ɵbe"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵk"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":15,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatInputModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatFormFieldModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatSelectModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":21,"character":4}],"exports":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}]}]}],"members":{}},"ɵb":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":7,"character":47},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[pectinCommand]"}]}],"members":{"pectinCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"commandParameter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":34,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":34,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":34,"character":54}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"notifyClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":75,"character":3},"arguments":["click",["$event"]]}]}]}},"ɵc":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":6,"character":1},"arguments":[{"selector":"[pectinFocusBinding]"}]}],"members":{"pectinFocusBinding":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"focusBindingTarget":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"onFocusIn":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":17,"character":3},"arguments":["focusin"]}]}],"onFocusOut":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":24,"character":3},"arguments":["focusout"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":31,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":31,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":32,"character":22}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":33,"character":22}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":31,"character":55},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":32,"character":55},{"__symbolic":"reference","name":"any"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"hasBinding":[{"__symbolic":"method"}],"alreadyHasFocus":[{"__symbolic":"method"}],"isFocused":[{"__symbolic":"method"}],"tryAndFocus":[{"__symbolic":"method"}],"modelShouldStillHaveFocus":[{"__symbolic":"method"}],"canFocus":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":3,"character":41},"members":{"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵk"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":22,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatInputModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatFormFieldModule","line":26,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatSelectModule","line":27,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":28,"character":4},{"__symbolic":"reference","name":"ɵa"}],"exports":[{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵk"}]}]}],"members":{}},"ɵf":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"aup-number-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"number\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n","styles":[":host{display:block}input,mat-form-field{width:100%}input mat-hint.faux-error,mat-form-field mat-hint.faux-error{color:#f44336}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ɵd"},"members":{"userValueModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3},"arguments":["valueModel"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":11,"character":24}}]}],"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"floatLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"hint":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"focusCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3},"arguments":["command.focus"]}]}],"blurCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3},"arguments":["command.blur"]}]}],"enterCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3},"arguments":["command.enter"]}]}],"escapeCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3},"arguments":["command.escape"]}]}],"clickCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3},"arguments":["command.click"]}]}],"focus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"blur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"enterKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":33,"character":3}}]}],"escapeKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"notifyClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":39,"character":3},"arguments":["click"]}]}],"notifyFocusIn":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":44,"character":3},"arguments":["focusin"]}]}],"notifyFocusOut":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":50,"character":3},"arguments":["focusout"]}]}],"notifyEnterKey":[{"__symbolic":"method"}],"notifyEscapeKey":[{"__symbolic":"method"}],"safelyInvoke":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"isEnabled":[{"__symbolic":"method"}],"hasErrors":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-string-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n","styles":[":host{display:block}input,mat-form-field{width:100%}input mat-hint.faux-error,mat-form-field mat-hint.faux-error{color:#f44336}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-password-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"password\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n","styles":[":host{display:block}input,mat-form-field{width:100%}input mat-hint.faux-error,mat-form-field mat-hint.faux-error{color:#f44336}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵj":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ɵg"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"aup-select-input","template":"<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"valueModel\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngFor=\"let option of optionsModel.value\" [value]=\"option\">{{optionLabelFormat(option)}}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n","styles":[":host{display:inline-block}mat-form-field{width:100%}"]}]}],"members":{"optionsModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":11,"character":12}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInListModel","line":14,"character":12},"arguments":["optionsModel"]}]}],"optionLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"optionLabelFormat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵk":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-noop","template":"","styles":[":host{display:block}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵl":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":20,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":22,"character":4},{"__symbolic":"reference","module":"@angular/platform-browser/animations","name":"BrowserAnimationsModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatProgressSpinnerModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/material/tabs","name":"MatTabsModule","line":26,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":27,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":28,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":29,"character":4},{"__symbolic":"reference","name":"ɵa"}],"declarations":[{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵo"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵz"}],"entryComponents":[{"__symbolic":"reference","name":"ɵn"}],"exports":[{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵo"},{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵx"}],"providers":[]}]}],"members":{}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-empty-state","template":"\n <div class=\"container\">\n <ng-content></ng-content>\n </div>\n ","styles":[":host{display:flex;flex-direction:column;justify-content:center;align-items:center}.container{padding:var(--aup-default-padding);border:2px dashed rgba(0,0,0,.2);border-radius:5px;font-size:14px;font-weight:300}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-busy-overlay","template":"<ng-content></ng-content>\n<div class=\"busy-overlay-backdrop\" *ngIf=\"busyModel.value\">\n <mat-progress-spinner mode=\"indeterminate\" [diameter]=\"52\"></mat-progress-spinner>\n</div>\n","styles":[":host{position:relative}div.busy-overlay-backdrop{position:absolute;background-color:rgba(0,0,0,.2);top:0;left:0;bottom:0;right:0;display:-ms-grid;display:grid;-ms-grid-columns:auto;grid-template-columns:auto;-ms-grid-rows:auto;grid-template-rows:auto;place-content:center}"]}]}],"members":{"busyModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":10,"character":12}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":13,"character":12},"arguments":["busyModel"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵo":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":36,"character":1},"arguments":[{"selector":"aup-place-outlet","animations":[{"__symbolic":"reference","name":"ɵq"}],"template":"<div class=\"router-outlet-container\"\n [@routeAnimations]=\"{value: getAnimationOrder(), params:{duration: animationDuration}}\"\n [@.disabled]=\"!enableAnimation.value\"\n (@routeAnimations.start)=\"animationStarted()\"\n (@routeAnimations.done)=\"animationDone()\"\n>\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n</div>\n\n","styles":[":host{display:flex;flex-direction:column;min-height:0;overflow-x:hidden}.router-outlet-container{flex:1;display:block;position:relative;min-height:0}router-outlet{display:none}"]}]}],"members":{"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":44,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":44,"character":12},"arguments":["animateModel"]}]}],"animateModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3},"arguments":["animateModel"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":47,"character":26},"arguments":[{"defaultValue":true}]}]}],"customPlaceAnimationOrderModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":51,"character":3},"arguments":["placeAnimationOrderModel"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":51,"character":38}}]}],"customPlaceAnimationOrder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3},"arguments":["placeAnimationOrder"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInListModel","line":55,"character":33},"arguments":["customPlaceAnimationOrderModel"]}]}],"placeChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":58,"character":3}}]}],"routerOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":61,"character":3},"arguments":["routeOutlet",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":87,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":87,"character":27},"arguments":[{"__symbolic":"reference","name":"ɵr"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":88,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":88,"character":27}}]],"parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":85,"character":39},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵs"},{"__symbolic":"reference","name":"ɵo"}]}],"ngOnInit":[{"__symbolic":"method"}],"getAnimationOrder":[{"__symbolic":"method"}],"navigate":[{"__symbolic":"method"}],"pushRouteChangesToVisit":[{"__symbolic":"method"}],"pushVisitChangesToRoute":[{"__symbolic":"method"}],"onOutletActivated":[{"__symbolic":"method"}],"onOutletDeactivated":[{"__symbolic":"method"}],"animationStarted":[{"__symbolic":"method"}],"animationDone":[{"__symbolic":"method"}]}},"ɵp":{"__symbolic":"function","parameters":["duration"],"value":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":42,"character":9},"arguments":["routeAnimations",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":43,"character":4},"arguments":[":increment",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":24,"character":2},"arguments":[":enter, :leave",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":3,"character":28},"arguments":[{"position":"absolute","top":"0","left":"0","bottom":"0","right":"0"}]},{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":25,"character":2},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":26,"character":4},"arguments":[":enter",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":27,"character":6},"arguments":[{"transform":"translateX(100%)","minHeight":"1px"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":28,"character":6},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":28,"character":39},"arguments":[{"transform":"translateX(0%)"}]}]}],{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":32,"character":4},"arguments":[":leave",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":32,"character":21},"arguments":[{"transform":"translateX(0%)"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":32,"character":61},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":32,"character":94},"arguments":[{"transform":"translateX(-100%)","minHeight":"1px"}]}]}],{"optional":true}]}]]}],{"params":{"duration":{"__symbolic":"reference","name":"duration"}}}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":44,"character":4},"arguments":[":decrement",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":6,"character":2},"arguments":[":enter, :leave",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":3,"character":28},"arguments":[{"position":"absolute","top":"0","left":"0","bottom":"0","right":"0"}]},{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"group","line":7,"character":2},"arguments":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":8,"character":4},"arguments":[":enter",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":9,"character":6},"arguments":[{"transform":"translateX(-100%)"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":10,"character":6},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":10,"character":39},"arguments":[{"transform":"translateX(0%)"}]}]}],{"optional":true}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"query","line":14,"character":4},"arguments":[":leave",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":15,"character":6},"arguments":[{"transform":"translateX(0%)"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":16,"character":6},"arguments":["{{duration}} ease-out",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":16,"character":39},"arguments":[{"transform":"translateX(100%)"}]}]}],{"optional":true}]}]]}],{"params":{"duration":{"__symbolic":"reference","name":"duration"}}}]}]]}},"ɵq":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵp"},"arguments":["0.3s"]},"ɵr":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":2,"character":36},"arguments":["AUP_PLACE_CONFIG"]},"ɵs":{"__symbolic":"interface"},"ɵt":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":42,"character":33},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":39,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":55,"character":39},{"__symbolic":"reference","module":"@angular/router","name":"UrlSerializer","line":56,"character":46},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":58,"character":40},{"__symbolic":"reference","name":"ɵv"}]}],"navigate":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"Trace","line":111,"character":3}}]}],"createRedirectFor":[{"__symbolic":"method"}],"pushVisitChangesToRoute":[{"__symbolic":"method"}],"doNavigation":[{"__symbolic":"method"}],"createRouteParameters":[{"__symbolic":"method"}],"onAngularRouterStarted":[{"__symbolic":"method"}],"onAngularRouterFinished":[{"__symbolic":"method"}],"extractChildPath":[{"__symbolic":"method"}],"parseUrl":[{"__symbolic":"method"}],"performInitialNavigationIntercept":[{"__symbolic":"method"}],"isInitialNavigation":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵu":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":6,"character":49},"members":{"__ctor__":[{"__symbolic":"constructor"}],"setActivityList":[{"__symbolic":"method"}],"getCurrentActivity":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"confirm":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}]}},"ɵv":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"add":[{"__symbolic":"method"}],"getHistory":[{"__symbolic":"method"}],"setHistory":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵw":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵx"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-tabbed-place-navigation","template":"<nav mat-tab-nav-bar>\n <a mat-tab-link *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span>{{getNav(placeDefinition).title()}}</span>\n </a>\n</nav>\n","styles":[""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵx":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"template":""}]}],"members":{"places":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInListModel","line":25,"character":12},"arguments":["placesModel"]}]}],"placesModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":28,"character":12}}]}],"placeOutlet":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":32,"character":12},"arguments":["placeOutletModel"]}]}],"placeOutletModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"UseDelegate","line":35,"character":12}}]}],"__ctor__":[{"__symbolic":"constructor"}],"getNav":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@typescript-plus/fast-memoize-decorator/dist/src","name":"Memoize","line":53,"character":3}}]}],"isActive":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵy":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵx"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"aup-list-place-nav","template":"<mat-nav-list class=\"app-menu\">\n <a mat-list-item *ngFor=\"let placeDefinition of placeDefinitions.value\"\n [pectinCommand]=\"commandFactory.create(placeDefinition)\"\n [class.active]=\"isActive(placeDefinition)\"\n [matTooltip]=\"getNav(placeDefinition).tooltip()\">\n <mat-icon *ngIf=\"getNav(placeDefinition).icon()\">{{getNav(placeDefinition).icon()}}</mat-icon>\n <span class=\"expanded-only\">{{getNav(placeDefinition).title()}}</span>\n </a>\n</mat-nav-list>\n","styles":[":host{display:flex;flex-direction:column;--expanded-width:235px;--nav-item-width:var(--nav-bar-height);width:var(--nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--expanded-width);max-width:var(--expanded-width)}.expanded-only{max-width:0;overflow:hidden}.collapsed-only{max-width:100%;overflow:hidden}.header{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;height:var(--nav-bar-height);border-bottom:var(--pinstripe-border);cursor:pointer}.header .menu{flex:1}.header button{color:inherit;width:var(--nav-item-width);height:var(--nav-bar-height)}mat-nav-list{flex:1;display:flex;flex-direction:column}.mat-list-item{width:var(--nav-item-width);height:var(--nav-bar-height);color:rgba(0,0,0,.6)}.mat-list-item.active{background-color:rgba(0,0,0,.1);color:rgba(0,0,0,.9)}mat-icon{color:inherit}mat-icon.flip-horizontal{transform:scaleX(-1)}:host-context(.expanded) .expanded-only{max-width:100%}:host-context(.expanded) .collapsed-only{max-width:0}:host-context(.expanded) .mat-list-item mat-icon{margin-right:12px}:host-context(.expanded) .mat-list-item span{text-wrap:none;white-space:nowrap}a[ng-reflect-router-link=manage-instruments] mat-icon{transform:rotate(90deg)}.app-menu{padding-top:0}"]}]}],"members":{"expanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":10,"character":3},"arguments":["class.expanded"]}]}],"__ctor__":[{"__symbolic":"constructor"}],"expandMenu":[{"__symbolic":"method"}],"collapseMenu":[{"__symbolic":"method"}],"toggleMenu":[{"__symbolic":"method"}]}},"ɵz":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵba"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵbb"},"arguments":[{"path":"aup-gateway-route","authenticate":false}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":12,"character":1},"arguments":[{"template":""}]}],"members":{"returnUrl":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵbc"},"arguments":[{"storeInUrl":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵbd"},"member":"STRING"}}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":20,"character":30}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵba":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵd"},"members":{"canDeactivate":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor"}],"initialiseBindings":[{"__symbolic":"method"}],"installBinding":[{"__symbolic":"method"}],"placeDefinition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@typescript-plus/fast-memoize-decorator","name":"Memoize","line":61,"character":3}}]}],"onPlaceReady":[{"__symbolic":"method"}]}},"ɵbb":{"__symbolic":"function","parameters":["options"],"value":{"__symbolic":"error","message":"Lambda not supported","line":6,"character":9,"module":"./lib/place/place.decorator"}},"ɵbc":{"__symbolic":"function"},"ɵbd":{"__symbolic":"interface"},"ɵbe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatButtonModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatDialogModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material","name":"MatTabsModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/cdk/portal","name":"PortalModule","line":21,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":22,"character":4}],"declarations":[{"__symbolic":"reference","name":"ɵbf"},{"__symbolic":"reference","name":"ɵbh"},{"__symbolic":"reference","name":"ɵbm"},{"__symbolic":"reference","name":"ɵbn"},{"__symbolic":"reference","name":"ɵbg"},{"__symbolic":"reference","name":"ɵbp"},{"__symbolic":"reference","name":"ɵbq"}],"exports":[{"__symbolic":"reference","name":"ɵbf"},{"__symbolic":"reference","name":"ɵbg"},{"__symbolic":"reference","name":"ɵbp"},{"__symbolic":"reference","name":"ɵbq"}],"entryComponents":[{"__symbolic":"reference","name":"ɵbf"},{"__symbolic":"reference","name":"ɵbh"},{"__symbolic":"reference","name":"ɵbm"},{"__symbolic":"reference","name":"ɵbn"}],"providers":[{"__symbolic":"reference","name":"ɵbs"}]}]}],"members":{}},"ɵbf":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵu"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":72,"character":1},"arguments":[{"selector":"aup-activity-container","template":"<mat-tab-group #tabs no-tab-header [dynamicHeight]=\"dynamicHeight\" [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let tab of activityTabs.value\">\n <aup-activity-outlet [interactionContext]=\"this\" [activityContext]=\"tab\"></aup-activity-outlet>\n </mat-tab>\n</mat-tab-group>\n","styles":[":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]}]}],"members":{"initialActivityOutletContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":82,"character":3}}]}],"initialActivityOutletContextEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":110,"character":3},"arguments":["initialActivityOutletContext"]}]}],"dynamicHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":113,"character":3}}]}],"tabs":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":116,"character":3},"arguments":["tabs",{"static":true}]}]}],"outlets":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":119,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵbg"}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"isActive":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}],"finishInitialActivity":[{"__symbolic":"method"}],"onNestedActivityFinished":[{"__symbolic":"method"}],"cleanupStaleNestedActivities":[{"__symbolic":"method"}],"synchroniseSelectedTabIndex":[{"__symbolic":"method"}],"onAnimationFinished":[{"__symbolic":"method"}],"updateActivityList":[{"__symbolic":"method"}],"getSelectedOutlet":[{"__symbolic":"method"}]}},"ɵbg":{"__symbolic":"class","arity":3,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"aup-activity-outlet","template":"","styles":[":host{display:block}"]}]}],"members":{"interactionContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"activityContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":46,"character":38},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":47,"character":30},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":48,"character":22}]}],"ngOnInit":[{"__symbolic":"method"}],"loadActivity":[{"__symbolic":"method"}]}},"ɵbh":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵbi"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"aup-confirmation-dialog","template":"<h3 matDialogTitle *ngIf=\"confirm.title\">{{confirm.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of confirm.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-button (click)=\"cancel()\" data-cy=\"cancel-button\">{{confirm.cancel()}}</button>\n <button mat-raised-button [color]=\"isDestructive() ? 'warn' : 'primary'\"\n (click)=\"done()\" data-cy=\"confirm-button\">{{confirm.ok()}}</button>\n</div>\n\n","styles":[":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":13,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbj"}]}]],"parameters":[{"__symbolic":"reference","name":"ɵbl"}]}],"ngOnInit":[{"__symbolic":"method"}],"isDestructive":[{"__symbolic":"method"}]}},"ɵbi":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵbk"},"members":{}},"ɵbj":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":4,"character":33},"arguments":["InteractionActivityData"]},"ɵbk":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","module":"@coolon/pectin","name":"GarbageCollector","line":6,"character":54},"members":{"initialise":[{"__symbolic":"method"}],"done":[{"__symbolic":"method"}],"cancel":[{"__symbolic":"method"}],"onActivityReady":[{"__symbolic":"method"}],"busyWhile":[{"__symbolic":"method"}],"isBusy":[{"__symbolic":"method"}]}},"ɵbl":{"__symbolic":"interface"},"ɵbm":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵbi"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"aup-confirmation-dialog","template":"<h3 matDialogTitle *ngIf=\"confirm.title\">{{confirm.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of confirm.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-button (click)=\"cancel()\" data-cy=\"cancel-button\">{{confirm.cancel()}}</button>\n <button mat-raised-button [color]=\"isDestructive() ? 'warn' : 'primary'\"\n (click)=\"onConfirm()\" data-cy=\"confirm-button\">{{confirm.ok()}}</button>\n</div>\n\n","styles":[":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":14,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbj"}]}],null],"parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵbm"},"member":"Data","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":14,"character":86,"context":{"typeName":"D"},"module":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component"},{"__symbolic":"error","message":"Could not resolve type","line":14,"character":88,"context":{"typeName":"R"},"module":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component"},{"__symbolic":"error","message":"Could not resolve type","line":14,"character":90,"context":{"typeName":"E"},"module":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component"}]},{"__symbolic":"reference","name":"ɵu"}]}],"ngOnInit":[{"__symbolic":"method"}],"isDestructive":[{"__symbolic":"method"}],"onConfirm":[{"__symbolic":"method"}]}},"ɵbn":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵbi"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"aup-alert-dialog","template":"<h3 matDialogTitle *ngIf=\"alert.title\">{{alert.title()}}</h3>\n<div matDialogContent>\n <p *ngFor=\"let line of alert.content()\">{{line}}</p>\n</div>\n<div matDialogActions>\n <button mat-raised-button color=\"primary\" (click)=\"done()\" data-cy=\"close-button\">{{alert.ok()}}</button>\n</div>\n","styles":[":host{display:block;padding:var(--aup-default-padding)}.mat-dialog-content{margin:0;padding:0}.mat-dialog-actions{justify-content:flex-end}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":12,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbj"}]}]],"parameters":[{"__symbolic":"reference","name":"ɵbo"}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵbo":{"__symbolic":"interface"},"ɵbp":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-interaction-outlet","template":"<router-outlet name=\"interaction-context\"></router-outlet>\n","styles":[":host{display:block}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]}},"ɵbq":{"__symbolic":"class","arity":3,"extends":{"__symbolic":"reference","name":"ɵu"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"aup-inplace-interaction-context","template":"<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs [dynamicHeight]=\"false\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer\n [(initialActivityOutletContext)]=\"initialActivityContext\"\n [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n","styles":[":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]}]}],"members":{"interactionContext":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":21,"character":3},"arguments":["activityContainer",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngAfterViewInit":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"_startActivity":[{"__symbolic":"method"}]}},"ɵbr":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":25,"character":55},"arguments":["DIALOG_INTERACTION_SERVICE_DEFAULTS"]},"ɵbs":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵu"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":52,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":63,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":63,"character":27},"arguments":[{"__symbolic":"reference","name":"ɵbr"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":64,"character":15}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":27},"arguments":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MAT_DIALOG_DEFAULT_OPTIONS","line":64,"character":34}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/material","name":"MatDialog","line":60,"character":46},{"__symbolic":"reference","module":"@angular/common","name":"Location","line":61,"character":33},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":62,"character":31},{"__symbolic":"reference","name":"MatDialogConfig","module":"@angular/material/dialog","arguments":[{"__symbolic":"reference","name":"any"}]},{"__symbolic":"reference","name":"MatDialogConfig","module":"@angular/material/dialog","arguments":[{"__symbolic":"reference","name":"any"}]}]}],"isActive":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"_startActivity":[{"__symbolic":"method"}],"safelyUpdateActivityListDelegate":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"AngularUiPowerupsModule":"./lib/angular-ui-powerups.module","ɵa":"./lib/directives/directives.module","ɵb":"./lib/directives/command.directive","ɵc":"./lib/directives/focus-binding.directive","ɵd":"./lib/components/disposable-component","ɵe":"./lib/components/components.module","ɵf":"./lib/components/forms/number-input/number-input.component","ɵg":"./lib/components/forms/abstract-input.component","ɵh":"./lib/components/forms/string-input/string-input.component","ɵi":"./lib/components/forms/password-input/password-input.component","ɵj":"./lib/components/forms/select-input/select-input.component","ɵk":"./lib/components/noop/noop.component","ɵl":"./lib/place/place.module","ɵm":"./lib/place/components/empty-state/empty-state.component","ɵn":"./lib/place/components/busy-overlay/busy-overlay.component","ɵo":"./lib/place/components/place-outlet/place-outlet.component","ɵp":"./lib/place/components/place-outlet/route-animations","ɵq":"./lib/place/components/place-outlet/route-animations","ɵr":"./lib/place/place-config","ɵs":"./lib/place/place-config","ɵt":"./lib/place/place-router","ɵu":"./lib/interaction/interaction-context","ɵv":"./lib/place/place-history","ɵw":"./lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component","ɵx":"./lib/place/components/abstract-place-navigation.component","ɵy":"./lib/place/components/list-place-nav/list-place-nav.component","ɵz":"./lib/place/places/noop-gateway-place.component","ɵba":"./lib/place/place-component","ɵbb":"./lib/place/place.decorator","ɵbc":"./lib/place/route/parameter-decorators","ɵbd":"./lib/place/route/formatter","ɵbe":"./lib/interaction/interaction.module","ɵbf":"./lib/interaction/components/activity-container/activity-container.component","ɵbg":"./lib/interaction/components/activity-outlet/activity-outlet.component","ɵbh":"./lib/interaction/components/confirmation-dialog/confirmation-dialog.component","ɵbi":"./lib/interaction/abstract-activity","ɵbj":"./lib/interaction/activity","ɵbk":"./lib/interaction/activity","ɵbl":"./lib/interaction/confirm","ɵbm":"./lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component","ɵbn":"./lib/interaction/components/alert-dialog/alert-dialog.component","ɵbo":"./lib/interaction/alert","ɵbp":"./lib/interaction/components/interaction-outlet/interaction-outlet.component","ɵbq":"./lib/interaction/components/inplace-interaction-context/inplace-interaction-context.component","ɵbr":"./lib/interaction/services/dialog-interaction.service","ɵbs":"./lib/interaction/services/dialog-interaction.service"},"importAs":"@coolon/angular-ui-powerups"}
@@ -3,7 +3,8 @@
3
3
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
4
  */
5
5
  import * as tslib_1 from "tslib";
6
- import { lang } from '@coolon/pectin';
6
+ import { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
7
+ import { lang, Trace } from '@coolon/pectin';
7
8
  import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
8
9
  import { Observable } from 'rxjs';
9
10
  import { PlaceComponent } from '../place-component';
@@ -88,7 +89,13 @@ export class AbstractEnterPlaceGuard {
88
89
  const placeDefinition = PlaceComponent.getDefinition(activatedRoute.component);
89
90
  /** @type {?} */
90
91
  const authorised = placeDefinition.authenticate ? yield this.isAuthorised(activatedRoute, state) : true;
91
- return authorised === true ? canActivate(placeDefinition) : authorised;
92
+ if (authorised === true) {
93
+ return canActivate(placeDefinition);
94
+ }
95
+ else {
96
+ console.log("not authorised result", authorised);
97
+ return authorised;
98
+ }
92
99
  }
93
100
  else {
94
101
  return lang.illegalState(`expected component to be an instance of PlaceComponent, got ${activatedRoute.component}`);
@@ -131,6 +138,18 @@ export class AbstractEnterPlaceGuard {
131
138
  });
132
139
  }
133
140
  }
141
+ tslib_1.__decorate([
142
+ Trace(),
143
+ tslib_1.__metadata("design:type", Function),
144
+ tslib_1.__metadata("design:paramtypes", [ActivatedRouteSnapshot, RouterStateSnapshot, Function]),
145
+ tslib_1.__metadata("design:returntype", Promise)
146
+ ], AbstractEnterPlaceGuard.prototype, "authorisePlaceThen", null);
147
+ tslib_1.__decorate([
148
+ Trace(),
149
+ tslib_1.__metadata("design:type", Function),
150
+ tslib_1.__metadata("design:paramtypes", [ActivatedRouteSnapshot, RouterStateSnapshot]),
151
+ tslib_1.__metadata("design:returntype", Promise)
152
+ ], AbstractEnterPlaceGuard.prototype, "isAuthorised", null);
134
153
  if (false) {
135
154
  /**
136
155
  * @type {?}
@@ -293,4 +312,4 @@ if (false) {
293
312
  ParamMapAdapter.prototype.params;
294
313
  }
295
314
  })(AbstractEnterPlaceGuard || (AbstractEnterPlaceGuard = {}));
296
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZW50ZXItcGxhY2UuZ3VhcmQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2UvZ3VhcmRzL2Fic3RyYWN0LWVudGVyLXBsYWNlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBV0EsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMzRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUtwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQzs7OztBQUdqQyxNQUFNLE9BQWdCLHVCQUF1Qjs7Ozs7Ozs7SUFHM0MsWUFBNkIsTUFBYyxFQUN2QixhQUE0QixFQUNuQixXQUF3QixFQUN4QixZQUEwQixFQUMxQixRQUFrQjtRQUpsQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ3ZCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFDL0MsQ0FBQzs7Ozs7OztJQUdLLFdBQVcsQ0FBQyxjQUFzQyxFQUFFLEtBQTBCOztZQUVsRixPQUFPLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxjQUFjLEVBQUUsS0FBSzs7O1lBQUUsR0FBRyxFQUFFO2dCQUVyRSxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsS0FBSzs7OztnQkFBRSxDQUFNLGVBQWUsRUFBQyxFQUFFOzs7MEJBR3RFLE1BQU0sR0FBRyxJQUFJLHVCQUF1QixD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QUFDO1FBQ2xDLENBQUM7S0FFRjs7Ozs7O1FBcEJhLGlDQUFnRDs7QUFxQmhFLENBQUMsRUExRGdCLHVCQUF1QixLQUF2Qix1QkFBdUIsUUEwRHZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gIENhbkFjdGl2YXRlLFxuICBQYXJhbU1hcCxcbiAgUm91dGVyLFxuICBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICBVcmxTZWdtZW50LFxuICBVcmxTZXJpYWxpemVyLFxuICBVcmxUcmVlXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBsYW5nIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgTWVtb2l6ZSB9IGZyb20gJ0B0eXBlc2NyaXB0LXBsdXMvZmFzdC1tZW1vaXplLWRlY29yYXRvci9kaXN0L3NyYyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQbGFjZUNvbXBvbmVudCB9IGZyb20gJy4uL3BsYWNlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZURlZmluaXRpb24gfSBmcm9tICcuLi9wbGFjZS1kZWZpbml0aW9uJztcbmltcG9ydCB7IFBsYWNlSGlzdG9yeSB9IGZyb20gJy4uL3BsYWNlLWhpc3RvcnknO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHsgTm9vcEdhdGV3YXlQbGFjZSB9IGZyb20gJy4uL3BsYWNlcy9ub29wLWdhdGV3YXktcGxhY2UuY29tcG9uZW50JztcbmltcG9ydCB7IFZpc2l0U2FuaXRpc2VyIH0gZnJvbSAnLi4vcm91dGUvdmlzaXQtc2FuaXRpc2VyJztcbmltcG9ydCB7IFZpc2l0IH0gZnJvbSAnLi4vdmlzaXQnO1xuXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEVudGVyUGxhY2VHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcblxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgdXJsU2VyaWFsaXplcjogVXJsU2VyaWFsaXplcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGFjZVJvdXRlcjogUGxhY2VSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBhc3luYyBjYW5BY3RpdmF0ZShhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB7XG5cbiAgICByZXR1cm4gdGhpcy5pbnRlcmNlcHRJbml0aWFsUm91dGVPdGhlcndpc2UoYWN0aXZhdGVkUm91dGUsIHN0YXRlLCAoKSA9PiB7XG5cbiAgICAgIHJldHVybiB0aGlzLmF1dGhvcmlzZVBsYWNlVGhlbihhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUsIGFzeW5jIHBsYWNlRGVmaW5pdGlvbiA9PiB7XG5cbiAgICAgICAgLy8gUGFyc2Ugb3VyIHJvdXRlIHBhcmFtcy5cbiAgICAgICAgY29uc3QgcGFyYW1zID0gbmV3IEFic3RyYWN0RW50ZXJQbGFjZUd1YXJkLkNvbnNvbGlkYXRlZFBhcmFtZXRlck1hcChhY3RpdmF0ZWRSb3V0ZS5wYXJhbU1hcCwgYWN0aXZhdGVkUm91dGUudXJsKTtcbiAgICAgICAgY29uc3QgcGFyc2VkUGFyYW1zID0gcGxhY2VEZWZpbml0aW9uLnBhcnNlUm91dGVQYXJhbXMocGFyYW1zKTtcblxuICAgICAgICBjb25zdCBpbml0aWFsVmlzaXQgPSB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRpb25TZXNzaW9uLmdldFZpc2l0Rm9yKHBsYWNlRGVmaW5pdGlvbikgfHwgbmV3IFZpc2l0KHBsYWNlRGVmaW5pdGlvbiwgcGFyc2VkUGFyYW1zKTtcbiAgICAgICAgY29uc3Qgc2FuaXRpc2VyID0gbmV3IFZpc2l0U2FuaXRpc2VyKGFjdGl2YXRlZFJvdXRlLCB0aGlzLnJvdXRlciwgdGhpcy5wbGFjZUhpc3RvcnksIHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICBjb25zdCBzYW5pdGlzZWRWaXNpdCA9IGF3YWl0IHNhbml0aXNlci5zYW5pdGlzZShpbml0aWFsVmlzaXQubWVyZ2VSb3V0ZVBhcmFtZXRlcnMocGFyc2VkUGFyYW1zKSk7XG5cbiAgICAgICAgLy8gU2F2ZSB0aGUgdmlzaXQgd2l0aCBhbnkgdXBkYXRlZCBwYXJhbWV0ZXJzLiAgV2UgbmVlZCB0byBzYXZlIGl0IHNvIHdlIHJlbWVtYmVyIGFueSBub24gcm91dGUgcGFyYW1ldGVyc1xuICAgICAgICB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRpb25TZXNzaW9uLnN0b3JlVmlzaXQoc2FuaXRpc2VkVmlzaXQpO1xuICAgICAgICBpZiAoaW5pdGlhbFZpc2l0Lmhhc1JvdXRpbmdDaGFuZ2VkRnJvbShzYW5pdGlzZWRWaXNpdCkpIHtcbiAgICAgICAgICAvLyBSZWdlbmVyYXRlIHRoZSB1cmxcbiAgICAgICAgICBjb25zdCBjb21tYW5kcyA9IHRoaXMucGxhY2VSb3V0ZXIucGFyc2VVcmwoc3RhdGUpLmNyZWF0ZVJlZGlyZWN0Q29tbWFuZHNGb3Ioc2FuaXRpc2VkVmlzaXQpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKCcjIyMjIyBQbGFjZSBHdWFyZCBSZWRpcmVjdCcsIGNvbW1hbmRzKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShjb21tYW5kcywge1xuICAgICAgICAgICAgcmVwbGFjZVVybDogdHJ1ZSxcbiAgICAgICAgICAgIHNraXBMb2NhdGlvbkNoYW5nZTogZmFsc2VcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBhdXRob3Jpc2VQbGFjZVRoZW4oYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBjYW5BY3RpdmF0ZTogKHBsYWNlRGVmaW5pdGlvbjogUGxhY2VEZWZpbml0aW9uKSA9PiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPikge1xuICAgIGlmIChQbGFjZUNvbXBvbmVudC5pc1BsYWNlQ29tcG9uZW50Q29uc3RydWN0b3IoYWN0aXZhdGVkUm91dGUuY29tcG9uZW50KSkge1xuICAgICAgY29uc3QgcGxhY2VEZWZpbml0aW9uID0gUGxhY2VDb21wb25lbnQuZ2V0RGVmaW5pdGlvbihhY3RpdmF0ZWRSb3V0ZS5jb21wb25lbnQpO1xuICAgICAgY29uc3QgYXV0aG9yaXNlZCA9IHBsYWNlRGVmaW5pdGlvbi5hdXRoZW50aWNhdGUgPyBhd2FpdCB0aGlzLmlzQXV0aG9yaXNlZChhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUpIDogdHJ1ZTtcbiAgICAgIHJldHVybiBhdXRob3Jpc2VkID09PSB0cnVlID8gY2FuQWN0aXZhdGUocGxhY2VEZWZpbml0aW9uKSA6IGF1dGhvcmlzZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBsYW5nLmlsbGVnYWxTdGF0ZShgZXhwZWN0ZWQgY29tcG9uZW50IHRvIGJlIGFuIGluc3RhbmNlIG9mIFBsYWNlQ29tcG9uZW50LCBnb3QgJHthY3RpdmF0ZWRSb3V0ZS5jb21wb25lbnR9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGludGVyY2VwdEluaXRpYWxSb3V0ZU90aGVyd2lzZShhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QsIGNhbkFjdGl2YXRlOiAoKSA9PiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPikge1xuICAgIC8vIFRPRE86IHRoaXMgYWxsIG9ubHkgc29ydCBvZiB3b3Jrcy4gIE9wZW5pbmcgZGlhbG9ncyBhbmQgY2xpY2tpbmcgYmFjayBtdWx0aXBsZSB0aW1lcyBicmVha3MgdGhpbmdzLlxuICAgIC8vIFRPRE86IG5leHQgc3RhZ2UgaXMgdG8gaW52ZXN0aWdhdGUgdHJhY2tpbmcgZGlhbG9nIHN0YXRlIGluIGEgZGlmZmVyZW50IHBsYWNlb3V0bGV0IGFuZCBrZWVwaW5nIHRob3NlXG4gICAgLy8gVE9ETzogdXJscyBvdXQgb2YgdGhlIGhpc3RvcnkuXG4gICAgaWYgKHRoaXMucGxhY2VSb3V0ZXIuaXNJbml0aWFsTmF2aWdhdGlvbigpKSB7XG4gICAgICAvLyBUaGlzIGlzIHRoZSB2ZXJ5IGZpcnN0IGVudHJ5IGludG8gb3VyIGFwcCBzbyB3ZSByZWRpcmVjdCB0byBhIGR1bW15IHBsYWNlIHNvIHdlIGNhbiBnZXQgYnVtcCBvdXJcbiAgICAgIC8vIGhpc3RvcnkgYnkgb25lLiAgVGhpcyBlbnN1cmVzIHRoYXQgd2UgY2FuIGNhcHR1cmUgYmFjayBidXR0b24gcHJlc3NlcyBvbiB0aGUgaW5pdGlhbCBwYWdlIHdpdGhvdXRcbiAgICAgIC8vIGxlYXZpbmcgb3VyIGFwcC5cbiAgICAgIHJldHVybiB0aGlzLnBsYWNlUm91dGVyLnBlcmZvcm1Jbml0aWFsTmF2aWdhdGlvbkludGVyY2VwdChhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gY2FuQWN0aXZhdGUoKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBpc0F1dGhvcmlzZWQoYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4ge1xuICAgIGNvbnN0IGF1dGhvcmlzZWQgPSB0aGlzLmdldEF1dGhHdWFyZCh0aGlzLmluamVjdG9yKS5jYW5BY3RpdmF0ZShhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUpO1xuICAgIHJldHVybiAoYXV0aG9yaXNlZCBpbnN0YW5jZW9mIE9ic2VydmFibGUpID8gYXV0aG9yaXNlZC50b1Byb21pc2UoKSA6IGF1dGhvcmlzZWQ7XG4gIH1cblxuICBhYnN0cmFjdCBnZXRBdXRoR3VhcmQoaW5qZWN0b3I6IEluamVjdG9yKTogQ2FuQWN0aXZhdGU7XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgQWJzdHJhY3RFbnRlclBsYWNlR3VhcmQge1xuICAvKipcbiAgICogVGhpcyBhIHdvcmsgYXJvdW5kIGZvciB0aGUgZmFjdCB0aGF0IGFuIGFjdGl2YXRlZCByb3V0ZSB3aXRoIG11bHRpcGxlIHNlZ21lbnRzIGRvZXNuJ3RcbiAgICogaW5jbHVkZSB0aGUgc2VnbWVudCBwYXJhbXMgaW4gdGhlIHBhcmFtTWFwIGFzIHdlbGwgYXMgZWFjaCBzZWdtZW50IHJldHVybnMgYW4gZW1wdHlcbiAgICogcGFyYW0gbWFwIGV2ZW4gd2hlbiBgcGFyYW1ldGVyYHMgaGFzIGNvbnRlbnQuXG4gICAqL1xuICBleHBvcnQgY2xhc3MgQ29uc29saWRhdGVkUGFyYW1ldGVyTWFwIGltcGxlbWVudHMgUGFyYW1NYXAge1xuXG4gICAgcHJpdmF0ZSBwYXJhbU1hcHM6IFBhcmFtTWFwW107XG5cbiAgICBjb25zdHJ1Y3RvcihwYXJhbU1hcDogUGFyYW1NYXAsIHVybFNlZ21lbnRzOiBVcmxTZWdtZW50W10pIHtcbiAgICAgIHRoaXMucGFyYW1NYXBzID0gW3BhcmFtTWFwXS5jb25jYXQoXG4gICAgICAgICh1cmxTZWdtZW50cyB8fCBbXSkubWFwKHMgPT4gbmV3IFBhcmFtTWFwQWRhcHRlcihzLnBhcmFtZXRlcnMpKVxuICAgICAgKS5maWx0ZXIobSA9PiAhIW0pOyAvLyB0aGUgYWN0aXZhdGVkIHJvdXRlIHBhcmFtIG1hcCBjYW4gYmUgbnVsbFxuICAgIH1cblxuICAgIGdldChuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgIGNvbnN0IHBhcmFtTWFwID0gdGhpcy5wYXJhbU1hcHMuZmluZChtID0+IG0uaGFzKG5hbWUpKTtcbiAgICAgIHJldHVybiBwYXJhbU1hcC5nZXQobmFtZSk7XG4gICAgfVxuXG4gICAgZ2V0QWxsKG5hbWU6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICAgIGNvbnN0IHBhcmFtTWFwID0gdGhpcy5wYXJhbU1hcHMuZmluZChtID0+IG0uaGFzKG5hbWUpKTtcbiAgICAgIHJldHVybiBwYXJhbU1hcC5nZXRBbGwobmFtZSk7XG4gICAgfVxuXG4gICAgaGFzKG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuICEhdGhpcy5wYXJhbU1hcHMuZmluZChtID0+IG0uaGFzKG5hbWUpKTtcbiAgICB9XG5cbiAgICBATWVtb2l6ZSgpXG4gICAgZ2V0IGtleXMoKTogc3RyaW5nW10ge1xuICAgICAgcmV0dXJuIHRoaXMucGFyYW1NYXBzLnJlZHVjZSgocmVzdWx0LCBwYXJhbXMpID0+IHJlc3VsdC5jb25jYXQocGFyYW1zLmtleXMpLCBbXSk7XG4gICAgfVxuICB9XG5cbiAgY2xhc3MgUGFyYW1NYXBBZGFwdGVyIGltcGxlbWVudHMgUGFyYW1NYXAge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcGFyYW1zOiB7IFtwOiBzdHJpbmddOiBzdHJpbmcgfSkge1xuICAgIH1cblxuICAgIGdldChuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgIHJldHVybiB0aGlzLnBhcmFtc1tuYW1lXTtcbiAgICB9XG5cbiAgICBnZXRBbGwobmFtZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldChuYW1lKTtcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXTtcbiAgICB9XG5cbiAgICBoYXMobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5rZXlzLmluY2x1ZGVzKG5hbWUpO1xuICAgIH1cblxuICAgIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLnBhcmFtcyk7XG4gICAgfVxuXG4gIH1cbn1cbiJdfQ==
315
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZW50ZXItcGxhY2UuZ3VhcmQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvcGxhY2UvZ3VhcmRzL2Fic3RyYWN0LWVudGVyLXBsYWNlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUNMLHNCQUFzQixFQUl0QixtQkFBbUIsRUFJcEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMzRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUtwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQzs7OztBQUdqQyxNQUFNLE9BQWdCLHVCQUF1Qjs7Ozs7Ozs7SUFHM0MsWUFBNkIsTUFBYyxFQUN2QixhQUE0QixFQUNuQixXQUF3QixFQUN4QixZQUEwQixFQUMxQixRQUFrQjtRQUpsQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ3ZCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFDL0MsQ0FBQzs7Ozs7OztJQUdLLFdBQVcsQ0FBQyxjQUFzQyxFQUFFLEtBQTBCOztZQUVsRixPQUFPLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxjQUFjLEVBQUUsS0FBSzs7O1lBQUUsR0FBRyxFQUFFO2dCQUVyRSxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVB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TyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsQ0FBQzs7Ozs7UUFFRCxHQUFHLENBQUMsSUFBWTtZQUNkLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQzs7OztRQUVELElBQUksSUFBSTtZQUNOLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEMsQ0FBQztLQUVGOzs7Ozs7UUFwQmEsaUNBQWdEOztBQXFCaEUsQ0FBQyxFQTFEZ0IsdUJBQXVCLEtBQXZCLHVCQUF1QixRQTBEdkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgQ2FuQWN0aXZhdGUsXG4gIFBhcmFtTWFwLFxuICBSb3V0ZXIsXG4gIFJvdXRlclN0YXRlU25hcHNob3QsXG4gIFVybFNlZ21lbnQsXG4gIFVybFNlcmlhbGl6ZXIsXG4gIFVybFRyZWVcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGxhbmcsIFRyYWNlIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgTWVtb2l6ZSB9IGZyb20gJ0B0eXBlc2NyaXB0LXBsdXMvZmFzdC1tZW1vaXplLWRlY29yYXRvci9kaXN0L3NyYyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQbGFjZUNvbXBvbmVudCB9IGZyb20gJy4uL3BsYWNlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFjZURlZmluaXRpb24gfSBmcm9tICcuLi9wbGFjZS1kZWZpbml0aW9uJztcbmltcG9ydCB7IFBsYWNlSGlzdG9yeSB9IGZyb20gJy4uL3BsYWNlLWhpc3RvcnknO1xuaW1wb3J0IHsgUGxhY2VSb3V0ZXIgfSBmcm9tICcuLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHsgTm9vcEdhdGV3YXlQbGFjZSB9IGZyb20gJy4uL3BsYWNlcy9ub29wLWdhdGV3YXktcGxhY2UuY29tcG9uZW50JztcbmltcG9ydCB7IFZpc2l0U2FuaXRpc2VyIH0gZnJvbSAnLi4vcm91dGUvdmlzaXQtc2FuaXRpc2VyJztcbmltcG9ydCB7IFZpc2l0IH0gZnJvbSAnLi4vdmlzaXQnO1xuXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEVudGVyUGxhY2VHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcblxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgdXJsU2VyaWFsaXplcjogVXJsU2VyaWFsaXplcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGFjZVJvdXRlcjogUGxhY2VSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBhc3luYyBjYW5BY3RpdmF0ZShhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB7XG5cbiAgICByZXR1cm4gdGhpcy5pbnRlcmNlcHRJbml0aWFsUm91dGVPdGhlcndpc2UoYWN0aXZhdGVkUm91dGUsIHN0YXRlLCAoKSA9PiB7XG5cbiAgICAgIHJldHVybiB0aGlzLmF1dGhvcmlzZVBsYWNlVGhlbihhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUsIGFzeW5jIHBsYWNlRGVmaW5pdGlvbiA9PiB7XG5cbiAgICAgICAgLy8gUGFyc2Ugb3VyIHJvdXRlIHBhcmFtcy5cbiAgICAgICAgY29uc3QgcGFyYW1zID0gbmV3IEFic3RyYWN0RW50ZXJQbGFjZUd1YXJkLkNvbnNvbGlkYXRlZFBhcmFtZXRlck1hcChhY3RpdmF0ZWRSb3V0ZS5wYXJhbU1hcCwgYWN0aXZhdGVkUm91dGUudXJsKTtcbiAgICAgICAgY29uc3QgcGFyc2VkUGFyYW1zID0gcGxhY2VEZWZpbml0aW9uLnBhcnNlUm91dGVQYXJhbXMocGFyYW1zKTtcblxuICAgICAgICBjb25zdCBpbml0aWFsVmlzaXQgPSB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRpb25TZXNzaW9uLmdldFZpc2l0Rm9yKHBsYWNlRGVmaW5pdGlvbikgfHwgbmV3IFZpc2l0KHBsYWNlRGVmaW5pdGlvbiwgcGFyc2VkUGFyYW1zKTtcbiAgICAgICAgY29uc3Qgc2FuaXRpc2VyID0gbmV3IFZpc2l0U2FuaXRpc2VyKGFjdGl2YXRlZFJvdXRlLCB0aGlzLnJvdXRlciwgdGhpcy5wbGFjZUhpc3RvcnksIHRoaXMuaW5qZWN0b3IpO1xuICAgICAgICBjb25zdCBzYW5pdGlzZWRWaXNpdCA9IGF3YWl0IHNhbml0aXNlci5zYW5pdGlzZShpbml0aWFsVmlzaXQubWVyZ2VSb3V0ZVBhcmFtZXRlcnMocGFyc2VkUGFyYW1zKSk7XG5cbiAgICAgICAgLy8gU2F2ZSB0aGUgdmlzaXQgd2l0aCBhbnkgdXBkYXRlZCBwYXJhbWV0ZXJzLiAgV2UgbmVlZCB0byBzYXZlIGl0IHNvIHdlIHJlbWVtYmVyIGFueSBub24gcm91dGUgcGFyYW1ldGVyc1xuICAgICAgICB0aGlzLnBsYWNlUm91dGVyLm5hdmlnYXRpb25TZXNzaW9uLnN0b3JlVmlzaXQoc2FuaXRpc2VkVmlzaXQpO1xuICAgICAgICBpZiAoaW5pdGlhbFZpc2l0Lmhhc1JvdXRpbmdDaGFuZ2VkRnJvbShzYW5pdGlzZWRWaXNpdCkpIHtcbiAgICAgICAgICAvLyBSZWdlbmVyYXRlIHRoZSB1cmxcbiAgICAgICAgICBjb25zdCBjb21tYW5kcyA9IHRoaXMucGxhY2VSb3V0ZXIucGFyc2VVcmwoc3RhdGUpLmNyZWF0ZVJlZGlyZWN0Q29tbWFuZHNGb3Ioc2FuaXRpc2VkVmlzaXQpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKCcjIyMjIyBQbGFjZSBHdWFyZCBSZWRpcmVjdCcsIGNvbW1hbmRzKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShjb21tYW5kcywge1xuICAgICAgICAgICAgcmVwbGFjZVVybDogdHJ1ZSxcbiAgICAgICAgICAgIHNraXBMb2NhdGlvbkNoYW5nZTogZmFsc2VcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICB9KTtcbiAgfVxuXG4gIEBUcmFjZSgpXG4gIHByb3RlY3RlZCBhc3luYyBhdXRob3Jpc2VQbGFjZVRoZW4oYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBjYW5BY3RpdmF0ZTogKHBsYWNlRGVmaW5pdGlvbjogUGxhY2VEZWZpbml0aW9uKSA9PiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPikge1xuICAgIGlmIChQbGFjZUNvbXBvbmVudC5pc1BsYWNlQ29tcG9uZW50Q29uc3RydWN0b3IoYWN0aXZhdGVkUm91dGUuY29tcG9uZW50KSkge1xuICAgICAgY29uc3QgcGxhY2VEZWZpbml0aW9uID0gUGxhY2VDb21wb25lbnQuZ2V0RGVmaW5pdGlvbihhY3RpdmF0ZWRSb3V0ZS5jb21wb25lbnQpO1xuICAgICAgY29uc3QgYXV0aG9yaXNlZCA9IHBsYWNlRGVmaW5pdGlvbi5hdXRoZW50aWNhdGUgPyBhd2FpdCB0aGlzLmlzQXV0aG9yaXNlZChhY3RpdmF0ZWRSb3V0ZSwgc3RhdGUpIDogdHJ1ZTtcbiAgICAgIGlmIChhdXRob3Jpc2VkID09PSB0cnVlKSB7XG4gICAgICAgIHJldHVybiBjYW5BY3RpdmF0ZShwbGFjZURlZmluaXRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJub3QgYXV0aG9yaXNlZCByZXN1bHRcIiwgYXV0aG9yaXNlZCk7XG4gICAgICAgIHJldHVybiBhdXRob3Jpc2VkO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbGFuZy5pbGxlZ2FsU3RhdGUoYGV4cGVjdGVkIGNvbXBvbmVudCB0byBiZSBhbiBpbnN0YW5jZSBvZiBQbGFjZUNvbXBvbmVudCwgZ290ICR7YWN0aXZhdGVkUm91dGUuY29tcG9uZW50fWApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBpbnRlcmNlcHRJbml0aWFsUm91dGVPdGhlcndpc2UoYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBjYW5BY3RpdmF0ZTogKCkgPT4gUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4pIHtcbiAgICAvLyBUT0RPOiB0aGlzIGFsbCBvbmx5IHNvcnQgb2Ygd29ya3MuICBPcGVuaW5nIGRpYWxvZ3MgYW5kIGNsaWNraW5nIGJhY2sgbXVsdGlwbGUgdGltZXMgYnJlYWtzIHRoaW5ncy5cbiAgICAvLyBUT0RPOiBuZXh0IHN0YWdlIGlzIHRvIGludmVzdGlnYXRlIHRyYWNraW5nIGRpYWxvZyBzdGF0ZSBpbiBhIGRpZmZlcmVudCBwbGFjZW91dGxldCBhbmQga2VlcGluZyB0aG9zZVxuICAgIC8vIFRPRE86IHVybHMgb3V0IG9mIHRoZSBoaXN0b3J5LlxuICAgIGlmICh0aGlzLnBsYWNlUm91dGVyLmlzSW5pdGlhbE5hdmlnYXRpb24oKSkge1xuICAgICAgLy8gVGhpcyBpcyB0aGUgdmVyeSBmaXJzdCBlbnRyeSBpbnRvIG91ciBhcHAgc28gd2UgcmVkaXJlY3QgdG8gYSBkdW1teSBwbGFjZSBzbyB3ZSBjYW4gZ2V0IGJ1bXAgb3VyXG4gICAgICAvLyBoaXN0b3J5IGJ5IG9uZS4gIFRoaXMgZW5zdXJlcyB0aGF0IHdlIGNhbiBjYXB0dXJlIGJhY2sgYnV0dG9uIHByZXNzZXMgb24gdGhlIGluaXRpYWwgcGFnZSB3aXRob3V0XG4gICAgICAvLyBsZWF2aW5nIG91ciBhcHAuXG4gICAgICByZXR1cm4gdGhpcy5wbGFjZVJvdXRlci5wZXJmb3JtSW5pdGlhbE5hdmlnYXRpb25JbnRlcmNlcHQoYWN0aXZhdGVkUm91dGUsIHN0YXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNhbkFjdGl2YXRlKCk7XG4gICAgfVxuICB9XG5cbiAgQFRyYWNlKClcbiAgYXN5bmMgaXNBdXRob3Jpc2VkKGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHtcbiAgICBjb25zdCBhdXRob3Jpc2VkID0gdGhpcy5nZXRBdXRoR3VhcmQodGhpcy5pbmplY3RvcikuY2FuQWN0aXZhdGUoYWN0aXZhdGVkUm91dGUsIHN0YXRlKTtcbiAgICByZXR1cm4gKGF1dGhvcmlzZWQgaW5zdGFuY2VvZiBPYnNlcnZhYmxlKSA/IGF1dGhvcmlzZWQudG9Qcm9taXNlKCkgOiBhdXRob3Jpc2VkO1xuICB9XG5cbiAgYWJzdHJhY3QgZ2V0QXV0aEd1YXJkKGluamVjdG9yOiBJbmplY3Rvcik6IENhbkFjdGl2YXRlO1xufVxuXG5leHBvcnQgbmFtZXNwYWNlIEFic3RyYWN0RW50ZXJQbGFjZUd1YXJkIHtcbiAgLyoqXG4gICAqIFRoaXMgYSB3b3JrIGFyb3VuZCBmb3IgdGhlIGZhY3QgdGhhdCBhbiBhY3RpdmF0ZWQgcm91dGUgd2l0aCBtdWx0aXBsZSBzZWdtZW50cyBkb2Vzbid0XG4gICAqIGluY2x1ZGUgdGhlIHNlZ21lbnQgcGFyYW1zIGluIHRoZSBwYXJhbU1hcCBhcyB3ZWxsIGFzIGVhY2ggc2VnbWVudCByZXR1cm5zIGFuIGVtcHR5XG4gICAqIHBhcmFtIG1hcCBldmVuIHdoZW4gYHBhcmFtZXRlcmBzIGhhcyBjb250ZW50LlxuICAgKi9cbiAgZXhwb3J0IGNsYXNzIENvbnNvbGlkYXRlZFBhcmFtZXRlck1hcCBpbXBsZW1lbnRzIFBhcmFtTWFwIHtcblxuICAgIHByaXZhdGUgcGFyYW1NYXBzOiBQYXJhbU1hcFtdO1xuXG4gICAgY29uc3RydWN0b3IocGFyYW1NYXA6IFBhcmFtTWFwLCB1cmxTZWdtZW50czogVXJsU2VnbWVudFtdKSB7XG4gICAgICB0aGlzLnBhcmFtTWFwcyA9IFtwYXJhbU1hcF0uY29uY2F0KFxuICAgICAgICAodXJsU2VnbWVudHMgfHwgW10pLm1hcChzID0+IG5ldyBQYXJhbU1hcEFkYXB0ZXIocy5wYXJhbWV0ZXJzKSlcbiAgICAgICkuZmlsdGVyKG0gPT4gISFtKTsgLy8gdGhlIGFjdGl2YXRlZCByb3V0ZSBwYXJhbSBtYXAgY2FuIGJlIG51bGxcbiAgICB9XG5cbiAgICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICBjb25zdCBwYXJhbU1hcCA9IHRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gICAgICByZXR1cm4gcGFyYW1NYXAuZ2V0KG5hbWUpO1xuICAgIH1cblxuICAgIGdldEFsbChuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgICBjb25zdCBwYXJhbU1hcCA9IHRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gICAgICByZXR1cm4gcGFyYW1NYXAuZ2V0QWxsKG5hbWUpO1xuICAgIH1cblxuICAgIGhhcyhuYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiAhIXRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gICAgfVxuXG4gICAgQE1lbW9pemUoKVxuICAgIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICAgIHJldHVybiB0aGlzLnBhcmFtTWFwcy5yZWR1Y2UoKHJlc3VsdCwgcGFyYW1zKSA9PiByZXN1bHQuY29uY2F0KHBhcmFtcy5rZXlzKSwgW10pO1xuICAgIH1cbiAgfVxuXG4gIGNsYXNzIFBhcmFtTWFwQWRhcHRlciBpbXBsZW1lbnRzIFBhcmFtTWFwIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHBhcmFtczogeyBbcDogc3RyaW5nXTogc3RyaW5nIH0pIHtcbiAgICB9XG5cbiAgICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICByZXR1cm4gdGhpcy5wYXJhbXNbbmFtZV07XG4gICAgfVxuXG4gICAgZ2V0QWxsKG5hbWU6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXQobmFtZSk7XG4gICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gICAgfVxuXG4gICAgaGFzKG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMua2V5cy5pbmNsdWRlcyhuYW1lKTtcbiAgICB9XG5cbiAgICBnZXQga2V5cygpOiBzdHJpbmdbXSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5wYXJhbXMpO1xuICAgIH1cblxuICB9XG59XG4iXX0=