adb-shared 0.0.29 → 0.0.34

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,"metadata":{"ADBHeaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"adb-header2","template":"<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"pop\" *ngIf=\"showUserMenu\">\r\n <div class=\"pop-body menu\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"pop\" *ngIf=\"showMenu\">\r\n <div class=\"pop-body menu\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <div class=\"d-flex flex-column\">\r\n <ul class=\"list-unstyled ml-0 pl-0 mh-auto\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1\">\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"}]}],"members":{"loginClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"logoutClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":15,"character":3}}]}],"userName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":30,"character":24},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":32,"character":18},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":20}]}],"ngOnInit":[{"__symbolic":"method"}],"setLanguage":[{"__symbolic":"method"}],"onExpandLink":[{"__symbolic":"method"}],"login":[{"__symbolic":"method"}],"logout":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ADBHeaderModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":10,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ADBHeaderComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":4},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":14,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":15,"character":4},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateModule","line":16,"character":4}],"exports":[{"__symbolic":"reference","name":"ADBHeaderComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["environment"],"value":{"ngModule":{"__symbolic":"reference","name":"ADBHeaderModule"},"providers":[{"__symbolic":"reference","name":"ɵa"},{"provide":"env","useValue":{"__symbolic":"reference","name":"environment"}}]}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":4,"character":17},"arguments":["env"]}]],"parameters":[null]}]}}},"origins":{"ADBHeaderComponent":"./lib/adb-header.component","ADBHeaderModule":"./lib/adb-header.module","ɵa":"./lib/environment.service"},"importAs":"adb-shared"}
1
+ {"__symbolic":"module","version":4,"metadata":{"ADBHeaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"adb-header2","template":"<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body d-flex flex-column\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div id=\"splash flex-grow-1 mh-auto\"></div>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1 d-flex justify-content-between flex-wrap align-items-center\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </div>\r\n <a href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"}]}],"members":{"loginClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"logoutClicked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":15,"character":3}}]}],"userName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":30,"character":24},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":32,"character":18},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":20}]}],"ngOnInit":[{"__symbolic":"method"}],"setLanguage":[{"__symbolic":"method"}],"onExpandLink":[{"__symbolic":"method"}],"login":[{"__symbolic":"method"}],"logout":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ADBHeaderModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":10,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ADBHeaderComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":4},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":14,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":15,"character":4},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateModule","line":16,"character":4}],"exports":[{"__symbolic":"reference","name":"ADBHeaderComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["environment"],"value":{"ngModule":{"__symbolic":"reference","name":"ADBHeaderModule"},"providers":[{"__symbolic":"reference","name":"ɵa"},{"provide":"env","useValue":{"__symbolic":"reference","name":"environment"}}]}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":4,"character":17},"arguments":["env"]}]],"parameters":[null]}]}}},"origins":{"ADBHeaderComponent":"./lib/adb-header.component","ADBHeaderModule":"./lib/adb-header.module","ɵa":"./lib/environment.service"},"importAs":"adb-shared"}
@@ -147,7 +147,7 @@
147
147
  ADBHeaderComponent.decorators = [
148
148
  { type: core.Component, args: [{
149
149
  selector: 'adb-header2',
150
- template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"pop\" *ngIf=\"showUserMenu\">\r\n <div class=\"pop-body menu\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"pop\" *ngIf=\"showMenu\">\r\n <div class=\"pop-body menu\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <div class=\"d-flex flex-column\">\r\n <ul class=\"list-unstyled ml-0 pl-0 mh-auto\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1\">\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
150
+ template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body d-flex flex-column\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div id=\"splash flex-grow-1 mh-auto\"></div>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1 d-flex justify-content-between flex-wrap align-items-center\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </div>\r\n <a href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
151
151
  }] }
152
152
  ];
153
153
  /** @nocollapse */
@@ -1 +1 @@
1
- {"version":3,"file":"adb-shared.umd.js","sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"],"names":["Injectable","Inject","Subscription","EventEmitter","forkJoin","Component","HttpClient","TranslateService","Router","Output","Input","NgModule","CommonModule","HttpClientModule","RouterModule","TranslateModule"],"mappings":"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"}
1
+ {"version":3,"file":"adb-shared.umd.js","sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"],"names":["Injectable","Inject","Subscription","EventEmitter","forkJoin","Component","HttpClient","TranslateService","Router","Output","Input","NgModule","CommonModule","HttpClientModule","RouterModule","TranslateModule"],"mappings":";;;;;;;;;;AAAA;QAII,4BAAkC,WAAW;YAAX,gBAAW,GAAX,WAAW,CAAA;SAC5C;;oBAHJA,eAAU;;;;oDAEMC,WAAM,SAAC,KAAK;;QAE7B,yBAAC;KAJD,IAIC;;;QAFe,yCAAiC;;;;;;;ACJjD;QA6BE,4BACU,UAAsB,EACtB,UAA8B,EAC/B,KAAuB,EACtB,MAAc;YAHd,eAAU,GAAV,UAAU,CAAY;YACtB,eAAU,GAAV,UAAU,CAAoB;YAC/B,UAAK,GAAL,KAAK,CAAkB;YACtB,WAAM,GAAN,MAAM,CAAQ;YApBhB,iBAAY,GAAG,IAAIC,iBAAY,EAAE,CAAC;YAChC,iBAAY,GAAG,IAAIC,iBAAY,EAAE,CAAC;YAClC,kBAAa,GAAG,IAAIA,iBAAY,EAAE,CAAC;YAS7C,aAAQ,GAAG,KAAK,CAAC;YACjB,iBAAY,GAAG,KAAK,CAAC;SASpB;QAlBD,sBAAa,wCAAQ;;;;;YAArB,UAAsB,QAAgB;;oBAC9B,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;gBACpC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;;wBAC7B,QAAQ,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;oBACtE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;iBACxC;aACF;;;WAAA;QAAA,CAAC;;;;QAcF,qCAAQ;;;QAAR;YAAA,iBAYC;YAXC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;;gBACrB,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW;;gBACjD,MAAM,GAAGC,aAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,GAAG,sBAAsB,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC,CAAC;YACvI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS;;;;YAAC,UAAA,MAAM;gBAC3C,KAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACjD,KAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACjD,KAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAI,CAAC,UAAU,CAAC,GAAG,CAAa,KAAI,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,GAAG,oBAAoB,CAAC,CAAC,SAAS;;;;gBAAC,UAAA,MAAM;oBACpI,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC;iBAC1B,EAAC,CAAC,CAAC;aACL,EAAC,CAAC,CAAC;SACL;;;;;QAED,wCAAW;;;;QAAX,UAAY,IAAI;YACd,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;;SAEtB;;;;;QAED,yCAAY;;;;QAAZ,UAAa,OAAe;YAC1B,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,EAAE;gBACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,OAAO;aACR;YACD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;SAC7B;;;;QAED,kCAAK;;;QAAL;YACE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC1B;;;;QAED,mCAAM;;;QAAN;YACE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;SAC3B;;;;QAED,wCAAW;;;QAAX;YACE,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;;oBAjEFC,cAAS,SAAC;wBACT,QAAQ,EAAE,aAAa;wBACvB,k7LAA0C;qBAC3C;;;;oBAXQC,eAAU;oBAKV,kBAAkB;oBAFlBC,uBAAgB;oBADhBC,aAAM;;;mCAYZC,WAAM;oCACNA,WAAM;+BACNC,UAAK;;QA2DR,yBAAC;KAnED,IAmEC;;;;;;QA9DC,0CAA0C;;QAC1C,0CAA4C;;QAC5C,2CAA6C;;QAQ7C,sCAAiB;;QACjB,sCAAiB;;QACjB,0CAAqB;;QACrB,wCAAuB;;QACvB,iCAAY;;QACZ,0CAAqB;;;;;QAEnB,wCAA8B;;;;;QAC9B,wCAAsC;;QACtC,mCAA8B;;;;;QAC9B,oCAAsB;;;;;;;;ACjC1B;QAUA;SAuBC;;;;;QAZe,uBAAO;;;;QAArB,UAAsB,WAAgB;YACpC,OAAO;gBACL,QAAQ,EAAE,eAAe;gBACzB,SAAS,EAAE;oBACT,kBAAkB;oBAClB;wBACE,OAAO,EAAE,KAAK;;wBACd,QAAQ,EAAE,WAAW;qBACtB;iBACF;aACF,CAAC;SACH;;oBAtBFC,aAAQ,SAAC;wBACR,YAAY,EAAE,CAAC,kBAAkB,CAAC;wBAClC,OAAO,EAAE;4BACPC,mBAAY;4BACZC,qBAAgB;4BAChBC,mBAAY;4BACZC,sBAAe;yBAChB;wBACD,OAAO,EAAE,CAAC,kBAAkB,CAAC;qBAC9B;;QAcD,sBAAC;KAvBD;;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- !function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common/http"),require("@angular/core"),require("@angular/router"),require("@ngx-translate/core"),require("rxjs"),require("@angular/common")):"function"==typeof define&&define.amd?define("adb-shared",["exports","@angular/common/http","@angular/core","@angular/router","@ngx-translate/core","rxjs","@angular/common"],t):t((n=n||self)["adb-shared"]={},n.ng.common.http,n.ng.core,n.ng.router,n.core$1,n.rxjs,n.ng.common)}(this,(function(n,t,r,e,s,a,i){"use strict";var o=function(){function n(n){this.environment=n}return n.decorators=[{type:r.Injectable}],n.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Inject,args:["env"]}]}]},n}();var l=function(){function n(n,t,e,s){this.httpClient=n,this.envService=t,this.trans=e,this.router=s,this.subscription=new a.Subscription,this.loginClicked=new r.EventEmitter,this.logoutClicked=new r.EventEmitter,this.showMenu=!1,this.showUserMenu=!1}return Object.defineProperty(n.prototype,"userName",{set:function(n){var t=n.split(" ");if(t&&t.length>1){var r=t.shift().charAt(0)+t.pop().charAt(0);this.initials=r.toUpperCase()}},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){var n=this;console.log("header router: ",this.router),this.url=this.router.url;var t=this.envService.environment.resourceUrl,r=a.forkJoin([this.httpClient.get(t+"/assets/i18n/en.json"),this.httpClient.get(t+"/assets/i18n/sv.json")]);this.subscription.add(r.subscribe((function(t){n.trans.setTranslation("en",t[0],!0),n.trans.setTranslation("sv",t[1],!0),n.subscription.add(n.httpClient.get(n.envService.environment.resourceUrl+"/assets/links.json").subscribe((function(t){n.navigation=t})))})))},n.prototype.setLanguage=function(n){this.trans.use(n)},n.prototype.onExpandLink=function(n){this.expandedLink!==n?this.expandedLink=n:this.expandedLink=null},n.prototype.login=function(){this.loginClicked.emit()},n.prototype.logout=function(){this.logoutClicked.emit()},n.prototype.ngOnDestroy=function(){this.subscription.unsubscribe()},n.decorators=[{type:r.Component,args:[{selector:"adb-header2",template:'<header class="top-header">\r\n <nav class="d-flex justify-content-between align-items-center gap-2 px-2">\r\n <div class="logo">\r\n <img src="/assets/images/logo.svg">\r\n </div>\r\n <div class="title">Artfakta</div>\r\n <nav class="quick-nav" *ngIf="navigation">\r\n <ng-container *ngFor="let link of navigation.links">\r\n <a [href]="link.url" *ngIf="link.topLink">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class="btn btn-sm btn-primary" (click)="showUserMenu = false;showMenu=!showMenu">\r\n {{\'ADB_HEADER.MENY\'|translate}}\r\n </button>\r\n </nav>\r\n <div class="d-none d-sm-block">\r\n <button class="btn user" (click)="showMenu=false;showUserMenu = !showUserMenu" *ngIf="initials">{{initials}}</button>\r\n <button *ngIf="!initials" (click)="login()" class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.LOGIN\'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class="pop" *ngIf="showUserMenu">\r\n <div class="pop-body menu" style="width:15rem">\r\n <button (click)="logout()" class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.LOGOUT\'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class="pop" *ngIf="showMenu">\r\n <div class="pop-body menu" *ngIf="navigation">\r\n <div class="d-flex justify-content-between flex-wrap gap-2 mb-2">\r\n <div class="mr-auto">\r\n <div class="d-flex gap-2" *ngIf="!initials">\r\n <button (click)="login()" class="d-sm-none btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.LOGIN\'|translate}}\r\n </button>\r\n <a href="{{navigation.createAccountLink}}?returnUrl={{url}}"\r\n class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.CREATE_USER\'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf="trans.currentLang===\'en\'" (click)="setLanguage(\'sv\')"\r\n class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.IN_SWEDISH\'|translate}}\r\n </button>\r\n <button *ngIf="trans.currentLang===\'sv\'" (click)="setLanguage(\'en\')"\r\n class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.IN_ENGLISH\'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class="mb-1">{{\'ADB_HEADER.SERVICES\'|translate}}</div>\r\n <div class="d-flex flex-column">\r\n <ul class="list-unstyled ml-0 pl-0 mh-auto">\r\n <ng-container *ngFor="let link of navigation.links">\r\n <li class="p-2 mb-1">\r\n <div class="d-flex align-items-center justify-content-between">\r\n <div>\r\n <small class="fa-stack" *ngIf="link.icon">\r\n <span class="fas fa-circle fa-stack-2x text-primary"></span>\r\n <span class="fas fa-stack-1x fa-inverse" [ngClass]="link.icon"></span>\r\n </small>\r\n <a [href]="link.url">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class="btn btn-secondary btn-sm border" *ngIf="link.children&&link.children.length>0" (click)="onExpandLink(link.transId)">\r\n <i class="fas fa-chevron-up" *ngIf="link.transId===expandedLink"></i>\r\n <i class="fas fa-chevron-down" *ngIf="link.transId!==expandedLink"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class="list-unstyled pl-4" *ngIf="link.transId===expandedLink">\r\n <li class="py-1m-0" *ngFor="let subLink of link.children">\r\n <a [href]="subLink.url">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf="navigation.about">\r\n <div class="mb-1">{{\'ADB_HEADER.CONTACT\'|translate}}</div>\r\n <ul class="list-unstyled ml-0 pl-0">\r\n <li class="p-2 mb-1">\r\n <small class="fa-stack" *ngIf="navigation.about.icon">\r\n <span class="fas fa-circle fa-stack-2x text-primary"></span>\r\n <span class="fas fa-stack-1x fa-inverse" [ngClass]="navigation.about.icon"></span>\r\n </small>\r\n <a [href]="navigation.about.url">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n'}]}],n.ctorParameters=function(){return[{type:t.HttpClient},{type:o},{type:s.TranslateService},{type:e.Router}]},n.propDecorators={loginClicked:[{type:r.Output}],logoutClicked:[{type:r.Output}],userName:[{type:r.Input}]},n}();var c=function(){function n(){}return n.forRoot=function(t){return{ngModule:n,providers:[o,{provide:"env",useValue:t}]}},n.decorators=[{type:r.NgModule,args:[{declarations:[l],imports:[i.CommonModule,t.HttpClientModule,e.RouterModule,s.TranslateModule],exports:[l]}]}],n}();n.ADBHeaderComponent=l,n.ADBHeaderModule=c,n.ɵa=o,Object.defineProperty(n,"__esModule",{value:!0})}));
1
+ !function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common/http"),require("@angular/core"),require("@angular/router"),require("@ngx-translate/core"),require("rxjs"),require("@angular/common")):"function"==typeof define&&define.amd?define("adb-shared",["exports","@angular/common/http","@angular/core","@angular/router","@ngx-translate/core","rxjs","@angular/common"],t):t((n=n||self)["adb-shared"]={},n.ng.common.http,n.ng.core,n.ng.router,n.core$1,n.rxjs,n.ng.common)}(this,(function(n,t,r,e,a,s,i){"use strict";var o=function(){function n(n){this.environment=n}return n.decorators=[{type:r.Injectable}],n.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Inject,args:["env"]}]}]},n}();var l=function(){function n(n,t,e,a){this.httpClient=n,this.envService=t,this.trans=e,this.router=a,this.subscription=new s.Subscription,this.loginClicked=new r.EventEmitter,this.logoutClicked=new r.EventEmitter,this.showMenu=!1,this.showUserMenu=!1}return Object.defineProperty(n.prototype,"userName",{set:function(n){var t=n.split(" ");if(t&&t.length>1){var r=t.shift().charAt(0)+t.pop().charAt(0);this.initials=r.toUpperCase()}},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){var n=this;console.log("header router: ",this.router),this.url=this.router.url;var t=this.envService.environment.resourceUrl,r=s.forkJoin([this.httpClient.get(t+"/assets/i18n/en.json"),this.httpClient.get(t+"/assets/i18n/sv.json")]);this.subscription.add(r.subscribe((function(t){n.trans.setTranslation("en",t[0],!0),n.trans.setTranslation("sv",t[1],!0),n.subscription.add(n.httpClient.get(n.envService.environment.resourceUrl+"/assets/links.json").subscribe((function(t){n.navigation=t})))})))},n.prototype.setLanguage=function(n){this.trans.use(n)},n.prototype.onExpandLink=function(n){this.expandedLink!==n?this.expandedLink=n:this.expandedLink=null},n.prototype.login=function(){this.loginClicked.emit()},n.prototype.logout=function(){this.logoutClicked.emit()},n.prototype.ngOnDestroy=function(){this.subscription.unsubscribe()},n.decorators=[{type:r.Component,args:[{selector:"adb-header2",template:'<header class="top-header">\r\n <nav class="d-flex justify-content-between align-items-center gap-2 px-2">\r\n <div class="logo">\r\n <img src="/assets/images/logo.svg">\r\n </div>\r\n <div class="title">Artfakta</div>\r\n <nav class="quick-nav" *ngIf="navigation">\r\n <ng-container *ngFor="let link of navigation.links">\r\n <a [href]="link.url" *ngIf="link.topLink">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class="btn btn-sm btn-primary" (click)="showUserMenu = false;showMenu=!showMenu">\r\n {{\'ADB_HEADER.MENY\'|translate}}\r\n </button>\r\n </nav>\r\n <div class="d-none d-sm-block">\r\n <button class="btn user" (click)="showMenu=false;showUserMenu = !showUserMenu" *ngIf="initials">{{initials}}</button>\r\n <button *ngIf="!initials" (click)="login()" class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.LOGIN\'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class="menu" *ngIf="showUserMenu">\r\n <div class="menu-body" style="width:15rem">\r\n <button (click)="logout()" class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.LOGOUT\'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class="menu" *ngIf="showMenu">\r\n <div class="menu-body d-flex flex-column" *ngIf="navigation">\r\n <div class="d-flex justify-content-between flex-wrap gap-2 mb-2">\r\n <div class="mr-auto">\r\n <div class="d-flex gap-2" *ngIf="!initials">\r\n <button (click)="login()" class="d-sm-none btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.LOGIN\'|translate}}\r\n </button>\r\n <a href="{{navigation.createAccountLink}}?returnUrl={{url}}"\r\n class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.CREATE_USER\'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf="trans.currentLang===\'en\'" (click)="setLanguage(\'sv\')"\r\n class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.IN_SWEDISH\'|translate}}\r\n </button>\r\n <button *ngIf="trans.currentLang===\'sv\'" (click)="setLanguage(\'en\')"\r\n class="btn btn-sm btn-primary">\r\n {{\'ADB_HEADER.IN_ENGLISH\'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class="mb-1">{{\'ADB_HEADER.SERVICES\'|translate}}</div>\r\n <ul class="list-unstyled ml-0 pl-0">\r\n <ng-container *ngFor="let link of navigation.links">\r\n <li class="p-2 mb-1">\r\n <div class="d-flex align-items-center justify-content-between">\r\n <div>\r\n <small class="fa-stack" *ngIf="link.icon">\r\n <span class="fas fa-circle fa-stack-2x text-primary"></span>\r\n <span class="fas fa-stack-1x fa-inverse" [ngClass]="link.icon"></span>\r\n </small>\r\n <a [href]="link.url">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class="btn btn-secondary btn-sm border" *ngIf="link.children&&link.children.length>0" (click)="onExpandLink(link.transId)">\r\n <i class="fas fa-chevron-up" *ngIf="link.transId===expandedLink"></i>\r\n <i class="fas fa-chevron-down" *ngIf="link.transId!==expandedLink"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class="list-unstyled pl-4" *ngIf="link.transId===expandedLink">\r\n <li class="py-1m-0" *ngFor="let subLink of link.children">\r\n <a [href]="subLink.url">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div id="splash flex-grow-1 mh-auto"></div>\r\n <div *ngIf="navigation.about">\r\n <div class="mb-1">{{\'ADB_HEADER.CONTACT\'|translate}}</div>\r\n <ul class="list-unstyled ml-0 pl-0">\r\n <li class="p-2 mb-1 d-flex justify-content-between flex-wrap align-items-center">\r\n <div>\r\n <small class="fa-stack" *ngIf="navigation.about.icon">\r\n <span class="fas fa-circle fa-stack-2x text-primary"></span>\r\n <span class="fas fa-stack-1x fa-inverse" [ngClass]="navigation.about.icon"></span>\r\n </small>\r\n <a [href]="navigation.about.url">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </div>\r\n <a href="mailto:artfakta@artdatabanken.se">artfakta@artdatabanken.se</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n'}]}],n.ctorParameters=function(){return[{type:t.HttpClient},{type:o},{type:a.TranslateService},{type:e.Router}]},n.propDecorators={loginClicked:[{type:r.Output}],logoutClicked:[{type:r.Output}],userName:[{type:r.Input}]},n}();var c=function(){function n(){}return n.forRoot=function(t){return{ngModule:n,providers:[o,{provide:"env",useValue:t}]}},n.decorators=[{type:r.NgModule,args:[{declarations:[l],imports:[i.CommonModule,t.HttpClientModule,e.RouterModule,a.TranslateModule],exports:[l]}]}],n}();n.ADBHeaderComponent=l,n.ADBHeaderModule=c,n.ɵa=o,Object.defineProperty(n,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=adb-shared.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"names":["EnvironmentService","environment","this","Injectable","Inject","args","ADBHeaderComponent","httpClient","envService","trans","router","subscription","Subscription","loginClicked","EventEmitter","logoutClicked","showMenu","showUserMenu","Object","defineProperty","prototype","fullName","splitted","split","length","initials","shift","charAt","pop","toUpperCase","ngOnInit","_this","console","log","url","baseUrl","resourceUrl","trans$","forkJoin","get","add","subscribe","result","setTranslation","navigation","setLanguage","lang","use","onExpandLink","transId","expandedLink","login","emit","logout","ngOnDestroy","unsubscribe","Component","selector","template","HttpClient","TranslateService","Router","Output","Input","ADBHeaderModule","forRoot","ngModule","providers","provide","useValue","NgModule","declarations","imports","CommonModule","HttpClientModule","RouterModule","TranslateModule","exports"],"mappings":"6iBAAA,IAAAA,EAAA,WAII,SAAAA,EAAkCC,GAAAC,KAAAD,YAAAA,EAEtC,2BAJCE,EAAAA,+EAEgBC,EAAAA,OAAMC,KAAA,CAAC,YAExBL,EANA,GCAA,IAAAM,EAAA,WA6BE,SAAAA,EACUC,EACAC,EACDC,EACCC,GAHAR,KAAAK,WAAAA,EACAL,KAAAM,WAAAA,EACDN,KAAAO,MAAAA,EACCP,KAAAQ,OAAAA,EApBFR,KAAAS,aAAe,IAAIC,EAAAA,aACjBV,KAAAW,aAAe,IAAIC,EAAAA,aACnBZ,KAAAa,cAAgB,IAAID,EAAAA,aAS9BZ,KAAAc,UAAW,EACXd,KAAAe,cAAe,EAkDjB,OA3DEC,OAAAC,eAAab,EAAAc,UAAA,WAAQ,KAArB,SAAsBC,OACdC,EAAWD,EAASE,MAAM,KAChC,GAAID,GAAYA,EAASE,OAAS,EAAG,KAC7BC,EAAWH,EAASI,QAAQC,OAAO,GAAKL,EAASM,MAAMD,OAAO,GACpEzB,KAAKuB,SAAWA,EAASI,gDAgB7BvB,EAAAc,UAAAU,SAAA,WAAA,IAAAC,EAAA7B,KACE8B,QAAQC,IAAI,kBAAmB/B,KAAKQ,QACpCR,KAAKgC,IAAMhC,KAAKQ,OAAOwB,QACjBC,EAAUjC,KAAKM,WAAWP,YAAYmC,YACtCC,EAASC,EAAAA,SAAS,CAACpC,KAAKK,WAAWgC,IAAIJ,EAAU,wBAAyBjC,KAAKK,WAAWgC,IAAIJ,EAAU,0BAC9GjC,KAAKS,aAAa6B,IAAIH,EAAOI,WAAS,SAACC,GACrCX,EAAKtB,MAAMkC,eAAe,KAAMD,EAAO,IAAI,GAC3CX,EAAKtB,MAAMkC,eAAe,KAAMD,EAAO,IAAI,GAC3CX,EAAKpB,aAAa6B,IAAIT,EAAKxB,WAAWgC,IAAgBR,EAAKvB,WAAWP,YAAYmC,YAAc,sBAAsBK,WAAS,SAACC,GAC9HX,EAAKa,WAAaF,WAKxBpC,EAAAc,UAAAyB,YAAA,SAAYC,GACV5C,KAAKO,MAAMsC,IAAID,IAIjBxC,EAAAc,UAAA4B,aAAA,SAAaC,GACP/C,KAAKgD,eAAiBD,EAI1B/C,KAAKgD,aAAeD,EAHlB/C,KAAKgD,aAAe,MAMxB5C,EAAAc,UAAA+B,MAAA,WACEjD,KAAKW,aAAauC,QAGpB9C,EAAAc,UAAAiC,OAAA,WACEnD,KAAKa,cAAcqC,QAGrB9C,EAAAc,UAAAkC,YAAA,WACEpD,KAAKS,aAAa4C,mCAhErBC,EAAAA,UAASnD,KAAA,CAAC,CACToD,SAAU,cACVC,SAAA,2wLAVOC,EAAAA,kBAKA3D,SAFA4D,EAAAA,wBADAC,EAAAA,gDAYNC,EAAAA,8BACAA,EAAAA,yBACAC,EAAAA,SA2DHzD,EA3EA,GCAA,IAAA0D,EAAA,WAUA,SAAAA,KAuBA,OAZgBA,EAAAC,QAAd,SAAsBhE,GACpB,MAAO,CACLiE,SAAUF,EACVG,UAAW,CACTnE,EACA,CACEoE,QAAS,MACTC,SAAUpE,0BAlBnBqE,EAAAA,SAAQjE,KAAA,CAAC,CACRkE,aAAc,CAACjE,GACfkE,QAAS,CACPC,EAAAA,aACAC,EAAAA,iBACAC,EAAAA,aACAC,EAAAA,iBAEFC,QAAS,CAACvE,OAeZ0D,EAjCA","sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"names":["EnvironmentService","environment","this","Injectable","Inject","args","ADBHeaderComponent","httpClient","envService","trans","router","subscription","Subscription","loginClicked","EventEmitter","logoutClicked","showMenu","showUserMenu","Object","defineProperty","prototype","fullName","splitted","split","length","initials","shift","charAt","pop","toUpperCase","ngOnInit","_this","console","log","url","baseUrl","resourceUrl","trans$","forkJoin","get","add","subscribe","result","setTranslation","navigation","setLanguage","lang","use","onExpandLink","transId","expandedLink","login","emit","logout","ngOnDestroy","unsubscribe","Component","selector","template","HttpClient","TranslateService","Router","Output","Input","ADBHeaderModule","forRoot","ngModule","providers","provide","useValue","NgModule","declarations","imports","CommonModule","HttpClientModule","RouterModule","TranslateModule","exports"],"mappings":"6iBAAA,IAAAA,EAAA,WAII,SAAAA,EAAkCC,GAAAC,KAAAD,YAAAA,EAEtC,2BAJCE,EAAAA,+EAEgBC,EAAAA,OAAMC,KAAA,CAAC,YAExBL,EANA,GCAA,IAAAM,EAAA,WA6BE,SAAAA,EACUC,EACAC,EACDC,EACCC,GAHAR,KAAAK,WAAAA,EACAL,KAAAM,WAAAA,EACDN,KAAAO,MAAAA,EACCP,KAAAQ,OAAAA,EApBFR,KAAAS,aAAe,IAAIC,EAAAA,aACjBV,KAAAW,aAAe,IAAIC,EAAAA,aACnBZ,KAAAa,cAAgB,IAAID,EAAAA,aAS9BZ,KAAAc,UAAW,EACXd,KAAAe,cAAe,EAkDjB,OA3DEC,OAAAC,eAAab,EAAAc,UAAA,WAAQ,KAArB,SAAsBC,OACdC,EAAWD,EAASE,MAAM,KAChC,GAAID,GAAYA,EAASE,OAAS,EAAG,KAC7BC,EAAWH,EAASI,QAAQC,OAAO,GAAKL,EAASM,MAAMD,OAAO,GACpEzB,KAAKuB,SAAWA,EAASI,gDAgB7BvB,EAAAc,UAAAU,SAAA,WAAA,IAAAC,EAAA7B,KACE8B,QAAQC,IAAI,kBAAmB/B,KAAKQ,QACpCR,KAAKgC,IAAMhC,KAAKQ,OAAOwB,QACjBC,EAAUjC,KAAKM,WAAWP,YAAYmC,YACtCC,EAASC,EAAAA,SAAS,CAACpC,KAAKK,WAAWgC,IAAIJ,EAAU,wBAAyBjC,KAAKK,WAAWgC,IAAIJ,EAAU,0BAC9GjC,KAAKS,aAAa6B,IAAIH,EAAOI,WAAS,SAACC,GACrCX,EAAKtB,MAAMkC,eAAe,KAAMD,EAAO,IAAI,GAC3CX,EAAKtB,MAAMkC,eAAe,KAAMD,EAAO,IAAI,GAC3CX,EAAKpB,aAAa6B,IAAIT,EAAKxB,WAAWgC,IAAgBR,EAAKvB,WAAWP,YAAYmC,YAAc,sBAAsBK,WAAS,SAACC,GAC9HX,EAAKa,WAAaF,WAKxBpC,EAAAc,UAAAyB,YAAA,SAAYC,GACV5C,KAAKO,MAAMsC,IAAID,IAIjBxC,EAAAc,UAAA4B,aAAA,SAAaC,GACP/C,KAAKgD,eAAiBD,EAI1B/C,KAAKgD,aAAeD,EAHlB/C,KAAKgD,aAAe,MAMxB5C,EAAAc,UAAA+B,MAAA,WACEjD,KAAKW,aAAauC,QAGpB9C,EAAAc,UAAAiC,OAAA,WACEnD,KAAKa,cAAcqC,QAGrB9C,EAAAc,UAAAkC,YAAA,WACEpD,KAAKS,aAAa4C,mCAhErBC,EAAAA,UAASnD,KAAA,CAAC,CACToD,SAAU,cACVC,SAAA,o1LAVOC,EAAAA,kBAKA3D,SAFA4D,EAAAA,wBADAC,EAAAA,gDAYNC,EAAAA,8BACAA,EAAAA,yBACAC,EAAAA,SA2DHzD,EA3EA,GCAA,IAAA0D,EAAA,WAUA,SAAAA,KAuBA,OAZgBA,EAAAC,QAAd,SAAsBhE,GACpB,MAAO,CACLiE,SAAUF,EACVG,UAAW,CACTnE,EACA,CACEoE,QAAS,MACTC,SAAUpE,0BAlBnBqE,EAAAA,SAAQjE,KAAA,CAAC,CACRkE,aAAc,CAACjE,GACfkE,QAAS,CACPC,EAAAA,aACAC,EAAAA,iBACAC,EAAAA,aACAC,EAAAA,iBAEFC,QAAS,CAACvE,OAeZ0D,EAjCA","sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"]}
@@ -107,7 +107,7 @@ export class ADBHeaderComponent {
107
107
  ADBHeaderComponent.decorators = [
108
108
  { type: Component, args: [{
109
109
  selector: 'adb-header2',
110
- template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"pop\" *ngIf=\"showUserMenu\">\r\n <div class=\"pop-body menu\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"pop\" *ngIf=\"showMenu\">\r\n <div class=\"pop-body menu\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <div class=\"d-flex flex-column\">\r\n <ul class=\"list-unstyled ml-0 pl-0 mh-auto\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1\">\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
110
+ template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body d-flex flex-column\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div id=\"splash flex-grow-1 mh-auto\"></div>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1 d-flex justify-content-between flex-wrap align-items-center\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </div>\r\n <a href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
111
111
  }] }
112
112
  ];
113
113
  /** @nocollapse */
@@ -163,4 +163,4 @@ if (false) {
163
163
  ADBHeaderComponent.prototype.router;
164
164
  /* Skipping unhandled member: ;*/
165
165
  }
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hZGItc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2FkYi1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTzNELE1BQU0sT0FBTyxrQkFBa0I7Ozs7Ozs7SUFpQjdCLFlBQ1UsVUFBc0IsRUFDdEIsVUFBOEIsRUFDL0IsS0FBdUIsRUFDdEIsTUFBYztRQUhkLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsZUFBVSxHQUFWLFVBQVUsQ0FBb0I7UUFDL0IsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXBCaEIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2hDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNsQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFTN0MsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixpQkFBWSxHQUFHLEtBQUssQ0FBQztJQVNyQixDQUFDOzs7OztJQWxCRCxJQUFhLFFBQVEsQ0FBQyxRQUFnQjs7Y0FDOUIsUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQ3BDLElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFOztrQkFDN0IsUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDdEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBQUEsQ0FBQzs7OztJQWNGLFFBQVE7UUFDTixPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDOztjQUNyQixPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsV0FBVzs7Y0FDakQsTUFBTSxHQUFHLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7UUFDdkksSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVM7Ozs7UUFBQyxNQUFNLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQWEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsV0FBVyxHQUFHLG9CQUFvQixDQUFDLENBQUMsU0FBUzs7OztZQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUN2SSxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztZQUMzQixDQUFDLEVBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQyxFQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7Ozs7O0lBRUQsV0FBVyxDQUFDLElBQUk7UUFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQix3REFBd0Q7SUFDMUQsQ0FBQzs7Ozs7SUFFRCxZQUFZLENBQUMsT0FBZTtRQUMxQixJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssT0FBTyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3pCLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFDO0lBQzlCLENBQUM7Ozs7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDOzs7O0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7OztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7OztZQWpFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLHUyTEFBMEM7YUFDM0M7Ozs7WUFYUSxVQUFVO1lBS1Ysa0JBQWtCO1lBRmxCLGdCQUFnQjtZQURoQixNQUFNOzs7MkJBWVosTUFBTTs0QkFDTixNQUFNO3VCQUNOLEtBQUs7Ozs7Ozs7SUFITiwwQ0FBMEM7O0lBQzFDLDBDQUE0Qzs7SUFDNUMsMkNBQTZDOztJQVE3QyxzQ0FBaUI7O0lBQ2pCLHNDQUFpQjs7SUFDakIsMENBQXFCOztJQUNyQix3Q0FBdUI7O0lBQ3ZCLGlDQUFZOztJQUNaLDBDQUFxQjs7Ozs7SUFFbkIsd0NBQThCOzs7OztJQUM5Qix3Q0FBc0M7O0lBQ3RDLG1DQUE4Qjs7Ozs7SUFDOUIsb0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgZm9ya0pvaW4sIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuL2Vudmlyb25tZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uIH0gZnJvbSAnLi9uYXZpZ2F0aW9uLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRiLWhlYWRlcjInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGItaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQURCSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gIEBPdXRwdXQoKSBsb2dpbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGxvZ291dENsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgc2V0IHVzZXJOYW1lKGZ1bGxOYW1lOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHNwbGl0dGVkID0gZnVsbE5hbWUuc3BsaXQoJyAnKTtcclxuICAgIGlmIChzcGxpdHRlZCAmJiBzcGxpdHRlZC5sZW5ndGggPiAxKSB7XHJcbiAgICAgIGNvbnN0IGluaXRpYWxzID0gc3BsaXR0ZWQuc2hpZnQoKS5jaGFyQXQoMCkgKyBzcGxpdHRlZC5wb3AoKS5jaGFyQXQoMCk7XHJcbiAgICAgIHRoaXMuaW5pdGlhbHMgPSBpbml0aWFscy50b1VwcGVyQ2FzZSgpO1xyXG4gICAgfVxyXG4gIH07XHJcbiAgaW5pdGlhbHM6IHN0cmluZztcclxuICBzaG93TWVudSA9IGZhbHNlO1xyXG4gIHNob3dVc2VyTWVudSA9IGZhbHNlO1xyXG4gIG5hdmlnYXRpb246IE5hdmlnYXRpb247XHJcbiAgdXJsOiBzdHJpbmc7XHJcbiAgZXhwYW5kZWRMaW5rOiBzdHJpbmc7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIGVudlNlcnZpY2U6IEVudmlyb25tZW50U2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuczogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgY29uc29sZS5sb2coJ2hlYWRlciByb3V0ZXI6ICcsIHRoaXMucm91dGVyKTtcclxuICAgIHRoaXMudXJsID0gdGhpcy5yb3V0ZXIudXJsO1xyXG4gICAgY29uc3QgYmFzZVVybCA9IHRoaXMuZW52U2VydmljZS5lbnZpcm9ubWVudC5yZXNvdXJjZVVybDtcclxuICAgIGNvbnN0IHRyYW5zJCA9IGZvcmtKb2luKFt0aGlzLmh0dHBDbGllbnQuZ2V0KGJhc2VVcmwgKyAnL2Fzc2V0cy9pMThuL2VuLmpzb24nKSwgdGhpcy5odHRwQ2xpZW50LmdldChiYXNlVXJsICsgJy9hc3NldHMvaTE4bi9zdi5qc29uJyldKVxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKHRyYW5zJC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy50cmFucy5zZXRUcmFuc2xhdGlvbignZW4nLCByZXN1bHRbMF0sIHRydWUpO1xyXG4gICAgICB0aGlzLnRyYW5zLnNldFRyYW5zbGF0aW9uKCdzdicsIHJlc3VsdFsxXSwgdHJ1ZSk7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmh0dHBDbGllbnQuZ2V0PE5hdmlnYXRpb24+KHRoaXMuZW52U2VydmljZS5lbnZpcm9ubWVudC5yZXNvdXJjZVVybCArICcvYXNzZXRzL2xpbmtzLmpzb24nKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICB0aGlzLm5hdmlnYXRpb24gPSByZXN1bHQ7XHJcbiAgICAgIH0pKTtcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIHNldExhbmd1YWdlKGxhbmcpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnMudXNlKGxhbmcpO1xyXG4gICAgLy9zZXQgbG9jYWxzdG9yYWdlL2Nvb2tpZXMgb2NyIHByb2JhbHkgZXZlbnQgdG8gbWFpbiBhcHBcclxuICB9XHJcblxyXG4gIG9uRXhwYW5kTGluayh0cmFuc0lkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmV4cGFuZGVkTGluayA9PT0gdHJhbnNJZCkge1xyXG4gICAgICB0aGlzLmV4cGFuZGVkTGluayA9IG51bGw7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuZXhwYW5kZWRMaW5rID0gdHJhbnNJZDtcclxuICB9XHJcblxyXG4gIGxvZ2luKCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2dpbkNsaWNrZWQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgbG9nb3V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2dvdXRDbGlja2VkLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hZGItc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2FkYi1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTzNELE1BQU0sT0FBTyxrQkFBa0I7Ozs7Ozs7SUFpQjdCLFlBQ1UsVUFBc0IsRUFDdEIsVUFBOEIsRUFDL0IsS0FBdUIsRUFDdEIsTUFBYztRQUhkLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsZUFBVSxHQUFWLFVBQVUsQ0FBb0I7UUFDL0IsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXBCaEIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2hDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNsQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFTN0MsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixpQkFBWSxHQUFHLEtBQUssQ0FBQztJQVNyQixDQUFDOzs7OztJQWxCRCxJQUFhLFFBQVEsQ0FBQyxRQUFnQjs7Y0FDOUIsUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQ3BDLElBQUksUUFB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OztJQUM5Qix3Q0FBc0M7O0lBQ3RDLG1DQUE4Qjs7Ozs7SUFDOUIsb0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgZm9ya0pvaW4sIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuL2Vudmlyb25tZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uIH0gZnJvbSAnLi9uYXZpZ2F0aW9uLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRiLWhlYWRlcjInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGItaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQURCSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gIEBPdXRwdXQoKSBsb2dpbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGxvZ291dENsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgc2V0IHVzZXJOYW1lKGZ1bGxOYW1lOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHNwbGl0dGVkID0gZnVsbE5hbWUuc3BsaXQoJyAnKTtcclxuICAgIGlmIChzcGxpdHRlZCAmJiBzcGxpdHRlZC5sZW5ndGggPiAxKSB7XHJcbiAgICAgIGNvbnN0IGluaXRpYWxzID0gc3BsaXR0ZWQuc2hpZnQoKS5jaGFyQXQoMCkgKyBzcGxpdHRlZC5wb3AoKS5jaGFyQXQoMCk7XHJcbiAgICAgIHRoaXMuaW5pdGlhbHMgPSBpbml0aWFscy50b1VwcGVyQ2FzZSgpO1xyXG4gICAgfVxyXG4gIH07XHJcbiAgaW5pdGlhbHM6IHN0cmluZztcclxuICBzaG93TWVudSA9IGZhbHNlO1xyXG4gIHNob3dVc2VyTWVudSA9IGZhbHNlO1xyXG4gIG5hdmlnYXRpb246IE5hdmlnYXRpb247XHJcbiAgdXJsOiBzdHJpbmc7XHJcbiAgZXhwYW5kZWRMaW5rOiBzdHJpbmc7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIGVudlNlcnZpY2U6IEVudmlyb25tZW50U2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuczogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgY29uc29sZS5sb2coJ2hlYWRlciByb3V0ZXI6ICcsIHRoaXMucm91dGVyKTtcclxuICAgIHRoaXMudXJsID0gdGhpcy5yb3V0ZXIudXJsO1xyXG4gICAgY29uc3QgYmFzZVVybCA9IHRoaXMuZW52U2VydmljZS5lbnZpcm9ubWVudC5yZXNvdXJjZVVybDtcclxuICAgIGNvbnN0IHRyYW5zJCA9IGZvcmtKb2luKFt0aGlzLmh0dHBDbGllbnQuZ2V0KGJhc2VVcmwgKyAnL2Fzc2V0cy9pMThuL2VuLmpzb24nKSwgdGhpcy5odHRwQ2xpZW50LmdldChiYXNlVXJsICsgJy9hc3NldHMvaTE4bi9zdi5qc29uJyldKVxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKHRyYW5zJC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy50cmFucy5zZXRUcmFuc2xhdGlvbignZW4nLCByZXN1bHRbMF0sIHRydWUpO1xyXG4gICAgICB0aGlzLnRyYW5zLnNldFRyYW5zbGF0aW9uKCdzdicsIHJlc3VsdFsxXSwgdHJ1ZSk7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmh0dHBDbGllbnQuZ2V0PE5hdmlnYXRpb24+KHRoaXMuZW52U2VydmljZS5lbnZpcm9ubWVudC5yZXNvdXJjZVVybCArICcvYXNzZXRzL2xpbmtzLmpzb24nKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICB0aGlzLm5hdmlnYXRpb24gPSByZXN1bHQ7XHJcbiAgICAgIH0pKTtcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIHNldExhbmd1YWdlKGxhbmcpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnMudXNlKGxhbmcpO1xyXG4gICAgLy9zZXQgbG9jYWxzdG9yYWdlL2Nvb2tpZXMgb2NyIHByb2JhbHkgZXZlbnQgdG8gbWFpbiBhcHBcclxuICB9XHJcblxyXG4gIG9uRXhwYW5kTGluayh0cmFuc0lkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmV4cGFuZGVkTGluayA9PT0gdHJhbnNJZCkge1xyXG4gICAgICB0aGlzLmV4cGFuZGVkTGluayA9IG51bGw7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuZXhwYW5kZWRMaW5rID0gdHJhbnNJZDtcclxuICB9XHJcblxyXG4gIGxvZ2luKCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2dpbkNsaWNrZWQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgbG9nb3V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2dvdXRDbGlja2VkLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -125,7 +125,7 @@ var ADBHeaderComponent = /** @class */ (function () {
125
125
  ADBHeaderComponent.decorators = [
126
126
  { type: Component, args: [{
127
127
  selector: 'adb-header2',
128
- template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"pop\" *ngIf=\"showUserMenu\">\r\n <div class=\"pop-body menu\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"pop\" *ngIf=\"showMenu\">\r\n <div class=\"pop-body menu\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <div class=\"d-flex flex-column\">\r\n <ul class=\"list-unstyled ml-0 pl-0 mh-auto\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1\">\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
128
+ template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body d-flex flex-column\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div id=\"splash flex-grow-1 mh-auto\"></div>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1 d-flex justify-content-between flex-wrap align-items-center\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </div>\r\n <a href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
129
129
  }] }
130
130
  ];
131
131
  /** @nocollapse */
@@ -184,4 +184,4 @@ if (false) {
184
184
  ADBHeaderComponent.prototype.router;
185
185
  /* Skipping unhandled member: ;*/
186
186
  }
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hZGItc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2FkYi1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRzNEO0lBcUJFLDRCQUNVLFVBQXNCLEVBQ3RCLFVBQThCLEVBQy9CLEtBQXVCLEVBQ3RCLE1BQWM7UUFIZCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGVBQVUsR0FBVixVQUFVLENBQW9CO1FBQy9CLFVBQUssR0FBTCxLQUFLLENBQWtCO1FBQ3RCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFwQmhCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBUzdDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsaUJBQVksR0FBRyxLQUFLLENBQUM7SUFTckIsQ0FBQztJQWxCRCxzQkFBYSx3Q0FBUTs7Ozs7UUFBckIsVUFBc0IsUUFBZ0I7O2dCQUM5QixRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7WUFDcEMsSUFBSSxRQUFRLElBQUksUUFBUSxD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c0NBQWlCOztJQUNqQixzQ0FBaUI7O0lBQ2pCLDBDQUFxQjs7SUFDckIsd0NBQXVCOztJQUN2QixpQ0FBWTs7SUFDWiwwQ0FBcUI7Ozs7O0lBRW5CLHdDQUE4Qjs7Ozs7SUFDOUIsd0NBQXNDOztJQUN0QyxtQ0FBOEI7Ozs7O0lBQzlCLG9DQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRW52aXJvbm1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9lbnZpcm9ubWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbiB9IGZyb20gJy4vbmF2aWdhdGlvbi5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkYi1oZWFkZXIyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWRiLWhlYWRlci5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFEQkhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICBAT3V0cHV0KCkgbG9naW5DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBsb2dvdXRDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBJbnB1dCgpIHNldCB1c2VyTmFtZShmdWxsTmFtZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBzcGxpdHRlZCA9IGZ1bGxOYW1lLnNwbGl0KCcgJyk7XHJcbiAgICBpZiAoc3BsaXR0ZWQgJiYgc3BsaXR0ZWQubGVuZ3RoID4gMSkge1xyXG4gICAgICBjb25zdCBpbml0aWFscyA9IHNwbGl0dGVkLnNoaWZ0KCkuY2hhckF0KDApICsgc3BsaXR0ZWQucG9wKCkuY2hhckF0KDApO1xyXG4gICAgICB0aGlzLmluaXRpYWxzID0gaW5pdGlhbHMudG9VcHBlckNhc2UoKTtcclxuICAgIH1cclxuICB9O1xyXG4gIGluaXRpYWxzOiBzdHJpbmc7XHJcbiAgc2hvd01lbnUgPSBmYWxzZTtcclxuICBzaG93VXNlck1lbnUgPSBmYWxzZTtcclxuICBuYXZpZ2F0aW9uOiBOYXZpZ2F0aW9uO1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIGV4cGFuZGVkTGluazogc3RyaW5nO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBlbnZTZXJ2aWNlOiBFbnZpcm9ubWVudFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnM6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnNvbGUubG9nKCdoZWFkZXIgcm91dGVyOiAnLCB0aGlzLnJvdXRlcik7XHJcbiAgICB0aGlzLnVybCA9IHRoaXMucm91dGVyLnVybDtcclxuICAgIGNvbnN0IGJhc2VVcmwgPSB0aGlzLmVudlNlcnZpY2UuZW52aXJvbm1lbnQucmVzb3VyY2VVcmw7XHJcbiAgICBjb25zdCB0cmFucyQgPSBmb3JrSm9pbihbdGhpcy5odHRwQ2xpZW50LmdldChiYXNlVXJsICsgJy9hc3NldHMvaTE4bi9lbi5qc29uJyksIHRoaXMuaHR0cENsaWVudC5nZXQoYmFzZVVybCArICcvYXNzZXRzL2kxOG4vc3YuanNvbicpXSlcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0cmFucyQuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMudHJhbnMuc2V0VHJhbnNsYXRpb24oJ2VuJywgcmVzdWx0WzBdLCB0cnVlKTtcclxuICAgICAgdGhpcy50cmFucy5zZXRUcmFuc2xhdGlvbignc3YnLCByZXN1bHRbMV0sIHRydWUpO1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQodGhpcy5odHRwQ2xpZW50LmdldDxOYXZpZ2F0aW9uPih0aGlzLmVudlNlcnZpY2UuZW52aXJvbm1lbnQucmVzb3VyY2VVcmwgKyAnL2Fzc2V0cy9saW5rcy5qc29uJykuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgdGhpcy5uYXZpZ2F0aW9uID0gcmVzdWx0O1xyXG4gICAgICB9KSk7XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBzZXRMYW5ndWFnZShsYW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zLnVzZShsYW5nKTtcclxuICAgIC8vc2V0IGxvY2Fsc3RvcmFnZS9jb29raWVzIG9jciBwcm9iYWx5IGV2ZW50IHRvIG1haW4gYXBwXHJcbiAgfVxyXG5cclxuICBvbkV4cGFuZExpbmsodHJhbnNJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5leHBhbmRlZExpbmsgPT09IHRyYW5zSWQpIHtcclxuICAgICAgdGhpcy5leHBhbmRlZExpbmsgPSBudWxsO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmV4cGFuZGVkTGluayA9IHRyYW5zSWQ7XHJcbiAgfVxyXG5cclxuICBsb2dpbigpOiB2b2lkIHtcclxuICAgIHRoaXMubG9naW5DbGlja2VkLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGxvZ291dCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9nb3V0Q2xpY2tlZC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hZGItc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2FkYi1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRzNEO0lBcUJFLDRCQUNVLFVBQXNCLEVBQ3RCLFVBQThCLEVBQy9CLEtBQXVCLEVBQ3RCLE1BQWM7UUFIZCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGVBQVUsR0FBVixVQUFVLENBQW9CO1FBQy9CLFVBQUssR0FBTCxLQUFLLENBQWtCO1FBQ3RCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFwQmhCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBUzdDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsaUJBQVksR0FBRyxLQUFLLENBQUM7SUFTckIsQ0FBQztJQWxCRCxzQkFBYSx3Q0FBUTs7Ozs7UUFBckIsVUFBc0IsUUFBZ0I7O2dCQUM5QixRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7WUFDcEMsSUFBSSxRQUFRLElBQUksUUFBUSxD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c0NBQWlCOztJQUNqQixzQ0FBaUI7O0lBQ2pCLDBDQUFxQjs7SUFDckIsd0NBQXVCOztJQUN2QixpQ0FBWTs7SUFDWiwwQ0FBcUI7Ozs7O0lBRW5CLHdDQUE4Qjs7Ozs7SUFDOUIsd0NBQXNDOztJQUN0QyxtQ0FBOEI7Ozs7O0lBQzlCLG9DQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRW52aXJvbm1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9lbnZpcm9ubWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbiB9IGZyb20gJy4vbmF2aWdhdGlvbi5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkYi1oZWFkZXIyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWRiLWhlYWRlci5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFEQkhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICBAT3V0cHV0KCkgbG9naW5DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBsb2dvdXRDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBJbnB1dCgpIHNldCB1c2VyTmFtZShmdWxsTmFtZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBzcGxpdHRlZCA9IGZ1bGxOYW1lLnNwbGl0KCcgJyk7XHJcbiAgICBpZiAoc3BsaXR0ZWQgJiYgc3BsaXR0ZWQubGVuZ3RoID4gMSkge1xyXG4gICAgICBjb25zdCBpbml0aWFscyA9IHNwbGl0dGVkLnNoaWZ0KCkuY2hhckF0KDApICsgc3BsaXR0ZWQucG9wKCkuY2hhckF0KDApO1xyXG4gICAgICB0aGlzLmluaXRpYWxzID0gaW5pdGlhbHMudG9VcHBlckNhc2UoKTtcclxuICAgIH1cclxuICB9O1xyXG4gIGluaXRpYWxzOiBzdHJpbmc7XHJcbiAgc2hvd01lbnUgPSBmYWxzZTtcclxuICBzaG93VXNlck1lbnUgPSBmYWxzZTtcclxuICBuYXZpZ2F0aW9uOiBOYXZpZ2F0aW9uO1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIGV4cGFuZGVkTGluazogc3RyaW5nO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBlbnZTZXJ2aWNlOiBFbnZpcm9ubWVudFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnM6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnNvbGUubG9nKCdoZWFkZXIgcm91dGVyOiAnLCB0aGlzLnJvdXRlcik7XHJcbiAgICB0aGlzLnVybCA9IHRoaXMucm91dGVyLnVybDtcclxuICAgIGNvbnN0IGJhc2VVcmwgPSB0aGlzLmVudlNlcnZpY2UuZW52aXJvbm1lbnQucmVzb3VyY2VVcmw7XHJcbiAgICBjb25zdCB0cmFucyQgPSBmb3JrSm9pbihbdGhpcy5odHRwQ2xpZW50LmdldChiYXNlVXJsICsgJy9hc3NldHMvaTE4bi9lbi5qc29uJyksIHRoaXMuaHR0cENsaWVudC5nZXQoYmFzZVVybCArICcvYXNzZXRzL2kxOG4vc3YuanNvbicpXSlcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0cmFucyQuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgIHRoaXMudHJhbnMuc2V0VHJhbnNsYXRpb24oJ2VuJywgcmVzdWx0WzBdLCB0cnVlKTtcclxuICAgICAgdGhpcy50cmFucy5zZXRUcmFuc2xhdGlvbignc3YnLCByZXN1bHRbMV0sIHRydWUpO1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQodGhpcy5odHRwQ2xpZW50LmdldDxOYXZpZ2F0aW9uPih0aGlzLmVudlNlcnZpY2UuZW52aXJvbm1lbnQucmVzb3VyY2VVcmwgKyAnL2Fzc2V0cy9saW5rcy5qc29uJykuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgdGhpcy5uYXZpZ2F0aW9uID0gcmVzdWx0O1xyXG4gICAgICB9KSk7XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBzZXRMYW5ndWFnZShsYW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zLnVzZShsYW5nKTtcclxuICAgIC8vc2V0IGxvY2Fsc3RvcmFnZS9jb29raWVzIG9jciBwcm9iYWx5IGV2ZW50IHRvIG1haW4gYXBwXHJcbiAgfVxyXG5cclxuICBvbkV4cGFuZExpbmsodHJhbnNJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5leHBhbmRlZExpbmsgPT09IHRyYW5zSWQpIHtcclxuICAgICAgdGhpcy5leHBhbmRlZExpbmsgPSBudWxsO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmV4cGFuZGVkTGluayA9IHRyYW5zSWQ7XHJcbiAgfVxyXG5cclxuICBsb2dpbigpOiB2b2lkIHtcclxuICAgIHRoaXMubG9naW5DbGlja2VkLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGxvZ291dCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9nb3V0Q2xpY2tlZC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -132,7 +132,7 @@ class ADBHeaderComponent {
132
132
  ADBHeaderComponent.decorators = [
133
133
  { type: Component, args: [{
134
134
  selector: 'adb-header2',
135
- template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"pop\" *ngIf=\"showUserMenu\">\r\n <div class=\"pop-body menu\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"pop\" *ngIf=\"showMenu\">\r\n <div class=\"pop-body menu\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <div class=\"d-flex flex-column\">\r\n <ul class=\"list-unstyled ml-0 pl-0 mh-auto\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1\">\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
135
+ template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body d-flex flex-column\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div id=\"splash flex-grow-1 mh-auto\"></div>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1 d-flex justify-content-between flex-wrap align-items-center\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </div>\r\n <a href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
136
136
  }] }
137
137
  ];
138
138
  /** @nocollapse */
@@ -1 +1 @@
1
- {"version":3,"file":"adb-shared.js","sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adb-shared.js","sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -148,7 +148,7 @@ var ADBHeaderComponent = /** @class */ (function () {
148
148
  ADBHeaderComponent.decorators = [
149
149
  { type: Component, args: [{
150
150
  selector: 'adb-header2',
151
- template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"pop\" *ngIf=\"showUserMenu\">\r\n <div class=\"pop-body menu\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"pop\" *ngIf=\"showMenu\">\r\n <div class=\"pop-body menu\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <div class=\"d-flex flex-column\">\r\n <ul class=\"list-unstyled ml-0 pl-0 mh-auto\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1\">\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
151
+ template: "<header class=\"top-header\">\r\n <nav class=\"d-flex justify-content-between align-items-center gap-2 px-2\">\r\n <div class=\"logo\">\r\n <img src=\"/assets/images/logo.svg\">\r\n </div>\r\n <div class=\"title\">Artfakta</div>\r\n <nav class=\"quick-nav\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n <button class=\"btn btn-sm btn-primary\" (click)=\"showUserMenu = false;showMenu=!showMenu\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n </button>\r\n </nav>\r\n <div class=\"d-none d-sm-block\">\r\n <button class=\"btn user\" (click)=\"showMenu=false;showUserMenu = !showUserMenu\" *ngIf=\"initials\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" (click)=\"login()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body\" style=\"width:15rem\">\r\n <button (click)=\"logout()\" class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body d-flex flex-column\" *ngIf=\"navigation\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div class=\"mr-auto\">\r\n <div class=\"d-flex gap-2\" *ngIf=\"!initials\">\r\n <button (click)=\"login()\" class=\"d-sm-none btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-sm btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-1\">{{'ADB_HEADER.SERVICES'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <li class=\"p-2 mb-1\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"link.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"link.icon\"></span>\r\n </small>\r\n <a [href]=\"link.url\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div>\r\n <button class=\"btn btn-secondary btn-sm border\" *ngIf=\"link.children&&link.children.length>0\" (click)=\"onExpandLink(link.transId)\">\r\n <i class=\"fas fa-chevron-up\" *ngIf=\"link.transId===expandedLink\"></i>\r\n <i class=\"fas fa-chevron-down\" *ngIf=\"link.transId!==expandedLink\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled pl-4\" *ngIf=\"link.transId===expandedLink\">\r\n <li class=\"py-1m-0\" *ngFor=\"let subLink of link.children\">\r\n <a [href]=\"subLink.url\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div id=\"splash flex-grow-1 mh-auto\"></div>\r\n <div *ngIf=\"navigation.about\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <ul class=\"list-unstyled ml-0 pl-0\">\r\n <li class=\"p-2 mb-1 d-flex justify-content-between flex-wrap align-items-center\">\r\n <div>\r\n <small class=\"fa-stack\" *ngIf=\"navigation.about.icon\">\r\n <span class=\"fas fa-circle fa-stack-2x text-primary\"></span>\r\n <span class=\"fas fa-stack-1x fa-inverse\" [ngClass]=\"navigation.about.icon\"></span>\r\n </small>\r\n <a [href]=\"navigation.about.url\">\r\n {{navigation.about.transId|translate}}\r\n </a>\r\n </div>\r\n <a href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
152
152
  }] }
153
153
  ];
154
154
  /** @nocollapse */
@@ -1 +1 @@
1
- {"version":3,"file":"adb-shared.js","sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adb-shared.js","sources":["ng://adb-shared/lib/environment.service.ts","ng://adb-shared/lib/adb-header.component.ts","ng://adb-shared/lib/adb-header.module.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class EnvironmentService {\r\n constructor(@Inject('env') public environment) {\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { forkJoin, Subscription } from 'rxjs';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Navigation } from './navigation.model';\r\n\r\n@Component({\r\n selector: 'adb-header2',\r\n templateUrl: './adb-header.component.html'\r\n})\r\nexport class ADBHeaderComponent implements OnInit, OnDestroy {\r\n private subscription = new Subscription();\r\n @Output() loginClicked = new EventEmitter();\r\n @Output() logoutClicked = new EventEmitter();\r\n @Input() set userName(fullName: string) {\r\n const splitted = fullName.split(' ');\r\n if (splitted && splitted.length > 1) {\r\n const initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);\r\n this.initials = initials.toUpperCase();\r\n }\r\n };\r\n initials: string;\r\n showMenu = false;\r\n showUserMenu = false;\r\n navigation: Navigation;\r\n url: string;\r\n expandedLink: string;\r\n constructor(\r\n private httpClient: HttpClient,\r\n private envService: EnvironmentService,\r\n public trans: TranslateService,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n console.log('header router: ', this.router);\r\n this.url = this.router.url;\r\n const baseUrl = this.envService.environment.resourceUrl;\r\n const trans$ = forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')])\r\n this.subscription.add(trans$.subscribe(result => {\r\n this.trans.setTranslation('en', result[0], true);\r\n this.trans.setTranslation('sv', result[1], true);\r\n this.subscription.add(this.httpClient.get<Navigation>(this.envService.environment.resourceUrl + '/assets/links.json').subscribe(result => {\r\n this.navigation = result;\r\n }));\r\n }));\r\n }\r\n\r\n setLanguage(lang): void {\r\n this.trans.use(lang);\r\n //set localstorage/cookies ocr probaly event to main app\r\n }\r\n\r\n onExpandLink(transId: string): void {\r\n if (this.expandedLink === transId) {\r\n this.expandedLink = null;\r\n return;\r\n }\r\n this.expandedLink = transId;\r\n }\r\n\r\n login(): void {\r\n this.loginClicked.emit();\r\n }\r\n\r\n logout(): void {\r\n this.logoutClicked.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { ADBHeaderComponent } from './adb-header.component';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n\r\n@NgModule({\r\n declarations: [ADBHeaderComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TranslateModule\r\n ],\r\n exports: [ADBHeaderComponent]\r\n})\r\nexport class ADBHeaderModule {\r\n public static forRoot(environment: any): ModuleWithProviders<ADBHeaderModule> {\r\n return {\r\n ngModule: ADBHeaderModule,\r\n providers: [\r\n EnvironmentService,\r\n {\r\n provide: 'env', // you can also use InjectionToken\r\n useValue: environment\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adb-shared",
3
- "version": "0.0.29",
3
+ "version": "0.0.34",
4
4
  "author": "ADB",
5
5
  "license": "ISC",
6
6
  "peerDependencies": {