complexqa_frontend_core 1.0.1 → 1.0.3

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.1",
3
+ "version": "1.0.3",
4
4
  "description": "core of web ",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,9 +1,10 @@
1
+
1
2
  /**
2
3
  * Прототип идеи, пока не уверен, что именно так надо
3
4
  *
4
5
  * @version v.0.1 (25/06/2024)
5
6
  */
6
- class App
7
+ export class App
7
8
  {
8
9
 
9
10
  init_options = false;
@@ -38,13 +39,14 @@ class App
38
39
  this.service.translate = new serviceTranslate();
39
40
  }
40
41
  }
41
-
42
+
43
+
42
44
  /**
43
45
  * Общие методы для всех типизированных элементов
44
46
  *
45
47
  * @version v.2.0 (24/11/2024)
46
48
  */
47
- class ApiAbstractElementClass
49
+ export class ApiAbstractElementClass
48
50
  {
49
51
 
50
52
  init_options;
@@ -423,13 +425,14 @@ class ApiAbstractElementClass
423
425
 
424
426
  return response;
425
427
  }
426
- }
428
+ }
429
+
427
430
 
428
431
  /**
429
432
  *
430
433
  * @version v.0.1 (24/11/2024)
431
434
  */
432
- class FunctionalApi extends ApiAbstractElementClass
435
+ export class FunctionalApi extends ApiAbstractElementClass
433
436
  {
434
437
  module_prefix = 'functional';
435
438
 
@@ -438,12 +441,13 @@ class FunctionalApi extends ApiAbstractElementClass
438
441
  super(options);
439
442
  this.set_element_class_instance(typeFunctional);
440
443
  }
441
- }
444
+ }
445
+
442
446
  /**
443
447
  * Обертка над axios
444
448
  * @version v.0.3 (26/01/2025)
445
449
  */
446
- class Api
450
+ export class Api
447
451
  {
448
452
  /**
449
453
  * Режим работы
@@ -544,12 +548,13 @@ class Api
544
548
  this.project = new ProjectApi(payload);
545
549
  this.service = new ServiceApi(payload);
546
550
  }
547
- }
551
+ }
552
+
548
553
  /**
549
554
  *
550
555
  * @version v.0.1 (15/06/2024)
551
556
  */
552
- class ProjectApi extends ApiAbstractElementClass
557
+ export class ProjectApi extends ApiAbstractElementClass
553
558
  {
554
559
  module_prefix = 'project';
555
560
 
@@ -558,10 +563,10 @@ class ProjectApi extends ApiAbstractElementClass
558
563
  super(options);
559
564
  this.set_element_class_instance(typeProject);
560
565
  }
561
- }
566
+ }
562
567
 
563
568
  // тут нужен свой класс, не для типов
564
- class ServiceApi
569
+ export class ServiceApi
565
570
  {
566
571
  module_prefix = '--';
567
572
 
@@ -578,13 +583,14 @@ class ServiceApi
578
583
  {
579
584
  return [];
580
585
  }
581
- }
586
+ }
587
+
582
588
 
583
589
  /**
584
590
  *
585
591
  * @version v.0.1 (24/11/2024)
586
592
  */
587
- class TeamMemberApi extends ApiAbstractElementClass
593
+ export class TeamMemberApi extends ApiAbstractElementClass
588
594
  {
589
595
  module_prefix = 'team_member';
590
596
 
@@ -593,13 +599,14 @@ class TeamMemberApi extends ApiAbstractElementClass
593
599
  super(options);
594
600
  this.set_element_class_instance(typeTeamMember);
595
601
  }
596
- }
602
+ }
603
+
597
604
 
598
605
  /**
599
606
  *
600
607
  * @version v.0.1 (24/11/2024)
601
608
  */
602
- class TestCaseApi extends ApiAbstractElementClass
609
+ export class TestCaseApi extends ApiAbstractElementClass
603
610
  {
604
611
  module_prefix = 'test_case';
605
612
 
@@ -608,13 +615,14 @@ class TestCaseApi extends ApiAbstractElementClass
608
615
  super(options);
609
616
  this.set_element_class_instance(typeTestCase);
610
617
  }
611
- }
618
+ }
619
+
612
620
 
613
621
  /**
614
622
  *
615
623
  * @version v.0.1 (24/11/2024)
616
624
  */
617
- class TestCaseStepApi extends ApiAbstractElementClass
625
+ export class TestCaseStepApi extends ApiAbstractElementClass
618
626
  {
619
627
  module_prefix = 'test_case_step';
620
628
 
@@ -623,13 +631,14 @@ class TestCaseStepApi extends ApiAbstractElementClass
623
631
  super(options);
624
632
  this.set_element_class_instance(typeTestCaseStep);
625
633
  }
626
- }
634
+ }
635
+
627
636
 
628
637
  /**
629
638
  *
630
639
  * @version v.0.1 (26/05/2024)
631
640
  */
632
- class TestPlanApi extends ApiAbstractElementClass
641
+ export class TestPlanApi extends ApiAbstractElementClass
633
642
  {
634
643
  module_prefix = 'test_plan';
635
644
 
@@ -638,8 +647,9 @@ class TestPlanApi extends ApiAbstractElementClass
638
647
  super(options);
639
648
  this.set_element_class_instance(typeTestPlan);
640
649
  }
641
- }
642
- class TestRunApi extends ApiAbstractElementClass
650
+ }
651
+
652
+ export class TestRunApi extends ApiAbstractElementClass
643
653
  {
644
654
  module_prefix = 'test_run';
645
655
 
@@ -648,13 +658,14 @@ class TestRunApi extends ApiAbstractElementClass
648
658
  super(options);
649
659
  this.set_element_class_instance(typeTestRun);
650
660
  }
651
- }
661
+ }
662
+
652
663
 
653
664
  /**
654
665
  *
655
666
  * @version v.0.1 (24/11/2024)
656
667
  */
657
- class TestRunResultApi extends ApiAbstractElementClass
668
+ export class TestRunResultApi extends ApiAbstractElementClass
658
669
  {
659
670
  module_prefix = 'test_run_result';
660
671
 
@@ -663,13 +674,14 @@ class TestRunResultApi extends ApiAbstractElementClass
663
674
  super(options);
664
675
  this.set_element_class_instance(typeTestRunResult);
665
676
  }
666
- }
677
+ }
678
+
667
679
 
668
680
  /**
669
681
  *
670
682
  * @version v.0.1 (24/11/2024)
671
683
  */
672
- class TestSuiteApi extends ApiAbstractElementClass
684
+ export class TestSuiteApi extends ApiAbstractElementClass
673
685
  {
674
686
  module_prefix = 'test_suite';
675
687
 
@@ -678,8 +690,8 @@ class TestSuiteApi extends ApiAbstractElementClass
678
690
  super(options);
679
691
  this.set_element_class_instance(typeTestSuite);
680
692
  }
681
- }
682
- class ApiException extends Error
693
+ }
694
+ export class ApiException extends Error
683
695
  {
684
696
  /**
685
697
  * Сообщение об ошибке
@@ -747,12 +759,12 @@ class ApiException extends Error
747
759
  return this.#message;
748
760
  }
749
761
  }
750
- }
762
+ }
751
763
  /**
752
764
  *
753
765
  * @version v.0.1 (25/06/2024)
754
766
  */
755
- class abstractService
767
+ export class abstractService
756
768
  {
757
769
  init_options = false;
758
770
 
@@ -783,12 +795,13 @@ class abstractService
783
795
  {
784
796
 
785
797
  }*/
786
- }
798
+ }
799
+
787
800
  /**
788
801
  *
789
802
  * @version v.0.1 (25/06/2024)
790
803
  */
791
- class serviceTranslate extends abstractService
804
+ export class serviceTranslate extends abstractService
792
805
  {
793
806
  #language = 'en';
794
807
  #available_language = [ 'ru', 'en' ];
@@ -877,12 +890,13 @@ class serviceTranslate extends abstractService
877
890
  {
878
891
  return this.#vendor_instance.t(group + '.' + key);
879
892
  }
880
- }
893
+ }
894
+
881
895
  /**
882
896
  *
883
897
  * @version v.1.0 (18/11/2024)
884
898
  */
885
- class UserService extends abstractService
899
+ export class UserService extends abstractService
886
900
  {
887
901
 
888
902
  static current_user_id = false;
@@ -1004,13 +1018,13 @@ class UserService extends abstractService
1004
1018
  UserService.current_language = current_language;
1005
1019
  }
1006
1020
  }
1007
-
1021
+
1008
1022
  /**
1009
1023
  *
1010
1024
  * @param {object} object
1011
1025
  * @returns {object}
1012
1026
  */
1013
- function clone_object(object)
1027
+ export function clone_object(object)
1014
1028
  {
1015
1029
  // @todo use deep clone
1016
1030
  // @todo add validation
@@ -1021,7 +1035,7 @@ function clone_object(object)
1021
1035
  *
1022
1036
  * @param {string|number|array|object} text
1023
1037
  */
1024
- function echo(text)
1038
+ export function echo(text)
1025
1039
  {
1026
1040
  console.log(text);
1027
1041
  }
@@ -1031,7 +1045,7 @@ function echo(text)
1031
1045
  *
1032
1046
  * @param {string|number|array|object} data
1033
1047
  */
1034
- function echo_table(...data)
1048
+ export function echo_table(...data)
1035
1049
  {
1036
1050
  if (is_array(data))
1037
1051
  {
@@ -1053,7 +1067,7 @@ function echo_table(...data)
1053
1067
  * @param {boolean} strict_mode
1054
1068
  * @returns {boolean}
1055
1069
  */
1056
- function is_array(data, strict_mode = false)
1070
+ export function is_array(data, strict_mode = false)
1057
1071
  {
1058
1072
  if (strict_mode)
1059
1073
  {
@@ -1086,7 +1100,7 @@ function is_array(data, strict_mode = false)
1086
1100
  * @param {*} value
1087
1101
  * @returns {boolean}
1088
1102
  */
1089
- function is_object(value)
1103
+ export function is_object(value)
1090
1104
  {
1091
1105
  return _.isObject(value);
1092
1106
  }
@@ -1098,7 +1112,7 @@ function is_object(value)
1098
1112
  * @param {*} value
1099
1113
  * @returns {boolean}
1100
1114
  */
1101
- function is_string(value)
1115
+ export function is_string(value)
1102
1116
  {
1103
1117
  let response = false;
1104
1118
  if (typeof value === 'string')
@@ -1115,7 +1129,7 @@ function is_string(value)
1115
1129
  * @param {*} value
1116
1130
  * @returns {boolean}
1117
1131
  */
1118
- function is_number(value)
1132
+ export function is_number(value)
1119
1133
  {
1120
1134
  let response = false;
1121
1135
 
@@ -1142,7 +1156,7 @@ function is_number(value)
1142
1156
  * @param {array} array массив
1143
1157
  * @returns {number|false} количество элементов массива
1144
1158
  */
1145
- function count(array)
1159
+ export function count(array)
1146
1160
  {
1147
1161
  let response = false;
1148
1162
  if (array instanceof Array)
@@ -1165,7 +1179,7 @@ function count(array)
1165
1179
  * @param {boolean} strict
1166
1180
  * @returns {boolean}
1167
1181
  */
1168
- function in_array(value, array, strict = false)
1182
+ export function in_array(value, array, strict = false)
1169
1183
  {
1170
1184
  if (!is_array(array))
1171
1185
  {
@@ -1191,11 +1205,11 @@ function in_array(value, array, strict = false)
1191
1205
  return Boolean(response);
1192
1206
  }
1193
1207
 
1194
- function cls()
1208
+ export function cls()
1195
1209
  {
1196
1210
  console.clear();
1197
- }
1198
- class MockUserService
1211
+ }
1212
+ export class MockUserService
1199
1213
  {
1200
1214
  static mock_attributes = [ {
1201
1215
  key : 'current_user_id',
@@ -1224,13 +1238,14 @@ class MockUserService
1224
1238
  },
1225
1239
  ];
1226
1240
 
1227
- }
1241
+ }
1242
+
1228
1243
  /**
1229
1244
  * Базовый абстрактный класс для всех типов
1230
1245
  *
1231
1246
  * @version v.0.1 (26/05/2024)
1232
1247
  */
1233
- class familyGeneralElement
1248
+ export class familyGeneralElement
1234
1249
  {
1235
1250
  primary_key = false;
1236
1251
  create_scheme = false;
@@ -1487,22 +1502,23 @@ class familyGeneralElement
1487
1502
  alert('Error #267-001 Not implemented method');
1488
1503
  return false;
1489
1504
  }
1490
- }
1505
+ }
1491
1506
  /**
1492
1507
  * Заготовка - логи действий
1493
1508
  *
1494
1509
  * @version v.0.1 (15/10/2024)
1495
1510
  */
1496
- class typeActionLog
1511
+ export class typeActionLog
1497
1512
  {
1498
1513
 
1499
- }
1514
+ }
1515
+
1500
1516
 
1501
1517
  /**
1502
1518
  *
1503
1519
  * @version v.0.1 (23/06/2024)
1504
1520
  */
1505
- class typeFunctional extends familyGeneralElement
1521
+ export class typeFunctional extends familyGeneralElement
1506
1522
  {
1507
1523
  functional_id;
1508
1524
  project_id; // foreign key
@@ -1589,12 +1605,13 @@ class typeFunctional extends familyGeneralElement
1589
1605
  }
1590
1606
 
1591
1607
 
1592
- }
1608
+ }
1609
+
1593
1610
 
1594
1611
  /**
1595
1612
  * @version v.0.2 (25/01/2025)
1596
1613
  */
1597
- class typeFunctionalGroup extends familyGeneralElement
1614
+ export class typeFunctionalGroup extends familyGeneralElement
1598
1615
  {
1599
1616
  functional_group_id;
1600
1617
  project_id; // foreign key
@@ -1681,12 +1698,13 @@ class typeFunctionalGroup extends familyGeneralElement
1681
1698
  }
1682
1699
 
1683
1700
 
1684
- }
1701
+ }
1702
+
1685
1703
  /**
1686
1704
  *
1687
1705
  * @version v.0.2 (15/06/2024)
1688
1706
  */
1689
- class typeMilestone extends familyGeneralElement
1707
+ export class typeMilestone extends familyGeneralElement
1690
1708
  {
1691
1709
  milestone_id; // primary AI
1692
1710
  milestone_name;
@@ -1771,13 +1789,14 @@ class typeMilestone extends familyGeneralElement
1771
1789
  }
1772
1790
 
1773
1791
 
1774
- }
1792
+ }
1793
+
1775
1794
 
1776
1795
  /**
1777
1796
  *
1778
1797
  * @version v.0.2 (15/06/2024)
1779
1798
  */
1780
- class typeProject extends familyGeneralElement
1799
+ export class typeProject extends familyGeneralElement
1781
1800
  {
1782
1801
  project_id; // primary
1783
1802
  project_name;
@@ -1934,7 +1953,8 @@ class typeProject extends familyGeneralElement
1934
1953
  member_get() {}
1935
1954
 
1936
1955
 
1937
- }
1956
+ }
1957
+
1938
1958
  /**
1939
1959
  * (идея) - у проекта должна быть тестовая документация
1940
1960
  *
@@ -1942,7 +1962,7 @@ class typeProject extends familyGeneralElement
1942
1962
  *
1943
1963
  * @version v.0.2 (07/07/2024)
1944
1964
  */
1945
- class typeProjectDocument extends familyGeneralElement
1965
+ export class typeProjectDocument extends familyGeneralElement
1946
1966
  {
1947
1967
  project_document_id;
1948
1968
  project_id;
@@ -2011,7 +2031,8 @@ class typeProjectDocument extends familyGeneralElement
2011
2031
  {
2012
2032
 
2013
2033
  }
2014
- }
2034
+ }
2035
+
2015
2036
  /**
2016
2037
  * Тестовые аккаунты
2017
2038
  *
@@ -2020,7 +2041,7 @@ class typeProjectDocument extends familyGeneralElement
2020
2041
  *
2021
2042
  * @version v.0.1 (30/06/2024)
2022
2043
  */
2023
- class typeProjectTestAccount extends familyGeneralElement
2044
+ export class typeProjectTestAccount extends familyGeneralElement
2024
2045
  {
2025
2046
  test_account_id;
2026
2047
  project_id;
@@ -2067,7 +2088,8 @@ class typeProjectTestAccount extends familyGeneralElement
2067
2088
 
2068
2089
  return this;
2069
2090
  }
2070
- }
2091
+ }
2092
+
2071
2093
  /**
2072
2094
  * Тестовые данные
2073
2095
  * Какая-то коллекция, созданная для тестирования и ввода
@@ -2077,7 +2099,7 @@ class typeProjectTestAccount extends familyGeneralElement
2077
2099
  * (идея)
2078
2100
  * @version v.0.1 (30/06/2024)
2079
2101
  */
2080
- class typeProjectTestData extends familyGeneralElement
2102
+ export class typeProjectTestData extends familyGeneralElement
2081
2103
  {
2082
2104
  // как храним? json или какие-то структуры? [key->value] ?
2083
2105
  test_data_id;
@@ -2107,12 +2129,13 @@ class typeProjectTestData extends familyGeneralElement
2107
2129
 
2108
2130
  return this;
2109
2131
  }
2110
- }
2132
+ }
2133
+
2111
2134
  /**
2112
2135
  * Роли в проекте
2113
2136
  * @version v.0.1 (07/07/2024)
2114
2137
  */
2115
- class typeProjectUserRole extends familyGeneralElement
2138
+ export class typeProjectUserRole extends familyGeneralElement
2116
2139
  {
2117
2140
  // строго определенный список
2118
2141
  // без возможности создания иных
@@ -2159,12 +2182,13 @@ class typeProjectUserRole extends familyGeneralElement
2159
2182
 
2160
2183
  return this;
2161
2184
  }
2162
- }
2185
+ }
2186
+
2163
2187
 
2164
2188
  /**
2165
2189
  * @version v.2.0 (07/07/2024)
2166
2190
  */
2167
- class typeTask extends familyGeneralElement
2191
+ export class typeTask extends familyGeneralElement
2168
2192
  {
2169
2193
  task_id;
2170
2194
  team_id; // foreign key
@@ -2234,12 +2258,13 @@ class typeTask extends familyGeneralElement
2234
2258
 
2235
2259
  return this;
2236
2260
  }
2237
- }
2261
+ }
2262
+
2238
2263
 
2239
2264
  /**
2240
2265
  * @version v.0.1 (23/06/2024)
2241
2266
  */
2242
- class typeTeam extends familyGeneralElement
2267
+ export class typeTeam extends familyGeneralElement
2243
2268
  {
2244
2269
  team_id; //
2245
2270
  team_status; // enum
@@ -2336,12 +2361,12 @@ class typeTeam extends familyGeneralElement
2336
2361
  user_delete() {}
2337
2362
 
2338
2363
  users_get() {}
2339
- }
2364
+ }
2340
2365
 
2341
2366
  /**
2342
2367
  * @version v.0.2 (11/11/2024)
2343
2368
  */
2344
- class typeTeamMember extends familyGeneralElement
2369
+ export class typeTeamMember extends familyGeneralElement
2345
2370
  {
2346
2371
  team_member_id;
2347
2372
  team_id;
@@ -2391,7 +2416,8 @@ class typeTeamMember extends familyGeneralElement
2391
2416
 
2392
2417
  return this;
2393
2418
  }
2394
- }
2419
+ }
2420
+
2395
2421
  /**
2396
2422
  * Роль пользователя в команде
2397
2423
  * Должно стать часть team management
@@ -2400,7 +2426,7 @@ class typeTeamMember extends familyGeneralElement
2400
2426
  *
2401
2427
  * @version v.0.1 (07/07/2024)
2402
2428
  */
2403
- class typeTeamUserRole extends familyGeneralElement
2429
+ export class typeTeamUserRole extends familyGeneralElement
2404
2430
  {
2405
2431
  // @todo - все не актуально, поменять
2406
2432
  role_slug;
@@ -2444,13 +2470,14 @@ class typeTeamUserRole extends familyGeneralElement
2444
2470
 
2445
2471
  return this;
2446
2472
  }
2447
- }
2473
+ }
2474
+
2448
2475
 
2449
2476
  /**
2450
2477
  *
2451
2478
  * @version v.0.2 (10/12/2024)
2452
2479
  */
2453
- class typeTestCase extends familyGeneralElement
2480
+ export class typeTestCase extends familyGeneralElement
2454
2481
  {
2455
2482
  test_case_id;
2456
2483
  test_suite_id; // foreign key
@@ -2554,13 +2581,14 @@ class typeTestCase extends familyGeneralElement
2554
2581
  }
2555
2582
 
2556
2583
 
2557
- }
2584
+ }
2585
+
2558
2586
 
2559
2587
  /**
2560
2588
  *
2561
2589
  * @version v.0.1 (26/05/2024)
2562
2590
  */
2563
- class typeTestCaseStep extends familyGeneralElement
2591
+ export class typeTestCaseStep extends familyGeneralElement
2564
2592
  {
2565
2593
  test_case_step_id;
2566
2594
  test_case_step_type;
@@ -2573,14 +2601,15 @@ class typeTestCaseStep extends familyGeneralElement
2573
2601
  available_enum_values = {
2574
2602
  test_case_step_type: [ 'TEST_CASE_STEP', 'TEST_CASE_PRESTEP' ],
2575
2603
  };
2576
- }
2604
+ }
2605
+
2577
2606
 
2578
2607
  /**
2579
2608
  * Нужен ли этот тип?
2580
2609
  *
2581
2610
  * @version v.0.1 (26/05/2024)
2582
2611
  */
2583
- class typeTestPlan extends familyGeneralElement
2612
+ export class typeTestPlan extends familyGeneralElement
2584
2613
  {
2585
2614
 
2586
2615
 
@@ -2605,7 +2634,8 @@ class typeTestPlan extends familyGeneralElement
2605
2634
 
2606
2635
  return this;
2607
2636
  }
2608
- }
2637
+ }
2638
+
2609
2639
  /**
2610
2640
  * Коллекция тестов для работы, она же parent для typeTestRunResult
2611
2641
  *
@@ -2613,7 +2643,7 @@ class typeTestPlan extends familyGeneralElement
2613
2643
  *
2614
2644
  * @version v.0.2 (21/01/2025)
2615
2645
  */
2616
- class typeTestRun extends familyGeneralElement
2646
+ export class typeTestRun extends familyGeneralElement
2617
2647
  {
2618
2648
  test_run_id;
2619
2649
  test_run_name;
@@ -2658,7 +2688,8 @@ class typeTestRun extends familyGeneralElement
2658
2688
 
2659
2689
  return this;
2660
2690
  }
2661
- }
2691
+ }
2692
+
2662
2693
  /**
2663
2694
  * 1 результат по каждому тест кейсу
2664
2695
  *
@@ -2666,7 +2697,7 @@ class typeTestRun extends familyGeneralElement
2666
2697
  *
2667
2698
  * @version v.0.4 (10/12/2024)
2668
2699
  */
2669
- class typeTestRunResult extends familyGeneralElement
2700
+ export class typeTestRunResult extends familyGeneralElement
2670
2701
  {
2671
2702
  test_run_result_id;
2672
2703
  test_case_id;
@@ -2727,13 +2758,14 @@ class typeTestRunResult extends familyGeneralElement
2727
2758
 
2728
2759
  return this;
2729
2760
  }
2730
- }
2761
+ }
2762
+
2731
2763
  /**
2732
2764
  * Структурная коллекция тестов
2733
2765
  *
2734
2766
  * @version v.0.1 (23/06/2024)
2735
2767
  */
2736
- class typeTestSuite extends familyGeneralElement
2768
+ export class typeTestSuite extends familyGeneralElement
2737
2769
  {
2738
2770
  test_suite_id;
2739
2771
  project_id;
@@ -2810,12 +2842,13 @@ class typeTestSuite extends familyGeneralElement
2810
2842
  }
2811
2843
 
2812
2844
 
2813
- }
2845
+ }
2846
+
2814
2847
 
2815
2848
  /**
2816
2849
  * @version v.0.1 (23/06/2024)
2817
2850
  */
2818
- class typeUser extends familyGeneralElement
2851
+ export class typeUser extends familyGeneralElement
2819
2852
  {
2820
2853
  user_id;
2821
2854
  country;
@@ -2863,20 +2896,59 @@ class typeUser extends familyGeneralElement
2863
2896
 
2864
2897
  return this;
2865
2898
  }
2866
- }
2899
+ }
2867
2900
  /**
2868
2901
  * базовый тип для всех служебных типов
2869
2902
  * @version v.0.1 (26/05/2024)
2870
2903
  */
2871
- class familyService
2904
+ export class familyService
2872
2905
  {
2873
2906
  //
2874
- }
2907
+ }
2908
+
2909
+ /**
2910
+ * Общее конфигурирование приложений
2911
+ *
2912
+ * @version v.0.1 (26/04/2025)
2913
+ */
2914
+ export class typeAppConfiguration extends familyService
2915
+ {
2916
+ /**
2917
+ *
2918
+ * @type {false|array<'PROTOTYPE','DEVELOPMENT','DEPRECATED','TESTING','PRODUCTION'>}
2919
+ */
2920
+ app_stage = false;
2921
+
2922
+ /**
2923
+ *
2924
+ * @type {false|number}
2925
+ */
2926
+ app_id = false;
2927
+
2928
+
2929
+ constructor(data = false)
2930
+ {
2931
+ super();
2932
+ if (data && typeof data === 'object')
2933
+ {
2934
+ _.mapObject(data, (value, key) =>
2935
+ {
2936
+ if (this.hasOwnProperty(key))
2937
+ {
2938
+ this [ key ] = value;
2939
+ }
2940
+ });
2941
+ }
2942
+
2943
+ return this;
2944
+ }
2945
+ }
2946
+
2875
2947
  /**
2876
2948
  *
2877
2949
  * @version v.0.1 (26/01/2025)
2878
2950
  */
2879
- class typeFOR extends familyService
2951
+ export class typeFOR extends familyService
2880
2952
  {
2881
2953
  filter;
2882
2954
  object;
@@ -2905,13 +2977,14 @@ class typeFOR extends familyService
2905
2977
 
2906
2978
  return this;
2907
2979
  }
2908
- }
2980
+ }
2981
+
2909
2982
  /**
2910
2983
  * Описание стандартного колбека типового для методов
2911
2984
  *
2912
2985
  * @version v.0.1 (26/05/2024)
2913
2986
  */
2914
- class typeFunctionCallback extends familyService
2987
+ export class typeFunctionCallback extends familyService
2915
2988
  {
2916
2989
  before;
2917
2990
  success;
@@ -2943,14 +3016,15 @@ class typeFunctionCallback extends familyService
2943
3016
 
2944
3017
  return this;
2945
3018
  }
2946
- }
3019
+ }
3020
+
2947
3021
  /**
2948
3022
  * Уведомления
2949
3023
  * Как будто это абстрактный интерфейс
2950
3024
  * А внутри уже разные настроенные пользователем методы
2951
3025
  *
2952
3026
  */
2953
- class typeNotification extends familyService
3027
+ export class typeNotification extends familyService
2954
3028
  {
2955
3029
 
2956
3030
  // пока не понятно
@@ -2976,12 +3050,103 @@ class typeNotification extends familyService
2976
3050
 
2977
3051
  return this;
2978
3052
  }
2979
- }
3053
+ }
3054
+
3055
+ /**
3056
+ *
3057
+ * @version v.0.1 (26/04/2025)
3058
+ */
3059
+ export class typeTableColumn extends familyService
3060
+ {
3061
+ header_name;
3062
+ field;
3063
+ width;
3064
+ sort_order;
3065
+ cell_classes;
3066
+ default_sort;
3067
+ is_sortable;
3068
+ is_filter;
3069
+ is_hide;
3070
+ is_editable;
3071
+
3072
+
3073
+ constructor(data = false)
3074
+ {
3075
+ super();
3076
+ if (data && typeof data === 'object')
3077
+ {
3078
+ _.mapObject(data, (value, key) =>
3079
+ {
3080
+ if (this.hasOwnProperty(key))
3081
+ {
3082
+ this [ key ] = value;
3083
+ }
3084
+ });
3085
+ }
3086
+
3087
+ return this;
3088
+ }
3089
+ }
3090
+
3091
+ /**
3092
+ * Настройки таблиц (aggrid)
3093
+ *
3094
+ * @version v.0.1 (26/04/2025)
3095
+ */
3096
+ export class typeTableConfiguration extends typeAppConfiguration
3097
+ {
3098
+ /**
3099
+ * @type {array<typeTableColumn>}
3100
+ */
3101
+ columns;
3102
+
3103
+ /**
3104
+ * @type {array<typeFOR>}
3105
+ */
3106
+ for;
3107
+
3108
+
3109
+ /**
3110
+ * Элемент, в составе
3111
+ * надо ли
3112
+ */
3113
+ contained_element_type;
3114
+
3115
+
3116
+
3117
+ /**
3118
+ * под развитие
3119
+ * @type {{link: false|string, description: false|string}}
3120
+ */
3121
+ documentation = {
3122
+ description: false,
3123
+ link : false,
3124
+ };
3125
+
3126
+
3127
+
3128
+ constructor(data = false)
3129
+ {
3130
+ super();
3131
+ if (data && typeof data === 'object')
3132
+ {
3133
+ _.mapObject(data, (value, key) =>
3134
+ {
3135
+ if (this.hasOwnProperty(key))
3136
+ {
3137
+ this [ key ] = value;
3138
+ }
3139
+ });
3140
+ }
3141
+
3142
+ return this;
3143
+ }
3144
+ }
2980
3145
  /**
2981
3146
  *
2982
3147
  * @version v.0.1 (02/07/2024)
2983
3148
  */
2984
- class abstractMockData
3149
+ export class abstractMockData
2985
3150
  {
2986
3151
  mock_data_type = 'correct';
2987
3152
 
@@ -2989,12 +3154,13 @@ class abstractMockData
2989
3154
  {
2990
3155
  this.mock_data_type = mock_data_type;
2991
3156
  }
2992
- }
3157
+ }
3158
+
2993
3159
 
2994
3160
  /**
2995
3161
  * @version v.0.1 (02/07/2024)
2996
3162
  */
2997
- class MockDataTypeProject extends abstractMockData
3163
+ export class MockDataTypeProject extends abstractMockData
2998
3164
  {
2999
3165
  correct = [ {
3000
3166
  project_id : 11,