@alfresco/adf-core 8.2.0-17234132289 → 8.2.0
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 +0 -16
- package/api/lib/adf-http-client.service.d.ts +9 -9
- package/api/lib/alfresco-api/alfresco-api.utils.d.ts +1 -1
- package/app.config.schema.json +4 -3
- package/bundles/assets/adf-core/i18n/ar.json +0 -5
- package/bundles/assets/adf-core/i18n/cs.json +0 -5
- package/bundles/assets/adf-core/i18n/da.json +0 -5
- package/bundles/assets/adf-core/i18n/de.json +19 -9
- package/bundles/assets/adf-core/i18n/en.json +22 -12
- package/bundles/assets/adf-core/i18n/es.json +19 -9
- package/bundles/assets/adf-core/i18n/fi.json +0 -5
- package/bundles/assets/adf-core/i18n/fr.json +19 -9
- package/bundles/assets/adf-core/i18n/it.json +19 -9
- package/bundles/assets/adf-core/i18n/ja.json +0 -5
- package/bundles/assets/adf-core/i18n/nb.json +0 -5
- package/bundles/assets/adf-core/i18n/nl.json +0 -5
- package/bundles/assets/adf-core/i18n/pl.json +19 -9
- package/bundles/assets/adf-core/i18n/pt-BR.json +0 -5
- package/bundles/assets/adf-core/i18n/pt.json +19 -9
- package/bundles/assets/adf-core/i18n/ru.json +0 -5
- package/bundles/assets/adf-core/i18n/sv.json +0 -5
- package/bundles/assets/adf-core/i18n/zh-CN.json +0 -5
- package/custom-theme/material-theme.scss +13 -13
- package/custom-theme/theme/custom-palette-creator.scss +23 -25
- package/custom-theme/theme/custom-theme-palettes.scss +7 -7
- package/custom-theme/theme/theme-data.scss +13 -13
- package/custom-theme/theme/typography.scss +5 -5
- package/fesm2022/adf-core.mjs +1229 -1210
- package/fesm2022/adf-core.mjs.map +1 -1
- package/fesm2022/alfresco-adf-core-api.mjs +40 -27
- package/fesm2022/alfresco-adf-core-api.mjs.map +1 -1
- package/fesm2022/alfresco-adf-core-shell.mjs +5 -1
- package/fesm2022/alfresco-adf-core-shell.mjs.map +1 -1
- package/lib/app-config/app-config.service.d.ts +1 -0
- package/lib/auth/basic-auth/basic-alfresco-auth.service.d.ts +3 -25
- package/lib/auth/interfaces/authentication-service.interface.d.ts +7 -13
- package/lib/auth/models/oauth-config.model.d.ts +0 -1
- package/lib/auth/oidc/oidc-authentication.service.d.ts +0 -20
- package/lib/auth/services/authentication.service.d.ts +10 -28
- package/lib/auth/services/base-authentication.service.d.ts +6 -14
- package/lib/card-view/components/card-view/card-view.component.scss +2 -1
- package/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.scss +59 -34
- package/lib/card-view/components/card-view-textitem/card-view-textitem.component.scss +8 -0
- package/lib/clipboard/clipboard.directive.d.ts +10 -11
- package/lib/clipboard/clipboard.module.d.ts +5 -4
- package/lib/core.module.d.ts +44 -46
- package/lib/datatable/components/columns-selector/columns-selector.component.d.ts +2 -1
- package/lib/datatable/components/columns-selector/columns-selector.component.scss +89 -76
- package/lib/datatable/components/datatable-cell/datatable-cell.component.d.ts +2 -0
- package/lib/form/components/form-base.component.d.ts +1 -1
- package/lib/form/components/form-field/form-field.component.d.ts +5 -0
- package/lib/form/components/form-renderer.component.d.ts +7 -5
- package/lib/form/components/form-renderer.component.scss +44 -0
- package/lib/form/components/widgets/amount/amount.widget.d.ts +43 -4
- package/lib/form/components/widgets/base-viewer/base-viewer.widget.d.ts +16 -0
- package/lib/form/components/widgets/button/button.widget.d.ts +12 -0
- package/lib/form/components/widgets/button/button.widget.scss +14 -0
- package/lib/form/components/widgets/core/container-column.model.d.ts +2 -0
- package/lib/form/components/widgets/core/container-row.model.d.ts +26 -0
- package/lib/form/components/widgets/core/form-field-types.d.ts +5 -0
- package/lib/form/components/widgets/core/form-field-validator.d.ts +4 -0
- package/lib/form/components/widgets/core/form-field.model.d.ts +26 -2
- package/lib/form/components/widgets/core/form.model.d.ts +2 -1
- package/lib/{datatable/components/mocks/datatable.mock.d.ts → form/components/widgets/core/handlers/form-field-rule.handler.d.ts} +5 -5
- package/lib/{login/components/login-dialog/login-dialog-component-data.interface.d.ts → form/components/widgets/core/repeatable-section.model.d.ts} +8 -5
- package/lib/form/components/widgets/index.d.ts +4 -1
- package/lib/form/components/widgets/reactive-widget.interface.d.ts +4 -0
- package/lib/form/components/widgets/repeat/repeat.widget.d.ts +9 -0
- package/lib/form/components/widgets/repeat/repeat.widget.scss +36 -0
- package/lib/form/form-base.module.d.ts +3 -2
- package/lib/info-drawer/info-drawer.component.scss +6 -0
- package/lib/login/login.module.d.ts +3 -5
- package/lib/login/public-api.d.ts +0 -2
- package/lib/mock/public-api.d.ts +0 -1
- package/lib/mock/translation.service.mock.d.ts +1 -0
- package/lib/notifications/components/notification-history.component.d.ts +9 -3
- package/lib/notifications/notification-history.module.d.ts +2 -4
- package/lib/notifications/public-api.d.ts +0 -1
- package/lib/snackbar-content/snackbar-content.component.scss +4 -1
- package/lib/styles/{material.theme.scss → _globals.scss} +1 -1
- package/lib/styles/_index.scss +4 -126
- package/lib/styles/_mat-selectors.scss +3 -0
- package/lib/testing/index.d.ts +0 -1
- package/lib/testing/noop-translate.module.d.ts +1 -0
- package/lib/testing/unit-testing-utils.d.ts +4 -0
- package/lib/translation/translation.service.d.ts +6 -0
- package/package.json +4 -5
- package/schematics/migrations/schematics/migrations/7_0_0/index.d.ts +1 -2
- package/schematics/migrations/schematics/migrations/7_0_0/index.js +46 -59
- package/schematics/migrations/schematics/migrations/7_0_0/index.js.map +1 -1
- package/schematics/migrations/schematics/migrations/collection.json +0 -5
- package/lib/clipboard/clipboard.theme.scss +0 -19
- package/lib/login/components/login-dialog/login-dialog.component.d.ts +0 -15
- package/lib/login/components/login-dialog/login-dialog.component.scss +0 -4
- package/lib/mock/data-column.mock.d.ts +0 -51
- package/lib/notifications/components/add-notification.stories.component.d.ts +0 -10
- package/lib/styles/_theming.scss +0 -3
- package/lib/styles/_typography.scss +0 -18
- package/lib/testing/core.story.module.d.ts +0 -9
|
@@ -3,9 +3,9 @@ import * as i1 from '@angular/common/http';
|
|
|
3
3
|
import { HttpEventType, HttpUrlEncodingCodec, HttpParams, HttpContext, HttpHeaders } from '@angular/common/http';
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
5
|
import { Injectable } from '@angular/core';
|
|
6
|
-
import { Subject, of, throwError } from 'rxjs';
|
|
6
|
+
import { Subject, lastValueFrom, of, throwError } from 'rxjs';
|
|
7
7
|
import { map, catchError, takeUntil } from 'rxjs/operators';
|
|
8
|
-
import
|
|
8
|
+
import { EventEmitter } from 'eventemitter3';
|
|
9
9
|
|
|
10
10
|
/*!
|
|
11
11
|
* @license
|
|
@@ -95,6 +95,9 @@ const convertObjectToFormData = (formParams) => {
|
|
|
95
95
|
if (value instanceof File) {
|
|
96
96
|
formData.append(key, value, value.name);
|
|
97
97
|
}
|
|
98
|
+
else if (Array.isArray(value)) {
|
|
99
|
+
value.forEach((item) => formData.append(key, item));
|
|
100
|
+
}
|
|
98
101
|
else {
|
|
99
102
|
formData.append(key, value);
|
|
100
103
|
}
|
|
@@ -186,13 +189,30 @@ class AdfHttpClient {
|
|
|
186
189
|
}
|
|
187
190
|
constructor(httpClient) {
|
|
188
191
|
this.httpClient = httpClient;
|
|
192
|
+
this.eventEmitter = new EventEmitter();
|
|
189
193
|
this.defaultSecurityOptions = {
|
|
190
194
|
withCredentials: true,
|
|
191
195
|
isBpmRequest: false,
|
|
192
196
|
authentications: {},
|
|
193
197
|
defaultHeaders: {}
|
|
194
198
|
};
|
|
195
|
-
ee(this)
|
|
199
|
+
// No need for ee(this) anymore - we use composition instead of inheritance
|
|
200
|
+
}
|
|
201
|
+
// EventEmitter delegation methods
|
|
202
|
+
on(event, fn, context) {
|
|
203
|
+
this.eventEmitter.on(event, fn, context);
|
|
204
|
+
return this;
|
|
205
|
+
}
|
|
206
|
+
off(event, fn, context) {
|
|
207
|
+
this.eventEmitter.off(event, fn, context);
|
|
208
|
+
return this;
|
|
209
|
+
}
|
|
210
|
+
once(event, fn, context) {
|
|
211
|
+
this.eventEmitter.once(event, fn, context);
|
|
212
|
+
return this;
|
|
213
|
+
}
|
|
214
|
+
emit(event, ...args) {
|
|
215
|
+
return this.eventEmitter.emit(event, ...args);
|
|
196
216
|
}
|
|
197
217
|
setDefaultSecurityOption(options) {
|
|
198
218
|
this.defaultSecurityOptions = this.merge(this.defaultSecurityOptions, options);
|
|
@@ -250,46 +270,40 @@ class AdfHttpClient {
|
|
|
250
270
|
}
|
|
251
271
|
addPromiseListeners(promise, eventEmitter) {
|
|
252
272
|
const eventPromise = Object.assign(promise, {
|
|
253
|
-
on() {
|
|
254
|
-
|
|
255
|
-
eventEmitter.on.apply(eventEmitter, arguments);
|
|
273
|
+
on(event, fn, context) {
|
|
274
|
+
eventEmitter.on(event, fn, context);
|
|
256
275
|
return this;
|
|
257
276
|
},
|
|
258
|
-
once() {
|
|
259
|
-
|
|
260
|
-
eventEmitter.once.apply(eventEmitter, arguments);
|
|
277
|
+
once(event, fn, context) {
|
|
278
|
+
eventEmitter.once(event, fn, context);
|
|
261
279
|
return this;
|
|
262
280
|
},
|
|
263
|
-
emit() {
|
|
264
|
-
|
|
265
|
-
eventEmitter.emit.apply(eventEmitter, arguments);
|
|
266
|
-
return this;
|
|
281
|
+
emit(event, ...args) {
|
|
282
|
+
return eventEmitter.emit(event, ...args);
|
|
267
283
|
},
|
|
268
|
-
off() {
|
|
269
|
-
|
|
270
|
-
eventEmitter.off.apply(eventEmitter, arguments);
|
|
284
|
+
off(event, fn, context) {
|
|
285
|
+
eventEmitter.off(event, fn, context);
|
|
271
286
|
return this;
|
|
272
287
|
}
|
|
273
288
|
});
|
|
274
289
|
return eventPromise;
|
|
275
290
|
}
|
|
276
291
|
getEventEmitters() {
|
|
277
|
-
const apiClientEmitter =
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
292
|
+
const apiClientEmitter = new EventEmitter();
|
|
293
|
+
// Bind this instance's methods to the apiClientEmitter for backward compatibility
|
|
294
|
+
apiClientEmitter.on = this.on.bind(this);
|
|
295
|
+
apiClientEmitter.off = this.off.bind(this);
|
|
296
|
+
apiClientEmitter.once = this.once.bind(this);
|
|
297
|
+
apiClientEmitter.emit = this.emit.bind(this);
|
|
283
298
|
return {
|
|
284
299
|
apiClientEmitter,
|
|
285
|
-
eventEmitter:
|
|
300
|
+
eventEmitter: new EventEmitter()
|
|
286
301
|
};
|
|
287
302
|
}
|
|
288
303
|
requestWithLegacyEventEmitters(request$, emitters, returnType) {
|
|
289
304
|
const abort$ = new Subject();
|
|
290
305
|
const { eventEmitter, apiClientEmitter } = emitters;
|
|
291
|
-
const promise = request
|
|
292
|
-
.pipe(map((res) => {
|
|
306
|
+
const promise = lastValueFrom(request$.pipe(map((res) => {
|
|
293
307
|
if (isHttpUploadProgressEvent(res)) {
|
|
294
308
|
const percent = Math.round((res.loaded / res.total) * 100);
|
|
295
309
|
eventEmitter.emit('progress', { loaded: res.loaded, total: res.total, percent });
|
|
@@ -322,8 +336,7 @@ class AdfHttpClient {
|
|
|
322
336
|
};
|
|
323
337
|
const alfrescoApiError = new AlfrescoApiResponseError(msg, err.status, error);
|
|
324
338
|
return throwError(alfrescoApiError);
|
|
325
|
-
}), takeUntil(abort$))
|
|
326
|
-
.toPromise();
|
|
339
|
+
}), takeUntil(abort$)));
|
|
327
340
|
promise.abort = function () {
|
|
328
341
|
eventEmitter.emit('abort');
|
|
329
342
|
abort$.next();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alfresco-adf-core-api.mjs","sources":["../../../../lib/core/api/src/lib/types.ts","../../../../lib/core/api/src/lib/alfresco-api/alfresco-api.utils.ts","../../../../lib/core/api/src/lib/alfresco-api/alfresco-api.param-encoder.ts","../../../../lib/core/api/src/lib/alfresco-api/alfresco-api.response-error.ts","../../../../lib/core/api/src/lib/adf-http-client.service.ts","../../../../lib/core/api/src/lib/interfaces.ts","../../../../lib/core/api/src/index.ts","../../../../lib/core/api/src/alfresco-adf-core-api.ts"],"sourcesContent":["/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport interface Dictionary<T> {\n [key: string]: T;\n}\n\nexport type Constructor<T> = new (...args: any[]) => T;\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n HttpEvent,\n HttpUploadProgressEvent,\n HttpEventType,\n HttpResponse,\n HttpParams,\n HttpParameterCodec,\n HttpUrlEncodingCodec\n} from '@angular/common/http';\nimport { Constructor } from '../types';\n\nexport const isHttpUploadProgressEvent = <T>(val: HttpEvent<T>): val is HttpUploadProgressEvent => val.type === HttpEventType.UploadProgress;\nexport const isHttpResponseEvent = <T>(val: HttpEvent<T>): val is HttpResponse<T> => val.type === HttpEventType.Response;\nexport const isDate = (value: unknown): value is Date => value instanceof Date;\nexport const isXML = (value: unknown): boolean => typeof value === 'string' && value.startsWith('<?xml');\nexport const isBlobResponse = (response: HttpResponse<any>, returnType: Constructor<unknown> | 'blob'): response is HttpResponse<Blob> =>\n returnType === 'blob' || response.body instanceof Blob;\nexport const isConstructor = <T = unknown>(value: any): value is Constructor<T> =>\n typeof value === 'function' && !!value?.prototype?.constructor.name;\n\nconst convertParamsToString = (value: any): any => (isDate(value) ? value.toISOString() : value);\nexport const getQueryParamsWithCustomEncoder = (\n obj: Record<string | number, unknown>,\n encoder: HttpParameterCodec = new HttpUrlEncodingCodec()\n): HttpParams | undefined => {\n if (!obj) {\n return undefined;\n }\n\n let httpParams = new HttpParams({\n encoder\n });\n\n const params = removeNilValues(obj);\n\n for (const key in params) {\n if (Object.prototype.hasOwnProperty.call(params, key)) {\n const value = params[key];\n if (value instanceof Array) {\n const array = value.map(convertParamsToString).filter(Boolean);\n httpParams = httpParams.appendAll({\n [key]: array\n });\n } else {\n httpParams = httpParams.append(key, convertParamsToString(value));\n }\n }\n }\n\n return httpParams;\n};\n\n/**\n * Removes null and undefined values from an object.\n *\n * @param obj object to process\n * @returns object with updated values\n */\nexport const removeNilValues = (obj: Record<string | number, unknown>) => {\n if (!obj) {\n return {};\n }\n\n return Object.keys(obj).reduce((acc, key) => {\n const value = obj[key];\n const isNil = value === undefined || value === null;\n return isNil ? acc : { ...acc, [key]: value };\n }, {});\n};\n\nexport const convertObjectToFormData = (formParams: Record<string | number, string | Blob>): FormData => {\n const formData = new FormData();\n\n for (const key in formParams) {\n if (Object.prototype.hasOwnProperty.call(formParams, key)) {\n const value = formParams[key];\n if (value instanceof File) {\n formData.append(key, value, value.name);\n } else {\n formData.append(key, value);\n }\n }\n }\n\n return formData;\n};\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HttpParameterCodec } from '@angular/common/http';\n\n// The default implementation of HttpParameterCodec from angular\n// does not encode some special characters like + with is causing issues with the alfresco js API and returns 500 error\n\nexport class AlfrescoApiParamEncoder implements HttpParameterCodec {\n encodeKey(key: string): string {\n return encodeURIComponent(key);\n }\n\n encodeValue(value: string): string {\n return encodeURIComponent(value);\n }\n\n decodeKey(key: string): string {\n return decodeURIComponent(key);\n }\n\n decodeValue(value: string): string {\n return decodeURIComponent(value);\n }\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class AlfrescoApiResponseError extends Error {\n public name = 'AlfrescoApiResponseError';\n\n constructor(msg: string, public status: number, public response: Record<string, any>) {\n super(msg);\n }\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { SHOULD_ADD_AUTH_TOKEN } from '@alfresco/adf-core/auth';\nimport { Emitters as JsApiEmitters, HttpClient as JsApiHttpClient } from '@alfresco/js-api';\nimport { HttpClient, HttpContext, HttpErrorResponse, HttpEvent, HttpHeaders, HttpParams, HttpResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable, of, Subject, throwError } from 'rxjs';\nimport { catchError, map, takeUntil } from 'rxjs/operators';\nimport {\n convertObjectToFormData,\n getQueryParamsWithCustomEncoder,\n isBlobResponse,\n isConstructor,\n isHttpResponseEvent,\n isHttpUploadProgressEvent,\n removeNilValues\n} from './alfresco-api/alfresco-api.utils';\nimport { AlfrescoApiParamEncoder } from './alfresco-api/alfresco-api.param-encoder';\nimport { AlfrescoApiResponseError } from './alfresco-api/alfresco-api.response-error';\nimport { Constructor } from './types';\nimport { RequestOptions, SecurityOptions } from './interfaces';\nimport ee, { Emitter } from 'event-emitter';\n\nexport interface Emitters {\n readonly eventEmitter: Emitter;\n readonly apiClientEmitter: Emitter;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AdfHttpClient implements ee.Emitter, JsApiHttpClient {\n on: ee.EmitterMethod;\n off: ee.EmitterMethod;\n once: ee.EmitterMethod;\n _disableCsrf: boolean;\n\n emit: (type: string, ...args: any[]) => void;\n\n get disableCsrf(): boolean {\n return this._disableCsrf;\n }\n\n set disableCsrf(disableCsrf: boolean) {\n this._disableCsrf = disableCsrf;\n }\n\n private defaultSecurityOptions = {\n withCredentials: true,\n isBpmRequest: false,\n authentications: {},\n defaultHeaders: {}\n };\n\n constructor(private httpClient: HttpClient) {\n ee(this);\n }\n\n setDefaultSecurityOption(options: any) {\n this.defaultSecurityOptions = this.merge(this.defaultSecurityOptions, options);\n }\n\n merge(...objects): any {\n const result = {};\n\n objects.forEach((source) => {\n Object.keys(source).forEach((prop) => {\n if (prop in result && Array.isArray(result[prop])) {\n result[prop] = result[prop].concat(source[prop]);\n } else if (prop in result && typeof result[prop] === 'object') {\n result[prop] = this.merge(result[prop], source[prop]);\n } else {\n result[prop] = source[prop];\n }\n });\n });\n\n return result;\n }\n\n request<T = any>(url: string, options?: RequestOptions, sc: SecurityOptions = this.defaultSecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n const body = AdfHttpClient.getBody(options);\n const params = getQueryParamsWithCustomEncoder(options.queryParams, new AlfrescoApiParamEncoder());\n const responseType = AdfHttpClient.getResponseType(options);\n const context = new HttpContext().set(SHOULD_ADD_AUTH_TOKEN, true);\n const security: SecurityOptions = { ...this.defaultSecurityOptions, ...sc };\n const headers = this.getHeaders(options);\n if (!emitters) {\n emitters = this.getEventEmitters();\n }\n\n const request = this.httpClient.request(options.httpMethod, url, {\n context,\n ...(body && { body }),\n ...(responseType && { responseType }),\n ...security,\n ...(params && { params }),\n headers,\n observe: 'events',\n reportProgress: true\n });\n\n return this.requestWithLegacyEventEmitters<T>(request, emitters, options.returnType);\n }\n\n post<T = any>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'POST' }, sc, emitters);\n }\n\n put<T = any>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'PUT' }, sc, emitters);\n }\n\n get<T = any>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'GET' }, sc, emitters);\n }\n\n delete<T = void>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'DELETE' }, sc, emitters);\n }\n\n private addPromiseListeners<T = any>(promise: Promise<T>, eventEmitter: any) {\n const eventPromise = Object.assign(promise, {\n on() {\n // eslint-disable-next-line prefer-spread, prefer-rest-params\n eventEmitter.on.apply(eventEmitter, arguments);\n return this;\n },\n once() {\n // eslint-disable-next-line prefer-spread, prefer-rest-params\n eventEmitter.once.apply(eventEmitter, arguments);\n return this;\n },\n emit() {\n // eslint-disable-next-line prefer-spread, prefer-rest-params\n eventEmitter.emit.apply(eventEmitter, arguments);\n return this;\n },\n off() {\n // eslint-disable-next-line prefer-spread, prefer-rest-params\n eventEmitter.off.apply(eventEmitter, arguments);\n return this;\n }\n });\n\n return eventPromise;\n }\n\n private getEventEmitters(): Emitters {\n const apiClientEmitter = {\n on: this.on.bind(this),\n off: this.off.bind(this),\n once: this.once.bind(this),\n emit: this.emit.bind(this)\n };\n\n return {\n apiClientEmitter,\n eventEmitter: ee({})\n };\n }\n\n private requestWithLegacyEventEmitters<T = any>(request$: Observable<HttpEvent<T>>, emitters: JsApiEmitters, returnType: any): Promise<T> {\n const abort$ = new Subject<void>();\n const { eventEmitter, apiClientEmitter } = emitters;\n\n const promise = request$\n .pipe(\n map((res) => {\n if (isHttpUploadProgressEvent(res)) {\n const percent = Math.round((res.loaded / res.total) * 100);\n eventEmitter.emit('progress', { loaded: res.loaded, total: res.total, percent });\n }\n\n if (isHttpResponseEvent(res)) {\n eventEmitter.emit('success', res.body);\n return AdfHttpClient.deserialize(res, returnType);\n }\n }),\n catchError((err: HttpErrorResponse): Observable<AlfrescoApiResponseError> => {\n // since we can't always determinate ahead of time if the response is going to be xml or plain text response\n // we need to handle false positive cases here.\n\n if (err.status === 200) {\n eventEmitter.emit('success', err.error.text);\n return of(err.error.text);\n }\n\n eventEmitter.emit('error', err);\n apiClientEmitter.emit('error', { ...err, response: { req: err } });\n\n if (err.status === 401) {\n eventEmitter.emit('unauthorized');\n apiClientEmitter.emit('unauthorized');\n }\n\n // for backwards compatibility we need to convert it to error class as the HttpErrorResponse only implements Error interface, not extending it,\n // and we need to be able to correctly pass instanceof Error conditions used inside repository\n // we also need to pass error as Stringify string as we are detecting statusCodes using JSON.parse(error.message) in some places\n const msg = typeof err.error === 'string' ? err.error : JSON.stringify(err.error);\n\n // for backwards compatibility to handle cases in code where we try read response.error.response.body;\n\n const error = {\n ...err,\n body: err.error\n };\n\n const alfrescoApiError = new AlfrescoApiResponseError(msg, err.status, error);\n return throwError(alfrescoApiError);\n }),\n takeUntil(abort$)\n )\n .toPromise();\n\n (promise as any).abort = function () {\n eventEmitter.emit('abort');\n abort$.next();\n abort$.complete();\n return this;\n };\n\n return this.addPromiseListeners(promise, eventEmitter);\n }\n\n private static getBody(options: RequestOptions): any {\n const contentType = options.contentType ? options.contentType : AdfHttpClient.jsonPreferredMime(options.contentTypes);\n const isFormData = contentType === 'multipart/form-data';\n const isFormUrlEncoded = contentType === 'application/x-www-form-urlencoded';\n const body = options.bodyParam;\n\n if (isFormData) {\n return convertObjectToFormData(options.formParams);\n }\n\n if (isFormUrlEncoded) {\n return new HttpParams({ fromObject: removeNilValues(options.formParams) });\n }\n\n return body;\n }\n\n private getHeaders(options: RequestOptions): HttpHeaders {\n const contentType = options.contentType || AdfHttpClient.jsonPreferredMime(options.contentTypes);\n const accept = options.accept || AdfHttpClient.jsonPreferredMime(options.accepts);\n\n const optionsHeaders = {\n ...options.headerParams,\n ...(accept && { Accept: accept }),\n ...(contentType && { 'Content-Type': contentType })\n };\n\n if (!this.disableCsrf) {\n this.setCsrfToken(optionsHeaders);\n }\n\n return new HttpHeaders(optionsHeaders);\n }\n\n /**\n * Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first.\n *\n * @param contentTypes a contentType array\n * @returns The chosen content type, preferring JSON.\n */\n private static jsonPreferredMime(contentTypes: readonly string[]): string {\n if (!contentTypes?.length) {\n return 'application/json';\n }\n\n for (let i = 0; i < contentTypes.length; i++) {\n if (AdfHttpClient.isJsonMime(contentTypes[i])) {\n return contentTypes[i];\n }\n }\n return contentTypes[0];\n }\n\n /**\n * Checks whether the given content type represents JSON.<br>\n * JSON content type examples:<br>\n * <ul>\n * <li>application/json</li>\n * <li>application/json; charset=UTF8</li>\n * <li>APPLICATION/JSON</li>\n * </ul>\n *\n * @param contentType The MIME content type to check.\n * @returns <code>true</code> if <code>contentType</code> represents JSON, otherwise <code>false</code>.\n */\n private static isJsonMime(contentType: string): boolean {\n return Boolean(contentType?.match(/^application\\/json(;.*)?$/i));\n }\n\n private setCsrfToken(optionsHeaders: any) {\n const token = this.createCSRFToken();\n optionsHeaders['X-CSRF-TOKEN'] = token;\n\n try {\n document.cookie = 'CSRF-TOKEN=' + token + ';path=/';\n } catch {\n /* continue regardless of error */\n }\n }\n\n private createCSRFToken(a?: any): string {\n const randomValue = AdfHttpClient.getSecureRandomValue();\n return a ? (a ^ ((randomValue * 16) >> (a / 4))).toString(16) : ([1e16] + (1e16).toString()).replace(/[01]/g, this.createCSRFToken);\n }\n\n private static getSecureRandomValue(): number {\n const max = Math.pow(2, 32);\n return window.crypto.getRandomValues(new Uint32Array(1))[0] / max;\n }\n\n private static getResponseType(options: RequestOptions): 'blob' | 'json' | 'text' {\n const isBlobType = options.returnType?.toString().toLowerCase() === 'blob' || options.responseType?.toString().toLowerCase() === 'blob';\n\n if (isBlobType) {\n return 'blob';\n }\n\n if (options.returnType === 'String') {\n return 'text';\n }\n\n return 'json';\n }\n\n /**\n * Deserialize an HTTP response body into a value of the specified type.\n *\n * @param response response object\n * @param returnType return type\n * @returns deserialized object\n */\n private static deserialize<T>(response: HttpResponse<T>, returnType?: Constructor<unknown> | 'blob'): any {\n if (response === null) {\n return null;\n }\n\n const body = response.body;\n\n if (!returnType) {\n // for backwards compatibility we need to return empty string instead of null,\n // to avoid issues when accessing null response would break application [C309878]\n // cannot read property 'entry' of null in cases like\n // return this.post(apiUrl, saveFormRepresentation).pipe(map((res: any) => res.entry))\n\n return body !== null ? body : '';\n }\n\n if (isBlobResponse(response, returnType)) {\n return AdfHttpClient.deserializeBlobResponse(response);\n }\n\n if (!isConstructor(returnType)) {\n return body;\n }\n\n if (Array.isArray(body)) {\n return body.map((element) => new returnType(element));\n }\n\n return new returnType(body);\n }\n\n private static deserializeBlobResponse(response: HttpResponse<Blob>) {\n return new Blob([response.body], { type: response.headers.get('Content-Type') });\n }\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport interface SecurityOptions {\n readonly withCredentials?: boolean;\n readonly authentications?: Authentication;\n readonly defaultHeaders?: Record<string, string>;\n}\n\nexport interface Oauth2 {\n refreshToken?: string;\n accessToken?: string;\n}\n\nexport interface BasicAuth {\n username?: string;\n password?: string;\n ticket?: string;\n}\n\nexport interface Authentication {\n basicAuth?: BasicAuth;\n oauth2?: Oauth2;\n cookie?: string;\n type?: string;\n}\n\nexport interface RequestOptions {\n httpMethod?: string;\n pathParams?: any;\n queryParams?: any;\n headerParams?: any;\n formParams?: any;\n bodyParam?: any;\n returnType?: any;\n responseType?: string;\n accepts?: string[];\n contentTypes?: string[];\n readonly accept?: string;\n readonly contentType?: string;\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './lib/types';\nexport * from './lib/adf-http-client.service';\nexport * from './lib/interfaces';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"alfresco-adf-core-api.mjs","sources":["../../../../lib/core/api/src/lib/types.ts","../../../../lib/core/api/src/lib/alfresco-api/alfresco-api.utils.ts","../../../../lib/core/api/src/lib/alfresco-api/alfresco-api.param-encoder.ts","../../../../lib/core/api/src/lib/alfresco-api/alfresco-api.response-error.ts","../../../../lib/core/api/src/lib/adf-http-client.service.ts","../../../../lib/core/api/src/lib/interfaces.ts","../../../../lib/core/api/src/index.ts","../../../../lib/core/api/src/alfresco-adf-core-api.ts"],"sourcesContent":["/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport interface Dictionary<T> {\n [key: string]: T;\n}\n\nexport type Constructor<T> = new (...args: any[]) => T;\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n HttpEvent,\n HttpUploadProgressEvent,\n HttpEventType,\n HttpResponse,\n HttpParams,\n HttpParameterCodec,\n HttpUrlEncodingCodec\n} from '@angular/common/http';\nimport { Constructor } from '../types';\n\nexport const isHttpUploadProgressEvent = <T>(val: HttpEvent<T>): val is HttpUploadProgressEvent => val.type === HttpEventType.UploadProgress;\nexport const isHttpResponseEvent = <T>(val: HttpEvent<T>): val is HttpResponse<T> => val.type === HttpEventType.Response;\nexport const isDate = (value: unknown): value is Date => value instanceof Date;\nexport const isXML = (value: unknown): boolean => typeof value === 'string' && value.startsWith('<?xml');\nexport const isBlobResponse = (response: HttpResponse<any>, returnType: Constructor<unknown> | 'blob'): response is HttpResponse<Blob> =>\n returnType === 'blob' || response.body instanceof Blob;\nexport const isConstructor = <T = unknown>(value: any): value is Constructor<T> =>\n typeof value === 'function' && !!value?.prototype?.constructor.name;\n\nconst convertParamsToString = (value: any): any => (isDate(value) ? value.toISOString() : value);\nexport const getQueryParamsWithCustomEncoder = (\n obj: Record<string | number, unknown>,\n encoder: HttpParameterCodec = new HttpUrlEncodingCodec()\n): HttpParams | undefined => {\n if (!obj) {\n return undefined;\n }\n\n let httpParams = new HttpParams({\n encoder\n });\n\n const params = removeNilValues(obj);\n\n for (const key in params) {\n if (Object.prototype.hasOwnProperty.call(params, key)) {\n const value = params[key];\n if (value instanceof Array) {\n const array = value.map(convertParamsToString).filter(Boolean);\n httpParams = httpParams.appendAll({\n [key]: array\n });\n } else {\n httpParams = httpParams.append(key, convertParamsToString(value));\n }\n }\n }\n\n return httpParams;\n};\n\n/**\n * Removes null and undefined values from an object.\n *\n * @param obj object to process\n * @returns object with updated values\n */\nexport const removeNilValues = (obj: Record<string | number, unknown>) => {\n if (!obj) {\n return {};\n }\n\n return Object.keys(obj).reduce((acc, key) => {\n const value = obj[key];\n const isNil = value === undefined || value === null;\n return isNil ? acc : { ...acc, [key]: value };\n }, {});\n};\n\nexport const convertObjectToFormData = (formParams: Record<string | number, string | Blob | Array<string | Blob>>): FormData => {\n const formData = new FormData();\n\n for (const key in formParams) {\n if (Object.prototype.hasOwnProperty.call(formParams, key)) {\n const value = formParams[key];\n if (value instanceof File) {\n formData.append(key, value, value.name);\n } else if (Array.isArray(value)) {\n value.forEach((item) => formData.append(key, item));\n } else {\n formData.append(key, value);\n }\n }\n }\n\n return formData;\n};\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HttpParameterCodec } from '@angular/common/http';\n\n// The default implementation of HttpParameterCodec from angular\n// does not encode some special characters like + with is causing issues with the alfresco js API and returns 500 error\n\nexport class AlfrescoApiParamEncoder implements HttpParameterCodec {\n encodeKey(key: string): string {\n return encodeURIComponent(key);\n }\n\n encodeValue(value: string): string {\n return encodeURIComponent(value);\n }\n\n decodeKey(key: string): string {\n return decodeURIComponent(key);\n }\n\n decodeValue(value: string): string {\n return decodeURIComponent(value);\n }\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport class AlfrescoApiResponseError extends Error {\n public name = 'AlfrescoApiResponseError';\n\n constructor(msg: string, public status: number, public response: Record<string, any>) {\n super(msg);\n }\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { SHOULD_ADD_AUTH_TOKEN } from '@alfresco/adf-core/auth';\nimport { Emitters as JsApiEmitters, HttpClient as JsApiHttpClient, EventEmitterInstance, EventEmitterEvents } from '@alfresco/js-api';\nimport { HttpClient, HttpContext, HttpErrorResponse, HttpEvent, HttpHeaders, HttpParams, HttpResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { lastValueFrom, Observable, of, Subject, throwError } from 'rxjs';\nimport { catchError, map, takeUntil } from 'rxjs/operators';\nimport {\n convertObjectToFormData,\n getQueryParamsWithCustomEncoder,\n isBlobResponse,\n isConstructor,\n isHttpResponseEvent,\n isHttpUploadProgressEvent,\n removeNilValues\n} from './alfresco-api/alfresco-api.utils';\nimport { AlfrescoApiParamEncoder } from './alfresco-api/alfresco-api.param-encoder';\nimport { AlfrescoApiResponseError } from './alfresco-api/alfresco-api.response-error';\nimport { Constructor } from './types';\nimport { RequestOptions, SecurityOptions } from './interfaces';\nimport { EventEmitter } from 'eventemitter3';\n\nexport interface Emitters {\n readonly eventEmitter: EventEmitterInstance;\n readonly apiClientEmitter: EventEmitterInstance;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AdfHttpClient implements JsApiHttpClient {\n private eventEmitter = new EventEmitter();\n\n _disableCsrf: boolean;\n\n get disableCsrf(): boolean {\n return this._disableCsrf;\n }\n\n set disableCsrf(disableCsrf: boolean) {\n this._disableCsrf = disableCsrf;\n }\n\n private defaultSecurityOptions = {\n withCredentials: true,\n isBpmRequest: false,\n authentications: {},\n defaultHeaders: {}\n };\n\n constructor(private httpClient: HttpClient) {\n // No need for ee(this) anymore - we use composition instead of inheritance\n }\n\n // EventEmitter delegation methods\n on(event: EventEmitterEvents, fn: (...args: any[]) => void, context?: any): this {\n this.eventEmitter.on(event, fn, context);\n return this;\n }\n\n off(event: EventEmitterEvents, fn?: (...args: any[]) => void, context?: any): this {\n this.eventEmitter.off(event, fn, context);\n return this;\n }\n\n once(event: EventEmitterEvents, fn: (...args: any[]) => void, context?: any): this {\n this.eventEmitter.once(event, fn, context);\n return this;\n }\n\n emit(event: EventEmitterEvents, ...args: any[]): boolean {\n return this.eventEmitter.emit(event, ...args);\n }\n\n setDefaultSecurityOption(options: any) {\n this.defaultSecurityOptions = this.merge(this.defaultSecurityOptions, options);\n }\n\n merge(...objects): any {\n const result = {};\n\n objects.forEach((source) => {\n Object.keys(source).forEach((prop) => {\n if (prop in result && Array.isArray(result[prop])) {\n result[prop] = result[prop].concat(source[prop]);\n } else if (prop in result && typeof result[prop] === 'object') {\n result[prop] = this.merge(result[prop], source[prop]);\n } else {\n result[prop] = source[prop];\n }\n });\n });\n\n return result;\n }\n\n request<T = any>(url: string, options?: RequestOptions, sc: SecurityOptions = this.defaultSecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n const body = AdfHttpClient.getBody(options);\n const params = getQueryParamsWithCustomEncoder(options.queryParams, new AlfrescoApiParamEncoder());\n const responseType = AdfHttpClient.getResponseType(options);\n const context = new HttpContext().set(SHOULD_ADD_AUTH_TOKEN, true);\n const security: SecurityOptions = { ...this.defaultSecurityOptions, ...sc };\n const headers = this.getHeaders(options);\n if (!emitters) {\n emitters = this.getEventEmitters();\n }\n\n const request = this.httpClient.request(options.httpMethod, url, {\n context,\n ...(body && { body }),\n ...(responseType && { responseType }),\n ...security,\n ...(params && { params }),\n headers,\n observe: 'events',\n reportProgress: true\n });\n\n return this.requestWithLegacyEventEmitters<T>(request, emitters, options.returnType);\n }\n\n post<T = any>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'POST' }, sc, emitters);\n }\n\n put<T = any>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'PUT' }, sc, emitters);\n }\n\n get<T = any>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'GET' }, sc, emitters);\n }\n\n delete<T = void>(url: string, options?: RequestOptions, sc?: SecurityOptions, emitters?: JsApiEmitters): Promise<T> {\n return this.request<T>(url, { ...options, httpMethod: 'DELETE' }, sc, emitters);\n }\n\n private addPromiseListeners<T = any>(promise: Promise<T>, eventEmitter: any) {\n const eventPromise = Object.assign(promise, {\n on<K extends string | symbol>(event: K, fn: (...args: any[]) => void, context?: any) {\n eventEmitter.on(event, fn, context);\n return this;\n },\n once<K extends string | symbol>(event: K, fn: (...args: any[]) => void, context?: any) {\n eventEmitter.once(event, fn, context);\n return this;\n },\n emit<K extends string | symbol>(event: K, ...args: any[]): boolean {\n return eventEmitter.emit(event, ...args);\n },\n off<K extends string | symbol>(event: K, fn?: (...args: any[]) => void, context?: any) {\n eventEmitter.off(event, fn, context);\n return this;\n }\n });\n\n return eventPromise;\n }\n\n private getEventEmitters(): Emitters {\n const apiClientEmitter: EventEmitterInstance = new EventEmitter();\n\n // Bind this instance's methods to the apiClientEmitter for backward compatibility\n apiClientEmitter.on = this.on.bind(this);\n apiClientEmitter.off = this.off.bind(this);\n apiClientEmitter.once = this.once.bind(this);\n apiClientEmitter.emit = this.emit.bind(this);\n\n return {\n apiClientEmitter,\n eventEmitter: new EventEmitter()\n };\n }\n\n private requestWithLegacyEventEmitters<T = any>(request$: Observable<HttpEvent<T>>, emitters: JsApiEmitters, returnType: any): Promise<T> {\n const abort$ = new Subject<void>();\n const { eventEmitter, apiClientEmitter } = emitters;\n\n const promise = lastValueFrom(\n request$.pipe(\n map((res) => {\n if (isHttpUploadProgressEvent(res)) {\n const percent = Math.round((res.loaded / res.total) * 100);\n eventEmitter.emit('progress', { loaded: res.loaded, total: res.total, percent });\n }\n\n if (isHttpResponseEvent(res)) {\n eventEmitter.emit('success', res.body);\n return AdfHttpClient.deserialize(res, returnType);\n }\n }),\n catchError((err: HttpErrorResponse): Observable<AlfrescoApiResponseError> => {\n // since we can't always determinate ahead of time if the response is going to be xml or plain text response\n // we need to handle false positive cases here.\n\n if (err.status === 200) {\n eventEmitter.emit('success', err.error.text);\n return of(err.error.text);\n }\n\n eventEmitter.emit('error', err);\n apiClientEmitter.emit('error', { ...err, response: { req: err } });\n\n if (err.status === 401) {\n eventEmitter.emit('unauthorized');\n apiClientEmitter.emit('unauthorized');\n }\n\n // for backwards compatibility we need to convert it to error class as the HttpErrorResponse only implements Error interface, not extending it,\n // and we need to be able to correctly pass instanceof Error conditions used inside repository\n // we also need to pass error as Stringify string as we are detecting statusCodes using JSON.parse(error.message) in some places\n const msg = typeof err.error === 'string' ? err.error : JSON.stringify(err.error);\n\n // for backwards compatibility to handle cases in code where we try read response.error.response.body;\n\n const error = {\n ...err,\n body: err.error\n };\n\n const alfrescoApiError = new AlfrescoApiResponseError(msg, err.status, error);\n return throwError(alfrescoApiError);\n }),\n takeUntil(abort$)\n )\n );\n\n (promise as any).abort = function () {\n eventEmitter.emit('abort');\n abort$.next();\n abort$.complete();\n return this;\n };\n\n return this.addPromiseListeners(promise, eventEmitter);\n }\n\n private static getBody(options: RequestOptions): any {\n const contentType = options.contentType ? options.contentType : AdfHttpClient.jsonPreferredMime(options.contentTypes);\n const isFormData = contentType === 'multipart/form-data';\n const isFormUrlEncoded = contentType === 'application/x-www-form-urlencoded';\n const body = options.bodyParam;\n\n if (isFormData) {\n return convertObjectToFormData(options.formParams);\n }\n\n if (isFormUrlEncoded) {\n return new HttpParams({ fromObject: removeNilValues(options.formParams) });\n }\n\n return body;\n }\n\n private getHeaders(options: RequestOptions): HttpHeaders {\n const contentType = options.contentType || AdfHttpClient.jsonPreferredMime(options.contentTypes);\n const accept = options.accept || AdfHttpClient.jsonPreferredMime(options.accepts);\n\n const optionsHeaders = {\n ...options.headerParams,\n ...(accept && { Accept: accept }),\n ...(contentType && { 'Content-Type': contentType })\n };\n\n if (!this.disableCsrf) {\n this.setCsrfToken(optionsHeaders);\n }\n\n return new HttpHeaders(optionsHeaders);\n }\n\n /**\n * Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first.\n *\n * @param contentTypes a contentType array\n * @returns The chosen content type, preferring JSON.\n */\n private static jsonPreferredMime(contentTypes: readonly string[]): string {\n if (!contentTypes?.length) {\n return 'application/json';\n }\n\n for (let i = 0; i < contentTypes.length; i++) {\n if (AdfHttpClient.isJsonMime(contentTypes[i])) {\n return contentTypes[i];\n }\n }\n return contentTypes[0];\n }\n\n /**\n * Checks whether the given content type represents JSON.<br>\n * JSON content type examples:<br>\n * <ul>\n * <li>application/json</li>\n * <li>application/json; charset=UTF8</li>\n * <li>APPLICATION/JSON</li>\n * </ul>\n *\n * @param contentType The MIME content type to check.\n * @returns <code>true</code> if <code>contentType</code> represents JSON, otherwise <code>false</code>.\n */\n private static isJsonMime(contentType: string): boolean {\n return Boolean(contentType?.match(/^application\\/json(;.*)?$/i));\n }\n\n private setCsrfToken(optionsHeaders: any) {\n const token = this.createCSRFToken();\n optionsHeaders['X-CSRF-TOKEN'] = token;\n\n try {\n document.cookie = 'CSRF-TOKEN=' + token + ';path=/';\n } catch {\n /* continue regardless of error */\n }\n }\n\n private createCSRFToken(a?: any): string {\n const randomValue = AdfHttpClient.getSecureRandomValue();\n return a ? (a ^ ((randomValue * 16) >> (a / 4))).toString(16) : ([1e16] + (1e16).toString()).replace(/[01]/g, this.createCSRFToken);\n }\n\n private static getSecureRandomValue(): number {\n const max = Math.pow(2, 32);\n return window.crypto.getRandomValues(new Uint32Array(1))[0] / max;\n }\n\n private static getResponseType(options: RequestOptions): 'blob' | 'json' | 'text' {\n const isBlobType = options.returnType?.toString().toLowerCase() === 'blob' || options.responseType?.toString().toLowerCase() === 'blob';\n\n if (isBlobType) {\n return 'blob';\n }\n\n if (options.returnType === 'String') {\n return 'text';\n }\n\n return 'json';\n }\n\n /**\n * Deserialize an HTTP response body into a value of the specified type.\n *\n * @param response response object\n * @param returnType return type\n * @returns deserialized object\n */\n private static deserialize<T>(response: HttpResponse<T>, returnType?: Constructor<unknown> | 'blob'): any {\n if (response === null) {\n return null;\n }\n\n const body = response.body;\n\n if (!returnType) {\n // for backwards compatibility we need to return empty string instead of null,\n // to avoid issues when accessing null response would break application [C309878]\n // cannot read property 'entry' of null in cases like\n // return this.post(apiUrl, saveFormRepresentation).pipe(map((res: any) => res.entry))\n\n return body !== null ? body : '';\n }\n\n if (isBlobResponse(response, returnType)) {\n return AdfHttpClient.deserializeBlobResponse(response);\n }\n\n if (!isConstructor(returnType)) {\n return body;\n }\n\n if (Array.isArray(body)) {\n return body.map((element) => new returnType(element));\n }\n\n return new returnType(body);\n }\n\n private static deserializeBlobResponse(response: HttpResponse<Blob>) {\n return new Blob([response.body], { type: response.headers.get('Content-Type') });\n }\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport interface SecurityOptions {\n readonly withCredentials?: boolean;\n readonly authentications?: Authentication;\n readonly defaultHeaders?: Record<string, string>;\n}\n\nexport interface Oauth2 {\n refreshToken?: string;\n accessToken?: string;\n}\n\nexport interface BasicAuth {\n username?: string;\n password?: string;\n ticket?: string;\n}\n\nexport interface Authentication {\n basicAuth?: BasicAuth;\n oauth2?: Oauth2;\n cookie?: string;\n type?: string;\n}\n\nexport interface RequestOptions {\n httpMethod?: string;\n pathParams?: any;\n queryParams?: any;\n headerParams?: any;\n formParams?: any;\n bodyParam?: any;\n returnType?: any;\n responseType?: string;\n accepts?: string[];\n contentTypes?: string[];\n readonly accept?: string;\n readonly contentType?: string;\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './lib/types';\nexport * from './lib/adf-http-client.service';\nexport * from './lib/interfaces';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -76,7 +76,11 @@ class ShellLayoutComponent {
|
|
|
76
76
|
this.router.events
|
|
77
77
|
.pipe(filter((event) => event instanceof NavigationEnd), takeUntilDestroyed(this.destroyRef))
|
|
78
78
|
.subscribe((event) => {
|
|
79
|
-
this.minimizeSidenav = this.shellService.minimizeSidenavConditions.some((el) =>
|
|
79
|
+
this.minimizeSidenav = this.shellService.minimizeSidenavConditions.some((el) => {
|
|
80
|
+
const previousNavigation = this.router.getCurrentNavigation()?.previousNavigation?.finalUrl;
|
|
81
|
+
const previousPath = previousNavigation ? this.router.serializeUrl(previousNavigation) : '';
|
|
82
|
+
return event.urlAfterRedirects.includes(el) && !previousPath.includes(el);
|
|
83
|
+
});
|
|
80
84
|
this.hideSidenav = this.shellService.hideSidenavConditions.some((el) => event.urlAfterRedirects.includes(el));
|
|
81
85
|
this.updateState();
|
|
82
86
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alfresco-adf-core-shell.mjs","sources":["../../../../lib/core/shell/src/lib/services/shell-app.service.ts","../../../../lib/core/shell/src/lib/components/shell/shell.component.ts","../../../../lib/core/shell/src/lib/components/shell/shell.component.html","../../../../lib/core/shell/src/lib/shell.routes.ts","../../../../lib/core/shell/src/lib/shell.module.ts","../../../../lib/core/shell/src/lib/providers.ts","../../../../lib/core/shell/src/index.ts","../../../../lib/core/shell/src/alfresco-adf-core-shell.ts"],"sourcesContent":["/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { InjectionToken } from '@angular/core';\nimport { CanActivateFn, CanActivateChildFn } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nexport interface ShellPreferencesService {\n set(preferenceKey: string, value: any): void;\n get(preferenceKey: string, defaultValue: string): string;\n}\n\nexport interface ShellAppService {\n pageHeading$: Observable<string>;\n hideSidenavConditions: string[];\n minimizeSidenavConditions: string[];\n preferencesService: ShellPreferencesService;\n}\n\nexport const SHELL_APP_SERVICE = new InjectionToken<ShellAppService>('SHELL_APP_SERVICE');\n\nexport const SHELL_AUTH_TOKEN = new InjectionToken<CanActivateFn | CanActivateChildFn>('SHELL_AUTH_TOKEN');\nexport const SHELL_NAVBAR_MIN_WIDTH = new InjectionToken<number>('SHELL_NAVBAR_MIN_WIDTH');\nexport const SHELL_NAVBAR_MAX_WIDTH = new InjectionToken<number>('SHELL_NAVBAR_MAX_WIDTH');\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n AppConfigService,\n SidenavLayoutComponent,\n SidenavLayoutContentDirective,\n SidenavLayoutHeaderDirective,\n SidenavLayoutNavigationDirective\n} from '@alfresco/adf-core';\nimport { DynamicExtensionComponent } from '@alfresco/adf-extensions';\nimport { Component, DestroyRef, inject, Inject, OnInit, Optional, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { NavigationEnd, Router, RouterModule } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { filter, map, withLatestFrom } from 'rxjs/operators';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { SHELL_APP_SERVICE, SHELL_NAVBAR_MAX_WIDTH, SHELL_NAVBAR_MIN_WIDTH, ShellAppService } from '../../services/shell-app.service';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'app-shell',\n imports: [\n RouterModule,\n SidenavLayoutHeaderDirective,\n SidenavLayoutNavigationDirective,\n SidenavLayoutContentDirective,\n DynamicExtensionComponent,\n SidenavLayoutComponent\n ],\n templateUrl: './shell.component.html',\n styleUrls: ['./shell.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: { class: 'app-shell' }\n})\nexport class ShellLayoutComponent implements OnInit {\n @ViewChild('layout', { static: true })\n layout: SidenavLayoutComponent;\n\n isSmallScreen$: Observable<boolean>;\n\n expandedSidenav: boolean;\n minimizeSidenav = false;\n hideSidenav = false;\n sidenavMin: number;\n sidenavMax: number;\n direction: Directionality;\n\n private readonly destroyRef = inject(DestroyRef);\n\n constructor(\n private router: Router,\n private appConfigService: AppConfigService,\n private breakpointObserver: BreakpointObserver,\n @Inject(SHELL_APP_SERVICE) private shellService: ShellAppService,\n @Optional() @Inject(SHELL_NAVBAR_MIN_WIDTH) navBarMinWidth: number,\n @Optional() @Inject(SHELL_NAVBAR_MAX_WIDTH) navbarMaxWidth: number\n ) {\n this.sidenavMin = navBarMinWidth ?? 70;\n this.sidenavMax = navbarMaxWidth ?? 320;\n }\n\n ngOnInit() {\n this.isSmallScreen$ = this.breakpointObserver.observe(['(max-width: 600px)']).pipe(map((result) => result.matches));\n\n this.hideSidenav = this.shellService.hideSidenavConditions.some((el) => this.router.routerState.snapshot.url.includes(el));\n this.minimizeSidenav = this.shellService.minimizeSidenavConditions.some((el) => this.router.routerState.snapshot.url.includes(el));\n\n if (!this.minimizeSidenav) {\n this.expandedSidenav = this.getSidenavState();\n } else {\n this.expandedSidenav = false;\n }\n\n this.router.events\n .pipe(\n withLatestFrom(this.isSmallScreen$),\n filter(([event, isSmallScreen]) => isSmallScreen && event instanceof NavigationEnd),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(() => {\n this.layout.container.sidenav.close();\n });\n\n this.router.events\n .pipe(\n filter((event) => event instanceof NavigationEnd),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe((event: NavigationEnd) => {\n this.minimizeSidenav = this.shellService.minimizeSidenavConditions.some((el) => event.urlAfterRedirects.includes(el));\n this.hideSidenav = this.shellService.hideSidenavConditions.some((el) => event.urlAfterRedirects.includes(el));\n\n this.updateState();\n });\n }\n hideMenu(event: Event) {\n if (this.layout.container.isMobileScreenSize) {\n event.preventDefault();\n this.layout.container.toggleMenu();\n }\n }\n\n private updateState() {\n if (this.minimizeSidenav && !this.layout.isMenuMinimized) {\n this.layout.isMenuMinimized = true;\n if (!this.layout.container.isMobileScreenSize) {\n this.layout.container.toggleMenu();\n }\n }\n\n if (!this.minimizeSidenav) {\n if (this.getSidenavState() && this.layout.isMenuMinimized) {\n this.layout.isMenuMinimized = false;\n this.layout.container.toggleMenu();\n }\n }\n }\n\n onExpanded(state: boolean) {\n if (!this.minimizeSidenav && this.appConfigService.get('sideNav.preserveState')) {\n this.shellService.preferencesService.set('expandedSidenav', state);\n }\n }\n\n private getSidenavState(): boolean {\n const expand = this.appConfigService.get<boolean>('sideNav.expandedSidenav', true);\n const preserveState = this.appConfigService.get<boolean>('sideNav.preserveState', true);\n\n if (preserveState) {\n return this.shellService.preferencesService.get('expandedSidenav', expand.toString()) === 'true';\n }\n\n return expand;\n }\n}\n","<adf-sidenav-layout\n #layout\n [sidenavMin]=\"sidenavMin\"\n [sidenavMax]=\"sidenavMax\"\n [stepOver]=\"600\"\n [hideSidenav]=\"hideSidenav\"\n [expandedSidenav]=\"expandedSidenav\"\n (expanded)=\"onExpanded($event)\"\n>\n <adf-sidenav-layout-header>\n <ng-template let-isMenuMinimized=\"isMenuMinimized\">\n @if (!hideSidenav) {\n <div\n role=\"heading\"\n aria-level=\"1\"\n >\n <adf-dynamic-component id=\"app.layout.header\" [data]=\"{ layout }\" />\n </div>\n }\n </ng-template>\n </adf-sidenav-layout-header>\n\n <adf-sidenav-layout-navigation>\n <ng-template let-isMenuMinimized=\"isMenuMinimized\">\n <div\n (swipeleft)=\"hideMenu($event)\"\n [attr.data-automation-id]=\"isMenuMinimized() ? 'collapsed' : 'expanded'\"\n >\n <adf-dynamic-component\n id=\"app.layout.sidenav\"\n [data]=\"{ layout, mode: layout.isMenuMinimized ? 'collapsed' : 'expanded'}\"\n />\n </div>\n </ng-template>\n </adf-sidenav-layout-navigation>\n\n <adf-sidenav-layout-content>\n <ng-template>\n <router-outlet />\n </ng-template>\n </adf-sidenav-layout-content>\n</adf-sidenav-layout>\n\n<adf-dynamic-component id=\"app.shell.sibling\" />\n\n<router-outlet name=\"viewer\" />\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { provideRouter, Route, Routes } from '@angular/router';\nimport { ShellLayoutComponent } from './components/shell/shell.component';\nimport { SHELL_AUTH_TOKEN } from './services/shell-app.service';\nimport { EnvironmentProviders } from '@angular/core';\n\nexport const SHELL_LAYOUT_ROUTE: Route = {\n path: '',\n component: ShellLayoutComponent,\n canActivate: [SHELL_AUTH_TOKEN],\n children: []\n};\n\nexport interface AppShellRoutesConfig {\n shellParentRoute?: Route;\n shellChildren: Routes;\n}\n\n/**\n * Provides shell routes for the application.\n *\n * @param routes The routes configuration for the shell.\n * @returns An array of providers for the shell routes.\n */\nexport function provideShellRoutes(routes: Routes | AppShellRoutesConfig): EnvironmentProviders[] {\n const shellLayoutRoute = SHELL_LAYOUT_ROUTE;\n\n if (Array.isArray(routes)) {\n shellLayoutRoute.children.push(...routes);\n return [provideRouter([shellLayoutRoute])];\n }\n\n const shellChildrenRoutes = routes.shellChildren || [];\n if (shellChildrenRoutes.length > 0) {\n shellLayoutRoute.children.push(...shellChildrenRoutes);\n }\n\n const shellParentRoute = routes.shellParentRoute;\n const rootRoute = shellParentRoute || shellLayoutRoute;\n\n if (routes.shellParentRoute) {\n rootRoute.children = rootRoute.children || [];\n rootRoute.children.push(shellLayoutRoute);\n }\n\n return [provideRouter([rootRoute])];\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { Routes, provideRouter } from '@angular/router';\nimport { AppShellRoutesConfig, SHELL_LAYOUT_ROUTE } from './shell.routes';\n\n/** @deprecated use `provideShell` instead */\n@NgModule()\nexport class ShellModule {\n static withRoutes(routes: Routes | AppShellRoutesConfig): ModuleWithProviders<ShellModule> {\n if (Array.isArray(routes)) {\n return getModuleForRoutes(routes);\n }\n\n return getModuleForRouteConfig(routes);\n }\n}\n\n/**\n * Resolve module for routes\n *\n * @param routes route configuration\n * @returns module with providers\n */\nfunction getModuleForRoutes(routes: Routes): ModuleWithProviders<ShellModule> {\n const shellLayoutRoute = SHELL_LAYOUT_ROUTE;\n\n routes.forEach((childRoute) => {\n shellLayoutRoute.children.push(childRoute);\n });\n\n return {\n ngModule: ShellModule,\n providers: [provideRouter([shellLayoutRoute])]\n };\n}\n\n/**\n * Resolve a module for the route configuration\n *\n * @param config route configuration\n * @returns module with providers\n */\nfunction getModuleForRouteConfig(config: AppShellRoutesConfig): ModuleWithProviders<ShellModule> {\n const shellLayoutRoute = SHELL_LAYOUT_ROUTE;\n\n const shellParentRoute = config.shellParentRoute;\n const shellChildrenRoutes = config.shellChildren;\n\n shellLayoutRoute.children.push(...shellChildrenRoutes);\n\n const rootRoute = shellParentRoute ? shellParentRoute : shellLayoutRoute;\n\n if (config.shellParentRoute) {\n if (rootRoute.children === undefined) {\n rootRoute.children = [];\n }\n\n rootRoute.children.push(shellLayoutRoute);\n }\n\n return {\n ngModule: ShellModule,\n providers: [provideRouter([rootRoute])]\n };\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { EnvironmentProviders, Provider } from '@angular/core';\nimport { CanActivateChildFn, CanActivateFn, Routes } from '@angular/router';\nimport { AppShellRoutesConfig, provideShellRoutes } from './shell.routes';\nimport { SHELL_APP_SERVICE, SHELL_AUTH_TOKEN, SHELL_NAVBAR_MAX_WIDTH, SHELL_NAVBAR_MIN_WIDTH, ShellAppService } from './services/shell-app.service';\n\nexport interface ProvideShellOpts {\n routes: Routes | AppShellRoutesConfig;\n appService?: ShellAppService;\n authGuard?: CanActivateFn | CanActivateChildFn;\n navBar?: {\n minWidth: number;\n maxWidth: number;\n };\n}\n\n/**\n * Provides Shell-related api and providers\n *\n * @param opts Optional parameters\n * @returns list of Angular providers\n */\nexport function provideShell(opts?: ProvideShellOpts): (Provider | EnvironmentProviders)[] {\n const result: (Provider | EnvironmentProviders)[] = [provideShellRoutes(opts?.routes || [])];\n\n if (opts?.appService) {\n result.push({\n provide: SHELL_APP_SERVICE,\n useValue: opts.appService\n });\n }\n\n if (opts?.authGuard) {\n result.push({\n provide: SHELL_AUTH_TOKEN,\n useValue: opts.authGuard\n });\n }\n\n if (opts?.navBar) {\n result.push({\n provide: SHELL_NAVBAR_MIN_WIDTH,\n useValue: opts.navBar.minWidth ?? 70\n });\n result.push({\n provide: SHELL_NAVBAR_MAX_WIDTH,\n useValue: opts.navBar.maxWidth ?? 320\n });\n }\n\n return result;\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './lib/shell.module';\nexport * from './lib/services/shell-app.service';\nexport * from './lib/components/shell/shell.component';\nexport * from './lib/shell.routes';\nexport * from './lib/providers';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"alfresco-adf-core-shell.mjs","sources":["../../../../lib/core/shell/src/lib/services/shell-app.service.ts","../../../../lib/core/shell/src/lib/components/shell/shell.component.ts","../../../../lib/core/shell/src/lib/components/shell/shell.component.html","../../../../lib/core/shell/src/lib/shell.routes.ts","../../../../lib/core/shell/src/lib/shell.module.ts","../../../../lib/core/shell/src/lib/providers.ts","../../../../lib/core/shell/src/index.ts","../../../../lib/core/shell/src/alfresco-adf-core-shell.ts"],"sourcesContent":["/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { InjectionToken } from '@angular/core';\nimport { CanActivateFn, CanActivateChildFn } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nexport interface ShellPreferencesService {\n set(preferenceKey: string, value: any): void;\n get(preferenceKey: string, defaultValue: string): string;\n}\n\nexport interface ShellAppService {\n pageHeading$: Observable<string>;\n hideSidenavConditions: string[];\n minimizeSidenavConditions: string[];\n preferencesService: ShellPreferencesService;\n}\n\nexport const SHELL_APP_SERVICE = new InjectionToken<ShellAppService>('SHELL_APP_SERVICE');\n\nexport const SHELL_AUTH_TOKEN = new InjectionToken<CanActivateFn | CanActivateChildFn>('SHELL_AUTH_TOKEN');\nexport const SHELL_NAVBAR_MIN_WIDTH = new InjectionToken<number>('SHELL_NAVBAR_MIN_WIDTH');\nexport const SHELL_NAVBAR_MAX_WIDTH = new InjectionToken<number>('SHELL_NAVBAR_MAX_WIDTH');\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n AppConfigService,\n SidenavLayoutComponent,\n SidenavLayoutContentDirective,\n SidenavLayoutHeaderDirective,\n SidenavLayoutNavigationDirective\n} from '@alfresco/adf-core';\nimport { DynamicExtensionComponent } from '@alfresco/adf-extensions';\nimport { Component, DestroyRef, inject, Inject, OnInit, Optional, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { NavigationEnd, Router, RouterModule } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { filter, map, withLatestFrom } from 'rxjs/operators';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { SHELL_APP_SERVICE, SHELL_NAVBAR_MAX_WIDTH, SHELL_NAVBAR_MIN_WIDTH, ShellAppService } from '../../services/shell-app.service';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'app-shell',\n imports: [\n RouterModule,\n SidenavLayoutHeaderDirective,\n SidenavLayoutNavigationDirective,\n SidenavLayoutContentDirective,\n DynamicExtensionComponent,\n SidenavLayoutComponent\n ],\n templateUrl: './shell.component.html',\n styleUrls: ['./shell.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: { class: 'app-shell' }\n})\nexport class ShellLayoutComponent implements OnInit {\n @ViewChild('layout', { static: true })\n layout: SidenavLayoutComponent;\n\n isSmallScreen$: Observable<boolean>;\n\n expandedSidenav: boolean;\n minimizeSidenav = false;\n hideSidenav = false;\n sidenavMin: number;\n sidenavMax: number;\n direction: Directionality;\n\n private readonly destroyRef = inject(DestroyRef);\n\n constructor(\n private router: Router,\n private appConfigService: AppConfigService,\n private breakpointObserver: BreakpointObserver,\n @Inject(SHELL_APP_SERVICE) private shellService: ShellAppService,\n @Optional() @Inject(SHELL_NAVBAR_MIN_WIDTH) navBarMinWidth: number,\n @Optional() @Inject(SHELL_NAVBAR_MAX_WIDTH) navbarMaxWidth: number\n ) {\n this.sidenavMin = navBarMinWidth ?? 70;\n this.sidenavMax = navbarMaxWidth ?? 320;\n }\n\n ngOnInit() {\n this.isSmallScreen$ = this.breakpointObserver.observe(['(max-width: 600px)']).pipe(map((result) => result.matches));\n\n this.hideSidenav = this.shellService.hideSidenavConditions.some((el) => this.router.routerState.snapshot.url.includes(el));\n this.minimizeSidenav = this.shellService.minimizeSidenavConditions.some((el) => this.router.routerState.snapshot.url.includes(el));\n\n if (!this.minimizeSidenav) {\n this.expandedSidenav = this.getSidenavState();\n } else {\n this.expandedSidenav = false;\n }\n\n this.router.events\n .pipe(\n withLatestFrom(this.isSmallScreen$),\n filter(([event, isSmallScreen]) => isSmallScreen && event instanceof NavigationEnd),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(() => {\n this.layout.container.sidenav.close();\n });\n\n this.router.events\n .pipe(\n filter((event) => event instanceof NavigationEnd),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe((event: NavigationEnd) => {\n this.minimizeSidenav = this.shellService.minimizeSidenavConditions.some((el) => {\n const previousNavigation = this.router.getCurrentNavigation()?.previousNavigation?.finalUrl;\n const previousPath = previousNavigation ? this.router.serializeUrl(previousNavigation) : '';\n return event.urlAfterRedirects.includes(el) && !previousPath.includes(el);\n });\n this.hideSidenav = this.shellService.hideSidenavConditions.some((el) => event.urlAfterRedirects.includes(el));\n\n this.updateState();\n });\n }\n hideMenu(event: Event) {\n if (this.layout.container.isMobileScreenSize) {\n event.preventDefault();\n this.layout.container.toggleMenu();\n }\n }\n\n private updateState() {\n if (this.minimizeSidenav && !this.layout.isMenuMinimized) {\n this.layout.isMenuMinimized = true;\n if (!this.layout.container.isMobileScreenSize) {\n this.layout.container.toggleMenu();\n }\n }\n\n if (!this.minimizeSidenav) {\n if (this.getSidenavState() && this.layout.isMenuMinimized) {\n this.layout.isMenuMinimized = false;\n this.layout.container.toggleMenu();\n }\n }\n }\n\n onExpanded(state: boolean) {\n if (!this.minimizeSidenav && this.appConfigService.get('sideNav.preserveState')) {\n this.shellService.preferencesService.set('expandedSidenav', state);\n }\n }\n\n private getSidenavState(): boolean {\n const expand = this.appConfigService.get<boolean>('sideNav.expandedSidenav', true);\n const preserveState = this.appConfigService.get<boolean>('sideNav.preserveState', true);\n\n if (preserveState) {\n return this.shellService.preferencesService.get('expandedSidenav', expand.toString()) === 'true';\n }\n\n return expand;\n }\n}\n","<adf-sidenav-layout\n #layout\n [sidenavMin]=\"sidenavMin\"\n [sidenavMax]=\"sidenavMax\"\n [stepOver]=\"600\"\n [hideSidenav]=\"hideSidenav\"\n [expandedSidenav]=\"expandedSidenav\"\n (expanded)=\"onExpanded($event)\"\n>\n <adf-sidenav-layout-header>\n <ng-template let-isMenuMinimized=\"isMenuMinimized\">\n @if (!hideSidenav) {\n <div\n role=\"heading\"\n aria-level=\"1\"\n >\n <adf-dynamic-component id=\"app.layout.header\" [data]=\"{ layout }\" />\n </div>\n }\n </ng-template>\n </adf-sidenav-layout-header>\n\n <adf-sidenav-layout-navigation>\n <ng-template let-isMenuMinimized=\"isMenuMinimized\">\n <div\n (swipeleft)=\"hideMenu($event)\"\n [attr.data-automation-id]=\"isMenuMinimized() ? 'collapsed' : 'expanded'\"\n >\n <adf-dynamic-component\n id=\"app.layout.sidenav\"\n [data]=\"{ layout, mode: layout.isMenuMinimized ? 'collapsed' : 'expanded'}\"\n />\n </div>\n </ng-template>\n </adf-sidenav-layout-navigation>\n\n <adf-sidenav-layout-content>\n <ng-template>\n <router-outlet />\n </ng-template>\n </adf-sidenav-layout-content>\n</adf-sidenav-layout>\n\n<adf-dynamic-component id=\"app.shell.sibling\" />\n\n<router-outlet name=\"viewer\" />\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { provideRouter, Route, Routes } from '@angular/router';\nimport { ShellLayoutComponent } from './components/shell/shell.component';\nimport { SHELL_AUTH_TOKEN } from './services/shell-app.service';\nimport { EnvironmentProviders } from '@angular/core';\n\nexport const SHELL_LAYOUT_ROUTE: Route = {\n path: '',\n component: ShellLayoutComponent,\n canActivate: [SHELL_AUTH_TOKEN],\n children: []\n};\n\nexport interface AppShellRoutesConfig {\n shellParentRoute?: Route;\n shellChildren: Routes;\n}\n\n/**\n * Provides shell routes for the application.\n *\n * @param routes The routes configuration for the shell.\n * @returns An array of providers for the shell routes.\n */\nexport function provideShellRoutes(routes: Routes | AppShellRoutesConfig): EnvironmentProviders[] {\n const shellLayoutRoute = SHELL_LAYOUT_ROUTE;\n\n if (Array.isArray(routes)) {\n shellLayoutRoute.children.push(...routes);\n return [provideRouter([shellLayoutRoute])];\n }\n\n const shellChildrenRoutes = routes.shellChildren || [];\n if (shellChildrenRoutes.length > 0) {\n shellLayoutRoute.children.push(...shellChildrenRoutes);\n }\n\n const shellParentRoute = routes.shellParentRoute;\n const rootRoute = shellParentRoute || shellLayoutRoute;\n\n if (routes.shellParentRoute) {\n rootRoute.children = rootRoute.children || [];\n rootRoute.children.push(shellLayoutRoute);\n }\n\n return [provideRouter([rootRoute])];\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { Routes, provideRouter } from '@angular/router';\nimport { AppShellRoutesConfig, SHELL_LAYOUT_ROUTE } from './shell.routes';\n\n/** @deprecated use `provideShell` instead */\n@NgModule()\nexport class ShellModule {\n static withRoutes(routes: Routes | AppShellRoutesConfig): ModuleWithProviders<ShellModule> {\n if (Array.isArray(routes)) {\n return getModuleForRoutes(routes);\n }\n\n return getModuleForRouteConfig(routes);\n }\n}\n\n/**\n * Resolve module for routes\n *\n * @param routes route configuration\n * @returns module with providers\n */\nfunction getModuleForRoutes(routes: Routes): ModuleWithProviders<ShellModule> {\n const shellLayoutRoute = SHELL_LAYOUT_ROUTE;\n\n routes.forEach((childRoute) => {\n shellLayoutRoute.children.push(childRoute);\n });\n\n return {\n ngModule: ShellModule,\n providers: [provideRouter([shellLayoutRoute])]\n };\n}\n\n/**\n * Resolve a module for the route configuration\n *\n * @param config route configuration\n * @returns module with providers\n */\nfunction getModuleForRouteConfig(config: AppShellRoutesConfig): ModuleWithProviders<ShellModule> {\n const shellLayoutRoute = SHELL_LAYOUT_ROUTE;\n\n const shellParentRoute = config.shellParentRoute;\n const shellChildrenRoutes = config.shellChildren;\n\n shellLayoutRoute.children.push(...shellChildrenRoutes);\n\n const rootRoute = shellParentRoute ? shellParentRoute : shellLayoutRoute;\n\n if (config.shellParentRoute) {\n if (rootRoute.children === undefined) {\n rootRoute.children = [];\n }\n\n rootRoute.children.push(shellLayoutRoute);\n }\n\n return {\n ngModule: ShellModule,\n providers: [provideRouter([rootRoute])]\n };\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { EnvironmentProviders, Provider } from '@angular/core';\nimport { CanActivateChildFn, CanActivateFn, Routes } from '@angular/router';\nimport { AppShellRoutesConfig, provideShellRoutes } from './shell.routes';\nimport { SHELL_APP_SERVICE, SHELL_AUTH_TOKEN, SHELL_NAVBAR_MAX_WIDTH, SHELL_NAVBAR_MIN_WIDTH, ShellAppService } from './services/shell-app.service';\n\nexport interface ProvideShellOpts {\n routes: Routes | AppShellRoutesConfig;\n appService?: ShellAppService;\n authGuard?: CanActivateFn | CanActivateChildFn;\n navBar?: {\n minWidth: number;\n maxWidth: number;\n };\n}\n\n/**\n * Provides Shell-related api and providers\n *\n * @param opts Optional parameters\n * @returns list of Angular providers\n */\nexport function provideShell(opts?: ProvideShellOpts): (Provider | EnvironmentProviders)[] {\n const result: (Provider | EnvironmentProviders)[] = [provideShellRoutes(opts?.routes || [])];\n\n if (opts?.appService) {\n result.push({\n provide: SHELL_APP_SERVICE,\n useValue: opts.appService\n });\n }\n\n if (opts?.authGuard) {\n result.push({\n provide: SHELL_AUTH_TOKEN,\n useValue: opts.authGuard\n });\n }\n\n if (opts?.navBar) {\n result.push({\n provide: SHELL_NAVBAR_MIN_WIDTH,\n useValue: opts.navBar.minWidth ?? 70\n });\n result.push({\n provide: SHELL_NAVBAR_MAX_WIDTH,\n useValue: opts.navBar.maxWidth ?? 320\n });\n }\n\n return result;\n}\n","/*!\n * @license\n * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './lib/shell.module';\nexport * from './lib/services/shell-app.service';\nexport * from './lib/components/shell/shell.component';\nexport * from './lib/shell.routes';\nexport * from './lib/providers';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAAA;;;;;;;;;;;;;;;AAeG;MAkBU,iBAAiB,GAAG,IAAI,cAAc,CAAkB,mBAAmB;MAE3E,gBAAgB,GAAG,IAAI,cAAc,CAAqC,kBAAkB;MAC5F,sBAAsB,GAAG,IAAI,cAAc,CAAS,wBAAwB;MAC5E,sBAAsB,GAAG,IAAI,cAAc,CAAS,wBAAwB;;ACrCzF;;;;;;;;;;;;;;;AAeG;MAkCU,oBAAoB,CAAA;IAe7B,WAAA,CACY,MAAc,EACd,gBAAkC,EAClC,kBAAsC,EACX,YAA6B,EACpB,cAAsB,EACtB,cAAsB,EAAA;QAL1D,IAAA,CAAA,MAAM,GAAN,MAAM;QACN,IAAA,CAAA,gBAAgB,GAAhB,gBAAgB;QAChB,IAAA,CAAA,kBAAkB,GAAlB,kBAAkB;QACS,IAAA,CAAA,YAAY,GAAZ,YAAY;QAZnD,IAAA,CAAA,eAAe,GAAG,KAAK;QACvB,IAAA,CAAA,WAAW,GAAG,KAAK;AAKF,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAU5C,QAAA,IAAI,CAAC,UAAU,GAAG,cAAc,IAAI,EAAE;AACtC,QAAA,IAAI,CAAC,UAAU,GAAG,cAAc,IAAI,GAAG;IAC3C;IAEA,QAAQ,GAAA;AACJ,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC;AAEnH,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC1H,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAElI,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;AACvB,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE;QACjD;aAAO;AACH,YAAA,IAAI,CAAC,eAAe,GAAG,KAAK;QAChC;QAEA,IAAI,CAAC,MAAM,CAAC;AACP,aAAA,IAAI,CACD,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,EACnC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,aAAa,IAAI,KAAK,YAAY,aAAa,CAAC,EACnF,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aAEtC,SAAS,CAAC,MAAK;YACZ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE;AACzC,QAAA,CAAC,CAAC;QAEN,IAAI,CAAC,MAAM,CAAC;AACP,aAAA,IAAI,CACD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,aAAa,CAAC,EACjD,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;AAEtC,aAAA,SAAS,CAAC,CAAC,KAAoB,KAAI;AAChC,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,EAAE,KAAI;AAC3E,gBAAA,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,kBAAkB,EAAE,QAAQ;AAC3F,gBAAA,MAAM,YAAY,GAAG,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,EAAE;AAC3F,gBAAA,OAAO,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC7E,YAAA,CAAC,CAAC;YACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAE7G,IAAI,CAAC,WAAW,EAAE;AACtB,QAAA,CAAC,CAAC;IACV;AACA,IAAA,QAAQ,CAAC,KAAY,EAAA;QACjB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,EAAE;YAC1C,KAAK,CAAC,cAAc,EAAE;AACtB,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE;QACtC;IACJ;IAEQ,WAAW,GAAA;QACf,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;AACtD,YAAA,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI;YAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,EAAE;AAC3C,gBAAA,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE;YACtC;QACJ;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACvB,IAAI,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;AACvD,gBAAA,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,KAAK;AACnC,gBAAA,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE;YACtC;QACJ;IACJ;AAEA,IAAA,UAAU,CAAC,KAAc,EAAA;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE;YAC7E,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC;QACtE;IACJ;IAEQ,eAAe,GAAA;AACnB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAU,yBAAyB,EAAE,IAAI,CAAC;AAClF,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAU,uBAAuB,EAAE,IAAI,CAAC;QAEvF,IAAI,aAAa,EAAE;AACf,YAAA,OAAO,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,MAAM;QACpG;AAEA,QAAA,OAAO,MAAM;IACjB;AAvGS,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAmBjB,iBAAiB,EAAA,EAAA,EAAA,KAAA,EACL,sBAAsB,6BACtB,sBAAsB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AArBrC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,WAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjDjC,wzCA8CA,EAAA,MAAA,EAAA,CAAA,6YAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDTQ,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,4BAA4B,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC5B,gCAAgC,EAAA,QAAA,EAAA,+BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChC,6BAA6B,EAAA,QAAA,EAAA,4BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC7B,yBAAyB,0FACzB,sBAAsB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,UAAA,EAAA,aAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAOjB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAfhC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAAA,OAAA,EACZ;wBACL,YAAY;wBACZ,4BAA4B;wBAC5B,gCAAgC;wBAChC,6BAA6B;wBAC7B,yBAAyB;wBACzB;qBACH,EAAA,aAAA,EAGc,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B,EAAE,KAAK,EAAE,WAAW,EAAE,EAAA,QAAA,EAAA,wzCAAA,EAAA,MAAA,EAAA,CAAA,6YAAA,CAAA,EAAA;;0BAqBvB,MAAM;2BAAC,iBAAiB;;0BACxB;;0BAAY,MAAM;2BAAC,sBAAsB;;0BACzC;;0BAAY,MAAM;2BAAC,sBAAsB;yCAnB9C,MAAM,EAAA,CAAA;sBADL,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;;AElDzC;;;;;;;;;;;;;;;AAeG;AAOI,MAAM,kBAAkB,GAAU;AACrC,IAAA,IAAI,EAAE,EAAE;AACR,IAAA,SAAS,EAAE,oBAAoB;IAC/B,WAAW,EAAE,CAAC,gBAAgB,CAAC;AAC/B,IAAA,QAAQ,EAAE;;AAQd;;;;;AAKG;AACG,SAAU,kBAAkB,CAAC,MAAqC,EAAA;IACpE,MAAM,gBAAgB,GAAG,kBAAkB;AAE3C,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACvB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QACzC,OAAO,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9C;AAEA,IAAA,MAAM,mBAAmB,GAAG,MAAM,CAAC,aAAa,IAAI,EAAE;AACtD,IAAA,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;QAChC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC;IAC1D;AAEA,IAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB;AAChD,IAAA,MAAM,SAAS,GAAG,gBAAgB,IAAI,gBAAgB;AAEtD,IAAA,IAAI,MAAM,CAAC,gBAAgB,EAAE;QACzB,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,IAAI,EAAE;AAC7C,QAAA,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAC7C;IAEA,OAAO,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AACvC;;AC9DA;;;;;;;;;;;;;;;AAeG;AAMH;MAEa,WAAW,CAAA;IACpB,OAAO,UAAU,CAAC,MAAqC,EAAA;AACnD,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AACvB,YAAA,OAAO,kBAAkB,CAAC,MAAM,CAAC;QACrC;AAEA,QAAA,OAAO,uBAAuB,CAAC,MAAM,CAAC;IAC1C;8GAPS,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAX,WAAW,EAAA,CAAA,CAAA;+GAAX,WAAW,EAAA,CAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB;;AAWD;;;;;AAKG;AACH,SAAS,kBAAkB,CAAC,MAAc,EAAA;IACtC,MAAM,gBAAgB,GAAG,kBAAkB;AAE3C,IAAA,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU,KAAI;AAC1B,QAAA,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;AAC9C,IAAA,CAAC,CAAC;IAEF,OAAO;AACH,QAAA,QAAQ,EAAE,WAAW;QACrB,SAAS,EAAE,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC,CAAC;KAChD;AACL;AAEA;;;;;AAKG;AACH,SAAS,uBAAuB,CAAC,MAA4B,EAAA;IACzD,MAAM,gBAAgB,GAAG,kBAAkB;AAE3C,IAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB;AAChD,IAAA,MAAM,mBAAmB,GAAG,MAAM,CAAC,aAAa;IAEhD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC;IAEtD,MAAM,SAAS,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB;AAExE,IAAA,IAAI,MAAM,CAAC,gBAAgB,EAAE;AACzB,QAAA,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS,EAAE;AAClC,YAAA,SAAS,CAAC,QAAQ,GAAG,EAAE;QAC3B;AAEA,QAAA,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAC7C;IAEA,OAAO;AACH,QAAA,QAAQ,EAAE,WAAW;QACrB,SAAS,EAAE,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC;KACzC;AACL;;AChFA;;;;;;;;;;;;;;;AAeG;AAiBH;;;;;AAKG;AACG,SAAU,YAAY,CAAC,IAAuB,EAAA;AAChD,IAAA,MAAM,MAAM,GAAwC,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;AAE5F,IAAA,IAAI,IAAI,EAAE,UAAU,EAAE;QAClB,MAAM,CAAC,IAAI,CAAC;AACR,YAAA,OAAO,EAAE,iBAAiB;YAC1B,QAAQ,EAAE,IAAI,CAAC;AAClB,SAAA,CAAC;IACN;AAEA,IAAA,IAAI,IAAI,EAAE,SAAS,EAAE;QACjB,MAAM,CAAC,IAAI,CAAC;AACR,YAAA,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,IAAI,CAAC;AAClB,SAAA,CAAC;IACN;AAEA,IAAA,IAAI,IAAI,EAAE,MAAM,EAAE;QACd,MAAM,CAAC,IAAI,CAAC;AACR,YAAA,OAAO,EAAE,sBAAsB;AAC/B,YAAA,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI;AACrC,SAAA,CAAC;QACF,MAAM,CAAC,IAAI,CAAC;AACR,YAAA,OAAO,EAAE,sBAAsB;AAC/B,YAAA,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI;AACrC,SAAA,CAAC;IACN;AAEA,IAAA,OAAO,MAAM;AACjB;;ACnEA;;;;;;;;;;;;;;;AAeG;;ACfH;;AAEG;;;;"}
|
|
@@ -9,8 +9,8 @@ import { BaseAuthenticationService } from '../services/base-authentication.servi
|
|
|
9
9
|
import { HttpHeaders } from '@angular/common/http';
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
11
|
export declare class BasicAlfrescoAuthService extends BaseAuthenticationService {
|
|
12
|
-
private contentAuth;
|
|
13
|
-
private processAuth;
|
|
12
|
+
private readonly contentAuth;
|
|
13
|
+
private readonly processAuth;
|
|
14
14
|
protected redirectUrl: RedirectionModel;
|
|
15
15
|
authentications: Authentication;
|
|
16
16
|
constructor(appConfig: AppConfigService, cookie: CookieService, contentAuth: ContentAuth, processAuth: ProcessAuth);
|
|
@@ -49,18 +49,6 @@ export declare class BasicAlfrescoAuthService extends BaseAuthenticationService
|
|
|
49
49
|
saveRememberMeCookie(rememberMe: boolean): void;
|
|
50
50
|
isCredentialValid(credential: string): boolean;
|
|
51
51
|
getToken(): string;
|
|
52
|
-
/**
|
|
53
|
-
* @deprecated
|
|
54
|
-
* @returns content auth token
|
|
55
|
-
*/
|
|
56
|
-
getTicketEcm(): string;
|
|
57
|
-
/**
|
|
58
|
-
* @deprecated
|
|
59
|
-
* @returns process auth token
|
|
60
|
-
*/
|
|
61
|
-
getTicketBpm(): string;
|
|
62
|
-
isBpmLoggedIn(): boolean;
|
|
63
|
-
isEcmLoggedIn(): boolean;
|
|
64
52
|
isLoggedIn(): boolean;
|
|
65
53
|
/**
|
|
66
54
|
* logout Alfresco API
|
|
@@ -79,16 +67,6 @@ export declare class BasicAlfrescoAuthService extends BaseAuthenticationService
|
|
|
79
67
|
setRedirect(url?: RedirectionModel): void;
|
|
80
68
|
private hasValidRedirection;
|
|
81
69
|
private hasSelectedProviderAll;
|
|
82
|
-
/**
|
|
83
|
-
* @deprecated use `getUsername()` instead
|
|
84
|
-
* @returns the username of the authenticated user
|
|
85
|
-
*/
|
|
86
|
-
getBpmUsername(): string;
|
|
87
|
-
/**
|
|
88
|
-
* @deprecated use `getUsername()` instead
|
|
89
|
-
* @returns the username of the authenticated user
|
|
90
|
-
*/
|
|
91
|
-
getEcmUsername(): string;
|
|
92
70
|
/**
|
|
93
71
|
* Gets the username of the authenticated user.
|
|
94
72
|
*
|
|
@@ -110,7 +88,7 @@ export declare class BasicAlfrescoAuthService extends BaseAuthenticationService
|
|
|
110
88
|
* @param requestUrl the request url
|
|
111
89
|
* @returns The ticket or `null` if none was found
|
|
112
90
|
*/
|
|
113
|
-
getTicketEcmBase64(requestUrl: string): string
|
|
91
|
+
getTicketEcmBase64(requestUrl: string): string;
|
|
114
92
|
private getProcessServicesTicket;
|
|
115
93
|
private getContentServicesTicket;
|
|
116
94
|
static ɵfac: i0.ɵɵFactoryDeclaration<BasicAlfrescoAuthService, never>;
|
|
@@ -15,16 +15,17 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
import { HttpHeaders } from '@angular/common/http';
|
|
18
|
-
import
|
|
18
|
+
import { EventEmitter } from 'eventemitter3';
|
|
19
19
|
import { Observable } from 'rxjs';
|
|
20
|
+
type EventEmitterInstance = InstanceType<typeof EventEmitter>;
|
|
20
21
|
export interface AuthenticationServiceInterface {
|
|
21
22
|
onError: any;
|
|
22
23
|
onLogin: any;
|
|
23
24
|
onLogout: any;
|
|
24
|
-
on:
|
|
25
|
-
off:
|
|
26
|
-
once:
|
|
27
|
-
emit:
|
|
25
|
+
on: EventEmitterInstance['on'];
|
|
26
|
+
off: EventEmitterInstance['off'];
|
|
27
|
+
once: EventEmitterInstance['once'];
|
|
28
|
+
emit: EventEmitterInstance['emit'];
|
|
28
29
|
getToken(): string;
|
|
29
30
|
isLoggedIn(): boolean;
|
|
30
31
|
isOauth(): boolean;
|
|
@@ -36,12 +37,5 @@ export interface AuthenticationServiceInterface {
|
|
|
36
37
|
getAuthHeaders(requestUrl: string, header: HttpHeaders): HttpHeaders;
|
|
37
38
|
addTokenToHeader(requestUrl: string, headersArg?: HttpHeaders): Observable<HttpHeaders>;
|
|
38
39
|
reset(): void;
|
|
39
|
-
/** @deprecated use `isLoggedIn` instead, use `isECMProvider` if you need to know the auth type */
|
|
40
|
-
isEcmLoggedIn(): boolean;
|
|
41
|
-
/** @deprecated use `isLoggedIn` instead, use `isBPMProvider` if you need to know the auth type */
|
|
42
|
-
isBpmLoggedIn(): boolean;
|
|
43
|
-
/** @deprecated use `getUsername` instead */
|
|
44
|
-
getEcmUsername(): string;
|
|
45
|
-
/** @deprecated use `getUsername` instead */
|
|
46
|
-
getBpmUsername(): string;
|
|
47
40
|
}
|
|
41
|
+
export {};
|
|
@@ -23,16 +23,6 @@ export declare class OidcAuthenticationService extends BaseAuthenticationService
|
|
|
23
23
|
* and the discovery document is loaded, otherwise it emits `false`.
|
|
24
24
|
*/
|
|
25
25
|
shouldPerformSsoLogin$: Observable<boolean>;
|
|
26
|
-
/**
|
|
27
|
-
* @deprecated use `isLoggedIn` instead
|
|
28
|
-
* @returns true if the ECM provider is logged in
|
|
29
|
-
*/
|
|
30
|
-
isEcmLoggedIn(): boolean;
|
|
31
|
-
/**
|
|
32
|
-
* @deprecated use `isLoggedIn` instead
|
|
33
|
-
* @returns true if the BPM provider is logged in
|
|
34
|
-
*/
|
|
35
|
-
isBpmLoggedIn(): boolean;
|
|
36
26
|
isLoggedIn(): boolean;
|
|
37
27
|
hasValidAccessToken(): boolean;
|
|
38
28
|
hasValidIdToken(): boolean;
|
|
@@ -50,16 +40,6 @@ export declare class OidcAuthenticationService extends BaseAuthenticationService
|
|
|
50
40
|
* @returns the logged username
|
|
51
41
|
*/
|
|
52
42
|
getUsername(): string;
|
|
53
|
-
/**
|
|
54
|
-
* @deprecated use `getUsername` instead
|
|
55
|
-
* @returns the logged username
|
|
56
|
-
*/
|
|
57
|
-
getEcmUsername(): string;
|
|
58
|
-
/**
|
|
59
|
-
* @deprecated use `getUsername` instead
|
|
60
|
-
* @returns the logged username
|
|
61
|
-
*/
|
|
62
|
-
getBpmUsername(): string;
|
|
63
43
|
ssoLogin(redirectUrl?: string): void;
|
|
64
44
|
isRememberMeSet(): boolean;
|
|
65
45
|
logout(): Observable<never>;
|