complexqa_frontend_core 1.0.0 → 1.0.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "complexqa_frontend_core",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "core of web ",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,9 +1,14 @@
1
+
2
+ import i18next from 'i18next';
3
+ import axios from "axios";
4
+ import * as qs from "query-string/base";
5
+
1
6
  /**
2
7
  * Прототип идеи, пока не уверен, что именно так надо
3
8
  *
4
9
  * @version v.0.1 (25/06/2024)
5
10
  */
6
- class App
11
+ export class App
7
12
  {
8
13
 
9
14
  init_options = false;
@@ -38,13 +43,14 @@ class App
38
43
  this.service.translate = new serviceTranslate();
39
44
  }
40
45
  }
41
-
46
+
47
+
42
48
  /**
43
49
  * Общие методы для всех типизированных элементов
44
50
  *
45
51
  * @version v.2.0 (24/11/2024)
46
52
  */
47
- class ApiAbstractElementClass
53
+ export class ApiAbstractElementClass
48
54
  {
49
55
 
50
56
  init_options;
@@ -423,13 +429,14 @@ class ApiAbstractElementClass
423
429
 
424
430
  return response;
425
431
  }
426
- }
432
+ }
433
+
427
434
 
428
435
  /**
429
436
  *
430
437
  * @version v.0.1 (24/11/2024)
431
438
  */
432
- class FunctionalApi extends ApiAbstractElementClass
439
+ export class FunctionalApi extends ApiAbstractElementClass
433
440
  {
434
441
  module_prefix = 'functional';
435
442
 
@@ -438,12 +445,13 @@ class FunctionalApi extends ApiAbstractElementClass
438
445
  super(options);
439
446
  this.set_element_class_instance(typeFunctional);
440
447
  }
441
- }
448
+ }
449
+
442
450
  /**
443
451
  * Обертка над axios
444
452
  * @version v.0.3 (26/01/2025)
445
453
  */
446
- class Api
454
+ export class Api
447
455
  {
448
456
  /**
449
457
  * Режим работы
@@ -544,12 +552,13 @@ class Api
544
552
  this.project = new ProjectApi(payload);
545
553
  this.service = new ServiceApi(payload);
546
554
  }
547
- }
555
+ }
556
+
548
557
  /**
549
558
  *
550
559
  * @version v.0.1 (15/06/2024)
551
560
  */
552
- class ProjectApi extends ApiAbstractElementClass
561
+ export class ProjectApi extends ApiAbstractElementClass
553
562
  {
554
563
  module_prefix = 'project';
555
564
 
@@ -558,10 +567,10 @@ class ProjectApi extends ApiAbstractElementClass
558
567
  super(options);
559
568
  this.set_element_class_instance(typeProject);
560
569
  }
561
- }
570
+ }
562
571
 
563
572
  // тут нужен свой класс, не для типов
564
- class ServiceApi
573
+ export class ServiceApi
565
574
  {
566
575
  module_prefix = '--';
567
576
 
@@ -578,13 +587,14 @@ class ServiceApi
578
587
  {
579
588
  return [];
580
589
  }
581
- }
590
+ }
591
+
582
592
 
583
593
  /**
584
594
  *
585
595
  * @version v.0.1 (24/11/2024)
586
596
  */
587
- class TeamMemberApi extends ApiAbstractElementClass
597
+ export class TeamMemberApi extends ApiAbstractElementClass
588
598
  {
589
599
  module_prefix = 'team_member';
590
600
 
@@ -593,13 +603,14 @@ class TeamMemberApi extends ApiAbstractElementClass
593
603
  super(options);
594
604
  this.set_element_class_instance(typeTeamMember);
595
605
  }
596
- }
606
+ }
607
+
597
608
 
598
609
  /**
599
610
  *
600
611
  * @version v.0.1 (24/11/2024)
601
612
  */
602
- class TestCaseApi extends ApiAbstractElementClass
613
+ export class TestCaseApi extends ApiAbstractElementClass
603
614
  {
604
615
  module_prefix = 'test_case';
605
616
 
@@ -608,13 +619,14 @@ class TestCaseApi extends ApiAbstractElementClass
608
619
  super(options);
609
620
  this.set_element_class_instance(typeTestCase);
610
621
  }
611
- }
622
+ }
623
+
612
624
 
613
625
  /**
614
626
  *
615
627
  * @version v.0.1 (24/11/2024)
616
628
  */
617
- class TestCaseStepApi extends ApiAbstractElementClass
629
+ export class TestCaseStepApi extends ApiAbstractElementClass
618
630
  {
619
631
  module_prefix = 'test_case_step';
620
632
 
@@ -623,13 +635,14 @@ class TestCaseStepApi extends ApiAbstractElementClass
623
635
  super(options);
624
636
  this.set_element_class_instance(typeTestCaseStep);
625
637
  }
626
- }
638
+ }
639
+
627
640
 
628
641
  /**
629
642
  *
630
643
  * @version v.0.1 (26/05/2024)
631
644
  */
632
- class TestPlanApi extends ApiAbstractElementClass
645
+ export class TestPlanApi extends ApiAbstractElementClass
633
646
  {
634
647
  module_prefix = 'test_plan';
635
648
 
@@ -638,8 +651,9 @@ class TestPlanApi extends ApiAbstractElementClass
638
651
  super(options);
639
652
  this.set_element_class_instance(typeTestPlan);
640
653
  }
641
- }
642
- class TestRunApi extends ApiAbstractElementClass
654
+ }
655
+
656
+ export class TestRunApi extends ApiAbstractElementClass
643
657
  {
644
658
  module_prefix = 'test_run';
645
659
 
@@ -648,13 +662,14 @@ class TestRunApi extends ApiAbstractElementClass
648
662
  super(options);
649
663
  this.set_element_class_instance(typeTestRun);
650
664
  }
651
- }
665
+ }
666
+
652
667
 
653
668
  /**
654
669
  *
655
670
  * @version v.0.1 (24/11/2024)
656
671
  */
657
- class TestRunResultApi extends ApiAbstractElementClass
672
+ export class TestRunResultApi extends ApiAbstractElementClass
658
673
  {
659
674
  module_prefix = 'test_run_result';
660
675
 
@@ -663,13 +678,14 @@ class TestRunResultApi extends ApiAbstractElementClass
663
678
  super(options);
664
679
  this.set_element_class_instance(typeTestRunResult);
665
680
  }
666
- }
681
+ }
682
+
667
683
 
668
684
  /**
669
685
  *
670
686
  * @version v.0.1 (24/11/2024)
671
687
  */
672
- class TestSuiteApi extends ApiAbstractElementClass
688
+ export class TestSuiteApi extends ApiAbstractElementClass
673
689
  {
674
690
  module_prefix = 'test_suite';
675
691
 
@@ -678,8 +694,8 @@ class TestSuiteApi extends ApiAbstractElementClass
678
694
  super(options);
679
695
  this.set_element_class_instance(typeTestSuite);
680
696
  }
681
- }
682
- class ApiException extends Error
697
+ }
698
+ export class ApiException extends Error
683
699
  {
684
700
  /**
685
701
  * Сообщение об ошибке
@@ -747,12 +763,12 @@ class ApiException extends Error
747
763
  return this.#message;
748
764
  }
749
765
  }
750
- }
766
+ }
751
767
  /**
752
768
  *
753
769
  * @version v.0.1 (25/06/2024)
754
770
  */
755
- class abstractService
771
+ export class abstractService
756
772
  {
757
773
  init_options = false;
758
774
 
@@ -773,16 +789,23 @@ class abstractService
773
789
  this.constructor._instance = this;*/
774
790
  }
775
791
 
792
+
793
+ static mock()
794
+ {
795
+
796
+ }
797
+
776
798
  /*#bootstrap()
777
799
  {
778
800
 
779
801
  }*/
780
- }
802
+ }
803
+
781
804
  /**
782
805
  *
783
806
  * @version v.0.1 (25/06/2024)
784
807
  */
785
- class serviceTranslate extends abstractService
808
+ export class serviceTranslate extends abstractService
786
809
  {
787
810
  #language = 'en';
788
811
  #available_language = [ 'ru', 'en' ];
@@ -871,39 +894,34 @@ class serviceTranslate extends abstractService
871
894
  {
872
895
  return this.#vendor_instance.t(group + '.' + key);
873
896
  }
874
- }
875
- /*
876
- /!**
897
+ }
898
+
899
+
900
+ /**
877
901
  *
878
902
  * @version v.1.0 (18/11/2024)
879
- *!/
880
- class UserService extends abstractService
903
+ */
904
+ export class UserService extends abstractService
881
905
  {
882
906
 
883
- static #current_user_id = '-1';
884
- static #user_name = '';
885
- static #current_team_id = '';
886
- static #user_teams = [ -1 ];
887
- static #roles = [ 'user' ];
888
- static #current_language = 'en';
907
+ static current_user_id = false;
908
+ static user_name = false;
909
+ static current_team_id = false;
910
+ static current_team_slug = false;
911
+ static user_teams = false;
912
+ static roles = [ 'guest' ];
913
+ static current_language = 'en';
914
+ static csrf_token = false;
889
915
 
890
916
 
891
- /!**
892
- *
893
- *
894
- * @version v.1.0 (18/11/2024)
895
- *
896
- * @param init_options
897
- * @returns {*}
898
- *!/
899
- /!**
917
+ /**
900
918
  *
901
919
  *
902
920
  * @version v.1.0 (18/11/2024)
903
921
  *
904
922
  * @param init_options
905
923
  * @returns {*}
906
- *!/
924
+ */
907
925
  constructor(init_options = false)
908
926
  {
909
927
  super();
@@ -915,46 +933,103 @@ class UserService extends abstractService
915
933
  this.init_options = init_options;
916
934
 
917
935
  this.constructor._instance = this;
918
- super();
936
+ }
937
+
938
+ static mock()
939
+ {
940
+ MockUserService.mock_attributes.map((row) =>
941
+ {
942
+ UserService[ row.key ] = row.value;
943
+ });
944
+ }
945
+
946
+ static get_csrf_token()
947
+ {
948
+ return UserService.csrf_token;
949
+ }
950
+
951
+ static set_csrf_token(csrf_token)
952
+ {
953
+ UserService.csrf_token = csrf_token;
919
954
  }
920
955
 
921
956
  static get_current_user_id()
922
957
  {
923
- return UserService.#current_user_id;
958
+ return UserService.current_user_id;
959
+ }
960
+
961
+ static set_current_user_id(current_user_id)
962
+ {
963
+ UserService.current_user_id = current_user_id;
964
+ }
965
+
966
+ static get_current_team_slug()
967
+ {
968
+ return UserService.current_team_slug;
969
+ }
970
+
971
+ static set_current_team_slug(current_team_slug)
972
+ {
973
+ UserService.current_team_slug = current_team_slug;
924
974
  }
925
975
 
926
976
  static get_user_name()
927
977
  {
928
- return UserService.#user_name;
978
+ return UserService.user_name;
979
+ }
980
+
981
+ static set_user_name(user_name)
982
+ {
983
+ UserService.user_name = user_name;
929
984
  }
930
985
 
931
986
  static get_current_team_id()
932
987
  {
933
- return UserService.#current_team_id;
988
+ return UserService.current_team_id;
989
+ }
990
+
991
+ static set_current_team_id(current_team_id)
992
+ {
993
+ UserService.current_team_id = current_team_id;
934
994
  }
935
995
 
936
996
  static get_user_teams()
937
997
  {
938
- return UserService.#user_teams;
998
+ return UserService.user_teams;
999
+ }
1000
+
1001
+ static set_user_teams(user_teams)
1002
+ {
1003
+ UserService.user_teams = user_teams;
939
1004
  }
940
1005
 
941
1006
  static get_roles()
942
1007
  {
943
- return UserService.#roles;
1008
+ return UserService.roles;
1009
+ }
1010
+
1011
+ static get_roles(roles)
1012
+ {
1013
+ UserService.roles = roles;
944
1014
  }
945
1015
 
946
1016
  static get_current_language()
947
1017
  {
948
- return UserService.#current_language;
1018
+ return UserService.current_language;
949
1019
  }
950
- }*/
951
-
1020
+
1021
+ static set_current_language(current_language)
1022
+ {
1023
+ UserService.current_language = current_language;
1024
+ }
1025
+ }
1026
+
952
1027
  /**
953
1028
  *
954
1029
  * @param {object} object
955
1030
  * @returns {object}
956
1031
  */
957
- function clone_object(object)
1032
+ export function clone_object(object)
958
1033
  {
959
1034
  // @todo use deep clone
960
1035
  // @todo add validation
@@ -965,7 +1040,7 @@ function clone_object(object)
965
1040
  *
966
1041
  * @param {string|number|array|object} text
967
1042
  */
968
- function echo(text)
1043
+ export function echo(text)
969
1044
  {
970
1045
  console.log(text);
971
1046
  }
@@ -975,7 +1050,7 @@ function echo(text)
975
1050
  *
976
1051
  * @param {string|number|array|object} data
977
1052
  */
978
- function echo_table(...data)
1053
+ export function echo_table(...data)
979
1054
  {
980
1055
  if (is_array(data))
981
1056
  {
@@ -997,7 +1072,7 @@ function echo_table(...data)
997
1072
  * @param {boolean} strict_mode
998
1073
  * @returns {boolean}
999
1074
  */
1000
- function is_array(data, strict_mode = false)
1075
+ export function is_array(data, strict_mode = false)
1001
1076
  {
1002
1077
  if (strict_mode)
1003
1078
  {
@@ -1030,7 +1105,7 @@ function is_array(data, strict_mode = false)
1030
1105
  * @param {*} value
1031
1106
  * @returns {boolean}
1032
1107
  */
1033
- function is_object(value)
1108
+ export function is_object(value)
1034
1109
  {
1035
1110
  return _.isObject(value);
1036
1111
  }
@@ -1042,7 +1117,7 @@ function is_object(value)
1042
1117
  * @param {*} value
1043
1118
  * @returns {boolean}
1044
1119
  */
1045
- function is_string(value)
1120
+ export function is_string(value)
1046
1121
  {
1047
1122
  let response = false;
1048
1123
  if (typeof value === 'string')
@@ -1059,7 +1134,7 @@ function is_string(value)
1059
1134
  * @param {*} value
1060
1135
  * @returns {boolean}
1061
1136
  */
1062
- function is_number(value)
1137
+ export function is_number(value)
1063
1138
  {
1064
1139
  let response = false;
1065
1140
 
@@ -1086,7 +1161,7 @@ function is_number(value)
1086
1161
  * @param {array} array массив
1087
1162
  * @returns {number|false} количество элементов массива
1088
1163
  */
1089
- function count(array)
1164
+ export function count(array)
1090
1165
  {
1091
1166
  let response = false;
1092
1167
  if (array instanceof Array)
@@ -1109,7 +1184,7 @@ function count(array)
1109
1184
  * @param {boolean} strict
1110
1185
  * @returns {boolean}
1111
1186
  */
1112
- function in_array(value, array, strict = false)
1187
+ export function in_array(value, array, strict = false)
1113
1188
  {
1114
1189
  if (!is_array(array))
1115
1190
  {
@@ -1135,16 +1210,47 @@ function in_array(value, array, strict = false)
1135
1210
  return Boolean(response);
1136
1211
  }
1137
1212
 
1138
- function cls()
1213
+ export function cls()
1139
1214
  {
1140
1215
  console.clear();
1141
- }
1216
+ }
1217
+ export class MockUserService
1218
+ {
1219
+ static mock_attributes = [ {
1220
+ key : 'current_user_id',
1221
+ value: 999999
1222
+ }, {
1223
+ key : 'user_name',
1224
+ value: 'Local User Name'
1225
+ }, {
1226
+ key : 'current_team_id',
1227
+ value: 99999999
1228
+ }, {
1229
+ key : 'current_team_slug',
1230
+ value: 'mock_team'
1231
+ }, {
1232
+ key : 'user_teams',
1233
+ value: [ 'mock_team' ]
1234
+ }, {
1235
+ key : 'roles',
1236
+ value: [ 'guest' ]
1237
+ }, {
1238
+ key : 'current_language',
1239
+ value: 'en'
1240
+ }, {
1241
+ key : 'csrf_token',
1242
+ value: 'as89as98asd098asd98'
1243
+ },
1244
+ ];
1245
+
1246
+ }
1247
+
1142
1248
  /**
1143
1249
  * Базовый абстрактный класс для всех типов
1144
1250
  *
1145
1251
  * @version v.0.1 (26/05/2024)
1146
1252
  */
1147
- class familyGeneralElement
1253
+ export class familyGeneralElement
1148
1254
  {
1149
1255
  primary_key = false;
1150
1256
  create_scheme = false;
@@ -1401,22 +1507,23 @@ class familyGeneralElement
1401
1507
  alert('Error #267-001 Not implemented method');
1402
1508
  return false;
1403
1509
  }
1404
- }
1510
+ }
1405
1511
  /**
1406
1512
  * Заготовка - логи действий
1407
1513
  *
1408
1514
  * @version v.0.1 (15/10/2024)
1409
1515
  */
1410
- class typeActionLog
1516
+ export class typeActionLog
1411
1517
  {
1412
1518
 
1413
- }
1519
+ }
1520
+
1414
1521
 
1415
1522
  /**
1416
1523
  *
1417
1524
  * @version v.0.1 (23/06/2024)
1418
1525
  */
1419
- class typeFunctional extends familyGeneralElement
1526
+ export class typeFunctional extends familyGeneralElement
1420
1527
  {
1421
1528
  functional_id;
1422
1529
  project_id; // foreign key
@@ -1503,12 +1610,13 @@ class typeFunctional extends familyGeneralElement
1503
1610
  }
1504
1611
 
1505
1612
 
1506
- }
1613
+ }
1614
+
1507
1615
 
1508
1616
  /**
1509
1617
  * @version v.0.2 (25/01/2025)
1510
1618
  */
1511
- class typeFunctionalGroup extends familyGeneralElement
1619
+ export class typeFunctionalGroup extends familyGeneralElement
1512
1620
  {
1513
1621
  functional_group_id;
1514
1622
  project_id; // foreign key
@@ -1595,12 +1703,13 @@ class typeFunctionalGroup extends familyGeneralElement
1595
1703
  }
1596
1704
 
1597
1705
 
1598
- }
1706
+ }
1707
+
1599
1708
  /**
1600
1709
  *
1601
1710
  * @version v.0.2 (15/06/2024)
1602
1711
  */
1603
- class typeMilestone extends familyGeneralElement
1712
+ export class typeMilestone extends familyGeneralElement
1604
1713
  {
1605
1714
  milestone_id; // primary AI
1606
1715
  milestone_name;
@@ -1685,13 +1794,14 @@ class typeMilestone extends familyGeneralElement
1685
1794
  }
1686
1795
 
1687
1796
 
1688
- }
1797
+ }
1798
+
1689
1799
 
1690
1800
  /**
1691
1801
  *
1692
1802
  * @version v.0.2 (15/06/2024)
1693
1803
  */
1694
- class typeProject extends familyGeneralElement
1804
+ export class typeProject extends familyGeneralElement
1695
1805
  {
1696
1806
  project_id; // primary
1697
1807
  project_name;
@@ -1848,7 +1958,8 @@ class typeProject extends familyGeneralElement
1848
1958
  member_get() {}
1849
1959
 
1850
1960
 
1851
- }
1961
+ }
1962
+
1852
1963
  /**
1853
1964
  * (идея) - у проекта должна быть тестовая документация
1854
1965
  *
@@ -1856,7 +1967,7 @@ class typeProject extends familyGeneralElement
1856
1967
  *
1857
1968
  * @version v.0.2 (07/07/2024)
1858
1969
  */
1859
- class typeProjectDocument extends familyGeneralElement
1970
+ export class typeProjectDocument extends familyGeneralElement
1860
1971
  {
1861
1972
  project_document_id;
1862
1973
  project_id;
@@ -1925,7 +2036,8 @@ class typeProjectDocument extends familyGeneralElement
1925
2036
  {
1926
2037
 
1927
2038
  }
1928
- }
2039
+ }
2040
+
1929
2041
  /**
1930
2042
  * Тестовые аккаунты
1931
2043
  *
@@ -1934,7 +2046,7 @@ class typeProjectDocument extends familyGeneralElement
1934
2046
  *
1935
2047
  * @version v.0.1 (30/06/2024)
1936
2048
  */
1937
- class typeProjectTestAccount extends familyGeneralElement
2049
+ export class typeProjectTestAccount extends familyGeneralElement
1938
2050
  {
1939
2051
  test_account_id;
1940
2052
  project_id;
@@ -1981,7 +2093,8 @@ class typeProjectTestAccount extends familyGeneralElement
1981
2093
 
1982
2094
  return this;
1983
2095
  }
1984
- }
2096
+ }
2097
+
1985
2098
  /**
1986
2099
  * Тестовые данные
1987
2100
  * Какая-то коллекция, созданная для тестирования и ввода
@@ -1991,7 +2104,7 @@ class typeProjectTestAccount extends familyGeneralElement
1991
2104
  * (идея)
1992
2105
  * @version v.0.1 (30/06/2024)
1993
2106
  */
1994
- class typeProjectTestData extends familyGeneralElement
2107
+ export class typeProjectTestData extends familyGeneralElement
1995
2108
  {
1996
2109
  // как храним? json или какие-то структуры? [key->value] ?
1997
2110
  test_data_id;
@@ -2021,12 +2134,13 @@ class typeProjectTestData extends familyGeneralElement
2021
2134
 
2022
2135
  return this;
2023
2136
  }
2024
- }
2137
+ }
2138
+
2025
2139
  /**
2026
2140
  * Роли в проекте
2027
2141
  * @version v.0.1 (07/07/2024)
2028
2142
  */
2029
- class typeProjectUserRole extends familyGeneralElement
2143
+ export class typeProjectUserRole extends familyGeneralElement
2030
2144
  {
2031
2145
  // строго определенный список
2032
2146
  // без возможности создания иных
@@ -2073,12 +2187,13 @@ class typeProjectUserRole extends familyGeneralElement
2073
2187
 
2074
2188
  return this;
2075
2189
  }
2076
- }
2190
+ }
2191
+
2077
2192
 
2078
2193
  /**
2079
2194
  * @version v.2.0 (07/07/2024)
2080
2195
  */
2081
- class typeTask extends familyGeneralElement
2196
+ export class typeTask extends familyGeneralElement
2082
2197
  {
2083
2198
  task_id;
2084
2199
  team_id; // foreign key
@@ -2148,12 +2263,13 @@ class typeTask extends familyGeneralElement
2148
2263
 
2149
2264
  return this;
2150
2265
  }
2151
- }
2266
+ }
2267
+
2152
2268
 
2153
2269
  /**
2154
2270
  * @version v.0.1 (23/06/2024)
2155
2271
  */
2156
- class typeTeam extends familyGeneralElement
2272
+ export class typeTeam extends familyGeneralElement
2157
2273
  {
2158
2274
  team_id; //
2159
2275
  team_status; // enum
@@ -2250,12 +2366,12 @@ class typeTeam extends familyGeneralElement
2250
2366
  user_delete() {}
2251
2367
 
2252
2368
  users_get() {}
2253
- }
2369
+ }
2254
2370
 
2255
2371
  /**
2256
2372
  * @version v.0.2 (11/11/2024)
2257
2373
  */
2258
- class typeTeamMember extends familyGeneralElement
2374
+ export class typeTeamMember extends familyGeneralElement
2259
2375
  {
2260
2376
  team_member_id;
2261
2377
  team_id;
@@ -2305,7 +2421,8 @@ class typeTeamMember extends familyGeneralElement
2305
2421
 
2306
2422
  return this;
2307
2423
  }
2308
- }
2424
+ }
2425
+
2309
2426
  /**
2310
2427
  * Роль пользователя в команде
2311
2428
  * Должно стать часть team management
@@ -2314,7 +2431,7 @@ class typeTeamMember extends familyGeneralElement
2314
2431
  *
2315
2432
  * @version v.0.1 (07/07/2024)
2316
2433
  */
2317
- class typeTeamUserRole extends familyGeneralElement
2434
+ export class typeTeamUserRole extends familyGeneralElement
2318
2435
  {
2319
2436
  // @todo - все не актуально, поменять
2320
2437
  role_slug;
@@ -2358,13 +2475,14 @@ class typeTeamUserRole extends familyGeneralElement
2358
2475
 
2359
2476
  return this;
2360
2477
  }
2361
- }
2478
+ }
2479
+
2362
2480
 
2363
2481
  /**
2364
2482
  *
2365
2483
  * @version v.0.2 (10/12/2024)
2366
2484
  */
2367
- class typeTestCase extends familyGeneralElement
2485
+ export class typeTestCase extends familyGeneralElement
2368
2486
  {
2369
2487
  test_case_id;
2370
2488
  test_suite_id; // foreign key
@@ -2468,13 +2586,14 @@ class typeTestCase extends familyGeneralElement
2468
2586
  }
2469
2587
 
2470
2588
 
2471
- }
2589
+ }
2590
+
2472
2591
 
2473
2592
  /**
2474
2593
  *
2475
2594
  * @version v.0.1 (26/05/2024)
2476
2595
  */
2477
- class typeTestCaseStep extends familyGeneralElement
2596
+ export class typeTestCaseStep extends familyGeneralElement
2478
2597
  {
2479
2598
  test_case_step_id;
2480
2599
  test_case_step_type;
@@ -2487,14 +2606,15 @@ class typeTestCaseStep extends familyGeneralElement
2487
2606
  available_enum_values = {
2488
2607
  test_case_step_type: [ 'TEST_CASE_STEP', 'TEST_CASE_PRESTEP' ],
2489
2608
  };
2490
- }
2609
+ }
2610
+
2491
2611
 
2492
2612
  /**
2493
2613
  * Нужен ли этот тип?
2494
2614
  *
2495
2615
  * @version v.0.1 (26/05/2024)
2496
2616
  */
2497
- class typeTestPlan extends familyGeneralElement
2617
+ export class typeTestPlan extends familyGeneralElement
2498
2618
  {
2499
2619
 
2500
2620
 
@@ -2519,7 +2639,8 @@ class typeTestPlan extends familyGeneralElement
2519
2639
 
2520
2640
  return this;
2521
2641
  }
2522
- }
2642
+ }
2643
+
2523
2644
  /**
2524
2645
  * Коллекция тестов для работы, она же parent для typeTestRunResult
2525
2646
  *
@@ -2527,7 +2648,7 @@ class typeTestPlan extends familyGeneralElement
2527
2648
  *
2528
2649
  * @version v.0.2 (21/01/2025)
2529
2650
  */
2530
- class typeTestRun extends familyGeneralElement
2651
+ export class typeTestRun extends familyGeneralElement
2531
2652
  {
2532
2653
  test_run_id;
2533
2654
  test_run_name;
@@ -2572,7 +2693,8 @@ class typeTestRun extends familyGeneralElement
2572
2693
 
2573
2694
  return this;
2574
2695
  }
2575
- }
2696
+ }
2697
+
2576
2698
  /**
2577
2699
  * 1 результат по каждому тест кейсу
2578
2700
  *
@@ -2580,7 +2702,7 @@ class typeTestRun extends familyGeneralElement
2580
2702
  *
2581
2703
  * @version v.0.4 (10/12/2024)
2582
2704
  */
2583
- class typeTestRunResult extends familyGeneralElement
2705
+ export class typeTestRunResult extends familyGeneralElement
2584
2706
  {
2585
2707
  test_run_result_id;
2586
2708
  test_case_id;
@@ -2641,13 +2763,14 @@ class typeTestRunResult extends familyGeneralElement
2641
2763
 
2642
2764
  return this;
2643
2765
  }
2644
- }
2766
+ }
2767
+
2645
2768
  /**
2646
2769
  * Структурная коллекция тестов
2647
2770
  *
2648
2771
  * @version v.0.1 (23/06/2024)
2649
2772
  */
2650
- class typeTestSuite extends familyGeneralElement
2773
+ export class typeTestSuite extends familyGeneralElement
2651
2774
  {
2652
2775
  test_suite_id;
2653
2776
  project_id;
@@ -2724,12 +2847,13 @@ class typeTestSuite extends familyGeneralElement
2724
2847
  }
2725
2848
 
2726
2849
 
2727
- }
2850
+ }
2851
+
2728
2852
 
2729
2853
  /**
2730
2854
  * @version v.0.1 (23/06/2024)
2731
2855
  */
2732
- class typeUser extends familyGeneralElement
2856
+ export class typeUser extends familyGeneralElement
2733
2857
  {
2734
2858
  user_id;
2735
2859
  country;
@@ -2777,20 +2901,21 @@ class typeUser extends familyGeneralElement
2777
2901
 
2778
2902
  return this;
2779
2903
  }
2780
- }
2904
+ }
2781
2905
  /**
2782
2906
  * базовый тип для всех служебных типов
2783
2907
  * @version v.0.1 (26/05/2024)
2784
2908
  */
2785
- class familyService
2909
+ export class familyService
2786
2910
  {
2787
2911
  //
2788
- }
2912
+ }
2913
+
2789
2914
  /**
2790
2915
  *
2791
2916
  * @version v.0.1 (26/01/2025)
2792
2917
  */
2793
- class typeFOR extends familyService
2918
+ export class typeFOR extends familyService
2794
2919
  {
2795
2920
  filter;
2796
2921
  object;
@@ -2819,13 +2944,14 @@ class typeFOR extends familyService
2819
2944
 
2820
2945
  return this;
2821
2946
  }
2822
- }
2947
+ }
2948
+
2823
2949
  /**
2824
2950
  * Описание стандартного колбека типового для методов
2825
2951
  *
2826
2952
  * @version v.0.1 (26/05/2024)
2827
2953
  */
2828
- class typeFunctionCallback extends familyService
2954
+ export class typeFunctionCallback extends familyService
2829
2955
  {
2830
2956
  before;
2831
2957
  success;
@@ -2857,14 +2983,15 @@ class typeFunctionCallback extends familyService
2857
2983
 
2858
2984
  return this;
2859
2985
  }
2860
- }
2986
+ }
2987
+
2861
2988
  /**
2862
2989
  * Уведомления
2863
2990
  * Как будто это абстрактный интерфейс
2864
2991
  * А внутри уже разные настроенные пользователем методы
2865
2992
  *
2866
2993
  */
2867
- class typeNotification extends familyService
2994
+ export class typeNotification extends familyService
2868
2995
  {
2869
2996
 
2870
2997
  // пока не понятно
@@ -2890,12 +3017,12 @@ class typeNotification extends familyService
2890
3017
 
2891
3018
  return this;
2892
3019
  }
2893
- }
3020
+ }
2894
3021
  /**
2895
3022
  *
2896
3023
  * @version v.0.1 (02/07/2024)
2897
3024
  */
2898
- class abstractMockData
3025
+ export class abstractMockData
2899
3026
  {
2900
3027
  mock_data_type = 'correct';
2901
3028
 
@@ -2903,12 +3030,13 @@ class abstractMockData
2903
3030
  {
2904
3031
  this.mock_data_type = mock_data_type;
2905
3032
  }
2906
- }
3033
+ }
3034
+
2907
3035
 
2908
3036
  /**
2909
3037
  * @version v.0.1 (02/07/2024)
2910
3038
  */
2911
- class MockDataTypeProject extends abstractMockData
3039
+ export class MockDataTypeProject extends abstractMockData
2912
3040
  {
2913
3041
  correct = [ {
2914
3042
  project_id : 11,