@seniorsistemas/angular-components 17.3.10 → 17.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +27 -10
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +1 -1
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/dynamic-form/configurations/fields/text-area-ia-field.d.ts +2 -0
  6. package/components/dynamic-form/services/IAssist/iassist.service.d.ts +1 -0
  7. package/components/dynamic-form/services/IAssist/models/iassist-input-data.d.ts +1 -0
  8. package/esm2015/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.js +4 -2
  9. package/esm2015/components/dynamic-form/configurations/fields/text-area-ia-field.js +2 -1
  10. package/esm2015/components/dynamic-form/services/IAssist/iassist.service.js +24 -10
  11. package/esm2015/components/dynamic-form/services/IAssist/models/iassist-input-data.js +1 -1
  12. package/esm5/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.js +4 -2
  13. package/esm5/components/dynamic-form/configurations/fields/text-area-ia-field.js +2 -1
  14. package/esm5/components/dynamic-form/services/IAssist/iassist.service.js +25 -11
  15. package/esm5/components/dynamic-form/services/IAssist/models/iassist-input-data.js +1 -1
  16. package/fesm2015/seniorsistemas-angular-components.js +27 -10
  17. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  18. package/fesm5/seniorsistemas-angular-components.js +27 -10
  19. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  20. package/package.json +1 -1
  21. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -4960,6 +4960,7 @@ var TextAreaIAField = /** @class */ (function (_super) {
4960
4960
  _this.rows = config.rows;
4961
4961
  _this.keyFilter = config.keyFilter;
4962
4962
  _this.style = config.style;
4963
+ _this.prompt = config.prompt;
4963
4964
  return _this;
4964
4965
  }
4965
4966
  return TextAreaIAField;
@@ -5810,15 +5811,18 @@ var IAssistService = /** @class */ (function () {
5810
5811
  }
5811
5812
  IAssistService.prototype.askIA = function (context, data) {
5812
5813
  var _this = this;
5813
- return this.http.post("platform/iassist/api/latest/completions", {
5814
- "prompt": this._createPrompt(context, data),
5815
- "provider": "OPEN_AI",
5816
- "parameters": {
5817
- "model": "gpt-3.5-turbo",
5818
- "max_tokens": 700,
5819
- "temperature": 1
5820
- }
5821
- }).pipe(catchError(function (err) {
5814
+ var prompt = data.prompt ? this._replacePlaceholder(context, data) : this._createPrompt(context, data);
5815
+ return this.http
5816
+ .post("platform/iassist/api/latest/completions", {
5817
+ prompt: prompt,
5818
+ provider: "OPEN_AI",
5819
+ parameters: {
5820
+ model: "gpt-3.5-turbo",
5821
+ max_tokens: 700,
5822
+ temperature: 1,
5823
+ },
5824
+ })
5825
+ .pipe(catchError(function (err) {
5822
5826
  _this._messageService.add({
5823
5827
  severity: "error",
5824
5828
  summary: err.status ? String(err.status) : "Error",
@@ -5827,6 +5831,17 @@ var IAssistService = /** @class */ (function () {
5827
5831
  return throwError(err);
5828
5832
  }));
5829
5833
  };
5834
+ IAssistService.prototype._replacePlaceholder = function (context, data) {
5835
+ var values = __assign(__assign({}, data), { context: context });
5836
+ delete values.prompt;
5837
+ var result = data.prompt;
5838
+ for (var key in __assign(__assign({}, values), { context: context })) {
5839
+ var placeholder = new RegExp("{{\\s*" + key + "\\s*}}", "g");
5840
+ result = result.replace(placeholder, values[key]);
5841
+ }
5842
+ console.log("prompt", result);
5843
+ return result;
5844
+ };
5830
5845
  IAssistService.prototype._createPrompt = function (context, data) {
5831
5846
  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";
5832
5847
  };
@@ -9062,10 +9077,12 @@ var TextAreaIAFieldComponent = /** @class */ (function () {
9062
9077
  var _this = this;
9063
9078
  var context = this.formGroup.get("context");
9064
9079
  this.isLoading = true;
9065
- this._iassistService.askIA(context.value, {
9080
+ this._iassistService
9081
+ .askIA(context.value, {
9066
9082
  id: this.field.id,
9067
9083
  label: this.field.label,
9068
9084
  placeholder: this.field.placeholder,
9085
+ prompt: this.field.prompt,
9069
9086
  })
9070
9087
  .pipe(catchError(function (err) {
9071
9088
  _this.isLoading = false;