aril 0.0.98 → 0.1.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/esm2022/keycloak/src/auth.interceptor.mjs +68 -2
- package/esm2022/ui/business-components/assetPicker/src/asset-picker.component.mjs +22 -7
- package/esm2022/ui/panel/src/panel.component.mjs +2 -2
- package/esm2022/ui/tooltip/aril-ui-tooltip.mjs +5 -0
- package/esm2022/ui/tooltip/index.mjs +2 -0
- package/esm2022/ui/tooltip/src/tooltip-component.mjs +23 -0
- package/fesm2022/aril-keycloak.mjs +67 -1
- package/fesm2022/aril-keycloak.mjs.map +1 -1
- package/fesm2022/aril-ui-business-components-assetPicker.mjs +21 -6
- package/fesm2022/aril-ui-business-components-assetPicker.mjs.map +1 -1
- package/fesm2022/aril-ui-panel.mjs +2 -2
- package/fesm2022/aril-ui-tooltip.mjs +30 -0
- package/fesm2022/aril-ui-tooltip.mjs.map +1 -0
- package/package.json +63 -57
- package/ui/business-components/assetPicker/src/asset-picker.component.d.ts +9 -3
- package/ui/tooltip/index.d.ts +1 -0
- package/ui/tooltip/src/tooltip-component.d.ts +14 -0
|
@@ -1,10 +1,76 @@
|
|
|
1
|
+
import { Apps } from 'aril/boot/config/apps';
|
|
2
|
+
const getCurrentAppName = (host, mf) => {
|
|
3
|
+
let appName = '';
|
|
4
|
+
if (host) {
|
|
5
|
+
switch (host) {
|
|
6
|
+
case Apps.YEAP:
|
|
7
|
+
appName = Apps.YEAP;
|
|
8
|
+
break;
|
|
9
|
+
case Apps.LENA:
|
|
10
|
+
appName = Apps.LENA;
|
|
11
|
+
break;
|
|
12
|
+
case Apps.THOR:
|
|
13
|
+
appName = Apps.THOR;
|
|
14
|
+
break;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
switch (mf) {
|
|
19
|
+
case Apps.HES:
|
|
20
|
+
case Apps.CTS:
|
|
21
|
+
case Apps.SIS:
|
|
22
|
+
appName = Apps.LENA;
|
|
23
|
+
break;
|
|
24
|
+
case Apps.CRM:
|
|
25
|
+
case Apps.BILLING:
|
|
26
|
+
case Apps.PAYMENT:
|
|
27
|
+
case Apps.WDM:
|
|
28
|
+
case Apps.MNG:
|
|
29
|
+
appName = Apps.THOR;
|
|
30
|
+
break;
|
|
31
|
+
case Apps.MW:
|
|
32
|
+
appName = Apps.YEAP;
|
|
33
|
+
break;
|
|
34
|
+
default:
|
|
35
|
+
appName = Apps.YEAP;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return appName;
|
|
39
|
+
};
|
|
40
|
+
const getAppHeader = (appName) => {
|
|
41
|
+
let appHeader = {};
|
|
42
|
+
switch (appName) {
|
|
43
|
+
case Apps.YEAP:
|
|
44
|
+
appHeader = {
|
|
45
|
+
"x-application": "yeap",
|
|
46
|
+
"x-module": "yeap-fe"
|
|
47
|
+
};
|
|
48
|
+
break;
|
|
49
|
+
case Apps.LENA:
|
|
50
|
+
appHeader = {
|
|
51
|
+
"x-application": "lena",
|
|
52
|
+
"x-module": "lena-fe"
|
|
53
|
+
};
|
|
54
|
+
break;
|
|
55
|
+
case Apps.THOR:
|
|
56
|
+
appHeader = {
|
|
57
|
+
"x-application": "thor",
|
|
58
|
+
"x-module": "thor-fe"
|
|
59
|
+
};
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
return appHeader;
|
|
63
|
+
};
|
|
1
64
|
export const authInterceptor = (req, next) => {
|
|
2
65
|
const token = globalThis.keycloakService?._instance?.token;
|
|
66
|
+
const currentApp = getCurrentAppName(globalThis.activeHost, globalThis.activeMF);
|
|
67
|
+
const appNameHeader = getAppHeader(currentApp);
|
|
3
68
|
const authReq = req.clone({
|
|
4
69
|
setHeaders: {
|
|
5
|
-
Authorization: `Bearer ${token}
|
|
70
|
+
Authorization: `Bearer ${token}`,
|
|
71
|
+
...appNameHeader
|
|
6
72
|
}
|
|
7
73
|
});
|
|
8
74
|
return next(authReq);
|
|
9
75
|
};
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwva2V5Y2xvYWsvc3JjL2F1dGguaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTdDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBVSxFQUFFLEVBQUU7SUFDdEQsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLElBQUksSUFBSSxFQUFFLENBQUM7UUFDVixRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2QsS0FBSyxJQUFJLENBQUMsSUFBSTtnQkFDYixPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDcEIsTUFBTTtZQUNQLEtBQUssSUFBSSxDQUFDLElBQUk7Z0JBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLE1BQU07WUFDUCxLQUFLLElBQUksQ0FBQyxJQUFJO2dCQUNiLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUNwQixNQUFNO1FBQ1IsQ0FBQztJQUNGLENBQUM7U0FBTSxDQUFDO1FBQ1AsUUFBUSxFQUFFLEVBQUUsQ0FBQztZQUNaLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNkLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNkLEtBQUssSUFBSSxDQUFDLEdBQUc7Z0JBQ1osT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLE1BQU07WUFDUCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDZCxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDbEIsS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ2xCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNkLEtBQUssSUFBSSxDQUFDLEdBQUc7Z0JBQ1osT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLE1BQU07WUFDUCxLQUFLLElBQUksQ0FBQyxFQUFFO2dCQUNYLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUNwQixNQUFNO1lBQ1A7Z0JBQ0MsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdEIsQ0FBQztJQUNGLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQztBQUNoQixDQUFDLENBQUM7QUFFRixNQUFNLFlBQVksR0FBRyxDQUFDLE9BQWUsRUFBRSxFQUFFO0lBQ3hDLElBQUksU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUNuQixRQUFRLE9BQU8sRUFBRSxDQUFDO1FBQ2pCLEtBQUssSUFBSSxDQUFDLElBQUk7WUFDYixTQUFTLEdBQUc7Z0JBQ1gsZUFBZSxFQUFFLE1BQU07Z0JBQ3ZCLFVBQVUsRUFBRSxTQUFTO2FBQ3JCLENBQUM7WUFDRixNQUFNO1FBQ1AsS0FBSyxJQUFJLENBQUMsSUFBSTtZQUNiLFNBQVMsR0FBRztnQkFDWCxlQUFlLEVBQUUsTUFBTTtnQkFDdkIsVUFBVSxFQUFFLFNBQVM7YUFDckIsQ0FBQztZQUNGLE1BQU07UUFDUCxLQUFLLElBQUksQ0FBQyxJQUFJO1lBQ2IsU0FBUyxHQUFHO2dCQUNYLGVBQWUsRUFBRSxNQUFNO2dCQUN2QixVQUFVLEVBQUUsU0FBUzthQUNyQixDQUFDO1lBQ0YsTUFBTTtJQUNSLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNsQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQXNCLENBQUMsR0FBeUIsRUFBRSxJQUFtQixFQUFFLEVBQUU7SUFDcEcsTUFBTSxLQUFLLEdBQVMsVUFBVyxDQUFDLGVBQWUsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDO0lBQ2xFLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFPLFVBQVcsQ0FBQyxVQUFVLEVBQVEsVUFBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9GLE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMvQyxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBQ3pCLFVBQVUsRUFBRTtZQUNYLGFBQWEsRUFBRSxVQUFVLEtBQUssRUFBRTtZQUNoQyxHQUFHLGFBQWE7U0FDaEI7S0FDRCxDQUFDLENBQUM7SUFFSCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUN0QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwSGFuZGxlckZuLCBIdHRwSW50ZXJjZXB0b3JGbiwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBBcHBzIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcHBzJztcclxuXHJcbmNvbnN0IGdldEN1cnJlbnRBcHBOYW1lID0gKGhvc3Q6IHN0cmluZywgbWY6IHN0cmluZykgPT4ge1xyXG5cdGxldCBhcHBOYW1lID0gJyc7XHJcblx0aWYgKGhvc3QpIHtcclxuXHRcdHN3aXRjaCAoaG9zdCkge1xyXG5cdFx0XHRjYXNlIEFwcHMuWUVBUDpcclxuXHRcdFx0XHRhcHBOYW1lID0gQXBwcy5ZRUFQO1xyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRjYXNlIEFwcHMuTEVOQTpcclxuXHRcdFx0XHRhcHBOYW1lID0gQXBwcy5MRU5BO1xyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRjYXNlIEFwcHMuVEhPUjpcclxuXHRcdFx0XHRhcHBOYW1lID0gQXBwcy5USE9SO1xyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0fVxyXG5cdH0gZWxzZSB7XHJcblx0XHRzd2l0Y2ggKG1mKSB7XHJcblx0XHRcdGNhc2UgQXBwcy5IRVM6XHJcblx0XHRcdGNhc2UgQXBwcy5DVFM6XHJcblx0XHRcdGNhc2UgQXBwcy5TSVM6XHJcblx0XHRcdFx0YXBwTmFtZSA9IEFwcHMuTEVOQTtcclxuXHRcdFx0XHRicmVhaztcclxuXHRcdFx0Y2FzZSBBcHBzLkNSTTpcclxuXHRcdFx0Y2FzZSBBcHBzLkJJTExJTkc6XHJcblx0XHRcdGNhc2UgQXBwcy5QQVlNRU5UOlxyXG5cdFx0XHRjYXNlIEFwcHMuV0RNOlxyXG5cdFx0XHRjYXNlIEFwcHMuTU5HOlxyXG5cdFx0XHRcdGFwcE5hbWUgPSBBcHBzLlRIT1I7XHJcblx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdGNhc2UgQXBwcy5NVzpcclxuXHRcdFx0XHRhcHBOYW1lID0gQXBwcy5ZRUFQO1xyXG5cdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRkZWZhdWx0OlxyXG5cdFx0XHRcdGFwcE5hbWUgPSBBcHBzLllFQVA7XHJcblx0XHR9XHJcblx0fVxyXG5cdHJldHVybiBhcHBOYW1lO1xyXG59O1xyXG5cclxuY29uc3QgZ2V0QXBwSGVhZGVyID0gKGFwcE5hbWU6IHN0cmluZykgPT4ge1xyXG5cdGxldCBhcHBIZWFkZXIgPSB7fTtcclxuXHRzd2l0Y2ggKGFwcE5hbWUpIHtcclxuXHRcdGNhc2UgQXBwcy5ZRUFQOlxyXG5cdFx0XHRhcHBIZWFkZXIgPSB7XHJcblx0XHRcdFx0XCJ4LWFwcGxpY2F0aW9uXCI6IFwieWVhcFwiLFxyXG5cdFx0XHRcdFwieC1tb2R1bGVcIjogXCJ5ZWFwLWZlXCJcclxuXHRcdFx0fTtcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIEFwcHMuTEVOQTpcclxuXHRcdFx0YXBwSGVhZGVyID0ge1xyXG5cdFx0XHRcdFwieC1hcHBsaWNhdGlvblwiOiBcImxlbmFcIixcclxuXHRcdFx0XHRcIngtbW9kdWxlXCI6IFwibGVuYS1mZVwiXHJcblx0XHRcdH07XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSBBcHBzLlRIT1I6XHJcblx0XHRcdGFwcEhlYWRlciA9IHtcclxuXHRcdFx0XHRcIngtYXBwbGljYXRpb25cIjogXCJ0aG9yXCIsXHJcblx0XHRcdFx0XCJ4LW1vZHVsZVwiOiBcInRob3ItZmVcIlxyXG5cdFx0XHR9O1xyXG5cdFx0XHRicmVhaztcclxuXHR9XHJcblx0cmV0dXJuIGFwcEhlYWRlcjtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBhdXRoSW50ZXJjZXB0b3I6IEh0dHBJbnRlcmNlcHRvckZuID0gKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyRm4pID0+IHtcclxuXHRjb25zdCB0b2tlbiA9ICg8YW55Pmdsb2JhbFRoaXMpLmtleWNsb2FrU2VydmljZT8uX2luc3RhbmNlPy50b2tlbjtcclxuXHRjb25zdCBjdXJyZW50QXBwID0gZ2V0Q3VycmVudEFwcE5hbWUoKDxhbnk+Z2xvYmFsVGhpcykuYWN0aXZlSG9zdCwgKDxhbnk+Z2xvYmFsVGhpcykuYWN0aXZlTUYpO1xyXG5cdGNvbnN0IGFwcE5hbWVIZWFkZXIgPSBnZXRBcHBIZWFkZXIoY3VycmVudEFwcCk7XHJcblx0Y29uc3QgYXV0aFJlcSA9IHJlcS5jbG9uZSh7XHJcblx0XHRzZXRIZWFkZXJzOiB7XHJcblx0XHRcdEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0b2tlbn1gLFxyXG5cdFx0XHQuLi5hcHBOYW1lSGVhZGVyXHJcblx0XHR9XHJcblx0fSk7XHJcblxyXG5cdHJldHVybiBuZXh0KGF1dGhSZXEpO1xyXG59O1xyXG4iXX0=
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { Component, input } from '@angular/core';
|
|
1
|
+
import { Component, ViewChild, input } from '@angular/core';
|
|
2
2
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
|
-
import { AutoCompleteModule } from 'primeng/autocomplete';
|
|
3
|
+
import { AutoComplete, AutoCompleteModule } from 'primeng/autocomplete';
|
|
4
|
+
import { ObjectUtils } from 'primeng/utils';
|
|
4
5
|
import { firstValueFrom } from 'rxjs';
|
|
5
6
|
import { API_CONFIGS } from 'aril/boot/config/api';
|
|
6
7
|
import { BaseInputComponent, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';
|
|
@@ -18,12 +19,23 @@ export class AssetPickerComponent extends BaseInputComponent {
|
|
|
18
19
|
this.placeholder = input('Arama...');
|
|
19
20
|
this.forceSelection = input(false);
|
|
20
21
|
this.multiple = input(false);
|
|
22
|
+
this.optionValue = input(null);
|
|
23
|
+
}
|
|
24
|
+
ngAfterViewInit() {
|
|
25
|
+
this.autoCompleteRef.getOptionValue = this.getOptionValue.bind(this);
|
|
26
|
+
}
|
|
27
|
+
getOptionValue(option) {
|
|
28
|
+
return (this.optionValue() ?
|
|
29
|
+
typeof option === 'object' ?
|
|
30
|
+
ObjectUtils.resolveFieldData(option, this.optionValue())
|
|
31
|
+
: option
|
|
32
|
+
: option);
|
|
21
33
|
}
|
|
22
34
|
async search(event) {
|
|
23
35
|
const query = event.query;
|
|
24
36
|
const payload = {
|
|
25
37
|
searchText: query,
|
|
26
|
-
assetDefinitionCodes: Array.isArray(
|
|
38
|
+
assetDefinitionCodes: Array.isArray(this.assetCode()) ? this.assetCode() : [this.assetCode()],
|
|
27
39
|
pageSize: 5,
|
|
28
40
|
pageNumber: 1
|
|
29
41
|
};
|
|
@@ -59,10 +71,13 @@ export class AssetPickerComponent extends BaseInputComponent {
|
|
|
59
71
|
return attributes.map((attr) => (attr.valueDesc ? attr.valueDesc : attr.value)).join(' - ');
|
|
60
72
|
}
|
|
61
73
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AssetPickerComponent, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: AssetPickerComponent, isStandalone: true, selector: "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", inputs: { assetCode: { classPropertyName: "assetCode", publicName: "assetCode", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete
|
|
74
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: AssetPickerComponent, isStandalone: true, selector: "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", inputs: { assetCode: { classPropertyName: "assetCode", publicName: "assetCode", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: AutoComplete, descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete>\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: AutoCompleteModule }, { kind: "component", type: i4.AutoComplete, selector: "p-autoComplete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "variant"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
|
|
63
75
|
}
|
|
64
76
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AssetPickerComponent, decorators: [{
|
|
65
77
|
type: Component,
|
|
66
|
-
args: [{ standalone: true, selector: 'aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]', imports: [ReactiveFormsModule, InputErrorMessagePipe, AutoCompleteModule], hostDirectives: [ValueAccessorDirective], template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete
|
|
67
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }]
|
|
68
|
-
|
|
78
|
+
args: [{ standalone: true, selector: 'aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]', imports: [ReactiveFormsModule, InputErrorMessagePipe, AutoCompleteModule], hostDirectives: [ValueAccessorDirective], template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete>\r\n" }]
|
|
79
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }], propDecorators: { autoCompleteRef: [{
|
|
80
|
+
type: ViewChild,
|
|
81
|
+
args: [AutoComplete]
|
|
82
|
+
}] } });
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvYnVzaW5lc3MtY29tcG9uZW50cy9hc3NldFBpY2tlci9zcmMvYXNzZXQtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvYnVzaW5lc3MtY29tcG9uZW50cy9hc3NldFBpY2tlci9zcmMvYXNzZXQtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7O0FBV2hHLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxrQkFBa0I7SUFXM0QsWUFBb0IsSUFBZ0I7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFEVyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBVHBDLGNBQVMsR0FBRyxLQUFLLENBQTJCLElBQUksQ0FBQyxDQUFDO1FBRWxELGdCQUFXLEdBQUcsS0FBSyxDQUFTLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLG1CQUFjLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLGFBQVEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxLQUFLLENBQThCLElBQUksQ0FBQyxDQUFDO0lBTXZELENBQUM7SUFFRCxlQUFlO1FBQ2QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFXO1FBQ3pCLE9BQU8sQ0FDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUNuQixPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQztnQkFDM0IsV0FBVyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3pELENBQUMsQ0FBQyxNQUFNO1lBQ1QsQ0FBQyxDQUFDLE1BQU0sQ0FDUixDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBVTtRQUN0QixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzFCLE1BQU0sT0FBTyxHQUFHO1lBQ2YsVUFBVSxFQUFFLEtBQUs7WUFDakIsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM3RixRQUFRLEVBQUUsQ0FBQztZQUNYLFVBQVUsRUFBRSxDQUFDO1NBQ2IsQ0FBQztRQUNGLDZDQUE2QztRQUM3QyxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDdkUsTUFBTSxjQUFjLEdBQTJCLE1BQU0sY0FBYyxDQUNsRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBTSxTQUFTLEdBQUcsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLENBQzlELENBQUM7UUFDRixNQUFNLHFCQUFxQixHQUFnQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRW5ILE1BQU0sMkJBQTJCLEdBQTBCLEVBQUUsQ0FBQztRQUM5RCxNQUFNLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUU7WUFDdEQsTUFBTSxTQUFTLEdBQXdCLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUMxRSxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFZLEVBQUUsRUFBRTtnQkFDL0MsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7b0JBQ3BCLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRTtvQkFDWixJQUFJLEVBQUUsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7aUJBQ3BELENBQUMsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBQ0gsMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxzQkFBc0IsR0FBRywyQkFBMkIsQ0FBQztJQUMzRCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsS0FBZTtRQUN6QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFtQyxFQUFFLFlBQW9CLEVBQUUsRUFBRTtZQUNqRixNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsSUFBSSxTQUFTLENBQUM7WUFDakUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUN4QixNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLENBQUM7WUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3JDLE9BQU8sTUFBTSxDQUFDO1FBQ2YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELHdCQUF3QixDQUFDLFVBQThCO1FBQ3RELE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0YsQ0FBQzs4R0F4RVcsb0JBQW9CO2tHQUFwQixvQkFBb0IsbTRCQUNyQixZQUFZLG1JQ3RCeEIsb3FCQW1CQSwyQ0REVyxtQkFBbUIseVRBQXlCLGtCQUFrQjs7MkZBRzVELG9CQUFvQjtrQkFQaEMsU0FBUztpQ0FDRyxJQUFJLFlBQ04sZ0dBQWdHLFdBRWpHLENBQUMsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLENBQUMsa0JBQ3pELENBQUMsc0JBQXNCLENBQUM7K0VBR2YsZUFBZTtzQkFBdkMsU0FBUzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBBdXRvQ29tcGxldGUsIEF1dG9Db21wbGV0ZU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tICdwcmltZW5nL3V0aWxzJztcclxuXHJcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBBUElfQ09ORklHUyB9IGZyb20gJ2FyaWwvYm9vdC9jb25maWcvYXBpJztcclxuaW1wb3J0IHsgQmFzZUlucHV0Q29tcG9uZW50LCBJbnB1dEVycm9yTWVzc2FnZVBpcGUsIFZhbHVlQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICdhcmlsL3VpL2xpYic7XHJcblxyXG5pbXBvcnQgeyBBc3NldFBpY2tlclJlc3BvbnNlRFRPLCBBdHRyaWJ1dGVFbGVtZW50LCBSZXN1bHQsIFN1Z2dlc3Rpb25zRFRPLCBTdWdnZXN0aW9uc0dyb3VwRFRPIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRzZWxlY3RvcjogJ2FyaWwtYXNzZXQtcGlja2VyW25nTW9kZWxdLCBhcmlsLWFzc2V0LXBpY2tlcltmb3JtQ29udHJvbF0sIGFyaWwtYXNzZXQtcGlja2VyW2Zvcm1Db250cm9sTmFtZV0nLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9hc3NldC1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG5cdGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBJbnB1dEVycm9yTWVzc2FnZVBpcGUsIEF1dG9Db21wbGV0ZU1vZHVsZV0sXHJcblx0aG9zdERpcmVjdGl2ZXM6IFtWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXNzZXRQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuXHRAVmlld0NoaWxkKEF1dG9Db21wbGV0ZSkgYXV0b0NvbXBsZXRlUmVmITogQXV0b0NvbXBsZXRlO1xyXG5cdGFzc2V0Q29kZSA9IGlucHV0PHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbD4obnVsbCk7XHJcblxyXG5cdHBsYWNlaG9sZGVyID0gaW5wdXQ8c3RyaW5nPignQXJhbWEuLi4nKTtcclxuXHRmb3JjZVNlbGVjdGlvbiA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRtdWx0aXBsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRvcHRpb25WYWx1ZSA9IGlucHV0PGtleW9mIFN1Z2dlc3Rpb25zRFRPIHwgbnVsbD4obnVsbCk7XHJcblxyXG5cdGZpbHRlcmVkU2VsZWN0aW9uSXRlbXMhOiBTdWdnZXN0aW9uc0dyb3VwRFRPW107XHJcblxyXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG5cdFx0c3VwZXIoKTtcclxuXHR9XHJcblxyXG5cdG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuXHRcdHRoaXMuYXV0b0NvbXBsZXRlUmVmLmdldE9wdGlvblZhbHVlID0gdGhpcy5nZXRPcHRpb25WYWx1ZS5iaW5kKHRoaXMpO1xyXG5cdH1cclxuXHJcblx0Z2V0T3B0aW9uVmFsdWUob3B0aW9uOiBhbnkpIHtcclxuXHRcdHJldHVybiAoXHJcblx0XHRcdHRoaXMub3B0aW9uVmFsdWUoKSA/XHJcblx0XHRcdFx0dHlwZW9mIG9wdGlvbiA9PT0gJ29iamVjdCcgP1xyXG5cdFx0XHRcdFx0T2JqZWN0VXRpbHMucmVzb2x2ZUZpZWxkRGF0YShvcHRpb24sIHRoaXMub3B0aW9uVmFsdWUoKSlcclxuXHRcdFx0XHQ6XHRvcHRpb25cclxuXHRcdFx0Olx0b3B0aW9uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgc2VhcmNoKGV2ZW50OiBhbnkpIHtcclxuXHRcdGNvbnN0IHF1ZXJ5ID0gZXZlbnQucXVlcnk7XHJcblx0XHRjb25zdCBwYXlsb2FkID0ge1xyXG5cdFx0XHRzZWFyY2hUZXh0OiBxdWVyeSxcclxuXHRcdFx0YXNzZXREZWZpbml0aW9uQ29kZXM6IEFycmF5LmlzQXJyYXkodGhpcy5hc3NldENvZGUoKSkgPyB0aGlzLmFzc2V0Q29kZSgpIDogW3RoaXMuYXNzZXRDb2RlKCldLFxyXG5cdFx0XHRwYWdlU2l6ZTogNSxcclxuXHRcdFx0cGFnZU51bWJlcjogMVxyXG5cdFx0fTtcclxuXHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWVzY2FwZVxyXG5cdFx0Y29uc3QgcmVtb3RlVXJsID0gQVBJX0NPTkZJR1MuYXBpLnJlcGxhY2UoL1xcL1teXFwvXStcXC92MSQvLCBgL2hvc3QvdjFgKTtcclxuXHRcdGNvbnN0IHNlbGVjdGlvbkdyb3VwOiBBc3NldFBpY2tlclJlc3BvbnNlRFRPID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXHJcblx0XHRcdHRoaXMuaHR0cC5wb3N0PGFueT4ocmVtb3RlVXJsICsgJy9tZC9lbGFzdGljLXNlYXJjaCcsIHBheWxvYWQpXHJcblx0XHQpO1xyXG5cdFx0Y29uc3QgZ3JvdXBlZFNlbGVjdGlvbkl0ZW1zOiB7IFtrZXk6IHN0cmluZ106IFJlc3VsdFtdIH0gPSB0aGlzLmdyb3VwQnlBc3NldERlZmluaXRpb25Db2RlKHNlbGVjdGlvbkdyb3VwPy5yZXN1bHQpO1xyXG5cclxuXHRcdGNvbnN0IG5ld0ZpbHRlcmVkR3JvdXBTdWdnZXN0aW9uczogU3VnZ2VzdGlvbnNHcm91cERUT1tdID0gW107XHJcblx0XHRPYmplY3Qua2V5cyhncm91cGVkU2VsZWN0aW9uSXRlbXMpLm1hcCgoa2V5OiBzdHJpbmcpID0+IHtcclxuXHRcdFx0Y29uc3QgZ3JvdXBEYXRhOiBTdWdnZXN0aW9uc0dyb3VwRFRPID0geyB0ZXh0OiBrZXksIGtleToga2V5LCBpdGVtczogW10gfTtcclxuXHRcdFx0Z3JvdXBlZFNlbGVjdGlvbkl0ZW1zW2tleV0ubWFwKChpdGVtOiBSZXN1bHQpID0+IHtcclxuXHRcdFx0XHRncm91cERhdGEuaXRlbXMucHVzaCh7XHJcblx0XHRcdFx0XHRrZXk6IGl0ZW0uaWQsXHJcblx0XHRcdFx0XHR0ZXh0OiB0aGlzLmdldEF0dGlyaWJ1dGVzVmFsdWVEZXNjcihpdGVtLmF0dHJpYnV0ZXMpXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHRuZXdGaWx0ZXJlZEdyb3VwU3VnZ2VzdGlvbnMucHVzaChncm91cERhdGEpO1xyXG5cdFx0fSk7XHJcblx0XHRjb25zb2xlLmxvZyhuZXdGaWx0ZXJlZEdyb3VwU3VnZ2VzdGlvbnMpO1xyXG5cdFx0dGhpcy5maWx0ZXJlZFNlbGVjdGlvbkl0ZW1zID0gbmV3RmlsdGVyZWRHcm91cFN1Z2dlc3Rpb25zO1xyXG5cdH1cclxuXHJcblx0Z3JvdXBCeUFzc2V0RGVmaW5pdGlvbkNvZGUoYXJyYXk6IFJlc3VsdFtdKTogeyBba2V5OiBzdHJpbmddOiBSZXN1bHRbXSB9IHtcclxuXHRcdHJldHVybiBhcnJheS5yZWR1Y2UoKHJlc3VsdDogeyBba2V5OiBzdHJpbmddOiBSZXN1bHRbXSB9LCBjdXJyZW50VmFsdWU6IFJlc3VsdCkgPT4ge1xyXG5cdFx0XHRjb25zdCBhc3NldE5hbWUgPSBjdXJyZW50VmFsdWUuYXNzZXRzWzBdPy5hc3NldE5hbWUgfHwgJ1Vua25vd24nO1xyXG5cdFx0XHRpZiAoIXJlc3VsdFthc3NldE5hbWVdKSB7XHJcblx0XHRcdFx0cmVzdWx0W2Fzc2V0TmFtZV0gPSBbXTtcclxuXHRcdFx0fVxyXG5cdFx0XHRyZXN1bHRbYXNzZXROYW1lXS5wdXNoKGN1cnJlbnRWYWx1ZSk7XHJcblx0XHRcdHJldHVybiByZXN1bHQ7XHJcblx0XHR9LCB7fSk7XHJcblx0fVxyXG5cclxuXHRnZXRBdHRpcmlidXRlc1ZhbHVlRGVzY3IoYXR0cmlidXRlczogQXR0cmlidXRlRWxlbWVudFtdKTogc3RyaW5nIHtcclxuXHRcdHJldHVybiBhdHRyaWJ1dGVzLm1hcCgoYXR0cikgPT4gKGF0dHIudmFsdWVEZXNjID8gYXR0ci52YWx1ZURlc2MgOiBhdHRyLnZhbHVlKSkuam9pbignIC0gJyk7XHJcblx0fVxyXG59XHJcbiIsIjxwLWF1dG9Db21wbGV0ZVxyXG5cdG9wdGlvbkxhYmVsPVwidGV4dFwiXHJcblx0W29wdGlvblZhbHVlXT1cIm9wdGlvblZhbHVlKCkhXCJcclxuXHRbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXHJcblx0W211bHRpcGxlXT1cIm11bHRpcGxlKClcIlxyXG5cdFtncm91cF09XCJ0cnVlXCJcclxuXHRbZm9yY2VTZWxlY3Rpb25dPVwiZm9yY2VTZWxlY3Rpb24oKVwiXHJcblx0W2RlbGF5XT1cIjQwMFwiXHJcblx0W3N1Z2dlc3Rpb25zXT1cImZpbHRlcmVkU2VsZWN0aW9uSXRlbXNcIlxyXG5cdChjb21wbGV0ZU1ldGhvZCk9XCJzZWFyY2goJGV2ZW50KVwiXHJcblx0W2Zvcm1Db250cm9sXT1cIm5nQ29udHJvbC5jb250cm9sXCJcclxuXHRbYXV0b0hpZ2hsaWdodF09XCJ0cnVlXCJcclxuXHQobmdNb2RlbENoYW5nZSk9XCJuZ0NvbnRyb2wudmlld1RvTW9kZWxVcGRhdGUoJGV2ZW50KVwiPlxyXG5cdDxuZy10ZW1wbGF0ZSBsZXQtZ3JvdXAgcFRlbXBsYXRlPVwiZ3JvdXBcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG5cdFx0XHQ8c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiA4MDBcIj57eyBncm91cC50ZXh0IH19PC9zcGFuPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuPC9wLWF1dG9Db21wbGV0ZT5cclxuIl19
|
|
@@ -17,10 +17,10 @@ export class PanelComponent {
|
|
|
17
17
|
this.isFullScreen = !this.isFullScreen;
|
|
18
18
|
}
|
|
19
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: PanelComponent, isStandalone: true, selector: "aril-panel", inputs: { toggleable: { classPropertyName: "toggleable", publicName: "toggleable", isSignal: true, isRequired: false, transformFunction: null }, canFullScreen: { classPropertyName: "canFullScreen", publicName: "canFullScreen", isSignal: true, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, showFooter: { classPropertyName: "showFooter", publicName: "showFooter", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:
|
|
20
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: PanelComponent, isStandalone: true, selector: "aril-panel", inputs: { toggleable: { classPropertyName: "toggleable", publicName: "toggleable", isSignal: true, isRequired: false, transformFunction: null }, canFullScreen: { classPropertyName: "canFullScreen", publicName: "canFullScreen", isSignal: true, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, showFooter: { classPropertyName: "showFooter", publicName: "showFooter", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:12px;font-style:normal;font-weight:400;line-height:normal}::ng-deep .panel-icons i{cursor:pointer;width:2rem}.panel-ng-content{padding:0!important}\n"], dependencies: [{ kind: "ngmodule", type: PanelModule }, { kind: "component", type: i1.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
21
21
|
}
|
|
22
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PanelComponent, decorators: [{
|
|
23
23
|
type: Component,
|
|
24
|
-
args: [{ standalone: true, selector: 'aril-panel', imports: [PanelModule, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:
|
|
24
|
+
args: [{ standalone: true, selector: 'aril-panel', imports: [PanelModule, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:12px;font-style:normal;font-weight:400;line-height:normal}::ng-deep .panel-icons i{cursor:pointer;width:2rem}.panel-ng-content{padding:0!important}\n"] }]
|
|
25
25
|
}] });
|
|
26
26
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS9wYW5lbC9zcmMvcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS9wYW5lbC9zcmMvcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFVNUMsTUFBTSxPQUFPLGNBQWM7SUFSM0I7UUFTQyxlQUFVLEdBQUcsS0FBSyxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQ2xDLGtCQUFhLEdBQUcsS0FBSyxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQ3JDLGNBQVMsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbEMsZUFBVSxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQzdCLGVBQVUsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFFbkMsaUJBQVksR0FBRyxLQUFLLENBQUM7S0FLckI7SUFIQSxnQkFBZ0I7UUFDZixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUN4QyxDQUFDOzhHQVhXLGNBQWM7a0dBQWQsY0FBYywydkJDYjNCLHkxQ0E0Q0EsZ2REbENXLFdBQVcsZ2FBQUUsT0FBTzs7MkZBR2xCLGNBQWM7a0JBUjFCLFNBQVM7aUNBQ0csSUFBSSxZQUNOLFlBQVksV0FHYixDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsbUJBQ2QsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgUGFuZWxNb2R1bGUgfSBmcm9tICdwcmltZW5nL3BhbmVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcmlsLXBhbmVsJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9wYW5lbC5jb21wb25lbnQuY3NzJyxcclxuXHRpbXBvcnRzOiBbUGFuZWxNb2R1bGUsIE5nQ2xhc3NdLFxyXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYW5lbENvbXBvbmVudCB7XHJcblx0dG9nZ2xlYWJsZSA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG5cdGNhbkZ1bGxTY3JlZW4gPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuXHRjb2xsYXBzZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcblx0c3R5bGVDbGFzcyA9IGlucHV0PHN0cmluZz4oKTtcclxuXHRzaG93Rm9vdGVyID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuXHRpc0Z1bGxTY3JlZW4gPSBmYWxzZTtcclxuXHJcblx0dG9nZ2xlRnVsbFNjcmVlbigpIHtcclxuXHRcdHRoaXMuaXNGdWxsU2NyZWVuID0gIXRoaXMuaXNGdWxsU2NyZWVuO1xyXG5cdH1cclxufVxyXG4iLCI8ZGl2IFtuZ0NsYXNzXT1cInsgJ2Z1bGwtc2NyZWVuJzogaXNGdWxsU2NyZWVuICYmIGNhbkZ1bGxTY3JlZW4gfVwiPlxyXG5cdDxwLXBhbmVsXHJcblx0XHRbdG9nZ2xlYWJsZV09XCJ0b2dnbGVhYmxlKClcIlxyXG5cdFx0W2NvbGxhcHNlZF09XCJjb2xsYXBzZWQoKVwiXHJcblx0XHRbY29sbGFwc2VJY29uXT1cIidwaSBwaS1jaGV2cm9uLWRvd24nXCJcclxuXHRcdFtleHBhbmRJY29uXT1cIidwaSBwaS1jaGV2cm9uLXVwJ1wiXHJcblx0XHRbc3R5bGVDbGFzc109XCJzdHlsZUNsYXNzKClcIlxyXG5cdFx0PlxyXG5cdFx0PCEtLSBoZWFkZXIgLS0+XHJcblx0XHQ8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJwYW5lbC1oZWFkZXJcIj5cclxuXHRcdFx0XHQ8bmctY29udGVudCBzZWxlY3Q9XCJbaGVhZGVyXVwiPjwvbmctY29udGVudD5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L25nLXRlbXBsYXRlPlxyXG5cclxuXHRcdDwhLS0gaGVhZGVyLXRvb2xzIC0tPlxyXG5cdFx0PG5nLXRlbXBsYXRlIGNsYXNzPVwiZmxleFwiIHBUZW1wbGF0ZT1cImljb25zXCI+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJwYW5lbC1pY29ucyBmbGV4XCI+XHJcblx0XHRcdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Rvb2xzXVwiPjwvbmctY29udGVudD5cclxuXHJcblx0XHRcdFx0QGlmIChjYW5GdWxsU2NyZWVuKCkpIHtcclxuXHRcdFx0XHRcdDxpXHJcblx0XHRcdFx0XHRcdHJvbGU9XCJidXR0b25cIlxyXG5cdFx0XHRcdFx0XHRjbGFzcz1cInBpXCJcclxuXHRcdFx0XHRcdFx0W25nQ2xhc3NdPVwie1xyXG5cdFx0XHRcdFx0XHRcdCdwaS13aW5kb3ctbWF4aW1pemUnOiAhaXNGdWxsU2NyZWVuLFxyXG5cdFx0XHRcdFx0XHRcdCdwaS13aW5kb3ctbWluaW1pemUnOiBpc0Z1bGxTY3JlZW5cclxuXHRcdFx0XHRcdFx0fVwiXHJcblx0XHRcdFx0XHRcdChjbGljayk9XCJ0b2dnbGVGdWxsU2NyZWVuKClcIj48L2k+XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvbmctdGVtcGxhdGU+XHJcblxyXG5cdFx0PCEtLSBib2R5IC0tPlxyXG5cdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2JvZHldXCIgY2xhc3M9XCJwYW5lbC1uZy1jb250ZW50XCI+PC9uZy1jb250ZW50PlxyXG5cclxuXHRcdDwhLS0gZm9vdGVyIC0tPlxyXG5cdFx0QGlmIChzaG93Rm9vdGVyKCkpIHtcclxuXHRcdFx0PG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZvb3RlclwiPlxyXG5cdFx0XHRcdDxuZy1jb250ZW50IHNlbGVjdD1cIltmb290ZXJdXCI+PC9uZy1jb250ZW50PlxyXG5cdFx0XHQ8L25nLXRlbXBsYXRlPlxyXG5cdFx0fVxyXG5cdDwvcC1wYW5lbD5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJpbC11aS10b29sdGlwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS90b29sdGlwL2FyaWwtdWktdG9vbHRpcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './src/tooltip-component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3Rvb2x0aXAvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL3Rvb2x0aXAtY29tcG9uZW50JztcclxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Component, input } from '@angular/core';
|
|
2
|
+
import { TooltipModule } from 'primeng/tooltip';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "primeng/tooltip";
|
|
5
|
+
export class TooltipComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.text = input('');
|
|
8
|
+
this.template = input();
|
|
9
|
+
this.position = input('right'); // (right, top, bottom, left)
|
|
10
|
+
this.showDelay = input(0); // (ms)
|
|
11
|
+
this.hideDelay = input(0); // (ms)
|
|
12
|
+
this.tooltipStyle = input({});
|
|
13
|
+
this.tooltipStyleClass = input('');
|
|
14
|
+
this.appendTo = input('body');
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: TooltipComponent, isStandalone: true, selector: "aril-tooltip", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, showDelay: { classPropertyName: "showDelay", publicName: "showDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "hideDelay", isSignal: true, isRequired: false, transformFunction: null }, tooltipStyle: { classPropertyName: "tooltipStyle", publicName: "tooltipStyle", isSignal: true, isRequired: false, transformFunction: null }, tooltipStyleClass: { classPropertyName: "tooltipStyleClass", publicName: "tooltipStyleClass", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n", dependencies: [{ kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{ standalone: true, selector: 'aril-tooltip', imports: [TooltipModule], template: "<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n" }]
|
|
22
|
+
}] });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3Rvb2x0aXAvc3JjL3Rvb2x0aXAtY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS90b29sdGlwL3NyYy90b29sdGlwLWNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBUWhELE1BQU0sT0FBTyxnQkFBZ0I7SUFON0I7UUFPQyxTQUFJLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLGFBQVEsR0FBRyxLQUFLLEVBQTJCLENBQUM7UUFDNUMsYUFBUSxHQUFHLEtBQUssQ0FBUyxPQUFPLENBQUMsQ0FBQyxDQUFDLDZCQUE2QjtRQUNoRSxjQUFTLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTztRQUNyQyxjQUFTLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTztRQUNyQyxpQkFBWSxHQUFHLEtBQUssQ0FBTSxFQUFFLENBQUMsQ0FBQztRQUM5QixzQkFBaUIsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDdEMsYUFBUSxHQUFHLEtBQUssQ0FBTSxNQUFNLENBQUMsQ0FBQztLQUM5Qjs4R0FUWSxnQkFBZ0I7a0dBQWhCLGdCQUFnQiw2bkNDVjdCLHVUQVVBLDJDREZXLGFBQWE7OzJGQUVYLGdCQUFnQjtrQkFONUIsU0FBUztpQ0FDRyxJQUFJLFlBQ04sY0FBYyxXQUVmLENBQUMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRzZWxlY3RvcjogJ2FyaWwtdG9vbHRpcCcsXHJcblx0dGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAtY29tcG9uZW50Lmh0bWwnLFxyXG5cdGltcG9ydHM6IFtUb29sdGlwTW9kdWxlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCB7XHJcblx0dGV4dCA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cdHRlbXBsYXRlID0gaW5wdXQ8VGVtcGxhdGVSZWY8YW55PiB8IG51bGw+KCk7XHJcblx0cG9zaXRpb24gPSBpbnB1dDxzdHJpbmc+KCdyaWdodCcpOyAvLyAocmlnaHQsIHRvcCwgYm90dG9tLCBsZWZ0KVxyXG5cdHNob3dEZWxheSA9IGlucHV0PG51bWJlcj4oMCk7IC8vIChtcylcclxuXHRoaWRlRGVsYXkgPSBpbnB1dDxudW1iZXI+KDApOyAvLyAobXMpXHJcblx0dG9vbHRpcFN0eWxlID0gaW5wdXQ8YW55Pih7fSk7XHJcblx0dG9vbHRpcFN0eWxlQ2xhc3MgPSBpbnB1dDxzdHJpbmc+KCcnKTtcclxuXHRhcHBlbmRUbyA9IGlucHV0PGFueT4oJ2JvZHknKTtcclxufVxyXG4iLCI8c3BhblxyXG5cdFtwVG9vbHRpcF09XCJ0ZW1wbGF0ZSgpID8/IHRleHQoKVwiXHJcblx0W3Rvb2x0aXBQb3NpdGlvbl09XCJwb3NpdGlvbigpXCJcclxuXHRbc2hvd0RlbGF5XT1cInNob3dEZWxheSgpXCJcclxuXHRbaGlkZURlbGF5XT1cImhpZGVEZWxheSgpXCJcclxuXHRbc3R5bGVdPVwidG9vbHRpcFN0eWxlKClcIlxyXG5cdFt0b29sdGlwU3R5bGVDbGFzc109XCJ0b29sdGlwU3R5bGVDbGFzcygpXCJcclxuXHRbYXBwZW5kVG9dPVwiYXBwZW5kVG8oKVwiPlxyXG5cdDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuPC9zcGFuPlxyXG4iXX0=
|
|
@@ -5,6 +5,7 @@ import { NavigationStart } from '@angular/router';
|
|
|
5
5
|
import * as i2 from 'keycloak-angular';
|
|
6
6
|
import { KeycloakService, KeycloakEventType, KeycloakAuthGuard } from 'keycloak-angular';
|
|
7
7
|
import { filter } from 'rxjs';
|
|
8
|
+
import { Apps } from 'aril/boot/config/apps';
|
|
8
9
|
|
|
9
10
|
class KeycloakManager {
|
|
10
11
|
constructor(router) {
|
|
@@ -79,11 +80,76 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
79
80
|
args: [{ providedIn: 'root' }]
|
|
80
81
|
}], ctorParameters: () => [{ type: i1.Router }] });
|
|
81
82
|
|
|
83
|
+
const getCurrentAppName = (host, mf) => {
|
|
84
|
+
let appName = '';
|
|
85
|
+
if (host) {
|
|
86
|
+
switch (host) {
|
|
87
|
+
case Apps.YEAP:
|
|
88
|
+
appName = Apps.YEAP;
|
|
89
|
+
break;
|
|
90
|
+
case Apps.LENA:
|
|
91
|
+
appName = Apps.LENA;
|
|
92
|
+
break;
|
|
93
|
+
case Apps.THOR:
|
|
94
|
+
appName = Apps.THOR;
|
|
95
|
+
break;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
switch (mf) {
|
|
100
|
+
case Apps.HES:
|
|
101
|
+
case Apps.CTS:
|
|
102
|
+
case Apps.SIS:
|
|
103
|
+
appName = Apps.LENA;
|
|
104
|
+
break;
|
|
105
|
+
case Apps.CRM:
|
|
106
|
+
case Apps.BILLING:
|
|
107
|
+
case Apps.PAYMENT:
|
|
108
|
+
case Apps.WDM:
|
|
109
|
+
case Apps.MNG:
|
|
110
|
+
appName = Apps.THOR;
|
|
111
|
+
break;
|
|
112
|
+
case Apps.MW:
|
|
113
|
+
appName = Apps.YEAP;
|
|
114
|
+
break;
|
|
115
|
+
default:
|
|
116
|
+
appName = Apps.YEAP;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return appName;
|
|
120
|
+
};
|
|
121
|
+
const getAppHeader = (appName) => {
|
|
122
|
+
let appHeader = {};
|
|
123
|
+
switch (appName) {
|
|
124
|
+
case Apps.YEAP:
|
|
125
|
+
appHeader = {
|
|
126
|
+
"x-application": "yeap",
|
|
127
|
+
"x-module": "yeap-fe"
|
|
128
|
+
};
|
|
129
|
+
break;
|
|
130
|
+
case Apps.LENA:
|
|
131
|
+
appHeader = {
|
|
132
|
+
"x-application": "lena",
|
|
133
|
+
"x-module": "lena-fe"
|
|
134
|
+
};
|
|
135
|
+
break;
|
|
136
|
+
case Apps.THOR:
|
|
137
|
+
appHeader = {
|
|
138
|
+
"x-application": "thor",
|
|
139
|
+
"x-module": "thor-fe"
|
|
140
|
+
};
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
return appHeader;
|
|
144
|
+
};
|
|
82
145
|
const authInterceptor = (req, next) => {
|
|
83
146
|
const token = globalThis.keycloakService?._instance?.token;
|
|
147
|
+
const currentApp = getCurrentAppName(globalThis.activeHost, globalThis.activeMF);
|
|
148
|
+
const appNameHeader = getAppHeader(currentApp);
|
|
84
149
|
const authReq = req.clone({
|
|
85
150
|
setHeaders: {
|
|
86
|
-
Authorization: `Bearer ${token}
|
|
151
|
+
Authorization: `Bearer ${token}`,
|
|
152
|
+
...appNameHeader
|
|
87
153
|
}
|
|
88
154
|
});
|
|
89
155
|
return next(authReq);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-keycloak.mjs","sources":["../../projects/aril/keycloak/src/keycloak.manager.ts","../../projects/aril/keycloak/src/auth.interceptor.ts","../../projects/aril/keycloak/src/auth.guard.ts","../../projects/aril/keycloak/aril-keycloak.ts"],"sourcesContent":["import { HttpHeaders } from '@angular/common/http';\r\nimport { Injectable, inject } from '@angular/core';\r\nimport { NavigationStart, Router } from '@angular/router';\r\n\r\nimport { KeycloakEventType, KeycloakOptions, KeycloakService } from 'keycloak-angular';\r\nimport { KeycloakLoginOptions } from 'keycloak-js';\r\nimport { Observable, filter } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class KeycloakManager {\r\n\tconstructor(public router: Router) {\r\n\t\tthis.keycloak.keycloakEvents$.subscribe((event) => {\r\n\t\t\tswitch (event.type) {\r\n\t\t\t\tcase KeycloakEventType.OnReady:\r\n\t\t\t\t\t(<any>globalThis).keycloakService = this.keycloak;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase KeycloakEventType.OnAuthError:\r\n\t\t\t\tcase KeycloakEventType.OnAuthLogout:\r\n\t\t\t\tcase KeycloakEventType.OnAuthRefreshError:\r\n\t\t\t\t\t(<any>globalThis).keycloakService = null;\r\n\t\t\t\t\t// this.keycloak.clearToken();\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationStart)).subscribe(() => {\r\n\t\t\t(<any>globalThis).keycloakService?.updateToken();\r\n\t\t});\r\n\t}\r\n\r\n\tpublic readonly keycloak = inject(KeycloakService);\r\n\r\n\tprivate defaultOptions: KeycloakOptions = {\r\n\t\tloadUserProfileAtStartUp: true,\r\n\t\tinitOptions: { onLoad: 'login-required' },\r\n\t\tbearerExcludedUrls: ['/assets']\r\n\t};\r\n\r\n\tinit(configs: any): Promise<boolean> {\r\n\t\treturn this.keycloak.init({ ...this.defaultOptions, config: configs });\r\n\t}\r\n\r\n\tlogin(options?: KeycloakLoginOptions): Promise<void> {\r\n\t\treturn this.keycloak.login(options);\r\n\t}\r\n\r\n\tlogout(redirectUri?: string): Promise<void> {\r\n\t\treturn this.keycloak.logout(redirectUri); // window.location.origin\r\n\t}\r\n\r\n\tisUserInRole(role: string, resource?: string): boolean {\r\n\t\treturn this.keycloak.isUserInRole(role, resource);\r\n\t}\r\n\r\n\tgetUserRoles(realmRoles?: boolean, resource?: string): string[] {\r\n\t\treturn this.keycloak.getUserRoles(realmRoles, resource);\r\n\t}\r\n\r\n\tisLoggedIn(): boolean {\r\n\t\treturn this.keycloak.isLoggedIn();\r\n\t}\r\n\r\n\tisTokenExpired(minValidity?: number): boolean {\r\n\t\treturn this.keycloak.isTokenExpired(minValidity);\r\n\t}\r\n\r\n\tupdateToken(minValidity?: number): Promise<boolean> {\r\n\t\treturn this.keycloak.updateToken(minValidity);\r\n\t}\r\n\r\n\tloadUserProfile(forceReload?: boolean): Promise<any> {\r\n\t\treturn this.keycloak.loadUserProfile(forceReload);\r\n\t}\r\n\r\n\tgetToken(): Promise<string> {\r\n\t\treturn this.keycloak.getToken();\r\n\t}\r\n\r\n\tgetUsername(): string {\r\n\t\treturn this.keycloak.getUsername();\r\n\t}\r\n\r\n\tclearToken(): void {\r\n\t\tthis.keycloak.clearToken();\r\n\t}\r\n\r\n\taddTokenToHeader(headers?: HttpHeaders): Observable<HttpHeaders> {\r\n\t\treturn this.keycloak.addTokenToHeader(headers);\r\n\t}\r\n\r\n\t\r\n}\r\n","import { HttpHandlerFn, HttpInterceptorFn, HttpRequest } from '@angular/common/http';\r\n\r\nexport const authInterceptor: HttpInterceptorFn = (req: HttpRequest<unknown>, next: HttpHandlerFn) => {\r\n\tconst token = (<any>globalThis).keycloakService?._instance?.token;\r\n\r\n\tconst authReq = req.clone({\r\n\t\tsetHeaders: {\r\n\t\t\tAuthorization: `Bearer ${token}`\r\n\t\t}\r\n\t});\r\n\r\n\treturn next(authReq);\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport { KeycloakAuthGuard, KeycloakService } from 'keycloak-angular';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class AuthGuard extends KeycloakAuthGuard {\r\n\tconstructor(\r\n\t\tprotected override readonly router: Router,\r\n\t\tprotected readonly keycloak: KeycloakService\r\n\t) {\r\n\t\tsuper(router, keycloak);\r\n\t}\r\n\r\n\tpublic async isAccessAllowed(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n\t\ttry {\r\n\t\t\tif(this.keycloak.isTokenExpired()){\r\n\t\t\t\tawait this.keycloak.updateToken(); \r\n\t\t\t}\r\n\t\t } catch (error) {\r\n\t\t\tawait this.keycloak.login({\r\n\t\t\t redirectUri: window.location.origin + state.url\r\n\t\t\t});\r\n\t\t\treturn false; \r\n\t\t }\r\n\t\t \r\n\t\tif (!this.authenticated) {\r\n\t\t\tawait this.keycloak.login({\r\n\t\t\t\tredirectUri: window.location.origin + state.url\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tconst requiredRoles = route.data['roles'];\r\n\r\n\t\tif (!Array.isArray(requiredRoles) || requiredRoles.length === 0) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\tconst authorized = requiredRoles.every((role) => this.roles.includes(role));\r\n\r\n\t\tif (!authorized) {\r\n\t\t\tconsole.error('User not authorized to access this route');\r\n\t\t\treturn false;\r\n\t\t} else return true;\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aril-keycloak.mjs","sources":["../../projects/aril/keycloak/src/keycloak.manager.ts","../../projects/aril/keycloak/src/auth.interceptor.ts","../../projects/aril/keycloak/src/auth.guard.ts","../../projects/aril/keycloak/aril-keycloak.ts"],"sourcesContent":["import { HttpHeaders } from '@angular/common/http';\r\nimport { Injectable, inject } from '@angular/core';\r\nimport { NavigationStart, Router } from '@angular/router';\r\n\r\nimport { KeycloakEventType, KeycloakOptions, KeycloakService } from 'keycloak-angular';\r\nimport { KeycloakLoginOptions } from 'keycloak-js';\r\nimport { Observable, filter } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class KeycloakManager {\r\n\tconstructor(public router: Router) {\r\n\t\tthis.keycloak.keycloakEvents$.subscribe((event) => {\r\n\t\t\tswitch (event.type) {\r\n\t\t\t\tcase KeycloakEventType.OnReady:\r\n\t\t\t\t\t(<any>globalThis).keycloakService = this.keycloak;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase KeycloakEventType.OnAuthError:\r\n\t\t\t\tcase KeycloakEventType.OnAuthLogout:\r\n\t\t\t\tcase KeycloakEventType.OnAuthRefreshError:\r\n\t\t\t\t\t(<any>globalThis).keycloakService = null;\r\n\t\t\t\t\t// this.keycloak.clearToken();\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationStart)).subscribe(() => {\r\n\t\t\t(<any>globalThis).keycloakService?.updateToken();\r\n\t\t});\r\n\t}\r\n\r\n\tpublic readonly keycloak = inject(KeycloakService);\r\n\r\n\tprivate defaultOptions: KeycloakOptions = {\r\n\t\tloadUserProfileAtStartUp: true,\r\n\t\tinitOptions: { onLoad: 'login-required' },\r\n\t\tbearerExcludedUrls: ['/assets']\r\n\t};\r\n\r\n\tinit(configs: any): Promise<boolean> {\r\n\t\treturn this.keycloak.init({ ...this.defaultOptions, config: configs });\r\n\t}\r\n\r\n\tlogin(options?: KeycloakLoginOptions): Promise<void> {\r\n\t\treturn this.keycloak.login(options);\r\n\t}\r\n\r\n\tlogout(redirectUri?: string): Promise<void> {\r\n\t\treturn this.keycloak.logout(redirectUri); // window.location.origin\r\n\t}\r\n\r\n\tisUserInRole(role: string, resource?: string): boolean {\r\n\t\treturn this.keycloak.isUserInRole(role, resource);\r\n\t}\r\n\r\n\tgetUserRoles(realmRoles?: boolean, resource?: string): string[] {\r\n\t\treturn this.keycloak.getUserRoles(realmRoles, resource);\r\n\t}\r\n\r\n\tisLoggedIn(): boolean {\r\n\t\treturn this.keycloak.isLoggedIn();\r\n\t}\r\n\r\n\tisTokenExpired(minValidity?: number): boolean {\r\n\t\treturn this.keycloak.isTokenExpired(minValidity);\r\n\t}\r\n\r\n\tupdateToken(minValidity?: number): Promise<boolean> {\r\n\t\treturn this.keycloak.updateToken(minValidity);\r\n\t}\r\n\r\n\tloadUserProfile(forceReload?: boolean): Promise<any> {\r\n\t\treturn this.keycloak.loadUserProfile(forceReload);\r\n\t}\r\n\r\n\tgetToken(): Promise<string> {\r\n\t\treturn this.keycloak.getToken();\r\n\t}\r\n\r\n\tgetUsername(): string {\r\n\t\treturn this.keycloak.getUsername();\r\n\t}\r\n\r\n\tclearToken(): void {\r\n\t\tthis.keycloak.clearToken();\r\n\t}\r\n\r\n\taddTokenToHeader(headers?: HttpHeaders): Observable<HttpHeaders> {\r\n\t\treturn this.keycloak.addTokenToHeader(headers);\r\n\t}\r\n\r\n\t\r\n}\r\n","import { HttpHandlerFn, HttpInterceptorFn, HttpRequest } from '@angular/common/http';\r\n\r\nimport { Apps } from 'aril/boot/config/apps';\r\n\r\nconst getCurrentAppName = (host: string, mf: string) => {\r\n\tlet appName = '';\r\n\tif (host) {\r\n\t\tswitch (host) {\r\n\t\t\tcase Apps.YEAP:\r\n\t\t\t\tappName = Apps.YEAP;\r\n\t\t\t\tbreak;\r\n\t\t\tcase Apps.LENA:\r\n\t\t\t\tappName = Apps.LENA;\r\n\t\t\t\tbreak;\r\n\t\t\tcase Apps.THOR:\r\n\t\t\t\tappName = Apps.THOR;\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t} else {\r\n\t\tswitch (mf) {\r\n\t\t\tcase Apps.HES:\r\n\t\t\tcase Apps.CTS:\r\n\t\t\tcase Apps.SIS:\r\n\t\t\t\tappName = Apps.LENA;\r\n\t\t\t\tbreak;\r\n\t\t\tcase Apps.CRM:\r\n\t\t\tcase Apps.BILLING:\r\n\t\t\tcase Apps.PAYMENT:\r\n\t\t\tcase Apps.WDM:\r\n\t\t\tcase Apps.MNG:\r\n\t\t\t\tappName = Apps.THOR;\r\n\t\t\t\tbreak;\r\n\t\t\tcase Apps.MW:\r\n\t\t\t\tappName = Apps.YEAP;\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tappName = Apps.YEAP;\r\n\t\t}\r\n\t}\r\n\treturn appName;\r\n};\r\n\r\nconst getAppHeader = (appName: string) => {\r\n\tlet appHeader = {};\r\n\tswitch (appName) {\r\n\t\tcase Apps.YEAP:\r\n\t\t\tappHeader = {\r\n\t\t\t\t\"x-application\": \"yeap\",\r\n\t\t\t\t\"x-module\": \"yeap-fe\"\r\n\t\t\t};\r\n\t\t\tbreak;\r\n\t\tcase Apps.LENA:\r\n\t\t\tappHeader = {\r\n\t\t\t\t\"x-application\": \"lena\",\r\n\t\t\t\t\"x-module\": \"lena-fe\"\r\n\t\t\t};\r\n\t\t\tbreak;\r\n\t\tcase Apps.THOR:\r\n\t\t\tappHeader = {\r\n\t\t\t\t\"x-application\": \"thor\",\r\n\t\t\t\t\"x-module\": \"thor-fe\"\r\n\t\t\t};\r\n\t\t\tbreak;\r\n\t}\r\n\treturn appHeader;\r\n};\r\n\r\nexport const authInterceptor: HttpInterceptorFn = (req: HttpRequest<unknown>, next: HttpHandlerFn) => {\r\n\tconst token = (<any>globalThis).keycloakService?._instance?.token;\r\n\tconst currentApp = getCurrentAppName((<any>globalThis).activeHost, (<any>globalThis).activeMF);\r\n\tconst appNameHeader = getAppHeader(currentApp);\r\n\tconst authReq = req.clone({\r\n\t\tsetHeaders: {\r\n\t\t\tAuthorization: `Bearer ${token}`,\r\n\t\t\t...appNameHeader\r\n\t\t}\r\n\t});\r\n\r\n\treturn next(authReq);\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport { KeycloakAuthGuard, KeycloakService } from 'keycloak-angular';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class AuthGuard extends KeycloakAuthGuard {\r\n\tconstructor(\r\n\t\tprotected override readonly router: Router,\r\n\t\tprotected readonly keycloak: KeycloakService\r\n\t) {\r\n\t\tsuper(router, keycloak);\r\n\t}\r\n\r\n\tpublic async isAccessAllowed(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n\t\ttry {\r\n\t\t\tif(this.keycloak.isTokenExpired()){\r\n\t\t\t\tawait this.keycloak.updateToken(); \r\n\t\t\t}\r\n\t\t } catch (error) {\r\n\t\t\tawait this.keycloak.login({\r\n\t\t\t redirectUri: window.location.origin + state.url\r\n\t\t\t});\r\n\t\t\treturn false; \r\n\t\t }\r\n\t\t \r\n\t\tif (!this.authenticated) {\r\n\t\t\tawait this.keycloak.login({\r\n\t\t\t\tredirectUri: window.location.origin + state.url\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tconst requiredRoles = route.data['roles'];\r\n\r\n\t\tif (!Array.isArray(requiredRoles) || requiredRoles.length === 0) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\tconst authorized = requiredRoles.every((role) => this.roles.includes(role));\r\n\r\n\t\tif (!authorized) {\r\n\t\t\tconsole.error('User not authorized to access this route');\r\n\t\t\treturn false;\r\n\t\t} else return true;\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, Component } from '@angular/core';
|
|
2
|
+
import { input, Component, ViewChild } from '@angular/core';
|
|
3
3
|
import * as i3 from '@angular/forms';
|
|
4
4
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
5
5
|
import * as i4 from 'primeng/autocomplete';
|
|
6
|
-
import { AutoCompleteModule } from 'primeng/autocomplete';
|
|
6
|
+
import { AutoComplete, AutoCompleteModule } from 'primeng/autocomplete';
|
|
7
|
+
import { ObjectUtils } from 'primeng/utils';
|
|
7
8
|
import { firstValueFrom } from 'rxjs';
|
|
8
9
|
import { API_CONFIGS } from 'aril/boot/config/api';
|
|
9
10
|
import * as i2 from 'aril/ui/lib';
|
|
@@ -19,12 +20,23 @@ class AssetPickerComponent extends BaseInputComponent {
|
|
|
19
20
|
this.placeholder = input('Arama...');
|
|
20
21
|
this.forceSelection = input(false);
|
|
21
22
|
this.multiple = input(false);
|
|
23
|
+
this.optionValue = input(null);
|
|
24
|
+
}
|
|
25
|
+
ngAfterViewInit() {
|
|
26
|
+
this.autoCompleteRef.getOptionValue = this.getOptionValue.bind(this);
|
|
27
|
+
}
|
|
28
|
+
getOptionValue(option) {
|
|
29
|
+
return (this.optionValue() ?
|
|
30
|
+
typeof option === 'object' ?
|
|
31
|
+
ObjectUtils.resolveFieldData(option, this.optionValue())
|
|
32
|
+
: option
|
|
33
|
+
: option);
|
|
22
34
|
}
|
|
23
35
|
async search(event) {
|
|
24
36
|
const query = event.query;
|
|
25
37
|
const payload = {
|
|
26
38
|
searchText: query,
|
|
27
|
-
assetDefinitionCodes: Array.isArray(
|
|
39
|
+
assetDefinitionCodes: Array.isArray(this.assetCode()) ? this.assetCode() : [this.assetCode()],
|
|
28
40
|
pageSize: 5,
|
|
29
41
|
pageNumber: 1
|
|
30
42
|
};
|
|
@@ -60,12 +72,15 @@ class AssetPickerComponent extends BaseInputComponent {
|
|
|
60
72
|
return attributes.map((attr) => (attr.valueDesc ? attr.valueDesc : attr.value)).join(' - ');
|
|
61
73
|
}
|
|
62
74
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AssetPickerComponent, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
63
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: AssetPickerComponent, isStandalone: true, selector: "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", inputs: { assetCode: { classPropertyName: "assetCode", publicName: "assetCode", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete
|
|
75
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: AssetPickerComponent, isStandalone: true, selector: "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", inputs: { assetCode: { classPropertyName: "assetCode", publicName: "assetCode", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: AutoComplete, descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete>\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: AutoCompleteModule }, { kind: "component", type: i4.AutoComplete, selector: "p-autoComplete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "variant"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
|
|
64
76
|
}
|
|
65
77
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AssetPickerComponent, decorators: [{
|
|
66
78
|
type: Component,
|
|
67
|
-
args: [{ standalone: true, selector: 'aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]', imports: [ReactiveFormsModule, InputErrorMessagePipe, AutoCompleteModule], hostDirectives: [ValueAccessorDirective], template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete
|
|
68
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }]
|
|
79
|
+
args: [{ standalone: true, selector: 'aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]', imports: [ReactiveFormsModule, InputErrorMessagePipe, AutoCompleteModule], hostDirectives: [ValueAccessorDirective], template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete>\r\n" }]
|
|
80
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }], propDecorators: { autoCompleteRef: [{
|
|
81
|
+
type: ViewChild,
|
|
82
|
+
args: [AutoComplete]
|
|
83
|
+
}] } });
|
|
69
84
|
|
|
70
85
|
/**
|
|
71
86
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-ui-business-components-assetPicker.mjs","sources":["../../projects/aril/ui/business-components/assetPicker/src/asset-picker.component.ts","../../projects/aril/ui/business-components/assetPicker/src/asset-picker.component.html","../../projects/aril/ui/business-components/assetPicker/aril-ui-business-components-assetPicker.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Component, input } from '@angular/core';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\n\r\nimport { firstValueFrom } from 'rxjs';\r\n\r\nimport { API_CONFIGS } from 'aril/boot/config/api';\r\nimport { BaseInputComponent, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';\r\n\r\nimport { AssetPickerResponseDTO, AttributeElement, Result, SuggestionsGroupDTO } from './interface';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]',\r\n\ttemplateUrl: './asset-picker.component.html',\r\n\timports: [ReactiveFormsModule, InputErrorMessagePipe, AutoCompleteModule],\r\n\thostDirectives: [ValueAccessorDirective]\r\n})\r\nexport class AssetPickerComponent extends BaseInputComponent {\r\n\tassetCode = input<string | string[] | null>(null);\r\n\r\n\tplaceholder = input<string>('Arama...');\r\n\tforceSelection = input<boolean>(false);\r\n\tmultiple = input<boolean>(false);\r\n\r\n\tfilteredSelectionItems!: SuggestionsGroupDTO[];\r\n\r\n\tconstructor(private http: HttpClient) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\
|
|
1
|
+
{"version":3,"file":"aril-ui-business-components-assetPicker.mjs","sources":["../../projects/aril/ui/business-components/assetPicker/src/asset-picker.component.ts","../../projects/aril/ui/business-components/assetPicker/src/asset-picker.component.html","../../projects/aril/ui/business-components/assetPicker/aril-ui-business-components-assetPicker.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { AfterViewInit, Component, ViewChild, input } from '@angular/core';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AutoComplete, AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { ObjectUtils } from 'primeng/utils';\r\n\r\nimport { firstValueFrom } from 'rxjs';\r\n\r\nimport { API_CONFIGS } from 'aril/boot/config/api';\r\nimport { BaseInputComponent, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';\r\n\r\nimport { AssetPickerResponseDTO, AttributeElement, Result, SuggestionsDTO, SuggestionsGroupDTO } from './interface';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]',\r\n\ttemplateUrl: './asset-picker.component.html',\r\n\timports: [ReactiveFormsModule, InputErrorMessagePipe, AutoCompleteModule],\r\n\thostDirectives: [ValueAccessorDirective]\r\n})\r\nexport class AssetPickerComponent extends BaseInputComponent implements AfterViewInit {\r\n\t@ViewChild(AutoComplete) autoCompleteRef!: AutoComplete;\r\n\tassetCode = input<string | string[] | null>(null);\r\n\r\n\tplaceholder = input<string>('Arama...');\r\n\tforceSelection = input<boolean>(false);\r\n\tmultiple = input<boolean>(false);\r\n\toptionValue = input<keyof SuggestionsDTO | null>(null);\r\n\r\n\tfilteredSelectionItems!: SuggestionsGroupDTO[];\r\n\r\n\tconstructor(private http: HttpClient) {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tthis.autoCompleteRef.getOptionValue = this.getOptionValue.bind(this);\r\n\t}\r\n\r\n\tgetOptionValue(option: any) {\r\n\t\treturn (\r\n\t\t\tthis.optionValue() ?\r\n\t\t\t\ttypeof option === 'object' ?\r\n\t\t\t\t\tObjectUtils.resolveFieldData(option, this.optionValue())\r\n\t\t\t\t:\toption\r\n\t\t\t:\toption\r\n\t\t);\r\n\t}\r\n\r\n\tasync search(event: any) {\r\n\t\tconst query = event.query;\r\n\t\tconst payload = {\r\n\t\t\tsearchText: query,\r\n\t\t\tassetDefinitionCodes: Array.isArray(this.assetCode()) ? this.assetCode() : [this.assetCode()],\r\n\t\t\tpageSize: 5,\r\n\t\t\tpageNumber: 1\r\n\t\t};\r\n\t\t// eslint-disable-next-line no-useless-escape\r\n\t\tconst remoteUrl = API_CONFIGS.api.replace(/\\/[^\\/]+\\/v1$/, `/host/v1`);\r\n\t\tconst selectionGroup: AssetPickerResponseDTO = await firstValueFrom(\r\n\t\t\tthis.http.post<any>(remoteUrl + '/md/elastic-search', payload)\r\n\t\t);\r\n\t\tconst groupedSelectionItems: { [key: string]: Result[] } = this.groupByAssetDefinitionCode(selectionGroup?.result);\r\n\r\n\t\tconst newFilteredGroupSuggestions: SuggestionsGroupDTO[] = [];\r\n\t\tObject.keys(groupedSelectionItems).map((key: string) => {\r\n\t\t\tconst groupData: SuggestionsGroupDTO = { text: key, key: key, items: [] };\r\n\t\t\tgroupedSelectionItems[key].map((item: Result) => {\r\n\t\t\t\tgroupData.items.push({\r\n\t\t\t\t\tkey: item.id,\r\n\t\t\t\t\ttext: this.getAttiributesValueDescr(item.attributes)\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\tnewFilteredGroupSuggestions.push(groupData);\r\n\t\t});\r\n\t\tconsole.log(newFilteredGroupSuggestions);\r\n\t\tthis.filteredSelectionItems = newFilteredGroupSuggestions;\r\n\t}\r\n\r\n\tgroupByAssetDefinitionCode(array: Result[]): { [key: string]: Result[] } {\r\n\t\treturn array.reduce((result: { [key: string]: Result[] }, currentValue: Result) => {\r\n\t\t\tconst assetName = currentValue.assets[0]?.assetName || 'Unknown';\r\n\t\t\tif (!result[assetName]) {\r\n\t\t\t\tresult[assetName] = [];\r\n\t\t\t}\r\n\t\t\tresult[assetName].push(currentValue);\r\n\t\t\treturn result;\r\n\t\t}, {});\r\n\t}\r\n\r\n\tgetAttiributesValueDescr(attributes: AttributeElement[]): string {\r\n\t\treturn attributes.map((attr) => (attr.valueDesc ? attr.valueDesc : attr.value)).join(' - ');\r\n\t}\r\n}\r\n","<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"400\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<div class=\"flex align-items-center\">\r\n\t\t\t<span style=\"font-weight: 800\">{{ group.text }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n</p-autoComplete>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -18,11 +18,11 @@ class PanelComponent {
|
|
|
18
18
|
this.isFullScreen = !this.isFullScreen;
|
|
19
19
|
}
|
|
20
20
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: PanelComponent, isStandalone: true, selector: "aril-panel", inputs: { toggleable: { classPropertyName: "toggleable", publicName: "toggleable", isSignal: true, isRequired: false, transformFunction: null }, canFullScreen: { classPropertyName: "canFullScreen", publicName: "canFullScreen", isSignal: true, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, showFooter: { classPropertyName: "showFooter", publicName: "showFooter", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: PanelComponent, isStandalone: true, selector: "aril-panel", inputs: { toggleable: { classPropertyName: "toggleable", publicName: "toggleable", isSignal: true, isRequired: false, transformFunction: null }, canFullScreen: { classPropertyName: "canFullScreen", publicName: "canFullScreen", isSignal: true, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, showFooter: { classPropertyName: "showFooter", publicName: "showFooter", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:12px;font-style:normal;font-weight:400;line-height:normal}::ng-deep .panel-icons i{cursor:pointer;width:2rem}.panel-ng-content{padding:0!important}\n"], dependencies: [{ kind: "ngmodule", type: PanelModule }, { kind: "component", type: i1.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
22
22
|
}
|
|
23
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: PanelComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
|
-
args: [{ standalone: true, selector: 'aril-panel', imports: [PanelModule, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:
|
|
25
|
+
args: [{ standalone: true, selector: 'aril-panel', imports: [PanelModule, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"{ 'full-screen': isFullScreen && canFullScreen }\">\r\n\t<p-panel\r\n\t\t[toggleable]=\"toggleable()\"\r\n\t\t[collapsed]=\"collapsed()\"\r\n\t\t[collapseIcon]=\"'pi pi-chevron-down'\"\r\n\t\t[expandIcon]=\"'pi pi-chevron-up'\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t>\r\n\t\t<!-- header -->\r\n\t\t<ng-template pTemplate=\"header\">\r\n\t\t\t<div class=\"panel-header\">\r\n\t\t\t\t<ng-content select=\"[header]\"></ng-content>\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- header-tools -->\r\n\t\t<ng-template class=\"flex\" pTemplate=\"icons\">\r\n\t\t\t<div class=\"panel-icons flex\">\r\n\t\t\t\t<ng-content select=\"[tools]\"></ng-content>\r\n\r\n\t\t\t\t@if (canFullScreen()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\tclass=\"pi\"\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'pi-window-maximize': !isFullScreen,\r\n\t\t\t\t\t\t\t'pi-window-minimize': isFullScreen\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t(click)=\"toggleFullScreen()\"></i>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\r\n\t\t<!-- body -->\r\n\t\t<ng-content select=\"[body]\" class=\"panel-ng-content\"></ng-content>\r\n\r\n\t\t<!-- footer -->\r\n\t\t@if (showFooter()) {\r\n\t\t\t<ng-template pTemplate=\"footer\">\r\n\t\t\t\t<ng-content select=\"[footer]\"></ng-content>\r\n\t\t\t</ng-template>\r\n\t\t}\r\n\t</p-panel>\r\n</div>\r\n", styles: [".full-screen{position:fixed;inset:0;z-index:99999999;overflow-y:auto;box-sizing:border-box;width:100%;height:100vh;background:#fff}.panel-header{width:100%;display:flex;justify-content:space-between;align-items:center;color:var(--muted-foreground);font-size:12px;font-style:normal;font-weight:400;line-height:normal}::ng-deep .panel-icons i{cursor:pointer;width:2rem}.panel-ng-content{padding:0!important}\n"] }]
|
|
26
26
|
}] });
|
|
27
27
|
|
|
28
28
|
/**
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, Component } from '@angular/core';
|
|
3
|
+
import * as i1 from 'primeng/tooltip';
|
|
4
|
+
import { TooltipModule } from 'primeng/tooltip';
|
|
5
|
+
|
|
6
|
+
class TooltipComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.text = input('');
|
|
9
|
+
this.template = input();
|
|
10
|
+
this.position = input('right'); // (right, top, bottom, left)
|
|
11
|
+
this.showDelay = input(0); // (ms)
|
|
12
|
+
this.hideDelay = input(0); // (ms)
|
|
13
|
+
this.tooltipStyle = input({});
|
|
14
|
+
this.tooltipStyleClass = input('');
|
|
15
|
+
this.appendTo = input('body');
|
|
16
|
+
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: TooltipComponent, isStandalone: true, selector: "aril-tooltip", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, showDelay: { classPropertyName: "showDelay", publicName: "showDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "hideDelay", isSignal: true, isRequired: false, transformFunction: null }, tooltipStyle: { classPropertyName: "tooltipStyle", publicName: "tooltipStyle", isSignal: true, isRequired: false, transformFunction: null }, tooltipStyleClass: { classPropertyName: "tooltipStyleClass", publicName: "tooltipStyleClass", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n", dependencies: [{ kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
21
|
+
type: Component,
|
|
22
|
+
args: [{ standalone: true, selector: 'aril-tooltip', imports: [TooltipModule], template: "<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n" }]
|
|
23
|
+
}] });
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Generated bundle index. Do not edit.
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
export { TooltipComponent };
|
|
30
|
+
//# sourceMappingURL=aril-ui-tooltip.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aril-ui-tooltip.mjs","sources":["../../projects/aril/ui/tooltip/src/tooltip-component.ts","../../projects/aril/ui/tooltip/src/tooltip-component.html","../../projects/aril/ui/tooltip/aril-ui-tooltip.ts"],"sourcesContent":["import { Component, TemplateRef, input } from '@angular/core';\r\n\r\nimport { TooltipModule } from 'primeng/tooltip';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'aril-tooltip',\r\n\ttemplateUrl: './tooltip-component.html',\r\n\timports: [TooltipModule]\r\n})\r\nexport class TooltipComponent {\r\n\ttext = input<string>('');\r\n\ttemplate = input<TemplateRef<any> | null>();\r\n\tposition = input<string>('right'); // (right, top, bottom, left)\r\n\tshowDelay = input<number>(0); // (ms)\r\n\thideDelay = input<number>(0); // (ms)\r\n\ttooltipStyle = input<any>({});\r\n\ttooltipStyleClass = input<string>('');\r\n\tappendTo = input<any>('body');\r\n}\r\n","<span\r\n\t[pTooltip]=\"template() ?? text()\"\r\n\t[tooltipPosition]=\"position()\"\r\n\t[showDelay]=\"showDelay()\"\r\n\t[hideDelay]=\"hideDelay()\"\r\n\t[style]=\"tooltipStyle()\"\r\n\t[tooltipStyleClass]=\"tooltipStyleClass()\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-content></ng-content>\r\n</span>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAUa,gBAAgB,CAAA;AAN7B,IAAA,WAAA,GAAA;AAOC,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;QACzB,IAAQ,CAAA,QAAA,GAAG,KAAK,EAA2B,CAAC;AAC5C,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAS,OAAO,CAAC,CAAC;AAClC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAS,CAAC,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAS,CAAC,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAM,EAAE,CAAC,CAAC;AAC9B,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;AACtC,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAM,MAAM,CAAC,CAAC;AAC9B,KAAA;8GATY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECV7B,uTAUA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDFW,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,QAAA,EAAA,WAAA,EAAA,WAAA,EAAA,MAAA,EAAA,aAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAEX,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAN5B,SAAS;AACG,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACN,QAAA,EAAA,cAAc,EAEf,OAAA,EAAA,CAAC,aAAa,CAAC,EAAA,QAAA,EAAA,uTAAA,EAAA,CAAA;;;AERzB;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aril",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^17.1.0",
|
|
6
6
|
"@angular/core": "^17.1.0",
|
|
@@ -122,11 +122,11 @@
|
|
|
122
122
|
"esm": "./esm2022/ui/checkbox/aril-ui-checkbox.mjs",
|
|
123
123
|
"default": "./fesm2022/aril-ui-checkbox.mjs"
|
|
124
124
|
},
|
|
125
|
-
"./ui/
|
|
126
|
-
"types": "./ui/
|
|
127
|
-
"esm2022": "./esm2022/ui/
|
|
128
|
-
"esm": "./esm2022/ui/
|
|
129
|
-
"default": "./fesm2022/aril-ui-
|
|
125
|
+
"./ui/chip": {
|
|
126
|
+
"types": "./ui/chip/index.d.ts",
|
|
127
|
+
"esm2022": "./esm2022/ui/chip/aril-ui-chip.mjs",
|
|
128
|
+
"esm": "./esm2022/ui/chip/aril-ui-chip.mjs",
|
|
129
|
+
"default": "./fesm2022/aril-ui-chip.mjs"
|
|
130
130
|
},
|
|
131
131
|
"./ui/field": {
|
|
132
132
|
"types": "./ui/field/index.d.ts",
|
|
@@ -134,11 +134,11 @@
|
|
|
134
134
|
"esm": "./esm2022/ui/field/aril-ui-field.mjs",
|
|
135
135
|
"default": "./fesm2022/aril-ui-field.mjs"
|
|
136
136
|
},
|
|
137
|
-
"./ui/
|
|
138
|
-
"types": "./ui/
|
|
139
|
-
"esm2022": "./esm2022/ui/
|
|
140
|
-
"esm": "./esm2022/ui/
|
|
141
|
-
"default": "./fesm2022/aril-ui-
|
|
137
|
+
"./ui/dxField": {
|
|
138
|
+
"types": "./ui/dxField/index.d.ts",
|
|
139
|
+
"esm2022": "./esm2022/ui/dxField/aril-ui-dxField.mjs",
|
|
140
|
+
"esm": "./esm2022/ui/dxField/aril-ui-dxField.mjs",
|
|
141
|
+
"default": "./fesm2022/aril-ui-dxField.mjs"
|
|
142
142
|
},
|
|
143
143
|
"./ui/fileUpload": {
|
|
144
144
|
"types": "./ui/fileUpload/index.d.ts",
|
|
@@ -158,18 +158,18 @@
|
|
|
158
158
|
"esm": "./esm2022/ui/loader/aril-ui-loader.mjs",
|
|
159
159
|
"default": "./fesm2022/aril-ui-loader.mjs"
|
|
160
160
|
},
|
|
161
|
-
"./ui/lib": {
|
|
162
|
-
"types": "./ui/lib/index.d.ts",
|
|
163
|
-
"esm2022": "./esm2022/ui/lib/aril-ui-lib.mjs",
|
|
164
|
-
"esm": "./esm2022/ui/lib/aril-ui-lib.mjs",
|
|
165
|
-
"default": "./fesm2022/aril-ui-lib.mjs"
|
|
166
|
-
},
|
|
167
161
|
"./ui/mask": {
|
|
168
162
|
"types": "./ui/mask/index.d.ts",
|
|
169
163
|
"esm2022": "./esm2022/ui/mask/aril-ui-mask.mjs",
|
|
170
164
|
"esm": "./esm2022/ui/mask/aril-ui-mask.mjs",
|
|
171
165
|
"default": "./fesm2022/aril-ui-mask.mjs"
|
|
172
166
|
},
|
|
167
|
+
"./ui/lib": {
|
|
168
|
+
"types": "./ui/lib/index.d.ts",
|
|
169
|
+
"esm2022": "./esm2022/ui/lib/aril-ui-lib.mjs",
|
|
170
|
+
"esm": "./esm2022/ui/lib/aril-ui-lib.mjs",
|
|
171
|
+
"default": "./fesm2022/aril-ui-lib.mjs"
|
|
172
|
+
},
|
|
173
173
|
"./ui/number": {
|
|
174
174
|
"types": "./ui/number/index.d.ts",
|
|
175
175
|
"esm2022": "./esm2022/ui/number/aril-ui-number.mjs",
|
|
@@ -182,35 +182,29 @@
|
|
|
182
182
|
"esm": "./esm2022/ui/operation-types-dialog/aril-ui-operation-types-dialog.mjs",
|
|
183
183
|
"default": "./fesm2022/aril-ui-operation-types-dialog.mjs"
|
|
184
184
|
},
|
|
185
|
-
"./ui/overlayPanel": {
|
|
186
|
-
"types": "./ui/overlayPanel/index.d.ts",
|
|
187
|
-
"esm2022": "./esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs",
|
|
188
|
-
"esm": "./esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs",
|
|
189
|
-
"default": "./fesm2022/aril-ui-overlayPanel.mjs"
|
|
190
|
-
},
|
|
191
185
|
"./ui/panel": {
|
|
192
186
|
"types": "./ui/panel/index.d.ts",
|
|
193
187
|
"esm2022": "./esm2022/ui/panel/aril-ui-panel.mjs",
|
|
194
188
|
"esm": "./esm2022/ui/panel/aril-ui-panel.mjs",
|
|
195
189
|
"default": "./fesm2022/aril-ui-panel.mjs"
|
|
196
190
|
},
|
|
197
|
-
"./ui/password": {
|
|
198
|
-
"types": "./ui/password/index.d.ts",
|
|
199
|
-
"esm2022": "./esm2022/ui/password/aril-ui-password.mjs",
|
|
200
|
-
"esm": "./esm2022/ui/password/aril-ui-password.mjs",
|
|
201
|
-
"default": "./fesm2022/aril-ui-password.mjs"
|
|
202
|
-
},
|
|
203
191
|
"./ui/progressbar": {
|
|
204
192
|
"types": "./ui/progressbar/index.d.ts",
|
|
205
193
|
"esm2022": "./esm2022/ui/progressbar/aril-ui-progressbar.mjs",
|
|
206
194
|
"esm": "./esm2022/ui/progressbar/aril-ui-progressbar.mjs",
|
|
207
195
|
"default": "./fesm2022/aril-ui-progressbar.mjs"
|
|
208
196
|
},
|
|
209
|
-
"./ui/
|
|
210
|
-
"types": "./ui/
|
|
211
|
-
"esm2022": "./esm2022/ui/
|
|
212
|
-
"esm": "./esm2022/ui/
|
|
213
|
-
"default": "./fesm2022/aril-ui-
|
|
197
|
+
"./ui/overlayPanel": {
|
|
198
|
+
"types": "./ui/overlayPanel/index.d.ts",
|
|
199
|
+
"esm2022": "./esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs",
|
|
200
|
+
"esm": "./esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs",
|
|
201
|
+
"default": "./fesm2022/aril-ui-overlayPanel.mjs"
|
|
202
|
+
},
|
|
203
|
+
"./ui/password": {
|
|
204
|
+
"types": "./ui/password/index.d.ts",
|
|
205
|
+
"esm2022": "./esm2022/ui/password/aril-ui-password.mjs",
|
|
206
|
+
"esm": "./esm2022/ui/password/aril-ui-password.mjs",
|
|
207
|
+
"default": "./fesm2022/aril-ui-password.mjs"
|
|
214
208
|
},
|
|
215
209
|
"./ui/selectBox": {
|
|
216
210
|
"types": "./ui/selectBox/index.d.ts",
|
|
@@ -218,6 +212,12 @@
|
|
|
218
212
|
"esm": "./esm2022/ui/selectBox/aril-ui-selectBox.mjs",
|
|
219
213
|
"default": "./fesm2022/aril-ui-selectBox.mjs"
|
|
220
214
|
},
|
|
215
|
+
"./ui/radioButton": {
|
|
216
|
+
"types": "./ui/radioButton/index.d.ts",
|
|
217
|
+
"esm2022": "./esm2022/ui/radioButton/aril-ui-radioButton.mjs",
|
|
218
|
+
"esm": "./esm2022/ui/radioButton/aril-ui-radioButton.mjs",
|
|
219
|
+
"default": "./fesm2022/aril-ui-radioButton.mjs"
|
|
220
|
+
},
|
|
221
221
|
"./ui/switch": {
|
|
222
222
|
"types": "./ui/switch/index.d.ts",
|
|
223
223
|
"esm2022": "./esm2022/ui/switch/aril-ui-switch.mjs",
|
|
@@ -230,18 +230,18 @@
|
|
|
230
230
|
"esm": "./esm2022/ui/table/aril-ui-table.mjs",
|
|
231
231
|
"default": "./fesm2022/aril-ui-table.mjs"
|
|
232
232
|
},
|
|
233
|
-
"./ui/table-expand": {
|
|
234
|
-
"types": "./ui/table-expand/index.d.ts",
|
|
235
|
-
"esm2022": "./esm2022/ui/table-expand/aril-ui-table-expand.mjs",
|
|
236
|
-
"esm": "./esm2022/ui/table-expand/aril-ui-table-expand.mjs",
|
|
237
|
-
"default": "./fesm2022/aril-ui-table-expand.mjs"
|
|
238
|
-
},
|
|
239
233
|
"./ui/tagBox": {
|
|
240
234
|
"types": "./ui/tagBox/index.d.ts",
|
|
241
235
|
"esm2022": "./esm2022/ui/tagBox/aril-ui-tagBox.mjs",
|
|
242
236
|
"esm": "./esm2022/ui/tagBox/aril-ui-tagBox.mjs",
|
|
243
237
|
"default": "./fesm2022/aril-ui-tagBox.mjs"
|
|
244
238
|
},
|
|
239
|
+
"./ui/table-expand": {
|
|
240
|
+
"types": "./ui/table-expand/index.d.ts",
|
|
241
|
+
"esm2022": "./esm2022/ui/table-expand/aril-ui-table-expand.mjs",
|
|
242
|
+
"esm": "./esm2022/ui/table-expand/aril-ui-table-expand.mjs",
|
|
243
|
+
"default": "./fesm2022/aril-ui-table-expand.mjs"
|
|
244
|
+
},
|
|
245
245
|
"./ui/text": {
|
|
246
246
|
"types": "./ui/text/index.d.ts",
|
|
247
247
|
"esm2022": "./esm2022/ui/text/aril-ui-text.mjs",
|
|
@@ -260,6 +260,12 @@
|
|
|
260
260
|
"esm": "./esm2022/ui/toggle-button/aril-ui-toggle-button.mjs",
|
|
261
261
|
"default": "./fesm2022/aril-ui-toggle-button.mjs"
|
|
262
262
|
},
|
|
263
|
+
"./ui/tooltip": {
|
|
264
|
+
"types": "./ui/tooltip/index.d.ts",
|
|
265
|
+
"esm2022": "./esm2022/ui/tooltip/aril-ui-tooltip.mjs",
|
|
266
|
+
"esm": "./esm2022/ui/tooltip/aril-ui-tooltip.mjs",
|
|
267
|
+
"default": "./fesm2022/aril-ui-tooltip.mjs"
|
|
268
|
+
},
|
|
263
269
|
"./ui/tree": {
|
|
264
270
|
"types": "./ui/tree/index.d.ts",
|
|
265
271
|
"esm2022": "./esm2022/ui/tree/aril-ui-tree.mjs",
|
|
@@ -290,18 +296,18 @@
|
|
|
290
296
|
"esm": "./esm2022/util/block/aril-util-block.mjs",
|
|
291
297
|
"default": "./fesm2022/aril-util-block.mjs"
|
|
292
298
|
},
|
|
293
|
-
"./util/custom_pages": {
|
|
294
|
-
"types": "./util/custom_pages/index.d.ts",
|
|
295
|
-
"esm2022": "./esm2022/util/custom_pages/aril-util-custom_pages.mjs",
|
|
296
|
-
"esm": "./esm2022/util/custom_pages/aril-util-custom_pages.mjs",
|
|
297
|
-
"default": "./fesm2022/aril-util-custom_pages.mjs"
|
|
298
|
-
},
|
|
299
299
|
"./util/init-event": {
|
|
300
300
|
"types": "./util/init-event/index.d.ts",
|
|
301
301
|
"esm2022": "./esm2022/util/init-event/aril-util-init-event.mjs",
|
|
302
302
|
"esm": "./esm2022/util/init-event/aril-util-init-event.mjs",
|
|
303
303
|
"default": "./fesm2022/aril-util-init-event.mjs"
|
|
304
304
|
},
|
|
305
|
+
"./util/custom_pages": {
|
|
306
|
+
"types": "./util/custom_pages/index.d.ts",
|
|
307
|
+
"esm2022": "./esm2022/util/custom_pages/aril-util-custom_pages.mjs",
|
|
308
|
+
"esm": "./esm2022/util/custom_pages/aril-util-custom_pages.mjs",
|
|
309
|
+
"default": "./fesm2022/aril-util-custom_pages.mjs"
|
|
310
|
+
},
|
|
305
311
|
"./util/lib": {
|
|
306
312
|
"types": "./util/lib/index.d.ts",
|
|
307
313
|
"esm2022": "./esm2022/util/lib/aril-util-lib.mjs",
|
|
@@ -320,6 +326,12 @@
|
|
|
320
326
|
"esm": "./esm2022/util/primitive-extensions/aril-util-primitive-extensions.mjs",
|
|
321
327
|
"default": "./fesm2022/aril-util-primitive-extensions.mjs"
|
|
322
328
|
},
|
|
329
|
+
"./boot/config/api": {
|
|
330
|
+
"types": "./boot/config/api/index.d.ts",
|
|
331
|
+
"esm2022": "./esm2022/boot/config/api/aril-boot-config-api.mjs",
|
|
332
|
+
"esm": "./esm2022/boot/config/api/aril-boot-config-api.mjs",
|
|
333
|
+
"default": "./fesm2022/aril-boot-config-api.mjs"
|
|
334
|
+
},
|
|
323
335
|
"./util/pub-sub": {
|
|
324
336
|
"types": "./util/pub-sub/index.d.ts",
|
|
325
337
|
"esm2022": "./esm2022/util/pub-sub/aril-util-pub-sub.mjs",
|
|
@@ -332,11 +344,11 @@
|
|
|
332
344
|
"esm": "./esm2022/util/unwrap/aril-util-unwrap.mjs",
|
|
333
345
|
"default": "./fesm2022/aril-util-unwrap.mjs"
|
|
334
346
|
},
|
|
335
|
-
"./boot/config/
|
|
336
|
-
"types": "./boot/config/
|
|
337
|
-
"esm2022": "./esm2022/boot/config/
|
|
338
|
-
"esm": "./esm2022/boot/config/
|
|
339
|
-
"default": "./fesm2022/aril-boot-config-
|
|
347
|
+
"./boot/config/plugins": {
|
|
348
|
+
"types": "./boot/config/plugins/index.d.ts",
|
|
349
|
+
"esm2022": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
350
|
+
"esm": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
351
|
+
"default": "./fesm2022/aril-boot-config-plugins.mjs"
|
|
340
352
|
},
|
|
341
353
|
"./boot/config/apps": {
|
|
342
354
|
"types": "./boot/config/apps/index.d.ts",
|
|
@@ -344,12 +356,6 @@
|
|
|
344
356
|
"esm": "./esm2022/boot/config/apps/aril-boot-config-apps.mjs",
|
|
345
357
|
"default": "./fesm2022/aril-boot-config-apps.mjs"
|
|
346
358
|
},
|
|
347
|
-
"./boot/config/plugins": {
|
|
348
|
-
"types": "./boot/config/plugins/index.d.ts",
|
|
349
|
-
"esm2022": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
350
|
-
"esm": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
351
|
-
"default": "./fesm2022/aril-boot-config-plugins.mjs"
|
|
352
|
-
},
|
|
353
359
|
"./ui/business-components/assetPicker": {
|
|
354
360
|
"types": "./ui/business-components/assetPicker/index.d.ts",
|
|
355
361
|
"esm2022": "./esm2022/ui/business-components/assetPicker/aril-ui-business-components-assetPicker.mjs",
|
|
@@ -1,21 +1,27 @@
|
|
|
1
1
|
import { HttpClient } from '@angular/common/http';
|
|
2
|
+
import { AfterViewInit } from '@angular/core';
|
|
3
|
+
import { AutoComplete } from 'primeng/autocomplete';
|
|
2
4
|
import { BaseInputComponent } from 'aril/ui/lib';
|
|
3
|
-
import { AttributeElement, Result, SuggestionsGroupDTO } from './interface';
|
|
5
|
+
import { AttributeElement, Result, SuggestionsDTO, SuggestionsGroupDTO } from './interface';
|
|
4
6
|
import * as i0 from "@angular/core";
|
|
5
7
|
import * as i1 from "aril/ui/lib";
|
|
6
|
-
export declare class AssetPickerComponent extends BaseInputComponent {
|
|
8
|
+
export declare class AssetPickerComponent extends BaseInputComponent implements AfterViewInit {
|
|
7
9
|
private http;
|
|
10
|
+
autoCompleteRef: AutoComplete;
|
|
8
11
|
assetCode: import("@angular/core").InputSignal<string | string[] | null, string | string[] | null>;
|
|
9
12
|
placeholder: import("@angular/core").InputSignal<string, string>;
|
|
10
13
|
forceSelection: import("@angular/core").InputSignal<boolean, boolean>;
|
|
11
14
|
multiple: import("@angular/core").InputSignal<boolean, boolean>;
|
|
15
|
+
optionValue: import("@angular/core").InputSignal<keyof SuggestionsDTO | null, keyof SuggestionsDTO | null>;
|
|
12
16
|
filteredSelectionItems: SuggestionsGroupDTO[];
|
|
13
17
|
constructor(http: HttpClient);
|
|
18
|
+
ngAfterViewInit(): void;
|
|
19
|
+
getOptionValue(option: any): any;
|
|
14
20
|
search(event: any): Promise<void>;
|
|
15
21
|
groupByAssetDefinitionCode(array: Result[]): {
|
|
16
22
|
[key: string]: Result[];
|
|
17
23
|
};
|
|
18
24
|
getAttiributesValueDescr(attributes: AttributeElement[]): string;
|
|
19
25
|
static ɵfac: i0.ɵɵFactoryDeclaration<AssetPickerComponent, never>;
|
|
20
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AssetPickerComponent, "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", never, { "assetCode": { "alias": "assetCode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "forceSelection": { "alias": "forceSelection"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.ValueAccessorDirective; inputs: {}; outputs: {}; }]>;
|
|
26
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AssetPickerComponent, "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", never, { "assetCode": { "alias": "assetCode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "forceSelection": { "alias": "forceSelection"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "optionValue": { "alias": "optionValue"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.ValueAccessorDirective; inputs: {}; outputs: {}; }]>;
|
|
21
27
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './src/tooltip-component';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TemplateRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class TooltipComponent {
|
|
4
|
+
text: import("@angular/core").InputSignal<string, string>;
|
|
5
|
+
template: import("@angular/core").InputSignal<TemplateRef<any> | null | undefined, TemplateRef<any> | null | undefined>;
|
|
6
|
+
position: import("@angular/core").InputSignal<string, string>;
|
|
7
|
+
showDelay: import("@angular/core").InputSignal<number, number>;
|
|
8
|
+
hideDelay: import("@angular/core").InputSignal<number, number>;
|
|
9
|
+
tooltipStyle: import("@angular/core").InputSignal<any, any>;
|
|
10
|
+
tooltipStyleClass: import("@angular/core").InputSignal<string, string>;
|
|
11
|
+
appendTo: import("@angular/core").InputSignal<any, any>;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "aril-tooltip", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "template": { "alias": "template"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "showDelay": { "alias": "showDelay"; "required": false; "isSignal": true; }; "hideDelay": { "alias": "hideDelay"; "required": false; "isSignal": true; }; "tooltipStyle": { "alias": "tooltipStyle"; "required": false; "isSignal": true; }; "tooltipStyleClass": { "alias": "tooltipStyleClass"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
14
|
+
}
|