code7-leia 0.2.20 → 0.2.23

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.
@@ -477,7 +477,7 @@ var enTranslation = {
477
477
  deleteFileTitle: 'Delete a file',
478
478
  deleteFile: 'Important! By deleting this file, you will lose all its information and will not be able to recover it.',
479
479
  trainingTitle: 'Presset Training',
480
- trainingDescription: 'Select one or more pressets to be trained. Note: If none are selected, Lira will train all pressets.'
480
+ trainingDescription: 'Select one or more pressets to be trained. Note: If none are selected, Le-IA will train all pressets.'
481
481
  }
482
482
  },
483
483
  buttons: {
@@ -492,6 +492,7 @@ var enTranslation = {
492
492
  testArea: {
493
493
  description: 'Type a sentence to test artificial intelligence',
494
494
  typeSentence: 'Type a sentence',
495
+ typePrompt: 'Insert a custom prompt here',
495
496
  selectPersona: 'Select a Persona',
496
497
  selectPresset: 'Select a presset',
497
498
  emptyState: {
@@ -523,17 +524,17 @@ var enTranslation = {
523
524
  Test: {
524
525
  fail: {
525
526
  title: 'Failure',
526
- description: 'Error testing Lira'
527
+ description: 'Error testing Le-IA'
527
528
  }
528
529
  },
529
530
  Train: {
530
531
  fail: {
531
532
  title: 'Failure',
532
- description: 'Error training Lira'
533
+ description: 'Error training Le-IA'
533
534
  },
534
535
  success: {
535
536
  title: 'Success',
536
- description: 'Lira is in the training process!'
537
+ description: 'Le-IA is in the training process!'
537
538
  }
538
539
  }
539
540
  }
@@ -562,7 +563,7 @@ var ptTranslation = {
562
563
  deleteFileTitle: 'Excluir um arquivo',
563
564
  deleteFile: 'Importante! Ao excluir este arquivo, você perderá todas as suas informações e não poderá recuperá-las.',
564
565
  trainingTitle: 'Treinamento de predefinição',
565
- trainingDescription: 'Selecione um ou mais predefinições para serem treinadas. Obs: Caso não selecionada nenhuma a Lira irá treinar todas as predefinições'
566
+ trainingDescription: 'Selecione um ou mais predefinições para serem treinadas. Obs: Caso não selecionada nenhuma a Le-IA irá treinar todas as predefinições'
566
567
  }
567
568
  },
568
569
  buttons: {
@@ -577,6 +578,7 @@ var ptTranslation = {
577
578
  testArea: {
578
579
  description: 'Digite uma frase para testar a inteligência artificial.',
579
580
  typeSentence: 'Digite uma frase',
581
+ typePrompt: 'Insira aqui um prompt personalizado',
580
582
  selectPersona: 'Selecione uma Persona',
581
583
  selectPresset: 'Selecione uma predefinição',
582
584
  emptyState: {
@@ -608,17 +610,17 @@ var ptTranslation = {
608
610
  Test: {
609
611
  fail: {
610
612
  title: 'Falha',
611
- description: 'Erro ao testar Lira'
613
+ description: 'Erro ao testar Le-IA'
612
614
  }
613
615
  },
614
616
  Train: {
615
617
  fail: {
616
618
  title: 'Falha',
617
- description: 'Erro ao treinar a Lira'
619
+ description: 'Erro ao treinar a Le-IA'
618
620
  },
619
621
  success: {
620
622
  title: 'Sucesso',
621
- description: 'A Lira está em processo de treinamento!'
623
+ description: 'A Le-IA está em processo de treinamento!'
622
624
  }
623
625
  }
624
626
  }
@@ -647,7 +649,7 @@ var esTranslation = {
647
649
  deleteFileTitle: 'Eliminar un archivo',
648
650
  deleteFile: '¡Importante! Al eliminar este archivo, perderá toda su información y no podrá recuperarla.',
649
651
  trainingTitle: 'Entrenamiento de preconfiguración',
650
- trainingDescription: 'Seleccione una o más preconfiguracións para ser entrenadas. Nota: Si no se selecciona ninguna, Lira entrenará todas las preconfiguracións.'
652
+ trainingDescription: 'Seleccione una o más preconfiguracións para ser entrenadas. Nota: Si no se selecciona ninguna, Le-IA entrenará todas las preconfiguracións.'
651
653
  }
652
654
  },
653
655
  buttons: {
@@ -662,6 +664,7 @@ var esTranslation = {
662
664
  testArea: {
663
665
  description: 'Escribe una frase para probar la inteligencia artificial.',
664
666
  typeSentence: 'Escribe una oración',
667
+ typePrompt: 'Inserte un prompt personalizado aquí',
665
668
  selectPersona: 'Seleccionar una Persona',
666
669
  selectPresset: 'Seleccionar una preconfiguración',
667
670
  emptyState: {
@@ -693,17 +696,17 @@ var esTranslation = {
693
696
  Test: {
694
697
  fail: {
695
698
  title: 'Error',
696
- description: 'Error al probar Lira'
699
+ description: 'Error al probar Le-IA'
697
700
  }
698
701
  },
699
702
  Train: {
700
703
  fail: {
701
704
  title: 'Error',
702
- description: 'Error al entrenar Lira'
705
+ description: 'Error al entrenar Le-IA'
703
706
  },
704
707
  success: {
705
708
  title: 'Éxito',
706
- description: '¡Lira está en proceso de entrenamiento!'
709
+ description: '¡Le-IA está en proceso de entrenamiento!'
707
710
  }
708
711
  }
709
712
  }
@@ -1227,6 +1230,10 @@ var url = 'https://api.leia.digitalcontact.cloud';
1227
1230
  axios.defaults.baseURL = "" + url;
1228
1231
  var api = /*#__PURE__*/axios.create();
1229
1232
 
1233
+ var url$1 = 'http://localhost:5000';
1234
+ axios.defaults.baseURL = "" + url$1;
1235
+ var apiHml = /*#__PURE__*/axios.create();
1236
+
1230
1237
  var _excluded$5 = ["children"];
1231
1238
  var SharedPropsContext = /*#__PURE__*/React.createContext(undefined);
1232
1239
  var useSharedProps = function useSharedProps() {
@@ -1240,7 +1247,8 @@ var SharedPropsProvider = function SharedPropsProvider(_ref) {
1240
1247
  var children = _ref.children,
1241
1248
  props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
1242
1249
  var id = props.id,
1243
- language = props.language;
1250
+ language = props.language,
1251
+ env = props.env;
1244
1252
  var _useState = React.useState(null),
1245
1253
  tags = _useState[0],
1246
1254
  setTags = _useState[1];
@@ -1250,68 +1258,94 @@ var SharedPropsProvider = function SharedPropsProvider(_ref) {
1250
1258
  React.useEffect(function () {
1251
1259
  var fetchData = /*#__PURE__*/function () {
1252
1260
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
1253
- var _yield$api$get, data;
1261
+ var _ref3, data;
1254
1262
  return _regeneratorRuntime().wrap(function _callee$(_context) {
1255
1263
  while (1) switch (_context.prev = _context.next) {
1256
1264
  case 0:
1257
1265
  _context.prev = 0;
1258
- _context.next = 3;
1266
+ if (!(env.toLowerCase() === 'prod')) {
1267
+ _context.next = 7;
1268
+ break;
1269
+ }
1270
+ _context.next = 4;
1259
1271
  return api.get("/tags/" + id);
1260
- case 3:
1261
- _yield$api$get = _context.sent;
1262
- data = _yield$api$get.data;
1272
+ case 4:
1273
+ _context.t0 = _context.sent;
1274
+ _context.next = 10;
1275
+ break;
1276
+ case 7:
1277
+ _context.next = 9;
1278
+ return apiHml.get("/tags/" + id);
1279
+ case 9:
1280
+ _context.t0 = _context.sent;
1281
+ case 10:
1282
+ _ref3 = _context.t0;
1283
+ data = _ref3.data;
1263
1284
  if (data) {
1264
1285
  setTags(data);
1265
1286
  } else {
1266
1287
  console.error('Erro ao fazer a solicitação');
1267
1288
  }
1268
- _context.next = 11;
1289
+ _context.next = 18;
1269
1290
  break;
1270
- case 8:
1271
- _context.prev = 8;
1272
- _context.t0 = _context["catch"](0);
1273
- console.error('Erro ao fazer a solicitação:', _context.t0);
1274
- case 11:
1291
+ case 15:
1292
+ _context.prev = 15;
1293
+ _context.t1 = _context["catch"](0);
1294
+ console.error('Erro ao fazer a solicitação:', _context.t1);
1295
+ case 18:
1275
1296
  case "end":
1276
1297
  return _context.stop();
1277
1298
  }
1278
- }, _callee, null, [[0, 8]]);
1299
+ }, _callee, null, [[0, 15]]);
1279
1300
  }));
1280
1301
  return function fetchData() {
1281
1302
  return _ref2.apply(this, arguments);
1282
1303
  };
1283
1304
  }();
1284
1305
  var personas = /*#__PURE__*/function () {
1285
- var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
1286
- var _yield$api$get2, data;
1306
+ var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
1307
+ var _ref5, data;
1287
1308
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
1288
1309
  while (1) switch (_context2.prev = _context2.next) {
1289
1310
  case 0:
1290
1311
  _context2.prev = 0;
1291
- _context2.next = 3;
1312
+ if (!(env.toLowerCase() === 'prod')) {
1313
+ _context2.next = 7;
1314
+ break;
1315
+ }
1316
+ _context2.next = 4;
1292
1317
  return api.get("/personas?language=" + language);
1293
- case 3:
1294
- _yield$api$get2 = _context2.sent;
1295
- data = _yield$api$get2.data;
1318
+ case 4:
1319
+ _context2.t0 = _context2.sent;
1320
+ _context2.next = 10;
1321
+ break;
1322
+ case 7:
1323
+ _context2.next = 9;
1324
+ return apiHml.get("/personas?language=" + language);
1325
+ case 9:
1326
+ _context2.t0 = _context2.sent;
1327
+ case 10:
1328
+ _ref5 = _context2.t0;
1329
+ data = _ref5.data;
1296
1330
  if (data) {
1297
1331
  setPersonas(data);
1298
1332
  } else {
1299
1333
  console.error('Erro ao fazer a solicitação');
1300
1334
  }
1301
- _context2.next = 11;
1335
+ _context2.next = 18;
1302
1336
  break;
1303
- case 8:
1304
- _context2.prev = 8;
1305
- _context2.t0 = _context2["catch"](0);
1306
- console.error('Erro ao fazer a solicitação:', _context2.t0);
1307
- case 11:
1337
+ case 15:
1338
+ _context2.prev = 15;
1339
+ _context2.t1 = _context2["catch"](0);
1340
+ console.error('Erro ao fazer a solicitação:', _context2.t1);
1341
+ case 18:
1308
1342
  case "end":
1309
1343
  return _context2.stop();
1310
1344
  }
1311
- }, _callee2, null, [[0, 8]]);
1345
+ }, _callee2, null, [[0, 15]]);
1312
1346
  }));
1313
1347
  return function personas() {
1314
- return _ref3.apply(this, arguments);
1348
+ return _ref4.apply(this, arguments);
1315
1349
  };
1316
1350
  }();
1317
1351
  fetchData();
@@ -1346,12 +1380,13 @@ var Types = {
1346
1380
  NETWORK_OFFLINE: 'NETWORK_OFFLINE'
1347
1381
  };
1348
1382
 
1349
- var getFilesAction = function getFilesAction(id, token) {
1383
+ var getFilesAction = function getFilesAction(id, token, env) {
1350
1384
  return {
1351
1385
  type: Types.GET_FILES_REQUEST,
1352
1386
  payload: {
1353
1387
  id: id,
1354
- token: token
1388
+ token: token,
1389
+ env: env
1355
1390
  }
1356
1391
  };
1357
1392
  };
@@ -1364,14 +1399,15 @@ var getFilesActionSuccess = function getFilesActionSuccess(_ref) {
1364
1399
  }
1365
1400
  };
1366
1401
  };
1367
- var deleteFilesAction = function deleteFilesAction(name, id, language, token) {
1402
+ var deleteFilesAction = function deleteFilesAction(name, id, language, token, env) {
1368
1403
  return {
1369
1404
  type: Types.DELETE_FILES_REQUEST,
1370
1405
  payload: {
1371
1406
  name: name,
1372
1407
  id: id,
1373
1408
  language: language,
1374
- token: token
1409
+ token: token,
1410
+ env: env
1375
1411
  }
1376
1412
  };
1377
1413
  };
@@ -1384,7 +1420,7 @@ var deleteFilesActionSuccess = function deleteFilesActionSuccess(_ref2) {
1384
1420
  }
1385
1421
  };
1386
1422
  };
1387
- var uploadFilesAction = function uploadFilesAction(file, id, pressets, language, token) {
1423
+ var uploadFilesAction = function uploadFilesAction(file, id, pressets, language, token, env) {
1388
1424
  return {
1389
1425
  type: Types.UPLOAD_FILES_REQUEST,
1390
1426
  payload: {
@@ -1392,7 +1428,8 @@ var uploadFilesAction = function uploadFilesAction(file, id, pressets, language,
1392
1428
  id: id,
1393
1429
  pressets: pressets,
1394
1430
  language: language,
1395
- token: token
1431
+ token: token,
1432
+ env: env
1396
1433
  }
1397
1434
  };
1398
1435
  };
@@ -1405,26 +1442,29 @@ var uploadFilesActionSuccess = function uploadFilesActionSuccess(_ref3) {
1405
1442
  }
1406
1443
  };
1407
1444
  };
1408
- var trainingAction = function trainingAction(id, pressets, language, token) {
1445
+ var trainingAction = function trainingAction(id, pressets, language, token, env) {
1409
1446
  return {
1410
1447
  type: Types.TRAINING_REQUEST,
1411
1448
  payload: {
1412
1449
  id: id,
1413
1450
  pressets: pressets,
1414
1451
  language: language,
1415
- token: token
1452
+ token: token,
1453
+ env: env
1416
1454
  }
1417
1455
  };
1418
1456
  };
1419
- var testAction = function testAction(question, profile, presset, files_directory, token) {
1457
+ var testAction = function testAction(question, prompt, profile, presset, files_directory, token, env) {
1420
1458
  return {
1421
1459
  type: Types.TEST_REQUEST,
1422
1460
  payload: {
1423
1461
  question: question,
1462
+ prompt: prompt,
1424
1463
  profile: profile,
1425
1464
  presset: presset,
1426
1465
  files_directory: files_directory,
1427
- token: token
1466
+ token: token,
1467
+ env: env
1428
1468
  }
1429
1469
  };
1430
1470
  };
@@ -1453,7 +1493,8 @@ var FileArea = function FileArea() {
1453
1493
  id = _useSharedProps.id,
1454
1494
  language = _useSharedProps.language,
1455
1495
  propTags = _useSharedProps.propTags,
1456
- token = _useSharedProps.token;
1496
+ token = _useSharedProps.token,
1497
+ env = _useSharedProps.env;
1457
1498
  var _useState = React.useState([]),
1458
1499
  files = _useState[0],
1459
1500
  setFiles = _useState[1];
@@ -1491,7 +1532,7 @@ var FileArea = function FileArea() {
1491
1532
  });
1492
1533
  var tags = propTags ? propTags.tags : [];
1493
1534
  React.useEffect(function () {
1494
- dispatch(getFilesAction(id, token));
1535
+ dispatch(getFilesAction(id, token, env));
1495
1536
  }, [id]);
1496
1537
  React.useEffect(function () {
1497
1538
  if (tags.length > 0) {
@@ -1556,17 +1597,17 @@ var FileArea = function FileArea() {
1556
1597
  setModalTraining(!modalTraining);
1557
1598
  };
1558
1599
  var deleteFile = function deleteFile() {
1559
- dispatch(deleteFilesAction(fileDelete, id, language, token));
1600
+ dispatch(deleteFilesAction(fileDelete, id, language, token, env));
1560
1601
  setModalDelete(false);
1561
1602
  };
1562
1603
  var handleUploadFile = function handleUploadFile() {
1563
- dispatch(uploadFilesAction(uploadFile, id, presset, language, token));
1604
+ dispatch(uploadFilesAction(uploadFile, id, presset, language, token, env));
1564
1605
  setModal(false);
1565
1606
  setUploadFile(undefined);
1566
1607
  setPresset([]);
1567
1608
  };
1568
1609
  var handleTrain = function handleTrain() {
1569
- dispatch(trainingAction(id, presset, language, token));
1610
+ dispatch(trainingAction(id, presset, language, token, env));
1570
1611
  setModalTraining(false);
1571
1612
  setPresset([]);
1572
1613
  };
@@ -1749,6 +1790,7 @@ var FileArea = function FileArea() {
1749
1790
  id: id,
1750
1791
  language: language,
1751
1792
  token: token,
1793
+ env: env,
1752
1794
  propTags: {
1753
1795
  tags: []
1754
1796
  },
@@ -1828,13 +1870,83 @@ var InputTest = function InputTest(_ref) {
1828
1870
  }));
1829
1871
  };
1830
1872
 
1873
+ var _templateObject$c, _templateObject2$8, _templateObject3$6, _templateObject4$3, _templateObject5$3, _templateObject6$2;
1874
+ var Container$6 = /*#__PURE__*/styled__default.div(_templateObject$c || (_templateObject$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-flow: column;\n margin-bottom: ", ";\n"])), function (_ref) {
1875
+ var marginBottom = _ref.marginBottom;
1876
+ return marginBottom;
1877
+ });
1878
+ var InputWrapper = /*#__PURE__*/styled__default.div(_templateObject2$8 || (_templateObject2$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n position: relative;\n\n .icon {\n position: absolute;\n color: #5a5d68;\n\n &.start-icon {\n left: 12px;\n }\n &.end-icon {\n right: 12px;\n }\n }\n\n & .pass-view {\n position: absolute;\n right: 0;\n top: 0;\n bottom: 0;\n padding: 14px;\n font-size: 1rem;\n color: #5a5d68;\n }\n"])));
1879
+ var LabelWrapper = /*#__PURE__*/styled__default.label(_templateObject3$6 || (_templateObject3$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 8px;\n\n .label {\n display: block;\n color: #5a5d68;\n\n font-style: normal;\n font-weight: 600;\n font-size: 0.875rem;\n line-height: 114%;\n letter-spacing: -0.02em;\n }\n\n .description {\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n color: #5a5d68;\n display: block;\n }\n"])));
1880
+ var CustomTextArea = /*#__PURE__*/styled__default.textarea(_templateObject4$3 || (_templateObject4$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: 'Monospace', -apple-system, BlinkMacSystemFont, sans-serif;\n font-size: 0.875rem;\n font-style: normal;\n font-weight: 500;\n line-height: 20px;\n text-align: left;\n letter-spacing: -0.02em;\n resize: vertical;\n padding: 8px 12px;\n\n border-radius: 4px;\n border: 1px solid #979aa5;\n color: #5a5d68 !important;\n width: 100%;\n\n background: #ffffff;\n transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out,\n border 0.2s ease-in-out;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px #6690ff;\n }\n\n &:hover {\n border: 1px solid #102693;\n }\n &:active {\n border: 1px solid #102693;\n }\n &:disabled {\n border: 1px solid #dadce3;\n background: #f3f5f9;\n color: #dadce3;\n }\n\n &.small {\n min-height: 32px;\n }\n\n &.medium {\n min-height: 40px;\n }\n\n &.large {\n min-height: 48px;\n font-size: 1rem;\n }\n\n &.success {\n background: #e3f8cc;\n border: 1px solid #19660a;\n color: #19660a;\n }\n\n &.danger {\n background: #fae0d2;\n border: 1px solid #871821;\n color: #871821;\n }\n\n &.error {\n background: #fae0d2;\n border: 1px solid #871821;\n color: #871821;\n }\n\n &.has-start-icon {\n padding-left: 40px;\n }\n &.has-end-icon {\n padding-right: 40px;\n }\n"])));
1881
+ var Helper = /*#__PURE__*/styled__default.div(_templateObject5$3 || (_templateObject5$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n &.helper {\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n color: #5a5d68;\n display: block;\n margin-top: 4px;\n\n &.success {\n color: #19660a;\n }\n\n &.danger {\n color: #871821;\n }\n }\n"])));
1882
+ var Error$1 = /*#__PURE__*/styled__default.div(_templateObject6$2 || (_templateObject6$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-style: normal;\n font-weight: 500;\n font-size: 0.625rem;\n line-height: 120%;\n display: block;\n margin-top: 4px;\n color: #871821;\n"])));
1883
+
1884
+ var _excluded$6 = ["id", "label", "description", "helper", "error", "placeholder", "className", "size", "color", "disabled", "startIcon", "endIcon", "marginBottom", "rows"];
1885
+ var TextArea = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
1886
+ var id = _ref.id,
1887
+ label = _ref.label,
1888
+ description = _ref.description,
1889
+ helper = _ref.helper,
1890
+ error = _ref.error,
1891
+ placeholder = _ref.placeholder,
1892
+ className = _ref.className,
1893
+ _ref$size = _ref.size,
1894
+ size = _ref$size === void 0 ? 'medium' : _ref$size,
1895
+ _ref$color = _ref.color,
1896
+ color = _ref$color === void 0 ? '' : _ref$color,
1897
+ _ref$disabled = _ref.disabled,
1898
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
1899
+ startIcon = _ref.startIcon,
1900
+ endIcon = _ref.endIcon,
1901
+ _ref$marginBottom = _ref.marginBottom,
1902
+ marginBottom = _ref$marginBottom === void 0 ? '3px' : _ref$marginBottom,
1903
+ _ref$rows = _ref.rows,
1904
+ rows = _ref$rows === void 0 ? 4 : _ref$rows,
1905
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$6);
1906
+ var selfId = id || "input__" + Math.random().toString(36).substr(2, 9);
1907
+ return React__default.createElement(Container$6, {
1908
+ className: className,
1909
+ marginBottom: marginBottom
1910
+ }, label && React__default.createElement(LabelWrapper, {
1911
+ htmlFor: selfId
1912
+ }, React__default.createElement("span", {
1913
+ className: "label"
1914
+ }, label), description && React__default.createElement("span", {
1915
+ className: "description"
1916
+ }, description)), React__default.createElement(InputWrapper, {
1917
+ className: cc({
1918
+ hasLabel: Boolean(label)
1919
+ })
1920
+ }, React__default.createElement(CustomTextArea, Object.assign({
1921
+ className: cc(['input', size, color, {
1922
+ error: Boolean(error),
1923
+ 'has-start-icon': Boolean(startIcon),
1924
+ 'has-end-icon': Boolean(endIcon)
1925
+ }]),
1926
+ id: selfId,
1927
+ placeholder: placeholder,
1928
+ disabled: disabled,
1929
+ rows: rows,
1930
+ ref: ref
1931
+ }, props)), startIcon && React__default.createElement("span", {
1932
+ className: cc(['icon', 'start-icon'])
1933
+ }, startIcon), endIcon && React__default.createElement("span", {
1934
+ className: cc(['icon', 'end-icon'])
1935
+ }, endIcon)), helper && React__default.createElement(Helper, {
1936
+ className: cc(['helper', color])
1937
+ }, helper), error && React__default.createElement(Error$1, {
1938
+ className: cc(['error'])
1939
+ }, error));
1940
+ });
1941
+
1831
1942
  var TestArea = function TestArea() {
1832
1943
  var _useSharedProps = useSharedProps(),
1833
1944
  id = _useSharedProps.id,
1834
1945
  language = _useSharedProps.language,
1835
1946
  personas = _useSharedProps.personas,
1836
1947
  propTags = _useSharedProps.propTags,
1837
- token = _useSharedProps.token;
1948
+ token = _useSharedProps.token,
1949
+ env = _useSharedProps.env;
1838
1950
  var t = getLanguage(language);
1839
1951
  var results = reactRedux.useSelector(function (state) {
1840
1952
  return state.message;
@@ -1846,11 +1958,14 @@ var TestArea = function TestArea() {
1846
1958
  search = _useState[0],
1847
1959
  setSearch = _useState[1];
1848
1960
  var _useState2 = React.useState(''),
1849
- profile = _useState2[0],
1850
- setProfile = _useState2[1];
1961
+ prompt = _useState2[0],
1962
+ setPrompt = _useState2[1];
1851
1963
  var _useState3 = React.useState(''),
1852
- presset = _useState3[0],
1853
- setPresset = _useState3[1];
1964
+ profile = _useState3[0],
1965
+ setProfile = _useState3[1];
1966
+ var _useState4 = React.useState(''),
1967
+ presset = _useState4[0],
1968
+ setPresset = _useState4[1];
1854
1969
  var dispatch = reactRedux.useDispatch();
1855
1970
  var tags = propTags ? propTags.tags : [];
1856
1971
  var optionsPersona = personas && personas.map(function (persona) {
@@ -1874,8 +1989,11 @@ var TestArea = function TestArea() {
1874
1989
  var handleSearch = function handleSearch(value) {
1875
1990
  setSearch(value);
1876
1991
  };
1992
+ var handlePrompt = function handlePrompt(value) {
1993
+ setPrompt(value);
1994
+ };
1877
1995
  var handleTest = function handleTest() {
1878
- dispatch(testAction(search, profile, presset, id, token));
1996
+ dispatch(testAction(search, prompt, profile, presset, id, token, env));
1879
1997
  };
1880
1998
  var returnTest = function returnTest() {
1881
1999
  return React__default.createElement(Container$3, {
@@ -1891,6 +2009,14 @@ var TestArea = function TestArea() {
1891
2009
  placeholder: t.testArea.selectPersona,
1892
2010
  options: optionsPersona,
1893
2011
  onSelect: handleSelectPersona
2012
+ }), profile === "Custom" && React__default.createElement(TextArea, {
2013
+ className: "textarea-message",
2014
+ label: "Prompt",
2015
+ placeholder: t.testArea.typePrompt,
2016
+ value: prompt,
2017
+ onChange: function onChange(e) {
2018
+ handlePrompt(e.target.value);
2019
+ }
1894
2020
  }), React__default.createElement(CustomSelect, {
1895
2021
  placeholder: t.testArea.selectPresset,
1896
2022
  options: optionsPresset,
@@ -1912,6 +2038,7 @@ var TestArea = function TestArea() {
1912
2038
  id: id,
1913
2039
  token: token,
1914
2040
  language: language,
2041
+ env: env,
1915
2042
  propTags: {
1916
2043
  tags: []
1917
2044
  },
@@ -1935,6 +2062,7 @@ var Leia = function Leia(props) {
1935
2062
  propTags: {
1936
2063
  tags: []
1937
2064
  },
2065
+ env: '',
1938
2066
  personas: [{
1939
2067
  name: '',
1940
2068
  description: ''
@@ -2062,7 +2190,7 @@ var _marked = /*#__PURE__*/_regeneratorRuntime().mark(getFilesSaga),
2062
2190
  _marked5 = /*#__PURE__*/_regeneratorRuntime().mark(TrainingSaga),
2063
2191
  _marked6 = /*#__PURE__*/_regeneratorRuntime().mark(filesSagas);
2064
2192
  function getFilesSaga(action) {
2065
- var _action$payload, id, token, _yield$call, data;
2193
+ var _action$payload, id, token, env, _yield$call, data;
2066
2194
  return _regeneratorRuntime().wrap(function getFilesSaga$(_context) {
2067
2195
  while (1) switch (_context.prev = _context.next) {
2068
2196
  case 0:
@@ -2070,9 +2198,9 @@ function getFilesSaga(action) {
2070
2198
  _context.next = 3;
2071
2199
  return effects.put(commonLoadingStart());
2072
2200
  case 3:
2073
- _action$payload = action.payload, id = _action$payload.id, token = _action$payload.token;
2201
+ _action$payload = action.payload, id = _action$payload.id, token = _action$payload.token, env = _action$payload.env;
2074
2202
  _context.next = 6;
2075
- return effects.call(api.get, "/training/" + id + "?token=" + token);
2203
+ return effects.call(env.toLowerCase() === 'prod' ? api.get : apiHml.get, "/training/" + id + "?token=" + token);
2076
2204
  case 6:
2077
2205
  _yield$call = _context.sent;
2078
2206
  data = _yield$call.data;
@@ -2100,7 +2228,7 @@ function getFilesSaga(action) {
2100
2228
  }, _marked, null, [[0, 12, 15, 19]]);
2101
2229
  }
2102
2230
  function deleteFilesSaga(action) {
2103
- var t, _action$payload2, id, name, token, _yield$call2, data;
2231
+ var t, _action$payload2, id, name, token, env, _yield$call2, data;
2104
2232
  return _regeneratorRuntime().wrap(function deleteFilesSaga$(_context2) {
2105
2233
  while (1) switch (_context2.prev = _context2.next) {
2106
2234
  case 0:
@@ -2109,12 +2237,12 @@ function deleteFilesSaga(action) {
2109
2237
  _context2.next = 4;
2110
2238
  return effects.put(commonLoadingStart());
2111
2239
  case 4:
2112
- _action$payload2 = action.payload, id = _action$payload2.id, name = _action$payload2.name, token = _action$payload2.token;
2240
+ _action$payload2 = action.payload, id = _action$payload2.id, name = _action$payload2.name, token = _action$payload2.token, env = _action$payload2.env;
2113
2241
  _context2.next = 7;
2114
- return effects.call(api["delete"], "/delete/" + id + "/" + name + "?token=" + token);
2242
+ return effects.call(env.toLowerCase() === 'prod' ? api["delete"] : apiHml["delete"], "/delete/" + id + "/" + name + "?token=" + token);
2115
2243
  case 7:
2116
2244
  _context2.next = 9;
2117
- return effects.call(api.get, "/training/" + id + "?token=" + token);
2245
+ return effects.call(env.toLowerCase() === 'prod' ? api.get : apiHml.get, "/training/" + id + "?token=" + token);
2118
2246
  case 9:
2119
2247
  _yield$call2 = _context2.sent;
2120
2248
  data = _yield$call2.data;
@@ -2147,7 +2275,7 @@ function deleteFilesSaga(action) {
2147
2275
  }, _marked2, null, [[1, 15, 19, 23]]);
2148
2276
  }
2149
2277
  function testSaga(action) {
2150
- var _action$payload3, question, profile, presset, files_directory, token, _yield$call3, data;
2278
+ var _action$payload3, question, prompt, profile, presset, files_directory, token, env, _yield$call3, data;
2151
2279
  return _regeneratorRuntime().wrap(function testSaga$(_context3) {
2152
2280
  while (1) switch (_context3.prev = _context3.next) {
2153
2281
  case 0:
@@ -2155,10 +2283,11 @@ function testSaga(action) {
2155
2283
  _context3.next = 3;
2156
2284
  return effects.put(commonLoadingStart());
2157
2285
  case 3:
2158
- _action$payload3 = action.payload, question = _action$payload3.question, profile = _action$payload3.profile, presset = _action$payload3.presset, files_directory = _action$payload3.files_directory, token = _action$payload3.token;
2286
+ _action$payload3 = action.payload, question = _action$payload3.question, prompt = _action$payload3.prompt, profile = _action$payload3.profile, presset = _action$payload3.presset, files_directory = _action$payload3.files_directory, token = _action$payload3.token, env = _action$payload3.env;
2159
2287
  _context3.next = 6;
2160
- return effects.call(api.post, "/ask", {
2288
+ return effects.call(env.toLowerCase() === 'prod' ? api.post : apiHml.post, "/ask", {
2161
2289
  question: question,
2290
+ description: prompt,
2162
2291
  profile: profile,
2163
2292
  tag: presset,
2164
2293
  files_directory: files_directory,
@@ -2191,7 +2320,7 @@ function testSaga(action) {
2191
2320
  }, _marked3, null, [[0, 12, 15, 19]]);
2192
2321
  }
2193
2322
  function uploadFilesSaga(action) {
2194
- var t, _action$payload4, id, file, pressets, token, blob, formData, sanitizedPath, queryParams, url, _yield$call4, data;
2323
+ var t, _action$payload4, id, file, pressets, token, env, blob, formData, sanitizedPath, queryParams, url, _yield$call4, data;
2195
2324
  return _regeneratorRuntime().wrap(function uploadFilesSaga$(_context4) {
2196
2325
  while (1) switch (_context4.prev = _context4.next) {
2197
2326
  case 0:
@@ -2200,24 +2329,24 @@ function uploadFilesSaga(action) {
2200
2329
  _context4.next = 4;
2201
2330
  return effects.put(commonLoadingStart());
2202
2331
  case 4:
2203
- _action$payload4 = action.payload, id = _action$payload4.id, file = _action$payload4.file, pressets = _action$payload4.pressets, token = _action$payload4.token;
2332
+ _action$payload4 = action.payload, id = _action$payload4.id, file = _action$payload4.file, pressets = _action$payload4.pressets, token = _action$payload4.token, env = _action$payload4.env;
2204
2333
  blob = new Blob([file.content]);
2205
2334
  formData = new FormData();
2206
- sanitizedPath = file.properties.path.replace(/^(\.\/|\/+)|\/+$/g, '');
2335
+ sanitizedPath = file.properties.path.replace(/^\/+|\/+$/g, '');
2207
2336
  formData.append('file', blob, sanitizedPath || 'default_filename');
2208
2337
  queryParams = pressets.length ? new URLSearchParams({
2209
2338
  tags: pressets.join(',')
2210
2339
  }).toString() : '';
2211
2340
  url = queryParams ? "/upload/" + id + "?token=" + token + "&" + queryParams : "/upload/" + id + "?token=" + token;
2212
2341
  _context4.next = 13;
2213
- return effects.call(api.post, url, formData, {
2342
+ return effects.call(env.toLowerCase() === 'prod' ? api.post : apiHml.post, url, formData, {
2214
2343
  headers: {
2215
2344
  'Content-Type': 'multipart/form-data'
2216
2345
  }
2217
2346
  });
2218
2347
  case 13:
2219
2348
  _context4.next = 15;
2220
- return effects.call(api.get, "/training/" + id + "?token=" + token);
2349
+ return effects.call(env.toLowerCase() === 'prod' ? api.get : apiHml.get, "/training/" + id + "?token=" + token);
2221
2350
  case 15:
2222
2351
  _yield$call4 = _context4.sent;
2223
2352
  data = _yield$call4.data;
@@ -2249,7 +2378,7 @@ function uploadFilesSaga(action) {
2249
2378
  }, _marked4, null, [[1, 21, 25, 29]]);
2250
2379
  }
2251
2380
  function TrainingSaga(action) {
2252
- var t, _action$payload5, id, pressets, token, tag, queryParams, _yield$call5, data;
2381
+ var t, _action$payload5, id, pressets, token, env, tag, queryParams, _yield$call5, data;
2253
2382
  return _regeneratorRuntime().wrap(function TrainingSaga$(_context5) {
2254
2383
  while (1) switch (_context5.prev = _context5.next) {
2255
2384
  case 0:
@@ -2258,19 +2387,19 @@ function TrainingSaga(action) {
2258
2387
  _context5.next = 4;
2259
2388
  return effects.put(commonLoadingStart());
2260
2389
  case 4:
2261
- _action$payload5 = action.payload, id = _action$payload5.id, pressets = _action$payload5.pressets, token = _action$payload5.token;
2390
+ _action$payload5 = action.payload, id = _action$payload5.id, pressets = _action$payload5.pressets, token = _action$payload5.token, env = _action$payload5.env;
2262
2391
  tag = pressets.join(',');
2263
2392
  queryParams = new URLSearchParams({
2264
2393
  tag: tag
2265
2394
  }).toString();
2266
2395
  _context5.next = 9;
2267
- return effects.call(api.post, pressets.length > 0 ? "/training?" + queryParams : "/training", {
2396
+ return effects.call(env.toLowerCase() === 'prod' ? api.post : apiHml.post, pressets.length > 0 ? "/training?" + queryParams : "/training", {
2268
2397
  files_directory: id,
2269
2398
  token: token
2270
2399
  });
2271
2400
  case 9:
2272
2401
  _context5.next = 11;
2273
- return effects.call(api.get, "/training/" + id + "?token=" + token);
2402
+ return effects.call(env.toLowerCase() === 'prod' ? api.get : apiHml.get, "/training/" + id + "?token=" + token);
2274
2403
  case 11:
2275
2404
  _yield$call5 = _context5.sent;
2276
2405
  data = _yield$call5.data;