@eo-sdk/client 9.0.0-rc.5 → 9.0.0-rc.7

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.
Files changed (53) hide show
  1. package/app/eo-client/settings/settings.component.d.ts +34 -4
  2. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts +3 -1
  3. package/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.d.ts +1 -0
  4. package/app/eo-framework/result-list/result-list.component.d.ts +7 -1
  5. package/app/eo-framework/ui/user-avatar/user-avatar.component.d.ts +5 -3
  6. package/assets/_default/config/main.json +1 -7
  7. package/assets/_default/i18n/de.json +14 -0
  8. package/assets/_default/i18n/en.json +15 -1
  9. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +72 -29
  10. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
  11. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +2 -2
  12. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
  13. package/bundles/eo-sdk-client.umd.js +232 -92
  14. package/bundles/eo-sdk-client.umd.js.map +1 -1
  15. package/bundles/eo-sdk-client.umd.min.js +1 -1
  16. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  17. package/eo-sdk-client.d.ts +11 -10
  18. package/eo-sdk-client.metadata.json +1 -1
  19. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  20. package/esm2015/app/eo-client/settings/settings.component.js +116 -10
  21. package/esm2015/app/eo-framework/app-shell/app-bar/app-bar.component.js +6 -4
  22. package/esm2015/app/eo-framework/form-elements/form-input/form-input.component.js +2 -2
  23. package/esm2015/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.js +7 -3
  24. package/esm2015/app/eo-framework/form-elements/id-reference/id-reference.component.js +2 -3
  25. package/esm2015/app/eo-framework/form-elements/id-reference/service/reference-finder.service.js +2 -3
  26. package/esm2015/app/eo-framework/grid/column-configurator/column-configurator.component.js +1 -1
  27. package/esm2015/app/eo-framework/inbox-details/inbox-details.component.js +5 -1
  28. package/esm2015/app/eo-framework/object-form/object-form/form-element/form-element.component.js +2 -2
  29. package/esm2015/app/eo-framework/result-list/result-list.component.js +17 -5
  30. package/esm2015/app/eo-framework/ui/eo-dialog/eo-dialog.component.js +2 -2
  31. package/esm2015/app/eo-framework/ui/ui.module.js +4 -2
  32. package/esm2015/app/eo-framework/ui/user-avatar/user-avatar.component.js +15 -8
  33. package/esm2015/app/eo-framework-core/api/plugins.service.js +2 -1
  34. package/esm2015/eo-sdk-client.js +12 -11
  35. package/esm2015/projects/eo-sdk/core/lib/service/auth/auth.service.js +5 -5
  36. package/esm2015/projects/eo-sdk/core/lib/service/backend/backend.service.js +21 -14
  37. package/esm2015/projects/eo-sdk/core/lib/service/config/config.service.js +22 -4
  38. package/esm2015/projects/eo-sdk/core/lib/service/events/events.js +3 -2
  39. package/esm2015/projects/eo-sdk/core/lib/service/search/search-query.model.js +6 -6
  40. package/esm2015/projects/eo-sdk/core/lib/service/search/search.service.js +6 -2
  41. package/esm2015/projects/eo-sdk/core/lib/service/user/user.service.js +17 -3
  42. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +72 -29
  43. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
  44. package/fesm2015/eo-sdk-client.js +212 -77
  45. package/fesm2015/eo-sdk-client.js.map +1 -1
  46. package/package.json +2 -2
  47. package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.metadata.json +1 -1
  48. package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts +2 -0
  49. package/projects/eo-sdk/core/lib/service/config/config.service.d.ts +5 -0
  50. package/projects/eo-sdk/core/lib/service/events/events.d.ts +1 -0
  51. package/projects/eo-sdk/core/lib/service/search/search-query.model.d.ts +3 -1
  52. package/projects/eo-sdk/core/lib/service/user/user.service.d.ts +10 -1
  53. package/projects/eo-sdk/core/package.json +1 -1
@@ -1,18 +1,20 @@
1
1
  import { ListSettingsService } from './../../eo-framework/grid/extensions/services/list-settings.service';
2
- import { AfterViewInit, Renderer2, OnDestroy } from '@angular/core';
2
+ import { AfterViewInit, Renderer2, OnDestroy, ElementRef } from '@angular/core';
3
3
  import { NgForm, FormBuilder, FormControl } from '@angular/forms';
4
4
  import { AgentService } from '../../eo-framework-core/agent/agent.service';
5
5
  import { PageTitleService } from '../../eo-framework-core/title/page-title.service';
6
6
  import { UnsubscribeOnDestroy } from '../../eo-framework/util/unsubscribe/unsubscribe.component';
7
- import { TranslateService, EnvironmentService, NotificationsService, Capabilities, CapabilitiesService, EoUser, UserService, Config, SystemService, AppCacheService, LocalStorageService } from '@eo-sdk/core';
7
+ import { TranslateService, EnvironmentService, NotificationsService, Capabilities, CapabilitiesService, EoUser, UserService, Config, SystemService, AppCacheService, LocalStorageService, EventService } from '@eo-sdk/core';
8
8
  import { Observable } from 'rxjs';
9
9
  import { LockSettings } from './agent-lock-settings.enum';
10
+ import { UserAvatarComponent } from '../../eo-framework';
10
11
  export declare class SettingsComponent extends UnsubscribeOnDestroy implements AfterViewInit, OnDestroy {
11
12
  private renderer;
12
13
  userService: UserService;
13
14
  config: Config;
14
15
  private notify;
15
16
  private systemService;
17
+ private eventService;
16
18
  private capabilitiesService;
17
19
  private envService;
18
20
  private titleService;
@@ -22,6 +24,7 @@ export declare class SettingsComponent extends UnsubscribeOnDestroy implements A
22
24
  private listSettingsService;
23
25
  private storageService;
24
26
  translate: TranslateService;
27
+ private notification;
25
28
  user: EoUser;
26
29
  capabilities: Capabilities;
27
30
  deputies: {
@@ -36,14 +39,32 @@ export declare class SettingsComponent extends UnsubscribeOnDestroy implements A
36
39
  useAgentControl: FormControl;
37
40
  showAgentConfig: boolean;
38
41
  defaultLockSetting: boolean;
42
+ user$: Observable<any>;
43
+ errorMessage: string;
44
+ userId: string;
45
+ showDeleteIconTrash: boolean;
46
+ userImageUri: string;
47
+ preview: string;
48
+ file: any;
49
+ hoverSelector: boolean;
50
+ showPreviewDialog: boolean;
51
+ showDeleteDialog: boolean;
52
+ showErrorDialog: boolean;
53
+ MAX_FILE_SIZE: number;
54
+ viewMode: string;
55
+ fileName: string;
39
56
  cache: {
40
57
  system: boolean;
41
58
  history: boolean;
42
59
  layout: boolean;
43
60
  };
44
- header: any;
61
+ files: ElementRef;
62
+ headerBg: any;
63
+ userAvatar: UserAvatarComponent;
64
+ confirmDeleteBtn: ElementRef;
65
+ profileImageOverlay: ElementRef;
45
66
  deputiesForm: NgForm;
46
- constructor(renderer: Renderer2, userService: UserService, config: Config, notify: NotificationsService, systemService: SystemService, capabilitiesService: CapabilitiesService, envService: EnvironmentService, titleService: PageTitleService, agentService: AgentService, fb: FormBuilder, cacheService: AppCacheService, listSettingsService: ListSettingsService, storageService: LocalStorageService, translate: TranslateService);
67
+ constructor(renderer: Renderer2, userService: UserService, config: Config, notify: NotificationsService, systemService: SystemService, eventService: EventService, capabilitiesService: CapabilitiesService, envService: EnvironmentService, titleService: PageTitleService, agentService: AgentService, fb: FormBuilder, cacheService: AppCacheService, listSettingsService: ListSettingsService, storageService: LocalStorageService, translate: TranslateService, notification: NotificationsService);
47
68
  get isSSO(): boolean;
48
69
  get agentStatus(): Observable<boolean>;
49
70
  get isCloud(): boolean;
@@ -59,5 +80,14 @@ export declare class SettingsComponent extends UnsubscribeOnDestroy implements A
59
80
  changeSchemaLocale(iso: string): void;
60
81
  ngAfterViewInit(): void;
61
82
  setPresence(b: boolean): void;
83
+ closePreviewDialog(): void;
84
+ deleteUserImage(): void;
85
+ selectImage(event: any): void;
86
+ uploadNewUserImage(): void;
87
+ tabAction(input: HTMLInputElement): void;
88
+ mouseEnter(): void;
89
+ mouseLeave(): void;
90
+ trashIconClick(): void;
91
+ refreshUserImageHeaderBackground(imageUri: string): void;
62
92
  clearCache(): boolean;
63
93
  }
@@ -1,7 +1,8 @@
1
- import { Renderer2, OnInit } from '@angular/core';
1
+ import { Renderer2, OnInit, QueryList } from '@angular/core';
2
2
  import { Router } from '@angular/router';
3
3
  import { UnsubscribeOnDestroy } from '../../util/unsubscribe/unsubscribe.component';
4
4
  import { EventService, BpmService, UserService, EoUser, CapabilitiesService, Capabilities, InboxService, InboxState, ClipboardService, PrepareService, TranslateService, Config } from '@eo-sdk/core';
5
+ import { UserAvatarComponent } from '../../ui';
5
6
  export declare class AppBarComponent extends UnsubscribeOnDestroy implements OnInit {
6
7
  private userService;
7
8
  private capabilityService;
@@ -25,6 +26,7 @@ export declare class AppBarComponent extends UnsubscribeOnDestroy implements OnI
25
26
  iconTitles: any;
26
27
  logo: string;
27
28
  pageVisible: boolean;
29
+ avatarComponents: QueryList<UserAvatarComponent>;
28
30
  constructor(userService: UserService, capabilityService: CapabilitiesService, translate: TranslateService, inboxService: InboxService, prepareService: PrepareService, clipboard: ClipboardService, renderer: Renderer2, router: Router, bpmService: BpmService, eventService: EventService, config: Config);
29
31
  openDashboard(openInNewWindow: boolean): void;
30
32
  updateOnSchemaChange(): void;
@@ -3,6 +3,7 @@ export declare class InputFocusDirective {
3
3
  private renderer;
4
4
  private element;
5
5
  formInput: ElementRef;
6
+ disabled: boolean;
6
7
  constructor(renderer: Renderer2, element: ElementRef);
7
8
  onFocusIn(evt: any): void;
8
9
  onFocusOut(evt: any): void;
@@ -6,6 +6,7 @@ import { AppSearchService } from '../../eo-framework-core/search/app-search.serv
6
6
  import { UnsubscribeOnDestroy } from '../util/unsubscribe/unsubscribe.component';
7
7
  import { SearchResult, Config, SearchService, EventService, BackendService, LocalStorageService, TranslateService, ObjectType, StoredQueriesService, StoredQuery } from '@eo-sdk/core';
8
8
  import { Router } from '@angular/router';
9
+ import { ListContainerComponent } from '../list-container';
9
10
  export declare class ResultListComponent extends UnsubscribeOnDestroy implements OnInit {
10
11
  private config;
11
12
  translate: TranslateService;
@@ -18,7 +19,10 @@ export declare class ResultListComponent extends UnsubscribeOnDestroy implements
18
19
  private storedQueriesService;
19
20
  private router;
20
21
  grid: GridComponent;
22
+ list: ListContainerComponent;
21
23
  private VIRTUAL_LIST_CHUNK_SIZE;
24
+ resolveReferencesCsv: boolean;
25
+ resolveReferencesCsvThreshold: number;
22
26
  static COLUMNS_DEFINITION: string;
23
27
  private _result;
24
28
  private _query;
@@ -34,6 +38,7 @@ export declare class ResultListComponent extends UnsubscribeOnDestroy implements
34
38
  querySubtitle: string;
35
39
  savedSearchClicked: boolean;
36
40
  storedQuery: StoredQuery;
41
+ showWarnExportCSVThresholdDialog: boolean;
37
42
  title: string;
38
43
  configType: ObjectType | null;
39
44
  configContext: ObjectType | null;
@@ -81,7 +86,8 @@ export declare class ResultListComponent extends UnsubscribeOnDestroy implements
81
86
  private fetchRowData;
82
87
  private updateQuery;
83
88
  executeSuggestSearch(): void;
84
- exportCSV(): void;
89
+ private resultHasReferences;
90
+ exportCSV(ignoreThreshold?: boolean): void;
85
91
  parseDmsParams(data: any): {
86
92
  id: any;
87
93
  type: any;
@@ -1,13 +1,15 @@
1
1
  import { OnDestroy } from '@angular/core';
2
- import { UserService } from '@eo-sdk/core';
2
+ import { EventService, UserService } from '@eo-sdk/core';
3
3
  export declare class UserAvatarComponent implements OnDestroy {
4
4
  private userService;
5
+ private eventService;
5
6
  private subscription;
6
7
  private defImg;
7
8
  present: boolean;
9
+ userId: string;
8
10
  backgroundImage: string;
9
11
  showPresence: boolean;
10
- constructor(userService: UserService);
11
- createUserBackground(): void;
12
+ constructor(userService: UserService, eventService: EventService);
13
+ refreshUserImage(): void;
12
14
  ngOnDestroy(): void;
13
15
  }
@@ -1,13 +1,7 @@
1
1
  {
2
2
  "uri": {
3
3
  "serviceBase": "/rest-ws/service",
4
- "searchBase": "/search",
5
- "contextBase": "/structure",
6
- "inboxBase": "/inboxservice",
7
- "bpmBase": "/bpm",
8
- "agentBase": "/agent",
9
- "statusBase": "/status",
10
- "loginBase": "/"
4
+ "contextPath": "/"
11
5
  },
12
6
  "search": {
13
7
  "searchMode": "idxs",
@@ -296,6 +296,16 @@
296
296
  "eo.state.settings.presence.absent": "Abwesend",
297
297
  "eo.state.settings.presence.error.title": "Ooops...",
298
298
  "eo.state.settings.presence.error.description": "Das hat wohl nicht geklappt. Bitte versuchen Sie es nochmal.",
299
+ "eo.state.settings.details.upload.dialog.title": "Profilbild hochladen",
300
+ "eo.state.settings.details.upload.dialog.back":"Zurück",
301
+ "eo.state.settings.details.upload.dialog.error.title": "Fehler",
302
+ "eo.state.settings.details.upload.dialog.sizeError": "Die Datei ist zu groß. Die maximale Größe beträgt 512 KB.",
303
+ "eo.state.settings.details.upload.dialog.fileError": "Es sind nur Dateien vom Format jpg und png erlaubt.",
304
+ "eo.state.settings.details.delete.dialog.title": "Profilbild löschen",
305
+ "eo.state.settings.details.delete.dialog.message": "Sind Sie sicher, dass Sie das Profilbild löschen möchten?",
306
+ "eo.state.settings.details.delete.dialog.cancel": "Abbrechen",
307
+ "eo.state.settings.details.delete.dialog.ok": "Löschen",
308
+ "eo.state.settings.details.dialog.save": "Speichern",
299
309
  "eo.state.settings.deputies": "Stellvertreter",
300
310
  "eo.state.settings.lock": "Dokument beim Öffnen sperren",
301
311
  "eo.state.settings.lock.enable": "Aktiviert",
@@ -877,6 +887,10 @@
877
887
  "eo.resultlist.grid.lessThanOrEqual": "Kleiner als oder gleich",
878
888
  "eo.resultlist.grid.greaterThanOrEqual": "Größer als oder gleich",
879
889
  "eo.resultlist.export.csv": "Exportieren als CSV-Datei",
890
+ "eo.resultlist.export.csv.threshold.dialog.title": "CSV-Export",
891
+ "eo.resultlist.export.csv.threshold.dialog.message": "Der Export dieser Datenmenge wird länger dauern. Dennoch exportieren und auf das Ergebnis warten?",
892
+ "eo.resultlist.export.csv.threshold.dialog.cancel": "Abbrechen",
893
+ "eo.resultlist.export.csv.threshold.dialog.export": "Exportieren",
880
894
  "eo.clipboard.paste.label": "Einfügen",
881
895
  "eo.clipboard.paste.resultlist.headline": "Eingefügt",
882
896
  "eo.clipboard.paste.as.contentlink.label": "Als Verweisdokument",
@@ -298,6 +298,16 @@
298
298
  "eo.state.settings.presence.absent": "Out of office",
299
299
  "eo.state.settings.presence.error.title": "Oops...",
300
300
  "eo.state.settings.presence.error.description": "That didn't work. Please try again.",
301
+ "eo.state.settings.details.upload.dialog.title": "Profile image upload",
302
+ "eo.state.settings.details.upload.dialog.back":"Back",
303
+ "eo.state.settings.details.upload.dialog.error.title": "Error",
304
+ "eo.state.settings.details.upload.dialog.sizeError": "The file size is too large. The maximum size is 512 KByte.",
305
+ "eo.state.settings.details.upload.dialog.fileError": "Only images of type jpg or png are allowed",
306
+ "eo.state.settings.details.delete.dialog.title": "Delete profile image",
307
+ "eo.state.settings.details.delete.dialog.message": "Are you sure you want to delete your image?",
308
+ "eo.state.settings.details.delete.dialog.cancel": "Cancel",
309
+ "eo.state.settings.details.delete.dialog.ok": "Delete",
310
+ "eo.state.settings.details.dialog.save": "Save",
301
311
  "eo.state.settings.deputies": "Substitutes",
302
312
  "eo.state.settings.lock": "Lock document on open",
303
313
  "eo.state.settings.lock.enable": "Enabled",
@@ -636,7 +646,7 @@
636
646
  "eo.process.details.history.entry.type.WORKITEM_PERSONALIZEEVENT_END.title": "The script for the 'Personalization' event was completed.",
637
647
  "eo.process.details.history.entry.type.WORKITEM_PERSONALIZEEVENT_START.title": "The script for the 'Personalization' event was launched.",
638
648
  "eo.process.details.history.entry.type.WORKITEM_PERSONALIZE_SUBSTITUTE.title": "The task was accepted by the substitute.",
639
- "eo.process.details.history.entry.type.WORKITEM_SAVE.title": "The task was filed.",
649
+ "eo.process.details.history.entry.type.WORKITEM_SAVE.title": "The task was saved.",
640
650
  "eo.process.details.history.entry.type.WORKITEM_SAVEEVENT_END.title": "The script for the 'ActivitySave' event was completed.",
641
651
  "eo.process.details.history.entry.type.WORKITEM_SAVEEVENT_START.title": "The script for the 'WorkitemSaved' event was launched.",
642
652
  "eo.process.details.history.entry.type.WORKITEM_SAVE_SUBSTITUTE.title": "The task was saved by the substitute.",
@@ -877,6 +887,10 @@
877
887
  "eo.resultlist.grid.lessThanOrEqual": "Less than or equal to",
878
888
  "eo.resultlist.grid.greaterThanOrEqual": "Greater than or equal to",
879
889
  "eo.resultlist.export.csv": "Export as CSV file",
890
+ "eo.resultlist.export.csv.threshold.dialog.title": "CSV Export",
891
+ "eo.resultlist.export.csv.threshold.dialog.message": "Exporting this amount of data will take longer. Export anyway and wait for the result?",
892
+ "eo.resultlist.export.csv.threshold.dialog.cancel": "Cancel",
893
+ "eo.resultlist.export.csv.threshold.dialog.export": "Export",
880
894
  "eo.clipboard.paste.label": "Paste",
881
895
  "eo.clipboard.paste.resultlist.headline": "Pasted",
882
896
  "eo.clipboard.paste.as.contentlink.label": "As link document",
@@ -407,8 +407,10 @@
407
407
  };
408
408
  /**
409
409
  * Generate a query JSON from the current SearchQuery that can be send to the search service.
410
+ *
411
+ * @param resolveReference in case of csv export the resolving of references is set by configuration
410
412
  */
411
- SearchQuery.prototype.getQueryJson = function () {
413
+ SearchQuery.prototype.getQueryJson = function (resolveReference) {
412
414
  // Convert the current query object to a query JSON that can be consumed by the search service backend.
413
415
  // To keep it short, we'll only add properties that are set and differ from default values
414
416
  var queryJson = {};
@@ -447,9 +449,7 @@
447
449
  if (this.expertMode) {
448
450
  queryJson.options.expertmode = true;
449
451
  }
450
- if (this.resolveReference) {
451
- queryJson.options.resolveReference = true;
452
- }
452
+ queryJson.options.resolvereference = resolveReference !== undefined ? resolveReference : true;
453
453
  if (this.searchMode !== SearchQuery.DEFAULT_SEARCH_MODE) {
454
454
  queryJson.options.searchmode = this.searchMode;
455
455
  }
@@ -465,7 +465,7 @@
465
465
  queryJson.options.highlighting = this.highlighting;
466
466
  }
467
467
  if (this.withContext) {
468
- queryJson.options.withContext = this.withContext;
468
+ queryJson.options.withcontext = this.withContext;
469
469
  }
470
470
  }
471
471
  return queryJson;
@@ -1185,7 +1185,8 @@
1185
1185
  SYSTEM_STATUS_SEC_CHANGED: 'eo.status.sec',
1186
1186
  SYSTEM_STATUS_ACL_CHANGED: 'eo.status.acl',
1187
1187
  SYSTEM_STATUS_INBOX_CHANGED: 'eo.status.inbox',
1188
- EO_LICENSE_GRID: 'eo_license_grid'
1188
+ EO_LICENSE_GRID: 'eo_license_grid',
1189
+ SYSTEM_STATUS_IMAGE_CHANGE: 'eo.status.image'
1189
1190
  };
1190
1191
 
1191
1192
  /**
@@ -1199,6 +1200,7 @@
1199
1200
  this.translate = translate;
1200
1201
  this.event = event;
1201
1202
  this.cfg = null;
1203
+ this.fixServiceUris = null;
1202
1204
  }
1203
1205
  /**
1204
1206
  * @ignore
@@ -1212,14 +1214,31 @@
1212
1214
  */
1213
1215
  Config.prototype.set = function (cfg) {
1214
1216
  this.cfg = cfg;
1217
+ this.fixServiceUris = new Map([
1218
+ ['serviceBase', '/rest-ws/service'],
1219
+ ['searchBase', '/search'],
1220
+ ['contextBase', '/structure'],
1221
+ ['inboxBase', '/inboxservice'],
1222
+ ['bpmBase', '/bpm'],
1223
+ ['agentBase', '/agent'],
1224
+ ['statusBase', '/status']
1225
+ ]);
1215
1226
  var languages = this.getClientLocales().map(function (lang) { return lang.iso; });
1216
1227
  this.translate.addLangs(languages);
1217
1228
  this.translate.setDefaultLang(this.getDefaultClientLocale());
1218
1229
  this.initializeGrid();
1219
1230
  };
1231
+ /**
1232
+ * @Deprecated replaced by getContextPath
1233
+ */
1220
1234
  Config.prototype.getLoginBase = function () {
1221
- var lb = this.getUri('loginBase');
1222
- return (lb && lb !== '/') ? lb : '';
1235
+ return this.getContextPath();
1236
+ };
1237
+ Config.prototype.getContextPath = function () {
1238
+ var cp = this.getUri('contextPath')
1239
+ // TODO: remove when not supported anymore
1240
+ || this.getUri('loginBase');
1241
+ return (cp && cp !== '/') ? cp : '';
1223
1242
  };
1224
1243
  /**
1225
1244
  * Returns nested property of config | complete config by default
@@ -1234,7 +1253,7 @@
1234
1253
  * @returns value of the property from the URI-Section of the config
1235
1254
  */
1236
1255
  Config.prototype.getUri = function (property) {
1237
- return this.cfg['uri'][property];
1256
+ return (this.cfg['uri'] && this.cfg['uri'][property]) || this.fixServiceUris.get(property);
1238
1257
  };
1239
1258
  /**
1240
1259
  * Getter for the available client locales
@@ -1574,6 +1593,7 @@
1574
1593
  { type: i0.Injectable }
1575
1594
  ];
1576
1595
 
1596
+ // @ts-ignore
1577
1597
  /**
1578
1598
  * `BackendService` encapsulates the communication with the yuuvis<sup>&reg;</sup> RAD REST endpoints.
1579
1599
  *
@@ -1642,49 +1662,49 @@
1642
1662
  * @returns Base URI
1643
1663
  */
1644
1664
  BackendService.prototype.getServiceBase = function () {
1645
- return this.getHost() + this.config.getUri('serviceBase');
1665
+ return this.config.getUri('serviceBase');
1646
1666
  };
1647
1667
  /**
1648
1668
  * Gets the base URI for the Search-Service endpoint
1649
1669
  * @returns Base URI
1650
1670
  */
1651
1671
  BackendService.prototype.getSearchBase = function () {
1652
- return this.getHost() + this.config.getUri('searchBase');
1672
+ return this.config.getUri('searchBase');
1653
1673
  };
1654
1674
  /**
1655
1675
  * Gets the base URI for the Context-Service endpoint
1656
1676
  * @returns Base URI
1657
1677
  */
1658
1678
  BackendService.prototype.getContextBase = function () {
1659
- return this.getHost() + this.config.getUri('contextBase');
1679
+ return this.config.getUri('contextBase');
1660
1680
  };
1661
1681
  /**
1662
1682
  * Gets the base URI for the Inbox-Service endpoint
1663
1683
  * @returns Base URI
1664
1684
  */
1665
1685
  BackendService.prototype.getInboxBase = function () {
1666
- return this.getHost() + this.config.getUri('inboxBase');
1686
+ return this.config.getUri('inboxBase');
1667
1687
  };
1668
1688
  /**
1669
1689
  * Gets the base URI for the BPM-Service endpoint
1670
1690
  * @returns Base URI
1671
1691
  */
1672
1692
  BackendService.prototype.getBpmBase = function () {
1673
- return this.getHost() + this.config.getUri('bpmBase');
1693
+ return this.config.getUri('bpmBase');
1674
1694
  };
1675
1695
  /**
1676
1696
  * Gets the base URI for the Agent-Service endpoint
1677
1697
  * @returns Base URI
1678
1698
  */
1679
1699
  BackendService.prototype.getAgentBase = function () {
1680
- return this.getHost() + this.config.getUri('agentBase');
1700
+ return this.config.getUri('agentBase');
1681
1701
  };
1682
1702
  /**
1683
1703
  * Gets the base URI for the Status-Service endpoint
1684
1704
  * @returns Base URI
1685
1705
  */
1686
1706
  BackendService.prototype.getStatusBase = function () {
1687
- return this.getHost() + this.config.getUri('statusBase');
1707
+ return this.config.getUri('statusBase');
1688
1708
  };
1689
1709
  /**
1690
1710
  * @ignore
@@ -1699,6 +1719,12 @@
1699
1719
  BackendService.prototype.getHost = function () {
1700
1720
  return this.authProfile.host || '';
1701
1721
  };
1722
+ BackendService.prototype.getBaseWithContext = function (base) {
1723
+ return (base === null || base === void 0 ? void 0 : base.startsWith('/')) ? this.config.getContextPath() + base : base;
1724
+ };
1725
+ BackendService.prototype.getContextPath = function (base) {
1726
+ return this.getHost() + (this.getBaseWithContext(base || this.getServiceBase()));
1727
+ };
1702
1728
  /**
1703
1729
  * Wrapped HTTP GET method
1704
1730
  * @param uri The REST URI to be queried
@@ -1707,7 +1733,7 @@
1707
1733
  * @returns The data retrieved from the given endpoint
1708
1734
  */
1709
1735
  BackendService.prototype.get = function (uri, base, requestOptions) {
1710
- return this.http.get((base || this.getServiceBase()) + uri, this.getHttpOptions(requestOptions));
1736
+ return this.http.get(this.getContextPath(base) + uri, this.getHttpOptions(requestOptions));
1711
1737
  };
1712
1738
  /**
1713
1739
  * Wrapped HTTP PUT method
@@ -1718,13 +1744,13 @@
1718
1744
  * @returns The return value of the target PUT endpoint
1719
1745
  */
1720
1746
  BackendService.prototype.put = function (uri, data, base, requestOptions) {
1721
- return this.http.put((base || this.getServiceBase()) + uri, data, this.getHttpOptions(requestOptions));
1747
+ return this.http.put(this.getContextPath(base) + uri, data, this.getHttpOptions(requestOptions));
1722
1748
  };
1723
1749
  /**
1724
1750
  * @ignore
1725
1751
  */
1726
1752
  BackendService.prototype.getJson = function (uri, base) {
1727
- return this.get(uri, base || this.getServiceBase(), { responseType: 'json' });
1753
+ return this.http.get(this.getContextPath(base) + uri, this.getHttpOptions({ responseType: 'json' }));
1728
1754
  };
1729
1755
  /**
1730
1756
  * Wrapped HTTP POST method
@@ -1735,7 +1761,7 @@
1735
1761
  * @returns The return value of the target POST endpoint
1736
1762
  */
1737
1763
  BackendService.prototype.post = function (uri, data, base, requestOptions) {
1738
- var baseUri = base || this.getServiceBase();
1764
+ var baseUri = this.getContextPath(base);
1739
1765
  var payload = data ? JSON.stringify(data) : '';
1740
1766
  return this.http.post("" + baseUri + uri, payload, this.getHttpOptions(requestOptions));
1741
1767
  };
@@ -1748,7 +1774,7 @@
1748
1774
  * @returns The return value of the target POST endpoint
1749
1775
  */
1750
1776
  BackendService.prototype.postMultiPart = function (uri, formData, base, requestOptions) {
1751
- var baseUri = base || this.getServiceBase();
1777
+ var baseUri = this.getContextPath(base);
1752
1778
  var headers = this.getHeaders();
1753
1779
  headers.delete('Content-Type');
1754
1780
  var reqOptions = Object.assign({ headers: headers, withCredentials: this.coreConfig.withCredentials }, requestOptions);
@@ -1762,7 +1788,7 @@
1762
1788
  * @returns The return value of the target DELETE endpoint
1763
1789
  */
1764
1790
  BackendService.prototype.del = function (uri, base, requestOptions) {
1765
- return this.http.delete((base || this.getServiceBase()) + uri, this.getHttpOptions(requestOptions));
1791
+ return this.http.delete(this.getContextPath(base) + uri, this.getHttpOptions(requestOptions));
1766
1792
  };
1767
1793
  /**
1768
1794
  * @ignore
@@ -2301,12 +2327,13 @@
2301
2327
  /**
2302
2328
  * @ignore
2303
2329
  */
2304
- function UserService(backend, translate, logger, eventService, system, config) {
2330
+ function UserService(backend, translate, logger, eventService, system, http, config) {
2305
2331
  this.backend = backend;
2306
2332
  this.translate = translate;
2307
2333
  this.logger = logger;
2308
2334
  this.eventService = eventService;
2309
2335
  this.system = system;
2336
+ this.http = http;
2310
2337
  this.config = config;
2311
2338
  this.USER_FETCH_URI = '/user?favorites=true&privileges=true&roles=true&deputies=true&substitutesOf=true';
2312
2339
  this.user = null;
@@ -2354,6 +2381,17 @@
2354
2381
  return rxjs.of(null);
2355
2382
  }
2356
2383
  };
2384
+ /**
2385
+ *
2386
+ * @param uri
2387
+ * @returns
2388
+ */
2389
+ UserService.prototype.delUserImage = function (uri) {
2390
+ return this.http.put(uri, null);
2391
+ };
2392
+ UserService.prototype.setUserImage = function (file) {
2393
+ return this.backend.put("/user/image", file);
2394
+ };
2357
2395
  /**
2358
2396
  * Sets the deputies for the current user
2359
2397
  * @param deputiesNames Names of the users to be set as deputies
@@ -2517,7 +2555,7 @@
2517
2555
  * @returns URI to the user image
2518
2556
  */
2519
2557
  UserService.prototype.getUserImageUri = function (userId) {
2520
- return this.backend.getServiceBase() + "/organization/image/" + userId;
2558
+ return this.backend.getServiceBase() + "/organization/image/" + userId + "?usedefault=false";
2521
2559
  };
2522
2560
  /**
2523
2561
  * Removes a favorite item
@@ -2600,6 +2638,7 @@
2600
2638
  { type: Logger },
2601
2639
  { type: EventService },
2602
2640
  { type: SystemService },
2641
+ { type: http.HttpClient },
2603
2642
  { type: Config }
2604
2643
  ]; };
2605
2644
 
@@ -4282,7 +4321,7 @@
4282
4321
  var loginHeader = new http.HttpHeaders({
4283
4322
  'Content-Type': 'application/x-www-form-urlencoded'
4284
4323
  });
4285
- return this.http.post(host + this.config.getLoginBase() + '/login', "username=" + encodeURIComponent(username) + "&password=" + encodeURIComponent(password), {
4324
+ return this.http.post(host + this.config.getContextPath() + '/login', "username=" + encodeURIComponent(username) + "&password=" + encodeURIComponent(password), {
4286
4325
  headers: loginHeader,
4287
4326
  responseType: 'text',
4288
4327
  withCredentials: this.coreConfig.withCredentials
@@ -4419,7 +4458,7 @@
4419
4458
  'Content-Type': 'application/json'
4420
4459
  });
4421
4460
  return this.http
4422
- .get("" + (host || '') + this.config.getLoginBase() + "/auth/info", { headers: headers, withCredentials: this.coreConfig.withCredentials })
4461
+ .get("" + (host || '') + this.config.getContextPath() + "/auth/info", { headers: headers, withCredentials: this.coreConfig.withCredentials })
4423
4462
  .pipe(operators.switchMap(function (info) {
4424
4463
  _this.gatewayInfo = info;
4425
4464
  _this.envService.cloudEnvironment = (_this.gatewayInfo && _this.gatewayInfo.oauth2);
@@ -4482,14 +4521,14 @@
4482
4521
  // remove stored access data
4483
4522
  this.storage.removeItem(this.TOKEN_STORAGE_KEY).subscribe();
4484
4523
  if (this.coreConfig.environment.production && EnvironmentEnaio.isWebEnvironment()) {
4485
- window.location.href = this.config.getLoginBase() + '/logout';
4524
+ window.location.href = this.config.getContextPath() + '/logout';
4486
4525
  return;
4487
4526
  }
4488
4527
  }
4489
4528
  if (gatewayLogout) {
4490
4529
  // by default we are just resetting internal state to 'logged out' and in
4491
4530
  // some cases call gateways logout endpoint to do logout stuff there silently
4492
- this.http.get("" + (this.profile.host || '') + this.config.getLoginBase() + "/logout", { withCredentials: this.coreConfig.withCredentials }).subscribe();
4531
+ this.http.get("" + (this.profile.host || '') + this.config.getContextPath() + "/logout", { withCredentials: this.coreConfig.withCredentials }).subscribe();
4493
4532
  }
4494
4533
  this.backend.setAuthProfile(this.profile);
4495
4534
  this.eventService.trigger(EnaioEvent.LOGOUT);
@@ -5493,7 +5532,11 @@
5493
5532
  q.suggest = qObj_1.options.suggest || false;
5494
5533
  q.expertMode = qObj_1.options.expertmode || false;
5495
5534
  q.scope = qObj_1.options.scope;
5496
- q.resolveReference = qObj_1.options.resolveReference || true;
5535
+ // "||" does not work for recognizing "false" with priority over "default true"
5536
+ q.resolveReference = (qObj_1.options.resolvereference !== null) ? qObj_1.options.resolvereference :
5537
+ (qObj_1.options.resolveReference !== null ? qObj_1.options.resolveReference : true);
5538
+ // withContext was old and "wrong" name of parameter
5539
+ q.withContext = qObj_1.options.withcontext || qObj_1.options.withContext || false;
5497
5540
  q.searchMode =
5498
5541
  qObj_1.options.searchmode || SearchQuery.DEFAULT_SEARCH_MODE;
5499
5542
  }