@seniorsistemas/angular-components 17.2.3 → 17.2.5
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/bundles/seniorsistemas-angular-components.umd.js +44 -65
- package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
- package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
- package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
- package/components/accordion/accordion.component.d.ts +5 -2
- package/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.d.ts +2 -1
- package/components/dynamic-form/services/IAssist/iassist.service.d.ts +1 -4
- package/esm2015/components/accordion/accordion.component.js +21 -8
- package/esm2015/components/accordion/accordion.module.js +1 -3
- package/esm2015/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.js +17 -7
- package/esm2015/components/dynamic-form/services/IAssist/iassist.service.js +10 -35
- package/esm2015/components/slide-panel/slide-panel.module.js +2 -6
- package/esm5/components/accordion/accordion.component.js +21 -8
- package/esm5/components/accordion/accordion.module.js +1 -3
- package/esm5/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.js +17 -7
- package/esm5/components/dynamic-form/services/IAssist/iassist.service.js +10 -47
- package/esm5/components/slide-panel/slide-panel.module.js +2 -6
- package/fesm2015/seniorsistemas-angular-components.js +42 -52
- package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
- package/fesm5/seniorsistemas-angular-components.js +42 -64
- package/fesm5/seniorsistemas-angular-components.js.map +1 -1
- package/package.json +1 -1
- package/seniorsistemas-angular-components.metadata.json +1 -1
package/esm5/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.js
CHANGED
|
@@ -5,37 +5,47 @@ import { IAssistService } from "../../../services/IAssist/iassist.service";
|
|
|
5
5
|
import { FormField } from "../../../configurations/form-field";
|
|
6
6
|
import { FieldType } from "../../../configurations/field-type";
|
|
7
7
|
import { TranslateService } from "@ngx-translate/core";
|
|
8
|
+
import { catchError } from "rxjs/operators";
|
|
9
|
+
import { throwError } from "rxjs";
|
|
8
10
|
var TextAreaIAFieldComponent = /** @class */ (function () {
|
|
9
11
|
function TextAreaIAFieldComponent(_iassistService, _formBuilder, _translateService) {
|
|
10
12
|
this._iassistService = _iassistService;
|
|
11
13
|
this._formBuilder = _formBuilder;
|
|
12
14
|
this._translateService = _translateService;
|
|
13
|
-
this.
|
|
15
|
+
this.isVisible = false;
|
|
16
|
+
this.isLoading = false;
|
|
14
17
|
}
|
|
15
18
|
TextAreaIAFieldComponent.prototype.ngOnInit = function () {
|
|
16
19
|
this._createDialogFields();
|
|
17
20
|
this._createDialogFormGroup();
|
|
18
21
|
};
|
|
19
22
|
TextAreaIAFieldComponent.prototype.showDialog = function () {
|
|
20
|
-
this.
|
|
23
|
+
this.isVisible = true;
|
|
21
24
|
};
|
|
22
25
|
TextAreaIAFieldComponent.prototype.onHideDialog = function () {
|
|
23
26
|
this.formGroup.get("context").setValue("");
|
|
24
27
|
};
|
|
25
28
|
TextAreaIAFieldComponent.prototype.hideDialog = function () {
|
|
26
|
-
this.
|
|
29
|
+
this.isVisible = false;
|
|
27
30
|
};
|
|
28
31
|
TextAreaIAFieldComponent.prototype.submitContext = function () {
|
|
29
32
|
var _this = this;
|
|
30
33
|
var context = this.formGroup.get("context");
|
|
34
|
+
this.isLoading = true;
|
|
31
35
|
this._iassistService.askIA(context.value, {
|
|
32
36
|
id: this.field.id,
|
|
33
37
|
label: this.field.label,
|
|
34
38
|
placeholder: this.field.placeholder,
|
|
35
|
-
})
|
|
39
|
+
})
|
|
40
|
+
.pipe(catchError(function (err) {
|
|
41
|
+
_this.isLoading = false;
|
|
42
|
+
return throwError(err);
|
|
43
|
+
}))
|
|
44
|
+
.subscribe(function (res) {
|
|
36
45
|
_this.formControl.setValue(res.text);
|
|
46
|
+
_this.isLoading = false;
|
|
37
47
|
});
|
|
38
|
-
this.
|
|
48
|
+
this.hideDialog();
|
|
39
49
|
};
|
|
40
50
|
TextAreaIAFieldComponent.prototype._createDialogFields = function () {
|
|
41
51
|
this.fields = [
|
|
@@ -65,11 +75,11 @@ var TextAreaIAFieldComponent = /** @class */ (function () {
|
|
|
65
75
|
], TextAreaIAFieldComponent.prototype, "formControl", void 0);
|
|
66
76
|
TextAreaIAFieldComponent = __decorate([
|
|
67
77
|
Component({
|
|
68
|
-
template: "<p-dialog\n [header]=\"'platform.angular_components.ia_text_generator' | translate\"\n [(visible)]=\"
|
|
78
|
+
template: "<s-loading-state\n [loading]=\"isLoading\"\n [blockWindow]=\"true\"> \n</s-loading-state>\n\n<p-dialog\n [header]=\"'platform.angular_components.ia_text_generator' | translate\"\n [(visible)]=\"isVisible\"\n [modal]=\"true\"\n [style]=\"{ width: '50vw' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n (onHide)=\"onHideDialog()\">\n <s-dynamic-form\n [fields]=\"fields\"\n [form]=\"formGroup\">\n </s-dynamic-form>\n <p-footer>\n <div class=\"footer-content\">\n <s-button\n id=\"-submit-button\"\n type=\"button\"\n [label]=\"'platform.angular_components.generate_text' | translate\"\n (onClick)=\"submitContext()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\">\n </s-button>\n <s-button\n id=\"-cancel-button\"\n type=\"button\"\n priority=\"link\"\n [label]=\"'platform.angular_components.cancel' | translate\"\n (onClick)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\">\n </s-button>\n </div>\n </p-footer>\n</p-dialog>\n\n<div class=\"textarea-ia\">\n <textarea\n [id]=\"(field.id || field.name)\"\n pInputTextarea\n [rows]=\"field.rows\"\n [cols]=\"field.cols\"\n [formControl]=\"formControl\"\n style=\"resize: vertical;\"\n [ngStyle]=\"field.style\">\n </textarea>\n <s-button\n priority=\"default\"\n (onClick)=\"showDialog()\"\n iconClass=\"far fa-lightbulb-on\"\n [auxiliary]=\"true\"\n [tooltip]=\"'platform.angular_components.ia_text_generator' | translate\">\n </s-button>\n</div>",
|
|
69
79
|
styles: [".footer-content{display:-ms-flexbox;display:flex;-ms-flex-positive:0;flex-grow:0}.textarea-ia{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;gap:8px}"]
|
|
70
80
|
})
|
|
71
81
|
], TextAreaIAFieldComponent);
|
|
72
82
|
return TextAreaIAFieldComponent;
|
|
73
83
|
}());
|
|
74
84
|
export { TextAreaIAFieldComponent };
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLWlhLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2ZpZWxkcy90ZXh0LWFyZWEtaWEvdGV4dC1hcmVhLWlhLWZpZWxkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBSTNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDL0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFNbEM7SUFZSSxrQ0FDcUIsZUFBK0IsRUFDL0IsWUFBeUIsRUFDekIsaUJBQW1DO1FBRm5DLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBTmpELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsY0FBUyxHQUFHLEtBQUssQ0FBQztJQU1yQixDQUFDO0lBRUUsMkNBQVEsR0FBZjtRQUNJLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFTSw2Q0FBVSxHQUFqQjtRQUNJLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFTSwrQ0FBWSxHQUFuQjtRQUNJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sNkNBQVUsR0FBakI7UUFDSSxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRU0sZ0RBQWEsR0FBcEI7UUFBQSxpQkFtQkM7UUFsQkcsSUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFFdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRTtZQUN0QyxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUs7WUFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVztTQUN0QyxDQUFDO2FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFDLEdBQXNCO1lBQ3BDLEtBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO2FBQ0YsU0FBUyxDQUFDLFVBQUMsR0FBb0I7WUFDNUIsS0FBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BDLEtBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTyxzREFBbUIsR0FBM0I7UUFDSSxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1YsSUFBSSxTQUFTLENBQUM7Z0JBQ1YsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsSUFBSSxFQUFFLFNBQVMsQ0FBQyxNQUFNO2dCQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQztnQkFDNUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTthQUMzQyxDQUFDO1NBQ0wsQ0FBQztJQUNOLENBQUM7SUFFTyx5REFBc0IsR0FBOUI7UUFDSSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO1lBQ3JDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztTQUNoQixDQUFDLENBQUM7SUFDUCxDQUFDOztnQkExRHFDLGNBQWM7Z0JBQ2pCLFdBQVc7Z0JBQ04sZ0JBQWdCOztJQWJ4RDtRQURDLEtBQUssRUFBRTsyREFDc0I7SUFHOUI7UUFEQyxLQUFLLEVBQUU7aUVBQ3dCO0lBTHZCLHdCQUF3QjtRQUpwQyxTQUFTLENBQUM7WUFDUCx1ekRBQWtEOztTQUVyRCxDQUFDO09BQ1csd0JBQXdCLENBd0VwQztJQUFELCtCQUFDO0NBQUEsQUF4RUQsSUF3RUM7U0F4RVksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuaW1wb3J0IHsgSUFzc2lzdFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvSUFzc2lzdC9pYXNzaXN0LnNlcnZpY2VcIjtcbmltcG9ydCB7IElBc3Npc3RSZXNwb25zZSB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9JQXNzaXN0L21vZGVscy9pYXNzaXN0LXJlc3BvbnNlXCI7XG5pbXBvcnQgeyBUZXh0QXJlYUlBRmllbGQgfSBmcm9tIFwiLi4vLi4vLi4vY29uZmlndXJhdGlvbnMvZmllbGRzL3RleHQtYXJlYS1pYS1maWVsZFwiO1xuaW1wb3J0IHsgQmFzZUZpZWxkQ29tcG9uZW50Q29uZmlnIH0gZnJvbSBcIi4uL2Jhc2UtZmllbGQtY29tcG9uZW50XCI7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tIFwiLi4vLi4vLi4vY29uZmlndXJhdGlvbnMvZm9ybS1maWVsZFwiO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSBcIi4uLy4uLy4uL2NvbmZpZ3VyYXRpb25zL2ZpZWxkLXR5cGVcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tIFwicnhqc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3RleHQtYXJlYS1pYS1maWVsZC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiLi90ZXh0LWFyZWEtaWEtZmllbGQuY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIFRleHRBcmVhSUFGaWVsZENvbXBvbmVudCBpbXBsZW1lbnRzIEJhc2VGaWVsZENvbXBvbmVudENvbmZpZywgT25Jbml0IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWVsZDogVGV4dEFyZWFJQUZpZWxkO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xuXG4gICAgcHVibGljIGZpZWxkczogRm9ybUZpZWxkW107XG4gICAgcHVibGljIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xuICAgIHB1YmxpYyBpc1Zpc2libGUgPSBmYWxzZTtcbiAgICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfaWFzc2lzdFNlcnZpY2U6IElBc3Npc3RTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9mb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX3RyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgKSB7IH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY3JlYXRlRGlhbG9nRmllbGRzKCk7XG4gICAgICAgIHRoaXMuX2NyZWF0ZURpYWxvZ0Zvcm1Hcm91cCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG93RGlhbG9nKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzVmlzaWJsZSA9IHRydWU7XG4gICAgfVxuXG4gICAgcHVibGljIG9uSGlkZURpYWxvZygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuZ2V0KFwiY29udGV4dFwiKS5zZXRWYWx1ZShcIlwiKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGlkZURpYWxvZygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3VibWl0Q29udGV4dCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHRoaXMuZm9ybUdyb3VwLmdldChcImNvbnRleHRcIik7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgICAgICB0aGlzLl9pYXNzaXN0U2VydmljZS5hc2tJQShjb250ZXh0LnZhbHVlLCB7XG4gICAgICAgICAgICBpZDogdGhpcy5maWVsZC5pZCxcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLmZpZWxkLmxhYmVsLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI6IHRoaXMuZmllbGQucGxhY2Vob2xkZXIsXG4gICAgICAgIH0pXG4gICAgICAgIC5waXBlKGNhdGNoRXJyb3IoKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnIpO1xuICAgICAgICB9KSlcbiAgICAgICAgLnN1YnNjcmliZSgocmVzOiBJQXNzaXN0UmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUocmVzLnRleHQpO1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgICAgIFxuICAgICAgICB0aGlzLmhpZGVEaWFsb2coKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jcmVhdGVEaWFsb2dGaWVsZHMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmllbGRzID0gW1xuICAgICAgICAgICAgbmV3IEZvcm1GaWVsZCh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJjb250ZXh0XCIsXG4gICAgICAgICAgICAgICAgdHlwZTogRmllbGRUeXBlLlN0cmluZyxcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy5fdHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFwicGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmNvbnRleHRcIiksXG4gICAgICAgICAgICAgICAgc2l6ZTogeyBzbTogMTIsIG1kOiAxMiwgbGc6IDEyLCB4bDogMTIgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NyZWF0ZURpYWxvZ0Zvcm1Hcm91cCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLl9mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgICAgICBjb250ZXh0OiBbXCJcIl0sXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,30 +1,25 @@
|
|
|
1
|
-
import { __decorate
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
2
|
import { HttpClient, HttpErrorResponse } from "@angular/common/http";
|
|
3
|
-
import {
|
|
3
|
+
import { Injectable } from "@angular/core";
|
|
4
4
|
import { throwError } from "rxjs";
|
|
5
5
|
import { catchError } from "rxjs/operators";
|
|
6
6
|
import { MessageService } from "primeng/api";
|
|
7
|
-
import { HostProjectConfigsInjectionToken } from "../../../../angular-components.module";
|
|
8
7
|
var IAssistService = /** @class */ (function () {
|
|
9
|
-
function IAssistService(http, _messageService
|
|
8
|
+
function IAssistService(http, _messageService) {
|
|
10
9
|
this.http = http;
|
|
11
10
|
this._messageService = _messageService;
|
|
12
|
-
this._hostProjectConfigs = _hostProjectConfigs;
|
|
13
11
|
}
|
|
14
12
|
IAssistService.prototype.askIA = function (context, data) {
|
|
15
13
|
var _this = this;
|
|
16
|
-
|
|
14
|
+
return this.http.post("platform/iassist/api/latest/completions", {
|
|
17
15
|
"prompt": this._createPrompt(context, data),
|
|
18
16
|
"provider": "OPEN_AI",
|
|
19
17
|
"parameters": {
|
|
20
18
|
"model": "gpt-3.5-turbo",
|
|
21
19
|
"max_tokens": 700,
|
|
22
|
-
"temperature": 1
|
|
20
|
+
"temperature": 1
|
|
23
21
|
}
|
|
24
|
-
}
|
|
25
|
-
var url = this._endpointFactory().build("completions", prompt);
|
|
26
|
-
return this.http.get(url)
|
|
27
|
-
.pipe(catchError(function (err) {
|
|
22
|
+
}).pipe(catchError(function (err) {
|
|
28
23
|
_this._messageService.add({
|
|
29
24
|
severity: "error",
|
|
30
25
|
summary: err.status ? String(err.status) : "Error",
|
|
@@ -33,49 +28,17 @@ var IAssistService = /** @class */ (function () {
|
|
|
33
28
|
return throwError(err);
|
|
34
29
|
}));
|
|
35
30
|
};
|
|
36
|
-
IAssistService.prototype._endpointFactory = function () {
|
|
37
|
-
var _this = this;
|
|
38
|
-
return {
|
|
39
|
-
build: function (endpoint, params) {
|
|
40
|
-
var e_1, _a;
|
|
41
|
-
var base = _this._hostProjectConfigs.domain + "/" + _this._hostProjectConfigs.service + "/api/latest/" + endpoint;
|
|
42
|
-
if (params) {
|
|
43
|
-
var query = new URLSearchParams();
|
|
44
|
-
try {
|
|
45
|
-
for (var _b = __values(Object.keys(params)), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
46
|
-
var key = _c.value;
|
|
47
|
-
var value = params[key];
|
|
48
|
-
if (value) {
|
|
49
|
-
query.append(key, value);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
54
|
-
finally {
|
|
55
|
-
try {
|
|
56
|
-
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
57
|
-
}
|
|
58
|
-
finally { if (e_1) throw e_1.error; }
|
|
59
|
-
}
|
|
60
|
-
return base + "?" + query;
|
|
61
|
-
}
|
|
62
|
-
return base;
|
|
63
|
-
},
|
|
64
|
-
};
|
|
65
|
-
};
|
|
66
31
|
IAssistService.prototype._createPrompt = function (context, data) {
|
|
67
|
-
return "Crie um texto gen\u00E9rico para preencher o campo de textarea.\n " + (data.label ? "O campo tem o label " + data.label + "." : "") + "\n " + (data.id ? "O campo tem o id " + data.id + "." : "") + "\n " + (data.placeholder ? "Considere as instru\u00E7\u00F5es/sugest\u00F5es do placeholder: " + data.placeholder + "." : "") + "\n Baseie-se no contexto informado pelo usu\u00E1rio: '" + context + "'
|
|
32
|
+
return "Crie um texto gen\u00E9rico para preencher o campo de textarea.\n " + (data.label ? "O campo tem o label " + data.label + "." : "") + "\n " + (data.id ? "O campo tem o id " + data.id + "." : "") + "\n " + (data.placeholder ? "Considere as instru\u00E7\u00F5es/sugest\u00F5es do placeholder: " + data.placeholder + "." : "") + "\n Baseie-se no contexto informado pelo usu\u00E1rio: '" + context + "'.\n O texto deve ser formal e conter informa\u00E7\u00F5es pertinentes a um campo como este, como se um usu\u00E1rio real tivesse preenchido com as informa\u00E7\u00F5es necess\u00E1rias. \n O texto deve ser neutro com rela\u00E7\u00E3o a generos, ra\u00E7as, religi\u00F5es, etc.\n O texto deve ser impessoal e n\u00E3o deve conter informa\u00E7\u00F5es pessoais do usu\u00E1rio.\n N\u00E3o direcione o texto a ningu\u00E9m, n\u00E3o use express\u00F5es como: caro, atenciosamente. gostaria, agrade\u00E7o. O texto deve ser gen\u00E9rico.\n \n Exemplos de texto:\n Um campo de descri\u00E7\u00E3o de usu\u00E1rio: \"Usu\u00E1rio com 20 anos, estudante de engenharia, gosta de jogar futebol e assistir filmes.\"\n Outro exemplo de descri\u00E7\u00E3o de usu\u00E1rio: \"Usu\u00E1rio administrador, com acesso total ao sistema, respons\u00E1vel por gerenciar os usu\u00E1rios e os produtos.\"\n Um campo de descri\u00E7\u00E3o de um produto: \"O produto \u00E9 um celular, com tela de 6 polegadas, 128GB de armazenamento, 4GB de mem\u00F3ria RAM, c\u00E2mera de 12MP e bateria de 4000mAh.\"\n Outro exemplo de descri\u00E7\u00E3o de produto: \"O produto \u00E9 uma geladeira, com capacidade de 500 litros, 2 portas, cor branca, com freezer e gaveta de legumes.\"\n Outro exemplo de descri\u00E7\u00E3o de produto: \"O produto \u00E9 uma camiseta, tamanho M, cor azul, 100% algod\u00E3o, com estampa de um gato.\"\n \n Em caso de contexto incompleto crie um texto gen\u00E9rico, como se fosse um exemplo de preenchimento do campo.\n O texto \u00E9 para um campo de textarea, ent\u00E3o escreva um texto sucinto.\n Exiba apenas o texto do output";
|
|
68
33
|
};
|
|
69
34
|
IAssistService.ctorParameters = function () { return [
|
|
70
35
|
{ type: HttpClient },
|
|
71
|
-
{ type: MessageService }
|
|
72
|
-
{ type: undefined, decorators: [{ type: Inject, args: [HostProjectConfigsInjectionToken,] }] }
|
|
36
|
+
{ type: MessageService }
|
|
73
37
|
]; };
|
|
74
38
|
IAssistService = __decorate([
|
|
75
|
-
Injectable()
|
|
76
|
-
__param(2, Inject(HostProjectConfigsInjectionToken))
|
|
39
|
+
Injectable()
|
|
77
40
|
], IAssistService);
|
|
78
41
|
return IAssistService;
|
|
79
42
|
}());
|
|
80
43
|
export { IAssistService };
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWFzc2lzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NlcnZpY2VzL0lBc3Npc3QvaWFzc2lzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBTTdDO0lBQ0ksd0JBQ3FCLElBQWdCLEVBQ2hCLGVBQStCO1FBRC9CLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsb0JBQWUsR0FBZixlQUFlLENBQWdCO0lBQ2hELENBQUM7SUFFRSw4QkFBSyxHQUFaLFVBQWEsT0FBZSxFQUFFLElBQXNCO1FBQXBELGlCQXFCQztRQW5CRyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUNqQix5Q0FBeUMsRUFDekM7WUFDSSxRQUFRLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDO1lBQzNDLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLFlBQVksRUFBRTtnQkFDVixPQUFPLEVBQUUsZUFBZTtnQkFDeEIsWUFBWSxFQUFFLEdBQUc7Z0JBQ2pCLGFBQWEsRUFBRSxDQUFDO2FBQ25CO1NBQ0osQ0FDSixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBQyxHQUFzQjtZQUNyQyxLQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQztnQkFDckIsUUFBUSxFQUFFLE9BQU87Z0JBQ2pCLE9BQU8sRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO2dCQUNsRCxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLFVBQVUsSUFBSSxHQUFHLENBQUMsT0FBTyxJQUFJLE9BQU87YUFDdkYsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFTyxzQ0FBYSxHQUFyQixVQUFzQixPQUFlLEVBQUUsSUFBc0I7UUFDekQsT0FBTywrRUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyx5QkFBdUIsSUFBSSxDQUFDLEtBQUssTUFBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLG9CQUN0RCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxzQkFBb0IsSUFBSSxDQUFDLEVBQUUsTUFBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLG9CQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxzRUFBcUQsSUFBSSxDQUFDLFdBQVcsTUFBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLHVFQUNqRCxPQUFPLGl0REFlekIsQ0FBQztJQUNwQyxDQUFDOztnQkFoRDBCLFVBQVU7Z0JBQ0MsY0FBYzs7SUFIM0MsY0FBYztRQUQxQixVQUFVLEVBQUU7T0FDQSxjQUFjLENBbUQxQjtJQUFELHFCQUFDO0NBQUEsQUFuREQsSUFtREM7U0FuRFksY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gXCJwcmltZW5nL2FwaVwiO1xuXG5pbXBvcnQgeyBJQXNzaXN0SW5wdXREYXRhIH0gZnJvbSBcIi4vbW9kZWxzL2lhc3Npc3QtaW5wdXQtZGF0YVwiO1xuaW1wb3J0IHsgSUFzc2lzdFJlc3BvbnNlIH0gZnJvbSBcIi4vbW9kZWxzL2lhc3Npc3QtcmVzcG9uc2VcIjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIElBc3Npc3RTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9tZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgKSB7IH1cblxuICAgIHB1YmxpYyBhc2tJQShjb250ZXh0OiBzdHJpbmcsIGRhdGE6IElBc3Npc3RJbnB1dERhdGEpOiBPYnNlcnZhYmxlPElBc3Npc3RSZXNwb25zZT4ge1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxJQXNzaXN0UmVzcG9uc2U+KFxuICAgICAgICAgICAgXCJwbGF0Zm9ybS9pYXNzaXN0L2FwaS9sYXRlc3QvY29tcGxldGlvbnNcIixcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcInByb21wdFwiOiB0aGlzLl9jcmVhdGVQcm9tcHQoY29udGV4dCwgZGF0YSksXG4gICAgICAgICAgICAgICAgXCJwcm92aWRlclwiOiBcIk9QRU5fQUlcIixcbiAgICAgICAgICAgICAgICBcInBhcmFtZXRlcnNcIjoge1xuICAgICAgICAgICAgICAgICAgICBcIm1vZGVsXCI6IFwiZ3B0LTMuNS10dXJib1wiLFxuICAgICAgICAgICAgICAgICAgICBcIm1heF90b2tlbnNcIjogNzAwLFxuICAgICAgICAgICAgICAgICAgICBcInRlbXBlcmF0dXJlXCI6IDFcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICApLnBpcGUoY2F0Y2hFcnJvcigoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbWVzc2FnZVNlcnZpY2UuYWRkKHtcbiAgICAgICAgICAgICAgICBzZXZlcml0eTogXCJlcnJvclwiLFxuICAgICAgICAgICAgICAgIHN1bW1hcnk6IGVyci5zdGF0dXMgPyBTdHJpbmcoZXJyLnN0YXR1cykgOiBcIkVycm9yXCIsXG4gICAgICAgICAgICAgICAgZGV0YWlsOiAoZXJyLmVycm9yICYmIGVyci5lcnJvci5tZXNzYWdlKSB8fCBlcnIuc3RhdHVzVGV4dCB8fCBlcnIubWVzc2FnZSB8fCBcIkVycm9yXCIsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycik7XG4gICAgICAgIH0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jcmVhdGVQcm9tcHQoY29udGV4dDogc3RyaW5nLCBkYXRhOiBJQXNzaXN0SW5wdXREYXRhKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGBDcmllIHVtIHRleHRvIGdlbsOpcmljbyBwYXJhIHByZWVuY2hlciBvIGNhbXBvIGRlIHRleHRhcmVhLlxuICAgICAgICAke2RhdGEubGFiZWwgPyBgTyBjYW1wbyB0ZW0gbyBsYWJlbCAke2RhdGEubGFiZWx9LmAgOiBcIlwifVxuICAgICAgICAke2RhdGEuaWQgPyBgTyBjYW1wbyB0ZW0gbyBpZCAke2RhdGEuaWR9LmAgOiBcIlwifVxuICAgICAgICAke2RhdGEucGxhY2Vob2xkZXIgPyBgQ29uc2lkZXJlIGFzIGluc3RydcOnw7Vlcy9zdWdlc3TDtWVzIGRvIHBsYWNlaG9sZGVyOiAke2RhdGEucGxhY2Vob2xkZXJ9LmAgOiBcIlwifVxuICAgICAgICBCYXNlaWUtc2Ugbm8gY29udGV4dG8gaW5mb3JtYWRvIHBlbG8gdXN1w6FyaW86ICcke2NvbnRleHR9Jy5cbiAgICAgICAgTyB0ZXh0byBkZXZlIHNlciBmb3JtYWwgZSBjb250ZXIgaW5mb3JtYcOnw7VlcyBwZXJ0aW5lbnRlcyBhIHVtIGNhbXBvIGNvbW8gZXN0ZSwgY29tbyBzZSB1bSB1c3XDoXJpbyByZWFsIHRpdmVzc2UgcHJlZW5jaGlkbyBjb20gYXMgaW5mb3JtYcOnw7VlcyBuZWNlc3PDoXJpYXMuIFxuICAgICAgICBPIHRleHRvIGRldmUgc2VyIG5ldXRybyBjb20gcmVsYcOnw6NvIGEgZ2VuZXJvcywgcmHDp2FzLCByZWxpZ2nDtWVzLCBldGMuXG4gICAgICAgIE8gdGV4dG8gZGV2ZSBzZXIgaW1wZXNzb2FsIGUgbsOjbyBkZXZlIGNvbnRlciBpbmZvcm1hw6fDtWVzIHBlc3NvYWlzIGRvIHVzdcOhcmlvLlxuICAgICAgICBOw6NvIGRpcmVjaW9uZSBvIHRleHRvIGEgbmluZ3XDqW0sIG7Do28gdXNlIGV4cHJlc3PDtWVzIGNvbW86IGNhcm8sIGF0ZW5jaW9zYW1lbnRlLiBnb3N0YXJpYSwgYWdyYWRlw6dvLiBPIHRleHRvIGRldmUgc2VyIGdlbsOpcmljby5cbiAgICBcbiAgICAgICAgRXhlbXBsb3MgZGUgdGV4dG86XG4gICAgICAgIFVtIGNhbXBvIGRlIGRlc2NyacOnw6NvIGRlIHVzdcOhcmlvOiBcIlVzdcOhcmlvIGNvbSAyMCBhbm9zLCBlc3R1ZGFudGUgZGUgZW5nZW5oYXJpYSwgZ29zdGEgZGUgam9nYXIgZnV0ZWJvbCBlIGFzc2lzdGlyIGZpbG1lcy5cIlxuICAgICAgICBPdXRybyBleGVtcGxvIGRlIGRlc2NyacOnw6NvIGRlIHVzdcOhcmlvOiBcIlVzdcOhcmlvIGFkbWluaXN0cmFkb3IsIGNvbSBhY2Vzc28gdG90YWwgYW8gc2lzdGVtYSwgcmVzcG9uc8OhdmVsIHBvciBnZXJlbmNpYXIgb3MgdXN1w6FyaW9zIGUgb3MgcHJvZHV0b3MuXCJcbiAgICAgICAgVW0gY2FtcG8gZGUgZGVzY3Jpw6fDo28gZGUgdW0gcHJvZHV0bzogXCJPIHByb2R1dG8gw6kgdW0gY2VsdWxhciwgY29tIHRlbGEgZGUgNiBwb2xlZ2FkYXMsIDEyOEdCIGRlIGFybWF6ZW5hbWVudG8sIDRHQiBkZSBtZW3Ds3JpYSBSQU0sIGPDom1lcmEgZGUgMTJNUCBlIGJhdGVyaWEgZGUgNDAwMG1BaC5cIlxuICAgICAgICBPdXRybyBleGVtcGxvIGRlIGRlc2NyacOnw6NvIGRlIHByb2R1dG86IFwiTyBwcm9kdXRvIMOpIHVtYSBnZWxhZGVpcmEsIGNvbSBjYXBhY2lkYWRlIGRlIDUwMCBsaXRyb3MsIDIgcG9ydGFzLCBjb3IgYnJhbmNhLCBjb20gZnJlZXplciBlIGdhdmV0YSBkZSBsZWd1bWVzLlwiXG4gICAgICAgIE91dHJvIGV4ZW1wbG8gZGUgZGVzY3Jpw6fDo28gZGUgcHJvZHV0bzogXCJPIHByb2R1dG8gw6kgdW1hIGNhbWlzZXRhLCB0YW1hbmhvIE0sIGNvciBhenVsLCAxMDAlIGFsZ29kw6NvLCBjb20gZXN0YW1wYSBkZSB1bSBnYXRvLlwiXG4gICAgXG4gICAgICAgIEVtIGNhc28gZGUgY29udGV4dG8gaW5jb21wbGV0byBjcmllIHVtIHRleHRvIGdlbsOpcmljbywgY29tbyBzZSBmb3NzZSB1bSBleGVtcGxvIGRlIHByZWVuY2hpbWVudG8gZG8gY2FtcG8uXG4gICAgICAgIE8gdGV4dG8gw6kgcGFyYSB1bSBjYW1wbyBkZSB0ZXh0YXJlYSwgZW50w6NvIGVzY3JldmEgdW0gdGV4dG8gc3VjaW50by5cbiAgICAgICAgRXhpYmEgYXBlbmFzIG8gdGV4dG8gZG8gb3V0cHV0YDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { NgModule } from "@angular/core";
|
|
3
3
|
import { CommonModule } from "@angular/common";
|
|
4
|
-
import { BrowserAnimationsModule } from "@angular/platform-browser/animations";
|
|
5
4
|
import { SlidePanelComponent } from "./slide-panel.component";
|
|
6
5
|
var SlidePanelModule = /** @class */ (function () {
|
|
7
6
|
function SlidePanelModule() {
|
|
8
7
|
}
|
|
9
8
|
SlidePanelModule = __decorate([
|
|
10
9
|
NgModule({
|
|
11
|
-
imports: [
|
|
12
|
-
CommonModule,
|
|
13
|
-
BrowserAnimationsModule,
|
|
14
|
-
],
|
|
10
|
+
imports: [CommonModule],
|
|
15
11
|
declarations: [SlidePanelComponent],
|
|
16
12
|
exports: [SlidePanelComponent],
|
|
17
13
|
})
|
|
@@ -19,4 +15,4 @@ var SlidePanelModule = /** @class */ (function () {
|
|
|
19
15
|
return SlidePanelModule;
|
|
20
16
|
}());
|
|
21
17
|
export { SlidePanelModule };
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGUtcGFuZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc2xpZGUtcGFuZWwvc2xpZGUtcGFuZWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQU85RDtJQUFBO0lBQWdDLENBQUM7SUFBcEIsZ0JBQWdCO1FBTDVCLFFBQVEsQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztZQUN2QixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztZQUNuQyxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztTQUNqQyxDQUFDO09BQ1csZ0JBQWdCLENBQUk7SUFBRCx1QkFBQztDQUFBLEFBQWpDLElBQWlDO1NBQXBCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuaW1wb3J0IHsgU2xpZGVQYW5lbENvbXBvbmVudCB9IGZyb20gXCIuL3NsaWRlLXBhbmVsLmNvbXBvbmVudFwiO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW1NsaWRlUGFuZWxDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtTbGlkZVBhbmVsQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2xpZGVQYW5lbE1vZHVsZSB7IH0iXX0=
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { __decorate, __rest, __awaiter, __param } from 'tslib';
|
|
2
2
|
import { EventEmitter, Input, Output, Component, ContentChildren, ViewChild, HostListener, forwardRef, NgModule, ɵɵdefineInjectable, Injectable, ElementRef, ApplicationRef, ComponentFactoryResolver, Injector, Directive, HostBinding, Renderer2, Pipe, ViewEncapsulation, InjectionToken, Inject, TemplateRef, ViewContainerRef, ChangeDetectorRef, Optional, ContentChild } from '@angular/core';
|
|
3
3
|
import { trigger, transition, style as style$7, animate, state, group, query, animateChild } from '@angular/animations';
|
|
4
|
+
import { Subject, of, from, throwError, forkJoin, ReplaySubject } from 'rxjs';
|
|
5
|
+
import { takeUntil, filter, tap, map, switchMap, catchError, delay, debounceTime, repeat, finalize, take } from 'rxjs/operators';
|
|
4
6
|
import { CommonModule } from '@angular/common';
|
|
5
7
|
import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule, FormControl, FormGroup, NG_VALIDATORS, FormBuilder, Validators, FormArray, ControlContainer } from '@angular/forms';
|
|
6
|
-
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
7
8
|
import { RouterModule, NavigationEnd, PRIMARY_OUTLET, ActivatedRoute, Router } from '@angular/router';
|
|
8
9
|
import { BreadcrumbModule as BreadcrumbModule$1 } from 'primeng/breadcrumb';
|
|
9
|
-
import { Subject, of, from, throwError, forkJoin, ReplaySubject } from 'rxjs';
|
|
10
|
-
import { takeUntil, filter, tap, map, switchMap, catchError, delay, debounceTime, repeat, finalize, take } from 'rxjs/operators';
|
|
11
10
|
import { TieredMenu, TieredMenuModule as TieredMenuModule$1 } from 'primeng/tieredmenu';
|
|
12
11
|
import { TooltipModule as TooltipModule$1 } from 'primeng/tooltip';
|
|
13
12
|
import { DomHandler } from 'primeng/dom';
|
|
@@ -156,23 +155,24 @@ AccordionPanelComponent = __decorate([
|
|
|
156
155
|
let AccordionComponent = class AccordionComponent {
|
|
157
156
|
constructor() {
|
|
158
157
|
this.multiple = false;
|
|
158
|
+
this._unsubscribe$ = new Subject();
|
|
159
159
|
this._panels = [];
|
|
160
160
|
}
|
|
161
161
|
ngAfterContentInit() {
|
|
162
162
|
this._panels = this.panelsComponents.toArray();
|
|
163
163
|
this._openSubs = new Array(this._panels.length);
|
|
164
|
+
this._setBehavior(this.multiple);
|
|
164
165
|
this._setupTabs();
|
|
165
166
|
}
|
|
166
167
|
ngOnChanges(changes) {
|
|
167
168
|
if (changes.multiple) {
|
|
168
|
-
|
|
169
|
-
this._enableMultiplePanelBehavior();
|
|
170
|
-
}
|
|
171
|
-
else {
|
|
172
|
-
this._enableSinglePanelBehavior();
|
|
173
|
-
}
|
|
169
|
+
this._setBehavior(changes.multiple.currentValue);
|
|
174
170
|
}
|
|
175
171
|
}
|
|
172
|
+
ngOnDestroy() {
|
|
173
|
+
this._unsubscribe$.next();
|
|
174
|
+
this._unsubscribe$.complete();
|
|
175
|
+
}
|
|
176
176
|
_setupTabs() {
|
|
177
177
|
var _a;
|
|
178
178
|
if ((_a = this._panels) === null || _a === void 0 ? void 0 : _a.length) {
|
|
@@ -194,9 +194,19 @@ let AccordionComponent = class AccordionComponent {
|
|
|
194
194
|
}
|
|
195
195
|
});
|
|
196
196
|
}
|
|
197
|
+
_setBehavior(multiple) {
|
|
198
|
+
if (multiple) {
|
|
199
|
+
this._enableMultiplePanelBehavior();
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
this._enableSinglePanelBehavior();
|
|
203
|
+
}
|
|
204
|
+
}
|
|
197
205
|
_enableSinglePanelBehavior() {
|
|
198
206
|
this._panels.forEach((panel, index) => {
|
|
199
|
-
this._openSubs[index] = panel.panelOpened
|
|
207
|
+
this._openSubs[index] = panel.panelOpened
|
|
208
|
+
.pipe(takeUntil(this._unsubscribe$))
|
|
209
|
+
.subscribe(() => {
|
|
200
210
|
this._closeOtherTabs(index);
|
|
201
211
|
});
|
|
202
212
|
});
|
|
@@ -703,7 +713,6 @@ AccordionModule = __decorate([
|
|
|
703
713
|
imports: [
|
|
704
714
|
CommonModule,
|
|
705
715
|
FormsModule,
|
|
706
|
-
BrowserAnimationsModule,
|
|
707
716
|
TooltipModule,
|
|
708
717
|
SwitchModule,
|
|
709
718
|
],
|
|
@@ -6277,24 +6286,20 @@ TextAreaFieldComponent = __decorate([
|
|
|
6277
6286
|
], TextAreaFieldComponent);
|
|
6278
6287
|
|
|
6279
6288
|
let IAssistService = class IAssistService {
|
|
6280
|
-
constructor(http, _messageService
|
|
6289
|
+
constructor(http, _messageService) {
|
|
6281
6290
|
this.http = http;
|
|
6282
6291
|
this._messageService = _messageService;
|
|
6283
|
-
this._hostProjectConfigs = _hostProjectConfigs;
|
|
6284
6292
|
}
|
|
6285
6293
|
askIA(context, data) {
|
|
6286
|
-
|
|
6294
|
+
return this.http.post("platform/iassist/api/latest/completions", {
|
|
6287
6295
|
"prompt": this._createPrompt(context, data),
|
|
6288
6296
|
"provider": "OPEN_AI",
|
|
6289
6297
|
"parameters": {
|
|
6290
6298
|
"model": "gpt-3.5-turbo",
|
|
6291
6299
|
"max_tokens": 700,
|
|
6292
|
-
"temperature": 1
|
|
6300
|
+
"temperature": 1
|
|
6293
6301
|
}
|
|
6294
|
-
}
|
|
6295
|
-
const url = this._endpointFactory().build("completions", prompt);
|
|
6296
|
-
return this.http.get(url)
|
|
6297
|
-
.pipe(catchError((err) => {
|
|
6302
|
+
}).pipe(catchError((err) => {
|
|
6298
6303
|
this._messageService.add({
|
|
6299
6304
|
severity: "error",
|
|
6300
6305
|
summary: err.status ? String(err.status) : "Error",
|
|
@@ -6303,30 +6308,12 @@ let IAssistService = class IAssistService {
|
|
|
6303
6308
|
return throwError(err);
|
|
6304
6309
|
}));
|
|
6305
6310
|
}
|
|
6306
|
-
_endpointFactory() {
|
|
6307
|
-
return {
|
|
6308
|
-
build: (endpoint, params) => {
|
|
6309
|
-
const base = `${this._hostProjectConfigs.domain}/${this._hostProjectConfigs.service}/api/latest/${endpoint}`;
|
|
6310
|
-
if (params) {
|
|
6311
|
-
const query = new URLSearchParams();
|
|
6312
|
-
for (const key of Object.keys(params)) {
|
|
6313
|
-
const value = params[key];
|
|
6314
|
-
if (value) {
|
|
6315
|
-
query.append(key, value);
|
|
6316
|
-
}
|
|
6317
|
-
}
|
|
6318
|
-
return `${base}?${query}`;
|
|
6319
|
-
}
|
|
6320
|
-
return base;
|
|
6321
|
-
},
|
|
6322
|
-
};
|
|
6323
|
-
}
|
|
6324
6311
|
_createPrompt(context, data) {
|
|
6325
6312
|
return `Crie um texto genérico para preencher o campo de textarea.
|
|
6326
6313
|
${data.label ? `O campo tem o label ${data.label}.` : ""}
|
|
6327
6314
|
${data.id ? `O campo tem o id ${data.id}.` : ""}
|
|
6328
6315
|
${data.placeholder ? `Considere as instruções/sugestões do placeholder: ${data.placeholder}.` : ""}
|
|
6329
|
-
Baseie-se no contexto informado pelo usuário: '${context}'.
|
|
6316
|
+
Baseie-se no contexto informado pelo usuário: '${context}'.
|
|
6330
6317
|
O texto deve ser formal e conter informações pertinentes a um campo como este, como se um usuário real tivesse preenchido com as informações necessárias.
|
|
6331
6318
|
O texto deve ser neutro com relação a generos, raças, religiões, etc.
|
|
6332
6319
|
O texto deve ser impessoal e não deve conter informações pessoais do usuário.
|
|
@@ -6346,12 +6333,10 @@ let IAssistService = class IAssistService {
|
|
|
6346
6333
|
};
|
|
6347
6334
|
IAssistService.ctorParameters = () => [
|
|
6348
6335
|
{ type: HttpClient },
|
|
6349
|
-
{ type: MessageService }
|
|
6350
|
-
{ type: undefined, decorators: [{ type: Inject, args: [HostProjectConfigsInjectionToken,] }] }
|
|
6336
|
+
{ type: MessageService }
|
|
6351
6337
|
];
|
|
6352
6338
|
IAssistService = __decorate([
|
|
6353
|
-
Injectable()
|
|
6354
|
-
__param(2, Inject(HostProjectConfigsInjectionToken))
|
|
6339
|
+
Injectable()
|
|
6355
6340
|
], IAssistService);
|
|
6356
6341
|
|
|
6357
6342
|
let TextAreaIAFieldComponent = class TextAreaIAFieldComponent {
|
|
@@ -6359,31 +6344,39 @@ let TextAreaIAFieldComponent = class TextAreaIAFieldComponent {
|
|
|
6359
6344
|
this._iassistService = _iassistService;
|
|
6360
6345
|
this._formBuilder = _formBuilder;
|
|
6361
6346
|
this._translateService = _translateService;
|
|
6362
|
-
this.
|
|
6347
|
+
this.isVisible = false;
|
|
6348
|
+
this.isLoading = false;
|
|
6363
6349
|
}
|
|
6364
6350
|
ngOnInit() {
|
|
6365
6351
|
this._createDialogFields();
|
|
6366
6352
|
this._createDialogFormGroup();
|
|
6367
6353
|
}
|
|
6368
6354
|
showDialog() {
|
|
6369
|
-
this.
|
|
6355
|
+
this.isVisible = true;
|
|
6370
6356
|
}
|
|
6371
6357
|
onHideDialog() {
|
|
6372
6358
|
this.formGroup.get("context").setValue("");
|
|
6373
6359
|
}
|
|
6374
6360
|
hideDialog() {
|
|
6375
|
-
this.
|
|
6361
|
+
this.isVisible = false;
|
|
6376
6362
|
}
|
|
6377
6363
|
submitContext() {
|
|
6378
6364
|
const context = this.formGroup.get("context");
|
|
6365
|
+
this.isLoading = true;
|
|
6379
6366
|
this._iassistService.askIA(context.value, {
|
|
6380
6367
|
id: this.field.id,
|
|
6381
6368
|
label: this.field.label,
|
|
6382
6369
|
placeholder: this.field.placeholder,
|
|
6383
|
-
})
|
|
6370
|
+
})
|
|
6371
|
+
.pipe(catchError((err) => {
|
|
6372
|
+
this.isLoading = false;
|
|
6373
|
+
return throwError(err);
|
|
6374
|
+
}))
|
|
6375
|
+
.subscribe((res) => {
|
|
6384
6376
|
this.formControl.setValue(res.text);
|
|
6377
|
+
this.isLoading = false;
|
|
6385
6378
|
});
|
|
6386
|
-
this.
|
|
6379
|
+
this.hideDialog();
|
|
6387
6380
|
}
|
|
6388
6381
|
_createDialogFields() {
|
|
6389
6382
|
this.fields = [
|
|
@@ -6414,7 +6407,7 @@ __decorate([
|
|
|
6414
6407
|
], TextAreaIAFieldComponent.prototype, "formControl", void 0);
|
|
6415
6408
|
TextAreaIAFieldComponent = __decorate([
|
|
6416
6409
|
Component({
|
|
6417
|
-
template: "<p-dialog\n [header]=\"'platform.angular_components.ia_text_generator' | translate\"\n [(visible)]=\"
|
|
6410
|
+
template: "<s-loading-state\n [loading]=\"isLoading\"\n [blockWindow]=\"true\"> \n</s-loading-state>\n\n<p-dialog\n [header]=\"'platform.angular_components.ia_text_generator' | translate\"\n [(visible)]=\"isVisible\"\n [modal]=\"true\"\n [style]=\"{ width: '50vw' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n (onHide)=\"onHideDialog()\">\n <s-dynamic-form\n [fields]=\"fields\"\n [form]=\"formGroup\">\n </s-dynamic-form>\n <p-footer>\n <div class=\"footer-content\">\n <s-button\n id=\"-submit-button\"\n type=\"button\"\n [label]=\"'platform.angular_components.generate_text' | translate\"\n (onClick)=\"submitContext()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\">\n </s-button>\n <s-button\n id=\"-cancel-button\"\n type=\"button\"\n priority=\"link\"\n [label]=\"'platform.angular_components.cancel' | translate\"\n (onClick)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\">\n </s-button>\n </div>\n </p-footer>\n</p-dialog>\n\n<div class=\"textarea-ia\">\n <textarea\n [id]=\"(field.id || field.name)\"\n pInputTextarea\n [rows]=\"field.rows\"\n [cols]=\"field.cols\"\n [formControl]=\"formControl\"\n style=\"resize: vertical;\"\n [ngStyle]=\"field.style\">\n </textarea>\n <s-button\n priority=\"default\"\n (onClick)=\"showDialog()\"\n iconClass=\"far fa-lightbulb-on\"\n [auxiliary]=\"true\"\n [tooltip]=\"'platform.angular_components.ia_text_generator' | translate\">\n </s-button>\n</div>",
|
|
6418
6411
|
styles: [".footer-content{display:-ms-flexbox;display:flex;-ms-flex-positive:0;flex-grow:0}.textarea-ia{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;gap:8px}"]
|
|
6419
6412
|
})
|
|
6420
6413
|
], TextAreaIAFieldComponent);
|
|
@@ -10930,10 +10923,7 @@ let SlidePanelModule = class SlidePanelModule {
|
|
|
10930
10923
|
};
|
|
10931
10924
|
SlidePanelModule = __decorate([
|
|
10932
10925
|
NgModule({
|
|
10933
|
-
imports: [
|
|
10934
|
-
CommonModule,
|
|
10935
|
-
BrowserAnimationsModule,
|
|
10936
|
-
],
|
|
10926
|
+
imports: [CommonModule],
|
|
10937
10927
|
declarations: [SlidePanelComponent],
|
|
10938
10928
|
exports: [SlidePanelComponent],
|
|
10939
10929
|
})
|