@gravitee/ui-particles-angular 15.7.2 → 15.8.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/lib/gio-el/gio-el.service.mjs +10 -10
- package/esm2022/lib/gio-el/index.mjs +19 -0
- package/esm2022/lib/gio-form-json-schema/wrappers/gio-el-helper-wrapper.component.mjs +24 -15
- package/fesm2022/gravitee-ui-particles-angular.mjs +48 -23
- package/fesm2022/gravitee-ui-particles-angular.mjs.map +1 -1
- package/lib/gio-el/gio-el.service.d.ts +2 -2
- package/lib/gio-el/index.d.ts +3 -0
- package/lib/gio-form-json-schema/wrappers/gio-el-helper-wrapper.component.d.ts +2 -0
- package/package.json +1 -1
|
@@ -15,25 +15,25 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { Injectable } from '@angular/core';
|
|
17
17
|
import { of } from 'rxjs';
|
|
18
|
-
import { delay, map } from 'rxjs/operators';
|
|
19
18
|
import * as i0 from "@angular/core";
|
|
20
19
|
export class GioElService {
|
|
21
20
|
constructor() {
|
|
22
|
-
this._promptCallback =
|
|
21
|
+
this._promptCallback = undefined;
|
|
23
22
|
}
|
|
24
23
|
prompt(prompt) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
defaultPrompt(prompt) {
|
|
28
|
-
return of(prompt).pipe(delay(300), map(prompt => {
|
|
29
|
-
return {
|
|
24
|
+
if (this._promptCallback === undefined) {
|
|
25
|
+
return of({
|
|
30
26
|
message: `Error: no handler given (input prompt: ${prompt})`,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
return this._promptCallback(prompt);
|
|
33
30
|
}
|
|
34
31
|
set promptCallback(value) {
|
|
35
32
|
this._promptCallback = value;
|
|
36
33
|
}
|
|
34
|
+
isEnabled() {
|
|
35
|
+
return this._promptCallback !== undefined;
|
|
36
|
+
}
|
|
37
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioElService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
38
38
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioElService, providedIn: 'root' }); }
|
|
39
39
|
}
|
|
@@ -43,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
43
43
|
providedIn: 'root',
|
|
44
44
|
}]
|
|
45
45
|
}] });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWVsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1lbC9naW8tZWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFPdEMsTUFBTSxPQUFPLFlBQVk7SUFIekI7UUFJVSxvQkFBZSxHQUFxRCxTQUFTLENBQUM7S0FrQnZGO0lBaEJRLE1BQU0sQ0FBQyxNQUFjO1FBQzFCLElBQUksSUFBSSxDQUFDLGVBQWUsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN2QyxPQUFPLEVBQUUsQ0FBQztnQkFDUixPQUFPLEVBQUUsMENBQTBDLE1BQU0sR0FBRzthQUM3RCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFXLGNBQWMsQ0FBQyxLQUFzRDtRQUM5RSxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBRU0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxTQUFTLENBQUM7SUFDNUMsQ0FBQzs4R0FsQlUsWUFBWTtrSEFBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDI0IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRWxBaVByb21wdFN0YXRlIH0gZnJvbSAnLi9tb2RlbHMvRWxBaVByb21wdFN0YXRlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEdpb0VsU2VydmljZSB7XG4gIHByaXZhdGUgX3Byb21wdENhbGxiYWNrPzogKHByb21wdDogc3RyaW5nKSA9PiBPYnNlcnZhYmxlPEVsQWlQcm9tcHRTdGF0ZT4gPSB1bmRlZmluZWQ7XG5cbiAgcHVibGljIHByb21wdChwcm9tcHQ6IHN0cmluZyk6IE9ic2VydmFibGU8RWxBaVByb21wdFN0YXRlPiB7XG4gICAgaWYgKHRoaXMuX3Byb21wdENhbGxiYWNrID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBvZih7XG4gICAgICAgIG1lc3NhZ2U6IGBFcnJvcjogbm8gaGFuZGxlciBnaXZlbiAoaW5wdXQgcHJvbXB0OiAke3Byb21wdH0pYCxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fcHJvbXB0Q2FsbGJhY2socHJvbXB0KTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgcHJvbXB0Q2FsbGJhY2sodmFsdWU6IChwcm9tcHQ6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxFbEFpUHJvbXB0U3RhdGU+KSB7XG4gICAgdGhpcy5fcHJvbXB0Q2FsbGJhY2sgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBpc0VuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Byb21wdENhbGxiYWNrICE9PSB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2024 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
export * from './gio-el-prompt/gio-el-prompt.component';
|
|
17
|
+
export * from './models/ElAiPromptState';
|
|
18
|
+
export * from './gio-el.service';
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1lbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyNCBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9naW8tZWwtcHJvbXB0L2dpby1lbC1wcm9tcHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL0VsQWlQcm9tcHRTdGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2dpby1lbC5zZXJ2aWNlJztcbiJdfQ==
|
|
@@ -13,8 +13,9 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { Component, ViewChild } from '@angular/core';
|
|
16
|
+
import { Component, ViewChild, inject } from '@angular/core';
|
|
17
17
|
import { FieldWrapper } from '@ngx-formly/core';
|
|
18
|
+
import { GioElService } from '../../gio-el';
|
|
18
19
|
import * as i0 from "@angular/core";
|
|
19
20
|
import * as i1 from "@angular/material/icon";
|
|
20
21
|
import * as i2 from "../../gio-popover/gio-popover.component";
|
|
@@ -23,6 +24,7 @@ import * as i4 from "../../gio-el/gio-el-prompt/gio-el-prompt.component";
|
|
|
23
24
|
export class GioElHelperWrapperComponent extends FieldWrapper {
|
|
24
25
|
constructor() {
|
|
25
26
|
super(...arguments);
|
|
27
|
+
this.elService = inject(GioElService);
|
|
26
28
|
this.hide = true;
|
|
27
29
|
}
|
|
28
30
|
ngAfterViewInit() {
|
|
@@ -30,18 +32,23 @@ export class GioElHelperWrapperComponent extends FieldWrapper {
|
|
|
30
32
|
this.props.suffix = this.matSuffix;
|
|
31
33
|
}
|
|
32
34
|
}
|
|
35
|
+
isEnabled() {
|
|
36
|
+
return this.elService.isEnabled();
|
|
37
|
+
}
|
|
33
38
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioElHelperWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
39
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: GioElHelperWrapperComponent, isStandalone: false, selector: "gio-el-wrapper-wrapper", viewQueries: [{ propertyName: "matSuffix", first: true, predicate: ["matSuffix"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
35
40
|
<ng-container #fieldComponent></ng-container>
|
|
36
41
|
|
|
37
42
|
<ng-template #matSuffix>
|
|
38
|
-
|
|
39
|
-
<
|
|
40
|
-
|
|
43
|
+
@if (isEnabled()) {
|
|
44
|
+
<button gioPopoverTrigger [gioPopoverTriggerFor]="aiPopover" type="button">
|
|
45
|
+
<mat-icon svgIcon="gio:el" />
|
|
46
|
+
</button>
|
|
41
47
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
48
|
+
<gio-popover #aiPopover [closeOnBackdropClick]="true">
|
|
49
|
+
<gio-el-prompt />
|
|
50
|
+
</gio-popover>
|
|
51
|
+
}
|
|
45
52
|
</ng-template>
|
|
46
53
|
`, isInline: true, dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2.GioPopoverComponent, selector: "gio-popover", inputs: ["trigger", "closeOnBackdropClick"] }, { kind: "directive", type: i3.PopoverTriggerDirective, selector: "[gioPopoverTrigger]", inputs: ["gioPopoverTriggerFor", "gioPopoverTriggerBasedOnElement"] }, { kind: "component", type: i4.GioElPromptComponent, selector: "gio-el-prompt", inputs: ["responseState"] }] }); }
|
|
47
54
|
}
|
|
@@ -53,13 +60,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
53
60
|
<ng-container #fieldComponent></ng-container>
|
|
54
61
|
|
|
55
62
|
<ng-template #matSuffix>
|
|
56
|
-
|
|
57
|
-
<
|
|
58
|
-
|
|
63
|
+
@if (isEnabled()) {
|
|
64
|
+
<button gioPopoverTrigger [gioPopoverTriggerFor]="aiPopover" type="button">
|
|
65
|
+
<mat-icon svgIcon="gio:el" />
|
|
66
|
+
</button>
|
|
59
67
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
68
|
+
<gio-popover #aiPopover [closeOnBackdropClick]="true">
|
|
69
|
+
<gio-el-prompt />
|
|
70
|
+
</gio-popover>
|
|
71
|
+
}
|
|
63
72
|
</ng-template>
|
|
64
73
|
`,
|
|
65
74
|
standalone: false,
|
|
@@ -73,4 +82,4 @@ export function elHelpExtension(field) {
|
|
|
73
82
|
field.wrappers = [...(field.wrappers || []), 'gio-el-help'];
|
|
74
83
|
}
|
|
75
84
|
}
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWVsLWhlbHBlci13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBhcnRpY2xlcy1hbmd1bGFyL3NyYy9saWIvZ2lvLWZvcm0tanNvbi1zY2hlbWEvd3JhcHBlcnMvZ2lvLWVsLWhlbHBlci13cmFwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQWUsU0FBUyxFQUFpQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxrQkFBa0IsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFxQjVDLE1BQU0sT0FBTywyQkFBNEIsU0FBUSxZQUFZO0lBbkI3RDs7UUFvQm1CLGNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFHM0MsU0FBSSxHQUFHLElBQUksQ0FBQztLQVdwQjtJQVRRLGVBQWU7UUFDcEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDcEMsQ0FBQzs4R0FkVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixnT0FqQjVCOzs7Ozs7Ozs7Ozs7OztHQWNUOzsyRkFHVSwyQkFBMkI7a0JBbkJ2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7R0FjVDtvQkFDRCxVQUFVLEVBQUUsS0FBSztpQkFDbEI7OEJBSVEsU0FBUztzQkFEZixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7O0FBZTFDLE1BQU0sVUFBVSxlQUFlLENBQUMsS0FBd0I7SUFDdEQsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNoQyxLQUFLLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDOUQsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIzIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBBZnRlclZpZXdJbml0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkV3JhcHBlciwgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcblxuaW1wb3J0IHsgR2lvRWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZ2lvLWVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLWVsLXdyYXBwZXItd3JhcHBlcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAjZmllbGRDb21wb25lbnQ+PC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI21hdFN1ZmZpeD5cbiAgICAgIEBpZiAoaXNFbmFibGVkKCkpIHtcbiAgICAgICAgPGJ1dHRvbiBnaW9Qb3BvdmVyVHJpZ2dlciBbZ2lvUG9wb3ZlclRyaWdnZXJGb3JdPVwiYWlQb3BvdmVyXCIgdHlwZT1cImJ1dHRvblwiPlxuICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiZ2lvOmVsXCIgLz5cbiAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgPGdpby1wb3BvdmVyICNhaVBvcG92ZXIgW2Nsb3NlT25CYWNrZHJvcENsaWNrXT1cInRydWVcIj5cbiAgICAgICAgICA8Z2lvLWVsLXByb21wdCAvPlxuICAgICAgICA8L2dpby1wb3BvdmVyPlxuICAgICAgfVxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9FbEhlbHBlcldyYXBwZXJDb21wb25lbnQgZXh0ZW5kcyBGaWVsZFdyYXBwZXIgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBlbFNlcnZpY2UgPSBpbmplY3QoR2lvRWxTZXJ2aWNlKTtcbiAgQFZpZXdDaGlsZCgnbWF0U3VmZml4JywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIG1hdFN1ZmZpeCE6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICBwdWJsaWMgaGlkZSA9IHRydWU7XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5tYXRTdWZmaXgpIHtcbiAgICAgIHRoaXMucHJvcHMuc3VmZml4ID0gdGhpcy5tYXRTdWZmaXg7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lbFNlcnZpY2UuaXNFbmFibGVkKCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVsSGVscEV4dGVuc2lvbihmaWVsZDogRm9ybWx5RmllbGRDb25maWcpIHtcbiAgaWYgKGZpZWxkLnByb3BzPy5hdHRyaWJ1dGVzPy5lbCkge1xuICAgIGZpZWxkLndyYXBwZXJzID0gWy4uLihmaWVsZC53cmFwcGVycyB8fCBbXSksICdnaW8tZWwtaGVscCddO1xuICB9XG59XG4iXX0=
|
|
@@ -4754,21 +4754,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
4754
4754
|
*/
|
|
4755
4755
|
class GioElService {
|
|
4756
4756
|
constructor() {
|
|
4757
|
-
this._promptCallback =
|
|
4757
|
+
this._promptCallback = undefined;
|
|
4758
4758
|
}
|
|
4759
4759
|
prompt(prompt) {
|
|
4760
|
-
|
|
4761
|
-
|
|
4762
|
-
defaultPrompt(prompt) {
|
|
4763
|
-
return of(prompt).pipe(delay(300), map(prompt => {
|
|
4764
|
-
return {
|
|
4760
|
+
if (this._promptCallback === undefined) {
|
|
4761
|
+
return of({
|
|
4765
4762
|
message: `Error: no handler given (input prompt: ${prompt})`,
|
|
4766
|
-
};
|
|
4767
|
-
}
|
|
4763
|
+
});
|
|
4764
|
+
}
|
|
4765
|
+
return this._promptCallback(prompt);
|
|
4768
4766
|
}
|
|
4769
4767
|
set promptCallback(value) {
|
|
4770
4768
|
this._promptCallback = value;
|
|
4771
4769
|
}
|
|
4770
|
+
isEnabled() {
|
|
4771
|
+
return this._promptCallback !== undefined;
|
|
4772
|
+
}
|
|
4772
4773
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioElService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4773
4774
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioElService, providedIn: 'root' }); }
|
|
4774
4775
|
}
|
|
@@ -5462,6 +5463,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
5462
5463
|
`, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false }]
|
|
5463
5464
|
}] });
|
|
5464
5465
|
|
|
5466
|
+
/*
|
|
5467
|
+
* Copyright (C) 2024 The Gravitee team (http://gravitee.io)
|
|
5468
|
+
*
|
|
5469
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5470
|
+
* you may not use this file except in compliance with the License.
|
|
5471
|
+
* You may obtain a copy of the License at
|
|
5472
|
+
*
|
|
5473
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
5474
|
+
*
|
|
5475
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
5476
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
5477
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
5478
|
+
* See the License for the specific language governing permissions and
|
|
5479
|
+
* limitations under the License.
|
|
5480
|
+
*/
|
|
5481
|
+
|
|
5465
5482
|
/*
|
|
5466
5483
|
* Copyright (C) 2023 The Gravitee team (http://gravitee.io)
|
|
5467
5484
|
*
|
|
@@ -5480,6 +5497,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
5480
5497
|
class GioElHelperWrapperComponent extends FieldWrapper {
|
|
5481
5498
|
constructor() {
|
|
5482
5499
|
super(...arguments);
|
|
5500
|
+
this.elService = inject(GioElService);
|
|
5483
5501
|
this.hide = true;
|
|
5484
5502
|
}
|
|
5485
5503
|
ngAfterViewInit() {
|
|
@@ -5487,18 +5505,23 @@ class GioElHelperWrapperComponent extends FieldWrapper {
|
|
|
5487
5505
|
this.props.suffix = this.matSuffix;
|
|
5488
5506
|
}
|
|
5489
5507
|
}
|
|
5508
|
+
isEnabled() {
|
|
5509
|
+
return this.elService.isEnabled();
|
|
5510
|
+
}
|
|
5490
5511
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioElHelperWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
5491
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
5512
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: GioElHelperWrapperComponent, isStandalone: false, selector: "gio-el-wrapper-wrapper", viewQueries: [{ propertyName: "matSuffix", first: true, predicate: ["matSuffix"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
5492
5513
|
<ng-container #fieldComponent></ng-container>
|
|
5493
5514
|
|
|
5494
5515
|
<ng-template #matSuffix>
|
|
5495
|
-
|
|
5496
|
-
<
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
<gio-
|
|
5501
|
-
|
|
5516
|
+
@if (isEnabled()) {
|
|
5517
|
+
<button gioPopoverTrigger [gioPopoverTriggerFor]="aiPopover" type="button">
|
|
5518
|
+
<mat-icon svgIcon="gio:el" />
|
|
5519
|
+
</button>
|
|
5520
|
+
|
|
5521
|
+
<gio-popover #aiPopover [closeOnBackdropClick]="true">
|
|
5522
|
+
<gio-el-prompt />
|
|
5523
|
+
</gio-popover>
|
|
5524
|
+
}
|
|
5502
5525
|
</ng-template>
|
|
5503
5526
|
`, isInline: true, dependencies: [{ kind: "component", type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: GioPopoverComponent, selector: "gio-popover", inputs: ["trigger", "closeOnBackdropClick"] }, { kind: "directive", type: PopoverTriggerDirective, selector: "[gioPopoverTrigger]", inputs: ["gioPopoverTriggerFor", "gioPopoverTriggerBasedOnElement"] }, { kind: "component", type: GioElPromptComponent, selector: "gio-el-prompt", inputs: ["responseState"] }] }); }
|
|
5504
5527
|
}
|
|
@@ -5510,13 +5533,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
5510
5533
|
<ng-container #fieldComponent></ng-container>
|
|
5511
5534
|
|
|
5512
5535
|
<ng-template #matSuffix>
|
|
5513
|
-
|
|
5514
|
-
<
|
|
5515
|
-
|
|
5516
|
-
|
|
5517
|
-
|
|
5518
|
-
<gio-
|
|
5519
|
-
|
|
5536
|
+
@if (isEnabled()) {
|
|
5537
|
+
<button gioPopoverTrigger [gioPopoverTriggerFor]="aiPopover" type="button">
|
|
5538
|
+
<mat-icon svgIcon="gio:el" />
|
|
5539
|
+
</button>
|
|
5540
|
+
|
|
5541
|
+
<gio-popover #aiPopover [closeOnBackdropClick]="true">
|
|
5542
|
+
<gio-el-prompt />
|
|
5543
|
+
</gio-popover>
|
|
5544
|
+
}
|
|
5520
5545
|
</ng-template>
|
|
5521
5546
|
`,
|
|
5522
5547
|
standalone: false,
|