adb-shared 0.0.55 → 1.0.3

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.
package/README.md CHANGED
@@ -1,24 +1,13 @@
1
1
  # ArtdataShared
2
2
 
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.0.
3
+ This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 12.2.9
4
4
 
5
- ## Code scaffolding
5
+ Use it with https://www.npmjs.com/package/slu-design-system to get the correct look
6
6
 
7
- Run `ng generate component component-name --project artdata-shared` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project artdata-shared`.
8
- > Note: Don't forget to add `--project artdata-shared` or else it will be added to the default project in your `angular.json` file.
7
+ ## Development server
9
8
 
10
- ## Build
11
-
12
- Run `ng build artdata-shared` to build the project. The build artifacts will be stored in the `dist/` directory.
13
-
14
- ## Publishing
15
-
16
- After building your library with `ng build artdata-shared`, go to the dist folder `cd dist/artdata-shared` and run `npm publish`.
9
+ Run `start` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.
17
10
 
18
- ## Running unit tests
19
-
20
- Run `ng test artdata-shared` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
-
22
- ## Further help
11
+ ## Build
23
12
 
24
- To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
13
+ Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build.
package/adb-shared.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
+ /// <amd-module name="adb-shared" />
4
5
  export * from './public-api';
5
- export { ClickOutsideDirective as ɵb } from './lib/click-outside.directive';
6
- export { EnvironmentService as ɵa } from './lib/environment.service';
@@ -1,336 +1,230 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common/http'), require('@angular/core'), require('@ngx-translate/core'), require('rxjs'), require('@angular/common'), require('@angular/router')) :
3
- typeof define === 'function' && define.amd ? define('adb-shared', ['exports', '@angular/common/http', '@angular/core', '@ngx-translate/core', 'rxjs', '@angular/common', '@angular/router'], factory) :
4
- (global = global || self, factory(global['adb-shared'] = {}, global.ng.common.http, global.ng.core, global.core$1, global.rxjs, global.ng.common, global.ng.router));
5
- }(this, (function (exports, http, core, core$1, rxjs, common, router) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common/http'), require('@angular/core'), require('rxjs'), require('@ngx-translate/core'), require('@angular/common'), require('@angular/router')) :
3
+ typeof define === 'function' && define.amd ? define('adb-shared', ['exports', '@angular/common/http', '@angular/core', 'rxjs', '@ngx-translate/core', '@angular/common', '@angular/router'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["adb-shared"] = {}, global.ng.common.http, global.ng.core, global.rxjs, global.i3, global.ng.common, global.ng.router));
5
+ })(this, (function (exports, i1, i0, rxjs, i3, i5, router) { 'use strict';
6
+
7
+ function _interopNamespace(e) {
8
+ if (e && e.__esModule) return e;
9
+ var n = Object.create(null);
10
+ if (e) {
11
+ Object.keys(e).forEach(function (k) {
12
+ if (k !== 'default') {
13
+ var d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: function () { return e[k]; }
17
+ });
18
+ }
19
+ });
20
+ }
21
+ n["default"] = e;
22
+ return Object.freeze(n);
23
+ }
24
+
25
+ var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
26
+ var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
27
+ var i3__namespace = /*#__PURE__*/_interopNamespace(i3);
28
+ var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
6
29
 
7
- /**
8
- * @fileoverview added by tsickle
9
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
10
- */
11
30
  var EnvironmentService = /** @class */ (function () {
12
31
  function EnvironmentService(environment) {
13
32
  this.environment = environment;
14
33
  }
15
- EnvironmentService.decorators = [
16
- { type: core.Injectable }
17
- ];
18
- /** @nocollapse */
19
- EnvironmentService.ctorParameters = function () { return [
20
- { type: undefined, decorators: [{ type: core.Inject, args: ['env',] }] }
21
- ]; };
22
34
  return EnvironmentService;
23
35
  }());
24
- if (false) {
25
- /** @type {?} */
26
- EnvironmentService.prototype.environment;
27
- }
36
+ /** @nocollapse */ EnvironmentService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: EnvironmentService, deps: [{ token: 'env' }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
37
+ /** @nocollapse */ EnvironmentService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: EnvironmentService });
38
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: EnvironmentService, decorators: [{
39
+ type: i0.Injectable
40
+ }], ctorParameters: function () {
41
+ return [{ type: undefined, decorators: [{
42
+ type: i0.Inject,
43
+ args: ['env']
44
+ }] }];
45
+ } });
46
+
47
+ var ClickOutsideDirective = /** @class */ (function () {
48
+ function ClickOutsideDirective(elementRef) {
49
+ this.elementRef = elementRef;
50
+ this.clickOutside = new i0.EventEmitter();
51
+ }
52
+ ClickOutsideDirective.prototype.onClick = function (target) {
53
+ var clickedInside = this.elementRef.nativeElement.contains(target);
54
+ if (!clickedInside) {
55
+ this.clickOutside.emit();
56
+ }
57
+ };
58
+ return ClickOutsideDirective;
59
+ }());
60
+ /** @nocollapse */ ClickOutsideDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ClickOutsideDirective, deps: [{ token: i0__namespace.ElementRef }], target: i0__namespace.ɵɵFactoryTarget.Directive });
61
+ /** @nocollapse */ ClickOutsideDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: ClickOutsideDirective, selector: "[clickOutside]", outputs: { clickOutside: "clickOutside" }, host: { listeners: { "document:click": "onClick($event.target)" } }, ngImport: i0__namespace });
62
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ClickOutsideDirective, decorators: [{
63
+ type: i0.Directive,
64
+ args: [{
65
+ selector: '[clickOutside]',
66
+ }]
67
+ }], ctorParameters: function () { return [{ type: i0__namespace.ElementRef }]; }, propDecorators: { clickOutside: [{
68
+ type: i0.Output
69
+ }], onClick: [{
70
+ type: i0.HostListener,
71
+ args: ['document:click', ['$event.target']]
72
+ }] } });
28
73
 
29
- /**
30
- * @fileoverview added by tsickle
31
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
32
- */
33
74
  var ADBHeaderComponent = /** @class */ (function () {
34
75
  function ADBHeaderComponent(httpClient, envService, trans) {
35
76
  this.httpClient = httpClient;
36
77
  this.envService = envService;
37
78
  this.trans = trans;
38
79
  this.subscription = new rxjs.Subscription();
39
- this.loginClicked = new core.EventEmitter();
40
- this.logoutClicked = new core.EventEmitter();
41
- this.dropMenuChange = new core.EventEmitter();
80
+ this.loginClicked = new i0.EventEmitter();
81
+ this.logoutClicked = new i0.EventEmitter();
82
+ this.dropMenuChange = new i0.EventEmitter();
83
+ this.translationFinished = false;
42
84
  this.showMenu = false;
43
85
  this.showUserMenu = false;
44
86
  }
45
87
  Object.defineProperty(ADBHeaderComponent.prototype, "userName", {
46
- set: /**
47
- * @param {?} fullName
48
- * @return {?}
49
- */
50
- function (fullName) {
88
+ set: function (fullName) {
51
89
  this.fullName = fullName;
52
- /** @type {?} */
53
90
  var splitted = fullName.split(' ');
54
91
  if (splitted && splitted.length > 1) {
55
- /** @type {?} */
56
92
  var initials = splitted.shift().charAt(0) + splitted.pop().charAt(0);
57
93
  this.initials = initials.toUpperCase();
58
94
  }
59
95
  },
60
- enumerable: true,
96
+ enumerable: false,
61
97
  configurable: true
62
98
  });
63
99
  ;
64
- /**
65
- * @return {?}
66
- */
67
- ADBHeaderComponent.prototype.ngOnInit = /**
68
- * @return {?}
69
- */
70
- function () {
100
+ ADBHeaderComponent.prototype.ngOnInit = function () {
71
101
  var _this = this;
72
102
  this.url = window.location.href;
73
- /** @type {?} */
74
103
  var baseUrl = this.envService.environment.resourceUrl;
75
- this.subscription.add(this.httpClient.get(baseUrl + '/assets/links.json').subscribe((/**
76
- * @param {?} result
77
- * @return {?}
78
- */
79
- function (result) {
104
+ this.subscription.add(this.httpClient.get(baseUrl + '/assets/links.json').subscribe(function (result) {
80
105
  _this.navigation = result;
81
- })));
82
- this.initAllTranslations(baseUrl);
106
+ }));
107
+ this.initTranslations(baseUrl);
83
108
  };
84
- /**
85
- * @private
86
- * @param {?} baseUrl
87
- * @return {?}
88
- */
89
- ADBHeaderComponent.prototype.initAllTranslations = /**
90
- * @private
91
- * @param {?} baseUrl
92
- * @return {?}
93
- */
94
- function (baseUrl) {
109
+ ADBHeaderComponent.prototype.initTranslations = function (baseUrl) {
95
110
  var _this = this;
96
- /** @type {?} */
97
- var trans$ = rxjs.forkJoin([this.httpClient.get(baseUrl + '/assets/i18n/en.json'), this.httpClient.get(baseUrl + '/assets/i18n/sv.json')]);
98
- this.subscription.add(trans$.subscribe((/**
99
- * @param {?} result
100
- * @return {?}
101
- */
102
- function (result) {
103
- _this.trans.setTranslation('en', result[0], true);
104
- _this.trans.setTranslation('sv', result[1], true);
105
- })));
111
+ if (this.trans.store.translations[this.trans.currentLang]) {
112
+ this.initTranslation(baseUrl, this.trans.currentLang);
113
+ }
114
+ else {
115
+ this.subscription.add(this.trans.onLangChange.subscribe(function (event) {
116
+ _this.initTranslation(baseUrl, event.lang);
117
+ }));
118
+ }
119
+ };
120
+ ADBHeaderComponent.prototype.initTranslation = function (baseUrl, lang) {
121
+ var _this = this;
122
+ //TODO: Prepare for diffents lang then en sv (en-GB) or add more files in devcomponentserver :)
123
+ this.subscription.add(this.httpClient.get(baseUrl + ("/assets/i18n/" + lang + ".json"), { headers: new i1.HttpHeaders() }).subscribe(function (translations) {
124
+ _this.trans.setTranslation(lang, translations, true);
125
+ _this.translationFinished = true;
126
+ }));
106
127
  };
107
- /**
108
- * @param {?} show
109
- * @return {?}
110
- */
111
- ADBHeaderComponent.prototype.showMenuDropdown = /**
112
- * @param {?} show
113
- * @return {?}
114
- */
115
- function (show) {
128
+ ADBHeaderComponent.prototype.showMenuDropdown = function (show) {
116
129
  if (this.showMenu !== show) {
117
130
  this.showMenu = show;
118
131
  this.dropMenuChange.emit(show);
119
132
  }
120
133
  };
121
- /**
122
- * @param {?} lang
123
- * @return {?}
124
- */
125
- ADBHeaderComponent.prototype.setLanguage = /**
126
- * @param {?} lang
127
- * @return {?}
128
- */
129
- function (lang) {
134
+ ADBHeaderComponent.prototype.setLanguage = function (lang) {
130
135
  this.trans.use(lang);
131
136
  //TODO: set localstorage/cookies or probaly event to main app
132
137
  };
133
- /**
134
- * @param {?} transId
135
- * @return {?}
136
- */
137
- ADBHeaderComponent.prototype.onExpandLink = /**
138
- * @param {?} transId
139
- * @return {?}
140
- */
141
- function (transId) {
138
+ ADBHeaderComponent.prototype.onExpandLink = function (transId) {
142
139
  if (this.expandedLink === transId) {
143
140
  this.expandedLink = null;
144
141
  return;
145
142
  }
146
143
  this.expandedLink = transId;
147
144
  };
148
- /**
149
- * @return {?}
150
- */
151
- ADBHeaderComponent.prototype.login = /**
152
- * @return {?}
153
- */
154
- function () {
145
+ ADBHeaderComponent.prototype.login = function () {
155
146
  this.loginClicked.emit();
156
147
  };
157
- /**
158
- * @return {?}
159
- */
160
- ADBHeaderComponent.prototype.logout = /**
161
- * @return {?}
162
- */
163
- function () {
148
+ ADBHeaderComponent.prototype.logout = function () {
164
149
  this.logoutClicked.emit();
165
150
  };
166
- /**
167
- * @return {?}
168
- */
169
- ADBHeaderComponent.prototype.ngOnDestroy = /**
170
- * @return {?}
171
- */
172
- function () {
151
+ ADBHeaderComponent.prototype.ngOnDestroy = function () {
173
152
  this.subscription.unsubscribe();
174
153
  };
175
- ADBHeaderComponent.decorators = [
176
- { type: core.Component, args: [{
177
- selector: 'adb-header2',
178
- template: "<header id=\"top-header\" (clickOutside)=\"showUserMenu=false;showMenuDropdown(false);\">\r\n <nav class=\"d-flex flex-wrap px-3\">\r\n <div class=\"flex-grow-1 d-flex align-items-center justify-content-between justify-content-md-start\">\r\n <div class=\"logo d-none d-md-block\">\r\n <img src=\"/assets/images/logo.svg\" style=\"height: 3.2rem;\">\r\n </div>\r\n <div class=\"logo pl-2 d-sm-block d-md-none d-flex align-items-center\">\r\n <img src=\"/assets/images/logo_sm_white.png\" style=\"height: 2rem;\">\r\n </div>\r\n <strong class=\"bigger\">Artfakta</strong>\r\n </div>\r\n <div class=\"flex-grow-1 d-flex justify-content-lg-between justify-content-end align-items-center\">\r\n <div class=\"d-flex align-items-center\">\r\n <nav class=\"d-none align-items-center d-lg-flex pr-4\" style=\"gap:2rem;\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a [href]=\"link.url\" *ngIf=\"link.topLink\" [ngClass]=\"{'d-none d-xl-block':link.transId==='ADB_HEADER.OBSERVATION'}\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n </nav>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-sm py-1 px-2 btn-primary\" (click)=\"showUserMenu = false;showMenuDropdown(!showMenu)\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n <i class=\"ml-1 fas\" [ngClass]=\"showMenu?'fa-chevron-up':'fa-chevron-down'\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"d-none d-md-block pl-4\">\r\n <button *ngIf=\"initials\" type=\"button\" class=\"btn initials px-2 py-1\" (click)=\"showUserMenu = !showUserMenu;showMenuDropdown(false)\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" type=\"button\" (click)=\"showUserMenu = !showUserMenu;showMenuDropdown(false)\" class=\"btn btn-link\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body bg-white p-3\" style=\"width:15rem\">\r\n <ng-container *ngIf=\"initials\">\r\n <div class=\"text-dark\">\r\n <span class=\"initials py-2 px-2 mr-2\">{{initials}}</span>\r\n <strong>{{fullName}}</strong>\r\n </div>\r\n <hr class=\"mx-n3\">\r\n <button (click)=\"logout()\" type=\"button\" class=\"btn btn-link p-0\">\r\n <i class=\"fas fa-sign-out-alt mr-1\"></i>{{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </ng-container>\r\n <ng-container *ngIf=\"!initials\">\r\n <div class=\"d-flex justify-content-center\">\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"login()\" id=\"start-login\">{{'ADB_HEADER.LOGIN'|translate}}</button>\r\n </div>\r\n <a class=\"d-block mt-3\" href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body\" *ngIf=\"navigation\">\r\n <div class=\"px-3 pt-3 mb-1\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div>\r\n <div class=\"d-flex d-md-none align-items-center gap-2\" *ngIf=\"initials\">\r\n <span class=\"initials mr-2\">{{initials}}</span>\r\n <button type=\"button\" (click)=\"logout()\" class=\"btn btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n <div class=\"d-flex gap-2 d-md-none\" *ngIf=\"!initials\">\r\n <button type=\"button\" (click)=\"login()\" class=\"btn btn-primary\" id=\"login\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?returnUrl={{url}}\"\r\n class=\"btn btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button type=\"button\" *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button type=\"button\" *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n {{'ADB_HEADER.SERVICES'|translate}}\r\n </div>\r\n <div id=\"splash\">\r\n <div class=\"px-3 d-flex flex-column\">\r\n <ul class=\"list-group ml-0 mb-0 pl-0\">\r\n <li class=\"mb-1 list-group-item rounded-0\"\r\n [ngClass]=\"{'pointer list-group-item-action':link.children&&link.children.length>0}\"\r\n *ngFor=\"let link of navigation.links\"\r\n [attr.aria-expanded]=\"link.transId===expandedLink?true:false\" role=\"button\"\r\n (click)=\"onExpandLink(link.transId)\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div class=\"d-flex\">\r\n <small class=\"fa-stack mr-1\" *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\" (click)=\"$event.stopPropagation();\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div *ngIf=\"link.children&&link.children.length>0\">\r\n <i class=\"d-none fas fa-chevron-up\" [class.d-block]=\"link.transId===expandedLink\"></i>\r\n <i class=\"d-none fas fa-chevron-down\" [class.d-block]=\"link.transId!==expandedLink\"></i>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled d-none\" [class.d-block]=\"link.transId===expandedLink\">\r\n <li class=\"py-1 m-0\" *ngFor=\"let subLink of link.children\" style=\"padding-left:2.2rem;\">\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 </ul>\r\n <div *ngIf=\"navigation.about\" class=\"mt-2 mb-auto\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <div class=\"mb-1 row\">\r\n <div class=\"col-sm-6 mb-2\">\r\n <div class=\"bg-white p-2\">\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 </div>\r\n <div class=\"col-sm-6 mb-2\">\r\n <div class=\"bg-white p-2\">\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 fa-envelope\"></span>\r\n </small>\r\n <a class=\"bg-white p-2\" href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div style=\"height:10rem\"></div>\r\n <div>\r\n <img style=\"height: 3.2rem;\" src=\"/assets/images/logo.svg\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n"
179
- }] }
180
- ];
181
- /** @nocollapse */
182
- ADBHeaderComponent.ctorParameters = function () { return [
183
- { type: http.HttpClient },
184
- { type: EnvironmentService },
185
- { type: core$1.TranslateService }
186
- ]; };
187
- ADBHeaderComponent.propDecorators = {
188
- loginClicked: [{ type: core.Output }],
189
- logoutClicked: [{ type: core.Output }],
190
- dropMenuChange: [{ type: core.Output }],
191
- userName: [{ type: core.Input }]
192
- };
193
154
  return ADBHeaderComponent;
194
155
  }());
195
- if (false) {
196
- /**
197
- * @type {?}
198
- * @private
199
- */
200
- ADBHeaderComponent.prototype.subscription;
201
- /** @type {?} */
202
- ADBHeaderComponent.prototype.loginClicked;
203
- /** @type {?} */
204
- ADBHeaderComponent.prototype.logoutClicked;
205
- /** @type {?} */
206
- ADBHeaderComponent.prototype.dropMenuChange;
207
- /** @type {?} */
208
- ADBHeaderComponent.prototype.fullName;
209
- /** @type {?} */
210
- ADBHeaderComponent.prototype.initials;
211
- /** @type {?} */
212
- ADBHeaderComponent.prototype.showMenu;
213
- /** @type {?} */
214
- ADBHeaderComponent.prototype.showUserMenu;
215
- /** @type {?} */
216
- ADBHeaderComponent.prototype.navigation;
217
- /** @type {?} */
218
- ADBHeaderComponent.prototype.url;
219
- /** @type {?} */
220
- ADBHeaderComponent.prototype.expandedLink;
221
- /**
222
- * @type {?}
223
- * @private
224
- */
225
- ADBHeaderComponent.prototype.httpClient;
226
- /**
227
- * @type {?}
228
- * @private
229
- */
230
- ADBHeaderComponent.prototype.envService;
231
- /** @type {?} */
232
- ADBHeaderComponent.prototype.trans;
233
- /* Skipping unhandled member: ;*/
234
- }
235
-
236
- /**
237
- * @fileoverview added by tsickle
238
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
239
- */
240
- var ClickOutsideDirective = /** @class */ (function () {
241
- function ClickOutsideDirective(elementRef) {
242
- this.elementRef = elementRef;
243
- this.clickOutside = new core.EventEmitter();
244
- }
245
- /**
246
- * @param {?} target
247
- * @return {?}
248
- */
249
- ClickOutsideDirective.prototype.onClick = /**
250
- * @param {?} target
251
- * @return {?}
252
- */
253
- function (target) {
254
- /** @type {?} */
255
- var clickedInside = this.elementRef.nativeElement.contains(target);
256
- if (!clickedInside) {
257
- this.clickOutside.emit();
258
- }
259
- };
260
- ClickOutsideDirective.decorators = [
261
- { type: core.Directive, args: [{
262
- selector: '[clickOutside]',
263
- },] }
264
- ];
265
- /** @nocollapse */
266
- ClickOutsideDirective.ctorParameters = function () { return [
267
- { type: core.ElementRef }
268
- ]; };
269
- ClickOutsideDirective.propDecorators = {
270
- clickOutside: [{ type: core.Output }],
271
- onClick: [{ type: core.HostListener, args: ['document:click', ['$event.target'],] }]
272
- };
273
- return ClickOutsideDirective;
274
- }());
275
- if (false) {
276
- /** @type {?} */
277
- ClickOutsideDirective.prototype.clickOutside;
278
- /**
279
- * @type {?}
280
- * @private
281
- */
282
- ClickOutsideDirective.prototype.elementRef;
283
- }
156
+ /** @nocollapse */ ADBHeaderComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ADBHeaderComponent, deps: [{ token: i1__namespace.HttpClient }, { token: EnvironmentService }, { token: i3__namespace.TranslateService }], target: i0__namespace.ɵɵFactoryTarget.Component });
157
+ /** @nocollapse */ ADBHeaderComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ADBHeaderComponent, selector: "adb-header2", inputs: { userName: "userName" }, outputs: { loginClicked: "loginClicked", logoutClicked: "logoutClicked", dropMenuChange: "dropMenuChange" }, ngImport: i0__namespace, template: "<header id=\"top-header\" (clickOutside)=\"showUserMenu=false;showMenuDropdown(false);\">\r\n <nav class=\"d-flex flex-wrap px-3\">\r\n <div class=\"flex-grow-1 d-flex align-items-center justify-content-between justify-content-md-start\">\r\n <div class=\"logo d-none d-md-block\">\r\n <img src=\"/assets/images/logo.svg\" style=\"height: 3.2rem;\">\r\n </div>\r\n <div class=\"logo ps-2 d-sm-block d-md-none d-flex align-items-center\">\r\n <img src=\"/assets/images/logo_sm_white.png\" style=\"height: 2rem;\">\r\n </div>\r\n <strong class=\"bigger\">Artfakta</strong>\r\n </div>\r\n <div *ngIf=\"translationFinished\" class=\"flex-grow-1 d-flex justify-content-lg-between justify-content-end align-items-center\">\r\n <div *ngIf=\"navigation\" class=\"d-flex align-items-center\">\r\n <nav class=\"d-none align-items-center d-lg-flex pe-4 gap-4\" *ngIf=\"navigation\">\r\n <ng-container *ngFor=\"let link of navigation.links\">\r\n <a href=\"{{link.url}}?lang={{trans.currentLang}}\" *ngIf=\"link.topLink\" [ngClass]=\"{'d-none d-xl-block':link.transId==='ADB_HEADER.OBSERVATION'}\">\r\n {{link.transId|translate}}\r\n </a>\r\n </ng-container>\r\n </nav>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-sm py-1 px-2 btn-primary\" (click)=\"showUserMenu = false;showMenuDropdown(!showMenu)\">\r\n {{'ADB_HEADER.MENY'|translate}}\r\n <i class=\"ms-1 fas\" [ngClass]=\"showMenu?'fa-chevron-up':'fa-chevron-down'\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"d-none d-md-block ps-4\">\r\n <button *ngIf=\"initials\" type=\"button\" class=\"btn initials\" (click)=\"showUserMenu = !showUserMenu;showMenuDropdown(false)\">{{initials}}</button>\r\n <button *ngIf=\"!initials\" type=\"button\" (click)=\"showUserMenu = !showUserMenu;showMenuDropdown(false)\" class=\"btn btn-link\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n </nav>\r\n <div class=\"menu\" *ngIf=\"showUserMenu\">\r\n <div class=\"menu-body bg-white p-3\" style=\"width:15rem\">\r\n <ng-container *ngIf=\"initials\">\r\n <div class=\"text-dark\">\r\n <span class=\"initials me-2\">{{initials}}</span>\r\n <strong>{{fullName}}</strong>\r\n </div>\r\n <hr class=\"mx-n3\">\r\n <button (click)=\"logout()\" type=\"button\" class=\"btn btn-link p-0\">\r\n <i class=\"fas fa-sign-out-alt me-1\"></i>{{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </ng-container>\r\n <ng-container *ngIf=\"!initials\">\r\n <div class=\"d-flex justify-content-center\">\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"login()\" id=\"start-login\">{{'ADB_HEADER.LOGIN'|translate}}</button>\r\n </div>\r\n <a *ngIf=\"navigation\" class=\"d-block mt-3\" href=\"{{navigation.createAccountLink}}?lang={{trans.currentLang}}&returnUrl={{url}}\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"menu\" *ngIf=\"showMenu\">\r\n <div class=\"menu-body\" *ngIf=\"navigation\">\r\n <div class=\"px-3 pt-3 mb-1\">\r\n <div class=\"d-flex justify-content-between flex-wrap gap-2 mb-2\">\r\n <div>\r\n <div class=\"d-flex d-md-none align-items-center gap-2\" *ngIf=\"initials\">\r\n <span class=\"initials me-2\">{{initials}}</span>\r\n <button type=\"button\" (click)=\"logout()\" class=\"btn btn-primary\">\r\n {{'ADB_HEADER.LOGOUT'|translate}}\r\n </button>\r\n </div>\r\n <div class=\"d-flex gap-2 d-md-none\" *ngIf=\"!initials\">\r\n <button type=\"button\" (click)=\"login()\" class=\"btn btn-primary\" id=\"login\">\r\n {{'ADB_HEADER.LOGIN'|translate}}\r\n </button>\r\n <a href=\"{{navigation.createAccountLink}}?lang={{trans.currentLang}}&returnUrl={{url}}\"\r\n class=\"btn btn-primary\">\r\n {{'ADB_HEADER.CREATE_USER'|translate}}\r\n </a>\r\n </div>\r\n </div>\r\n <div>\r\n <button type=\"button\" *ngIf=\"trans.currentLang==='en'\" (click)=\"setLanguage('sv')\"\r\n class=\"btn btn-primary\">\r\n {{'ADB_HEADER.IN_SWEDISH'|translate}}\r\n </button>\r\n <button type=\"button\" *ngIf=\"trans.currentLang==='sv'\" (click)=\"setLanguage('en')\"\r\n class=\"btn btn-primary\">\r\n {{'ADB_HEADER.IN_ENGLISH'|translate}}\r\n </button>\r\n </div>\r\n </div>\r\n {{'ADB_HEADER.SERVICES'|translate}}\r\n </div>\r\n <div id=\"splash\">\r\n <div class=\"px-3 d-flex flex-column\">\r\n <ul class=\"list-group ms-0 mb-0 ps-0\">\r\n <li class=\"mb-1 list-group-item rounded-0\"\r\n [ngClass]=\"{'pointer list-group-item-action':link.children&&link.children.length>0}\"\r\n *ngFor=\"let link of navigation.links\"\r\n [attr.aria-expanded]=\"link.transId===expandedLink?true:false\" role=\"button\"\r\n (click)=\"onExpandLink(link.transId)\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div class=\"d-flex align-items-center\">\r\n <small class=\"fa-stack me-1\" *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}}?lang={{trans.currentLang}}\" (click)=\"$event.stopPropagation();\">\r\n {{link.transId|translate}}\r\n </a>\r\n </div>\r\n <div *ngIf=\"link.children?.length>0\">\r\n <i class=\"fas fa-chevron-up\" [ngClass]=\"link.transId===expandedLink?'d-block ':'d-none'\"></i>\r\n <i class=\"fas fa-chevron-down\" [ngClass]=\"link.transId!==expandedLink?'d-block ':'d-none'\"></i>\r\n </div>\r\n </div>\r\n <ul class=\"list-unstyled\" [ngClass]=\"link.transId===expandedLink?'d-block':'d-none'\">\r\n <li class=\"py-1 m-0\" *ngFor=\"let subLink of link.children\" style=\"padding-left:2.4rem;\">\r\n <a href=\"{{subLink.url}}?lang={{trans.currentLang}}\">\r\n {{subLink.transId|translate}}\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n </ul>\r\n <div *ngIf=\"navigation.about\" class=\"mt-2 mb-auto\">\r\n <div class=\"mb-1\">{{'ADB_HEADER.CONTACT'|translate}}</div>\r\n <div class=\"mb-1 row\">\r\n <div class=\"col-sm-6 mb-2\">\r\n <div class=\"bg-white p-2\">\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 </div>\r\n <div class=\"col-sm-6 mb-2\">\r\n <div class=\"bg-white p-2\">\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 fa-envelope\"></span>\r\n </small>\r\n <a class=\"bg-white p-2\" href=\"mailto:artfakta@artdatabanken.se\">artfakta@artdatabanken.se</a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div style=\"height:10rem\"></div>\r\n <div>\r\n <img style=\"height: 3.2rem;\" src=\"/assets/images/logo.svg\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n", directives: [{ type: ClickOutsideDirective, selector: "[clickOutside]", outputs: ["clickOutside"] }, { type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "translate": i3__namespace.TranslatePipe } });
158
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ADBHeaderComponent, decorators: [{
159
+ type: i0.Component,
160
+ args: [{
161
+ selector: 'adb-header2',
162
+ templateUrl: './adb-header.component.html'
163
+ }]
164
+ }], ctorParameters: function () { return [{ type: i1__namespace.HttpClient }, { type: EnvironmentService }, { type: i3__namespace.TranslateService }]; }, propDecorators: { loginClicked: [{
165
+ type: i0.Output
166
+ }], logoutClicked: [{
167
+ type: i0.Output
168
+ }], dropMenuChange: [{
169
+ type: i0.Output
170
+ }], userName: [{
171
+ type: i0.Input
172
+ }] } });
284
173
 
285
- /**
286
- * @fileoverview added by tsickle
287
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
288
- */
289
174
  var ADBHeaderModule = /** @class */ (function () {
290
175
  function ADBHeaderModule() {
291
176
  }
292
- /**
293
- * @param {?} environment
294
- * @return {?}
295
- */
296
- ADBHeaderModule.forRoot = /**
297
- * @param {?} environment
298
- * @return {?}
299
- */
300
- function (environment) {
177
+ ADBHeaderModule.forRoot = function (environment) {
301
178
  return {
302
179
  ngModule: ADBHeaderModule,
303
180
  providers: [
304
181
  EnvironmentService,
305
182
  {
306
183
  provide: 'env',
307
- // you can also use InjectionToken
308
184
  useValue: environment
309
185
  }
310
186
  ]
311
187
  };
312
188
  };
313
- ADBHeaderModule.decorators = [
314
- { type: core.NgModule, args: [{
189
+ return ADBHeaderModule;
190
+ }());
191
+ /** @nocollapse */ ADBHeaderModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ADBHeaderModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
192
+ /** @nocollapse */ ADBHeaderModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ADBHeaderModule, declarations: [ADBHeaderComponent, ClickOutsideDirective], imports: [i5.CommonModule,
193
+ i1.HttpClientModule,
194
+ router.RouterModule,
195
+ i3.TranslateModule], exports: [ADBHeaderComponent] });
196
+ /** @nocollapse */ ADBHeaderModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ADBHeaderModule, imports: [[
197
+ i5.CommonModule,
198
+ i1.HttpClientModule,
199
+ router.RouterModule,
200
+ i3.TranslateModule
201
+ ]] });
202
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0__namespace, type: ADBHeaderModule, decorators: [{
203
+ type: i0.NgModule,
204
+ args: [{
315
205
  declarations: [ADBHeaderComponent, ClickOutsideDirective],
316
206
  imports: [
317
- common.CommonModule,
318
- http.HttpClientModule,
207
+ i5.CommonModule,
208
+ i1.HttpClientModule,
319
209
  router.RouterModule,
320
- core$1.TranslateModule
210
+ i3.TranslateModule
321
211
  ],
322
212
  exports: [ADBHeaderComponent]
323
- },] }
324
- ];
325
- return ADBHeaderModule;
326
- }());
213
+ }]
214
+ }] });
215
+
216
+ /*
217
+ * Public API Surface of artdata-shared
218
+ */
219
+
220
+ /**
221
+ * Generated bundle index. Do not edit.
222
+ */
327
223
 
328
224
  exports.ADBHeaderComponent = ADBHeaderComponent;
329
225
  exports.ADBHeaderModule = ADBHeaderModule;
330
- exports.ɵa = EnvironmentService;
331
- exports.ɵb = ClickOutsideDirective;
332
226
 
333
227
  Object.defineProperty(exports, '__esModule', { value: true });
334
228
 
335
- })));
229
+ }));
336
230
  //# sourceMappingURL=adb-shared.umd.js.map