complexqa_frontend_core 1.0.5 → 1.0.7

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.5",
3
+ "version": "1.0.7",
4
4
  "description": "core of web ",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -584,6 +584,7 @@ export class Api
584
584
  this.project = new ProjectApi(payload);
585
585
  this.service = new ServiceApi(payload);
586
586
  this.test_case = new TestCaseApi(payload);
587
+ this.test_suite = new TestSuiteApi(payload);
587
588
  }
588
589
  }
589
590
 
@@ -1280,7 +1281,7 @@ export class MockUserService
1280
1281
  /**
1281
1282
  * Базовый абстрактный класс для всех типов
1282
1283
  *
1283
- * @version v.0.1 (26/05/2024)
1284
+ * @version v.0.2 (12/06/2025)
1284
1285
  */
1285
1286
  export class familyGeneralElement
1286
1287
  {
@@ -1288,6 +1289,7 @@ export class familyGeneralElement
1288
1289
  create_scheme = false;
1289
1290
  structure_scheme = false;
1290
1291
  available_enum_values = false;
1292
+ api_key = false;
1291
1293
 
1292
1294
 
1293
1295
  /***********************************************/
@@ -1460,6 +1462,7 @@ export class familyGeneralElement
1460
1462
 
1461
1463
  is_editable_attribute(attribute) {}
1462
1464
 
1465
+
1463
1466
  /**
1464
1467
  *
1465
1468
  * @version v.0.1 (26/05/2024)
@@ -1471,6 +1474,17 @@ export class familyGeneralElement
1471
1474
  return attribute_name;
1472
1475
  }
1473
1476
 
1477
+ /***********************************************/
1478
+
1479
+ /**
1480
+ * Возвращаем "имя", то есть значение атрибута, который является именем
1481
+ *
1482
+ * @version v.0.1 (05/06/2025)
1483
+ */
1484
+ get_element_name()
1485
+ {
1486
+ alert('Error #205-001 Not implemented method');
1487
+ }
1474
1488
 
1475
1489
  /***********************************************/
1476
1490
  /***********************************************/
@@ -1489,31 +1503,157 @@ export class familyGeneralElement
1489
1503
  alert('Error #267-001 Not implemented method');
1490
1504
  }
1491
1505
 
1506
+
1492
1507
  /**
1493
1508
  *
1494
- * @version v.0.1 (26/05/2024)
1509
+ * @param {familyGeneralElement|object} payload
1510
+ *
1511
+ * @param {typeFunctionCallback|object|false} callback
1512
+ *
1513
+ * @param {?function} callback.before
1514
+ * @param {?function} callback.success
1515
+ * @param {?function} callback.error
1516
+ * @param {?function} callback.final
1517
+ *
1518
+ * @version v.2.0 (12/06/2025)
1495
1519
  */
1496
- async create()
1497
- {}
1520
+ async create(payload, callback)
1521
+ {
1522
+ if (!this.api_key)
1523
+ {
1524
+ throw new Error('element has not api_key');
1525
+ }
1526
+
1527
+ if (typeof callback?.before === 'function')
1528
+ {
1529
+ callback?.before({ payload });
1530
+ }
1531
+
1532
+ payload = this.normalize_payload(payload);
1533
+
1534
+
1535
+ /**
1536
+ * {Api} ApiService
1537
+ */
1538
+ return ApiService[this.api_key].create(payload).then((response) =>
1539
+ {
1540
+ if (typeof callback?.success === 'function')
1541
+ {
1542
+ callback?.success({ response, payload })
1543
+ }
1544
+ }).catch((error) =>
1545
+ {
1546
+ echo({ error });
1547
+ if (typeof callback?.error === 'function')
1548
+ {
1549
+ callback?.error({ error, payload })
1550
+ }
1551
+ }).finally((response) =>
1552
+ {
1553
+ if (typeof callback?.final === 'function')
1554
+ {
1555
+ callback?.final({ response, payload })
1556
+ }
1557
+ });
1558
+ }
1559
+
1498
1560
 
1499
1561
 
1500
1562
  /**
1501
1563
  *
1502
- * @version v.0.1 (26/05/2024)
1564
+ * @version v.2.0 (12/06/2025)
1503
1565
  */
1504
- async update()
1566
+ async update(payload, callback)
1505
1567
  {
1506
- alert('Error #272-001 Not implemented method');
1568
+ if (!this.api_key)
1569
+ {
1570
+ throw new Error('element has not api_key');
1571
+ }
1572
+
1573
+ if (typeof callback?.before === 'function')
1574
+ {
1575
+ callback?.before({ payload });
1576
+ }
1577
+
1578
+ payload = this.normalize_payload(payload);
1579
+
1580
+
1581
+ /**
1582
+ * {Api} ApiService
1583
+ */
1584
+ return ApiService[this.api_key].update(payload).then((response) =>
1585
+ {
1586
+ if (typeof callback?.success === 'function')
1587
+ {
1588
+ callback?.success({ response, payload })
1589
+ }
1590
+ }).catch((error) =>
1591
+ {
1592
+ echo({ error });
1593
+ if (typeof callback?.error === 'function')
1594
+ {
1595
+ callback?.error({ error, payload })
1596
+ }
1597
+ }).finally((response) =>
1598
+ {
1599
+ if (typeof callback?.final === 'function')
1600
+ {
1601
+ callback?.final({ response, payload })
1602
+ }
1603
+ });
1507
1604
  }
1508
1605
 
1509
1606
 
1607
+
1510
1608
  /**
1511
1609
  *
1512
- * @version v.0.1 (26/05/2024)
1610
+ * @version v.2.0 (12/06/2025)
1611
+ * @param key
1612
+ * @param value
1613
+ * @param callback
1614
+ * @returns {Promise<>}
1513
1615
  */
1514
1616
  async update_property(key, value, callback)
1515
1617
  {
1516
- alert('Error #272-001 Not implemented method');
1618
+ if (!this.api_key)
1619
+ {
1620
+ throw new Error('element has not api_key');
1621
+ }
1622
+
1623
+ let payload = {
1624
+ key : key,
1625
+ value : value,
1626
+ };
1627
+ payload[this.get_primary_key()] = this[this.get_primary_key()];
1628
+
1629
+ if (typeof callback?.before === 'function')
1630
+ {
1631
+ callback?.before({ payload });
1632
+ }
1633
+
1634
+ /**
1635
+ * {Api} ApiService
1636
+ */
1637
+ return ApiService[this.api_key].update_property(payload).then((response) =>
1638
+ {
1639
+ if (typeof callback?.success === 'function')
1640
+ {
1641
+ callback?.success({ response, payload })
1642
+ }
1643
+ }).catch((error) =>
1644
+ {
1645
+ echo({ error });
1646
+ if (typeof callback?.error === 'function')
1647
+ {
1648
+ callback?.error({ error, payload })
1649
+ }
1650
+ }).finally((response) =>
1651
+ {
1652
+ if (typeof callback?.final === 'function')
1653
+ {
1654
+ callback?.final({ response, payload })
1655
+ }
1656
+ });
1517
1657
  }
1518
1658
 
1519
1659
 
@@ -1527,17 +1667,52 @@ export class familyGeneralElement
1527
1667
  }
1528
1668
 
1529
1669
 
1670
+
1530
1671
  /**
1531
1672
  *
1532
- * @version v.0.1 (26/05/2024)
1533
- * @param element
1534
- * @param callback
1535
- * @returns {Promise<boolean>}
1673
+ * @version v.2.0 (12/06/2025)
1536
1674
  */
1537
- async delete(element, callback)
1675
+ async delete(element = false, callback = {})
1538
1676
  {
1539
- alert('Error #267-001 Not implemented method');
1540
- return false;
1677
+ if (!this.api_key)
1678
+ {
1679
+ throw new Error('element has not api_key');
1680
+ }
1681
+
1682
+ if (!element)
1683
+ {
1684
+ element = this;
1685
+ }
1686
+
1687
+ let payload = {};
1688
+
1689
+ payload[this.get_primary_key()] = element[this.get_primary_key()];
1690
+
1691
+ if (typeof callback?.before === 'function')
1692
+ {
1693
+ callback?.before({ payload });
1694
+ }
1695
+
1696
+ return ApiService[this.api_key].delete(payload).then((response) =>
1697
+ {
1698
+ if (typeof callback?.success === 'function')
1699
+ {
1700
+ callback?.success({ response, payload })
1701
+ }
1702
+ }).catch((error) =>
1703
+ {
1704
+ echo({ error });
1705
+ if (typeof callback?.error === 'function')
1706
+ {
1707
+ callback?.error({ error, payload })
1708
+ }
1709
+ }).finally((response) =>
1710
+ {
1711
+ if (typeof callback?.final === 'function')
1712
+ {
1713
+ callback?.final({ response, payload })
1714
+ }
1715
+ });
1541
1716
  }
1542
1717
  }
1543
1718
  /**
@@ -1844,6 +2019,7 @@ export class typeProject extends familyGeneralElement
1844
2019
  // хосты/домены будут отдельно храниться, их может быть множество
1845
2020
 
1846
2021
  primary_key = 'project_id';
2022
+ api_key = 'project';
1847
2023
 
1848
2024
  structure_scheme = {
1849
2025
  project_id : 'integer | require',
@@ -1904,74 +2080,20 @@ export class typeProject extends familyGeneralElement
1904
2080
 
1905
2081
 
1906
2082
  /******************************************************************************************/
1907
- /*********************************** general **********************************************/
1908
2083
  /******************************************************************************************/
1909
2084
 
1910
- /**
1911
- *
1912
- * @param {familyGeneralElement|object} payload
1913
- * @param {typeFunctionCallback|object|false} callback
1914
- *
1915
- * @param {?function} callback.before
1916
- * @param {?function} callback.success
1917
- * @param {?function} callback.error
1918
- * @param {?function} callback.final
1919
- *
1920
- * @version v.0.1 (26/01/2025)
1921
- */
1922
- async create(payload, callback)
1923
- {
1924
- if (typeof callback?.before === 'function')
1925
- {
1926
- callback?.before({ payload });
1927
- }
1928
-
1929
- payload = this.normalize_payload(payload);
1930
-
1931
-
1932
- /**
1933
- * {Api} ApiService
1934
- */
1935
- ApiService.project.create(payload).then((response) =>
1936
- {
1937
- if (typeof callback?.success === 'function')
1938
- {
1939
- callback?.success({ response, payload })
1940
- }
1941
- }).catch((error) =>
1942
- {
1943
- echo({ error });
1944
- if (typeof callback?.error === 'function')
1945
- {
1946
- callback?.error({ error, payload })
1947
- }
1948
- }).finally((response) =>
1949
- {
1950
- if (typeof callback?.final === 'function')
1951
- {
1952
- callback?.final({ response, payload })
1953
- }
1954
- });
1955
- }
2085
+ /******************************************************************************************/
1956
2086
 
1957
2087
 
1958
2088
  /**
1959
2089
  *
1960
- * @version v.0.1 (07/07/2024)
1961
- */
1962
- async update()
1963
- {
1964
-
1965
- }
1966
-
1967
-
1968
- /**
2090
+ * @version v.0.1 (05/06/2025)
1969
2091
  *
1970
- * @version v.0.1 (07/07/2024)
2092
+ * @returns {string}
1971
2093
  */
1972
- async delete()
2094
+ get_element_name()
1973
2095
  {
1974
-
2096
+ return this.project_name;
1975
2097
  }
1976
2098
 
1977
2099
 
@@ -2540,6 +2662,7 @@ export class typeTestCase extends familyGeneralElement
2540
2662
 
2541
2663
 
2542
2664
  primary_key = 'test_case_id';
2665
+ api_key = 'test_case';
2543
2666
 
2544
2667
  // @todo - довнести
2545
2668
  structure_scheme = {
@@ -2593,179 +2716,13 @@ export class typeTestCase extends familyGeneralElement
2593
2716
 
2594
2717
  /**
2595
2718
  *
2596
- * @param {familyGeneralElement|object} payload
2597
- *
2598
- * @param {typeFunctionCallback|object|false} callback
2599
- *
2600
- * @param {?function} callback.before
2601
- * @param {?function} callback.success
2602
- * @param {?function} callback.error
2603
- * @param {?function} callback.final
2604
- *
2605
- * @version v.0.1 (17/05/2025)
2606
- */
2607
- async create(payload, callback)
2608
- {
2609
- if (typeof callback?.before === 'function')
2610
- {
2611
- callback?.before({ payload });
2612
- }
2613
-
2614
- payload = this.normalize_payload(payload);
2615
-
2616
-
2617
- /**
2618
- * {Api} ApiService
2619
- */
2620
- return ApiService.test_case.create(payload).then((response) =>
2621
- {
2622
- if (typeof callback?.success === 'function')
2623
- {
2624
- callback?.success({ response, payload })
2625
- }
2626
- }).catch((error) =>
2627
- {
2628
- echo({ error });
2629
- if (typeof callback?.error === 'function')
2630
- {
2631
- callback?.error({ error, payload })
2632
- }
2633
- }).finally((response) =>
2634
- {
2635
- if (typeof callback?.final === 'function')
2636
- {
2637
- callback?.final({ response, payload })
2638
- }
2639
- });
2640
- }
2641
-
2642
-
2643
- /**
2644
- *
2645
- * @version v.0.1 (07/07/2024)
2646
- */
2647
- async update(payload, callback)
2648
- {
2649
- if (typeof callback?.before === 'function')
2650
- {
2651
- callback?.before({ payload });
2652
- }
2653
-
2654
- payload = this.normalize_payload(payload);
2655
-
2656
-
2657
- /**
2658
- * {Api} ApiService
2659
- */
2660
- return ApiService.test_case.update(payload).then((response) =>
2661
- {
2662
- if (typeof callback?.success === 'function')
2663
- {
2664
- callback?.success({ response, payload })
2665
- }
2666
- }).catch((error) =>
2667
- {
2668
- echo({ error });
2669
- if (typeof callback?.error === 'function')
2670
- {
2671
- callback?.error({ error, payload })
2672
- }
2673
- }).finally((response) =>
2674
- {
2675
- if (typeof callback?.final === 'function')
2676
- {
2677
- callback?.final({ response, payload })
2678
- }
2679
- });
2680
- }
2681
-
2682
-
2683
- /**
2684
- *
2685
- * @param key
2686
- * @param value
2687
- * @param callback
2688
- * @returns {Promise<>}
2689
- */
2690
- async update_property(key, value, callback)
2691
- {
2692
- let payload = {
2693
- key : key,
2694
- value : value,
2695
- test_case_id: this.test_case_id
2696
- };
2697
-
2698
- if (typeof callback?.before === 'function')
2699
- {
2700
- callback?.before({ payload });
2701
- }
2702
-
2703
- /**
2704
- * {Api} ApiService
2705
- */
2706
- return ApiService.test_case.update_property(payload).then((response) =>
2707
- {
2708
- if (typeof callback?.success === 'function')
2709
- {
2710
- callback?.success({ response, payload })
2711
- }
2712
- }).catch((error) =>
2713
- {
2714
- echo({ error });
2715
- if (typeof callback?.error === 'function')
2716
- {
2717
- callback?.error({ error, payload })
2718
- }
2719
- }).finally((response) =>
2720
- {
2721
- if (typeof callback?.final === 'function')
2722
- {
2723
- callback?.final({ response, payload })
2724
- }
2725
- });
2726
- }
2727
-
2728
-
2729
- /**
2719
+ * @version v.0.1 (05/06/2025)
2730
2720
  *
2731
- * @version v.0.1 (17/05/2025)
2721
+ * @returns {string}
2732
2722
  */
2733
- async delete(element = false, callback = {})
2723
+ get_element_name()
2734
2724
  {
2735
- if (!element)
2736
- {
2737
- element = this;
2738
- }
2739
-
2740
- let payload = {
2741
- test_case_id: element.test_case_id
2742
- };
2743
-
2744
- if (typeof callback?.before === 'function')
2745
- {
2746
- callback?.before({ payload });
2747
- }
2748
-
2749
- return ApiService.test_case.delete(payload).then((response) =>
2750
- {
2751
- if (typeof callback?.success === 'function')
2752
- {
2753
- callback?.success({ response, payload })
2754
- }
2755
- }).catch((error) =>
2756
- {
2757
- echo({ error });
2758
- if (typeof callback?.error === 'function')
2759
- {
2760
- callback?.error({ error, payload })
2761
- }
2762
- }).finally((response) =>
2763
- {
2764
- if (typeof callback?.final === 'function')
2765
- {
2766
- callback?.final({ response, payload })
2767
- }
2768
- });
2725
+ return this.test_case_title;
2769
2726
  }
2770
2727
 
2771
2728
 
@@ -2963,6 +2920,7 @@ export class typeTestSuite extends familyGeneralElement
2963
2920
  team_id;
2964
2921
 
2965
2922
  primary_key = 'test_suite_id';
2923
+ api_key = 'test_suite';
2966
2924
 
2967
2925
  structure_scheme = {
2968
2926
  test_suite_id : 'integer | require',
@@ -2997,39 +2955,24 @@ export class typeTestSuite extends familyGeneralElement
2997
2955
  }
2998
2956
 
2999
2957
 
3000
- /******************************************************************************************/
3001
- /*********************************** general **********************************************/
3002
2958
 
2959
+ /******************************************************************************************/
2960
+ /******************************************************************************************/
3003
2961
  /******************************************************************************************/
3004
2962
 
3005
- /**
3006
- *
3007
- * @version v.0.1 (07/07/2024)
3008
- */
3009
- async create()
3010
- {}
3011
2963
 
3012
2964
 
3013
2965
  /**
3014
2966
  *
3015
- * @version v.0.1 (07/07/2024)
3016
- */
3017
- async update()
3018
- {
3019
-
3020
- }
3021
-
3022
-
3023
- /**
2967
+ * @version v.0.1 (05/06/2025)
3024
2968
  *
3025
- * @version v.0.1 (07/07/2024)
2969
+ * @returns {string}
3026
2970
  */
3027
- async delete()
2971
+ get_element_name()
3028
2972
  {
3029
-
2973
+ return this.test_suite_name;
3030
2974
  }
3031
2975
 
3032
-
3033
2976
  }
3034
2977
 
3035
2978