@pxp-nd/flow 1.0.58 → 1.0.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/controllers/FlowInstance.d.ts +2 -0
  2. package/dist/controllers/FlowInstance.js +66 -2
  3. package/dist/controllers/NodeInstance.d.ts +1 -1
  4. package/dist/controllers/NodeInstance.js +65 -55
  5. package/dist/entity/Event.d.ts +1 -0
  6. package/dist/entity/Event.js +4 -0
  7. package/dist/entity/FlowLog.d.ts +7 -0
  8. package/{.yalc/@pxp-nd/flow/dist/entity/OriginName.js → dist/entity/FlowLog.js} +13 -21
  9. package/dist/index.d.ts +0 -1
  10. package/dist/index.js +0 -1
  11. package/package.json +1 -1
  12. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/README.md +0 -1
  13. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Action.d.ts +0 -20
  14. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Action.js +0 -82
  15. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/ActionType.d.ts +0 -17
  16. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/ActionType.js +0 -28
  17. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Event.d.ts +0 -17
  18. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Event.js +0 -28
  19. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/FieldMap.d.ts +0 -17
  20. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/FieldMap.js +0 -28
  21. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Flow.d.ts +0 -24
  22. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Flow.js +0 -116
  23. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/FlowInstance.d.ts +0 -20
  24. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/FlowInstance.js +0 -78
  25. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Node.d.ts +0 -23
  26. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/Node.js +0 -273
  27. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/NodeInstance.d.ts +0 -21
  28. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/NodeInstance.js +0 -165
  29. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/OriginName.d.ts +0 -17
  30. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/OriginName.js +0 -28
  31. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/index.d.ts +0 -11
  32. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/controllers/index.js +0 -25
  33. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Action.d.ts +0 -20
  34. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Action.js +0 -85
  35. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/ActionType.d.ts +0 -16
  36. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/ActionType.js +0 -71
  37. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Event.d.ts +0 -9
  38. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Event.js +0 -44
  39. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/FieldMap.d.ts +0 -11
  40. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/FieldMap.js +0 -52
  41. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Flow.d.ts +0 -14
  42. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Flow.js +0 -60
  43. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/FlowInstance.d.ts +0 -16
  44. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/FlowInstance.js +0 -69
  45. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Node.d.ts +0 -23
  46. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/Node.js +0 -93
  47. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/NodeConnection.d.ts +0 -10
  48. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/NodeConnection.js +0 -49
  49. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/NodeInstance.d.ts +0 -13
  50. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/NodeInstance.js +0 -58
  51. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/OriginName.d.ts +0 -9
  52. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/OriginName.js +0 -43
  53. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/index.d.ts +0 -23
  54. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/entity/index.js +0 -27
  55. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/index.d.ts +0 -3
  56. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/index.js +0 -15
  57. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/subscribers/Event.d.ts +0 -21
  58. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/subscribers/Event.js +0 -83
  59. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/subscribers/index.d.ts +0 -3
  60. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/dist/subscribers/index.js +0 -6
  61. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/package.json +0 -39
  62. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/tsconfig.json +0 -29
  63. package/.yalc/@pxp-nd/flow/.yalc/@pxp-nd/flow/yalc.sig +0 -1
  64. package/.yalc/@pxp-nd/flow/README.md +0 -1
  65. package/.yalc/@pxp-nd/flow/dist/controllers/Action.d.ts +0 -20
  66. package/.yalc/@pxp-nd/flow/dist/controllers/Action.js +0 -82
  67. package/.yalc/@pxp-nd/flow/dist/controllers/ActionType.d.ts +0 -17
  68. package/.yalc/@pxp-nd/flow/dist/controllers/ActionType.js +0 -28
  69. package/.yalc/@pxp-nd/flow/dist/controllers/Event.d.ts +0 -17
  70. package/.yalc/@pxp-nd/flow/dist/controllers/Event.js +0 -28
  71. package/.yalc/@pxp-nd/flow/dist/controllers/FieldMap.d.ts +0 -17
  72. package/.yalc/@pxp-nd/flow/dist/controllers/FieldMap.js +0 -28
  73. package/.yalc/@pxp-nd/flow/dist/controllers/Flow.d.ts +0 -33
  74. package/.yalc/@pxp-nd/flow/dist/controllers/Flow.js +0 -469
  75. package/.yalc/@pxp-nd/flow/dist/controllers/FlowInstance.d.ts +0 -20
  76. package/.yalc/@pxp-nd/flow/dist/controllers/FlowInstance.js +0 -84
  77. package/.yalc/@pxp-nd/flow/dist/controllers/Node.d.ts +0 -23
  78. package/.yalc/@pxp-nd/flow/dist/controllers/Node.js +0 -273
  79. package/.yalc/@pxp-nd/flow/dist/controllers/NodeInstance.d.ts +0 -21
  80. package/.yalc/@pxp-nd/flow/dist/controllers/NodeInstance.js +0 -191
  81. package/.yalc/@pxp-nd/flow/dist/controllers/OriginName.d.ts +0 -17
  82. package/.yalc/@pxp-nd/flow/dist/controllers/OriginName.js +0 -28
  83. package/.yalc/@pxp-nd/flow/dist/controllers/index.d.ts +0 -11
  84. package/.yalc/@pxp-nd/flow/dist/controllers/index.js +0 -25
  85. package/.yalc/@pxp-nd/flow/dist/entity/Action.d.ts +0 -20
  86. package/.yalc/@pxp-nd/flow/dist/entity/Action.js +0 -85
  87. package/.yalc/@pxp-nd/flow/dist/entity/ActionType.d.ts +0 -16
  88. package/.yalc/@pxp-nd/flow/dist/entity/ActionType.js +0 -71
  89. package/.yalc/@pxp-nd/flow/dist/entity/Event.d.ts +0 -9
  90. package/.yalc/@pxp-nd/flow/dist/entity/Event.js +0 -44
  91. package/.yalc/@pxp-nd/flow/dist/entity/FieldMap.d.ts +0 -11
  92. package/.yalc/@pxp-nd/flow/dist/entity/FieldMap.js +0 -52
  93. package/.yalc/@pxp-nd/flow/dist/entity/Flow.d.ts +0 -14
  94. package/.yalc/@pxp-nd/flow/dist/entity/Flow.js +0 -60
  95. package/.yalc/@pxp-nd/flow/dist/entity/FlowInstance.d.ts +0 -16
  96. package/.yalc/@pxp-nd/flow/dist/entity/FlowInstance.js +0 -69
  97. package/.yalc/@pxp-nd/flow/dist/entity/Node.d.ts +0 -23
  98. package/.yalc/@pxp-nd/flow/dist/entity/Node.js +0 -93
  99. package/.yalc/@pxp-nd/flow/dist/entity/NodeConnection.d.ts +0 -10
  100. package/.yalc/@pxp-nd/flow/dist/entity/NodeConnection.js +0 -49
  101. package/.yalc/@pxp-nd/flow/dist/entity/NodeInstance.d.ts +0 -13
  102. package/.yalc/@pxp-nd/flow/dist/entity/NodeInstance.js +0 -58
  103. package/.yalc/@pxp-nd/flow/dist/entity/OriginName.d.ts +0 -9
  104. package/.yalc/@pxp-nd/flow/dist/entity/index.d.ts +0 -23
  105. package/.yalc/@pxp-nd/flow/dist/entity/index.js +0 -27
  106. package/.yalc/@pxp-nd/flow/dist/index.d.ts +0 -3
  107. package/.yalc/@pxp-nd/flow/dist/index.js +0 -19
  108. package/.yalc/@pxp-nd/flow/dist/subscribers/Event.d.ts +0 -21
  109. package/.yalc/@pxp-nd/flow/dist/subscribers/Event.js +0 -84
  110. package/.yalc/@pxp-nd/flow/dist/subscribers/index.d.ts +0 -3
  111. package/.yalc/@pxp-nd/flow/dist/subscribers/index.js +0 -6
  112. package/.yalc/@pxp-nd/flow/package.json +0 -39
  113. package/.yalc/@pxp-nd/flow/tsconfig.json +0 -29
  114. package/.yalc/@pxp-nd/flow/yalc.lock +0 -9
  115. package/.yalc/@pxp-nd/flow/yalc.sig +0 -1
  116. package/dist/subscribers/Event.d.ts +0 -21
  117. package/dist/subscribers/Event.js +0 -84
  118. package/dist/subscribers/index.d.ts +0 -3
  119. package/dist/subscribers/index.js +0 -6
  120. package/yalc.lock +0 -9
@@ -1,116 +0,0 @@
1
- "use strict";
2
- /**
3
- * Effex 2021
4
- *
5
- * MIT
6
- *
7
- * Flow Controller
8
- *
9
- * @summary Flow Controller
10
- * @author Jaime Figueroa
11
- *
12
- * Created at : 2021-07-08 12:55:38
13
- * Last modified :
14
- */
15
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
16
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
19
- return c > 3 && r && Object.defineProperty(target, key, r), r;
20
- };
21
- var __metadata = (this && this.__metadata) || function (k, v) {
22
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
23
- };
24
- var __importDefault = (this && this.__importDefault) || function (mod) {
25
- return (mod && mod.__esModule) ? mod : { "default": mod };
26
- };
27
- Object.defineProperty(exports, "__esModule", { value: true });
28
- const typeorm_1 = require("typeorm");
29
- const core_1 = require("@pxp-nd/core");
30
- const Node_1 = __importDefault(require("../entity/Node"));
31
- const NodeConnection_1 = __importDefault(require("../entity/NodeConnection"));
32
- const Flow_1 = __importDefault(require("../entity/Flow"));
33
- let Flow = class Flow extends core_1.Controller {
34
- async get(params) {
35
- const nodes = await Node_1.default.find({ flowId: params.flowId });
36
- const restNodes = [];
37
- for (let node of nodes) {
38
- const { actionConfigJson, action: { actionType: { schemaJson } } } = node;
39
- const actionConfigJsonObject = actionConfigJson ? JSON.parse(actionConfigJson) : {};
40
- const schemaJsonObject = schemaJson ? JSON.parse(schemaJson) : {};
41
- const valuesForShowingInNode = {};
42
- Object.entries(schemaJsonObject).filter(([n, sjo]) => sjo.showInNode === true).forEach(([nameKey, json]) => {
43
- valuesForShowingInNode[nameKey] = {
44
- label: json.label,
45
- value: actionConfigJsonObject[nameKey] || null
46
- };
47
- });
48
- const nodeRow = {
49
- ...node,
50
- valuesForShowingInNode
51
- };
52
- const connections = await NodeConnection_1.default.find({ nodeIdMaster: node.nodeId });
53
- restNodes.push({ node: nodeRow, connections: connections.map(c => c.nodeIdChild) });
54
- }
55
- return restNodes;
56
- }
57
- async copyNodeConnections(nodeId, newNodeId, newFlowId, manager) {
58
- const connections = await core_1.__(NodeConnection_1.default.find({ nodeIdMaster: nodeId }));
59
- for (let connection of connections) {
60
- const newNodeConnection = new NodeConnection_1.default();
61
- const { nodeConnectionId, nodeIdMaster, nodeIdChild, createdAt, modifiedAt, ...nodeConnectionToCopy } = connection;
62
- // get node from nodeIdChild
63
- const dataNodeChild = await Node_1.default.findOne({ nodeId: connection.nodeIdChild });
64
- const { nodeId: newNodeIdChild } = await this.copyNode(dataNodeChild, newFlowId, manager);
65
- Object.assign(newNodeConnection, { ...nodeConnectionToCopy, nodeIdMaster: newNodeId, nodeIdChild: newNodeIdChild });
66
- const insertNewNodeConnection = await core_1.__(manager.save(NodeConnection_1.default, newNodeConnection));
67
- }
68
- }
69
- async copyNode(node, newFlowId, manager) {
70
- // insert new node
71
- const newNode = new Node_1.default();
72
- const { nodeId, flowId, createdAt, modifiedAt, actionConfigJson, ...nodeToCopy } = node;
73
- Object.assign(newNode, { ...nodeToCopy, flowId: newFlowId });
74
- const insertNewNode = await core_1.__(manager.save(Node_1.default, newNode));
75
- // insert connection
76
- await this.copyNodeConnections(node.nodeId, insertNewNode.nodeId, newFlowId, manager);
77
- return { nodeId: insertNewNode.nodeId };
78
- }
79
- async createFlowFromFlow(params, manager) {
80
- // we need clone the flow selected
81
- const dataFlow = await core_1.__(Flow_1.default.findOne(params.flowId));
82
- const { flowId, createdAt, modifiedAt, nodes, ...flowToCopy } = dataFlow;
83
- const newFlow = new Flow_1.default();
84
- Object.assign(newFlow, flowToCopy);
85
- newFlow.name = params.name;
86
- newFlow.description = params.description;
87
- const insertNewFlow = await core_1.__(manager.save(Flow_1.default, newFlow));
88
- // create the nodes
89
- // get the first node "the trigger node"
90
- const dataNode = await Node_1.default.findOne({ where: { flowId: params.flowId }, order: { nodeId: "ASC" } });
91
- dataNode && await this.copyNode(dataNode, insertNewFlow.flowId, manager);
92
- return { flowId: insertNewFlow.flowId };
93
- }
94
- };
95
- __decorate([
96
- core_1.Get(),
97
- core_1.DbSettings('Orm'),
98
- core_1.ReadOnly(true),
99
- core_1.Log(true),
100
- __metadata("design:type", Function),
101
- __metadata("design:paramtypes", [Object]),
102
- __metadata("design:returntype", Promise)
103
- ], Flow.prototype, "get", null);
104
- __decorate([
105
- core_1.Post(),
106
- core_1.DbSettings('Orm'),
107
- core_1.ReadOnly(false),
108
- core_1.Log(true),
109
- __metadata("design:type", Function),
110
- __metadata("design:paramtypes", [Object, typeorm_1.EntityManager]),
111
- __metadata("design:returntype", Promise)
112
- ], Flow.prototype, "createFlowFromFlow", null);
113
- Flow = __decorate([
114
- core_1.Model('flow-nd/Flow')
115
- ], Flow);
116
- exports.default = Flow;
@@ -1,20 +0,0 @@
1
- /**
2
- * Kplian 2021
3
- *
4
- * MIT
5
- *
6
- * NodeInstance Controller
7
- *
8
- * @summary Member Controller
9
- * @author Favio Figueroa
10
- * Jaime Rivera
11
- *
12
- * Created at : 2021-07-08 12:55:38
13
- * Last modified :
14
- */
15
- import { EntityManager } from 'typeorm';
16
- import { Controller } from '@pxp-nd/core';
17
- declare class FlowInstance extends Controller {
18
- processPending(params: Record<string, any>, manager: EntityManager): Promise<unknown>;
19
- }
20
- export default FlowInstance;
@@ -1,78 +0,0 @@
1
- "use strict";
2
- /**
3
- * Kplian 2021
4
- *
5
- * MIT
6
- *
7
- * NodeInstance Controller
8
- *
9
- * @summary Member Controller
10
- * @author Favio Figueroa
11
- * Jaime Rivera
12
- *
13
- * Created at : 2021-07-08 12:55:38
14
- * Last modified :
15
- */
16
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
17
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
20
- return c > 3 && r && Object.defineProperty(target, key, r), r;
21
- };
22
- var __metadata = (this && this.__metadata) || function (k, v) {
23
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const typeorm_1 = require("typeorm");
30
- const core_1 = require("@pxp-nd/core");
31
- const FlowInstance_1 = __importDefault(require("../entity/FlowInstance"));
32
- const common_1 = require("@pxp-nd/common");
33
- const NodeInstance_1 = __importDefault(require("./NodeInstance"));
34
- const NodeInstance_2 = __importDefault(require("../entity/NodeInstance"));
35
- const Node_1 = __importDefault(require("../entity/Node"));
36
- class FlowInstance extends core_1.Controller {
37
- async processPending(params, manager) {
38
- const flag = await common_1.GlobalData.findOne({ data: 'wf_processing_pending_flows_flag' });
39
- if (flag) {
40
- if (flag.value == 'true') {
41
- throw new core_1.PxpError(400, 'Already processing pending flows');
42
- }
43
- flag.value = 'true';
44
- let flowInstanceIdProcessing = -1;
45
- await typeorm_1.getManager().save(flag);
46
- try {
47
- const maxFlows = await common_1.GlobalData.findOne({ data: 'wf_max_concurrent_flows_process' });
48
- const flowInstances = await FlowInstance_1.default.find({ take: (maxFlows && maxFlows.value), where: [{ status: 'pending' }], order: { flowInstanceId: "ASC" } });
49
- for (const flowInstance of flowInstances) {
50
- flowInstanceIdProcessing = flowInstance.flowInstanceId;
51
- const node = await Node_1.default.findOne({ where: { actionId: flowInstance.actionId, flowId: flowInstance.flowId } });
52
- const CNodeInstance = new NodeInstance_1.default('flow-nd', NodeInstance_2.default);
53
- await CNodeInstance.RecursiveInstance({ node, flowInstance });
54
- flowInstance.status = 'processed';
55
- await manager.save(flowInstance);
56
- }
57
- }
58
- catch (error) {
59
- flag.value = 'false';
60
- await typeorm_1.getManager().save(flag);
61
- throw new core_1.PxpError(400, 'Error processing flow: ' + flowInstanceIdProcessing);
62
- }
63
- flag.value = 'false';
64
- await typeorm_1.getManager().save(flag);
65
- }
66
- return { success: true };
67
- }
68
- }
69
- __decorate([
70
- core_1.Post(),
71
- core_1.DbSettings('Orm'),
72
- core_1.ReadOnly(false),
73
- core_1.Log(true),
74
- __metadata("design:type", Function),
75
- __metadata("design:paramtypes", [Object, typeorm_1.EntityManager]),
76
- __metadata("design:returntype", Promise)
77
- ], FlowInstance.prototype, "processPending", null);
78
- exports.default = FlowInstance;
@@ -1,23 +0,0 @@
1
- /**
2
- * Effex 2021
3
- *
4
- * MIT
5
- *
6
- * Member Controller
7
- *
8
- * @summary Member Controller
9
- * @author Favio Figueroa
10
- *
11
- * Created at : 2021-07-08 12:55:38
12
- * Last modified :
13
- */
14
- import { EntityManager } from 'typeorm';
15
- import { Controller } from '@pxp-nd/core';
16
- declare class Node extends Controller {
17
- getNodeData(node: any, dataId: any, manager: EntityManager): Promise<string>;
18
- add(params: Record<string, any>, manager: EntityManager): Promise<unknown>;
19
- AddActionConfigJson(params: Record<string, any>, manager: EntityManager): Promise<unknown>;
20
- getParameterizedNode(params: Record<string, any>, manager: EntityManager): Promise<unknown>;
21
- executeActionJson(params: Record<string, any>, manager: EntityManager): Promise<unknown>;
22
- }
23
- export default Node;
@@ -1,273 +0,0 @@
1
- "use strict";
2
- /**
3
- * Effex 2021
4
- *
5
- * MIT
6
- *
7
- * Member Controller
8
- *
9
- * @summary Member Controller
10
- * @author Favio Figueroa
11
- *
12
- * Created at : 2021-07-08 12:55:38
13
- * Last modified :
14
- */
15
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
16
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
19
- return c > 3 && r && Object.defineProperty(target, key, r), r;
20
- };
21
- var __metadata = (this && this.__metadata) || function (k, v) {
22
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
23
- };
24
- var __importDefault = (this && this.__importDefault) || function (mod) {
25
- return (mod && mod.__esModule) ? mod : { "default": mod };
26
- };
27
- Object.defineProperty(exports, "__esModule", { value: true });
28
- const typeorm_1 = require("typeorm");
29
- const Node_1 = __importDefault(require("../entity/Node"));
30
- const NodeConnection_1 = __importDefault(require("../entity/NodeConnection"));
31
- const core_1 = require("@pxp-nd/core");
32
- const lodash_1 = __importDefault(require("lodash"));
33
- const FieldMap_1 = __importDefault(require("../entity/FieldMap"));
34
- const OriginName_1 = __importDefault(require("../entity/OriginName"));
35
- const axios_1 = __importDefault(require("axios"));
36
- let Node = class Node extends core_1.Controller {
37
- async getNodeData(node, dataId, manager) {
38
- const { action: { originName, originKey } } = node;
39
- const executeView = `select * from ${originName} where ${originKey} = ${dataId}`;
40
- const resExecuteView = await core_1.__(manager.query(executeView));
41
- return JSON.stringify(resExecuteView[0]);
42
- }
43
- async add(params, manager) {
44
- let node = new Node_1.default();
45
- node.isInit = params.isInit;
46
- node.isEnd = params.isEnd;
47
- node.actionId = params.actionId;
48
- node.flowId = params.flowId;
49
- node = await manager.save(node);
50
- if (params.parents) {
51
- for (let parent of params.parents) {
52
- const nc = await NodeConnection_1.default.find({ nodeIdMaster: parent.parentId });
53
- for (let connection of nc) {
54
- connection.nodeIdMaster = node.nodeId;
55
- await manager.save(connection);
56
- }
57
- let nodeConnection = new NodeConnection_1.default();
58
- nodeConnection.nodeIdChild = node.nodeId;
59
- nodeConnection.nodeIdMaster = parent.parentId;
60
- nodeConnection.condition = parent.condition;
61
- nodeConnection = await manager.save(nodeConnection);
62
- }
63
- }
64
- const { nodeId } = node;
65
- const nodeData = await manager.findOne(Node_1.default, nodeId);
66
- return nodeData;
67
- }
68
- async AddActionConfigJson(params, manager) {
69
- let { nodeId: removed, __metadata: removed2, ...actionConfigJson } = params;
70
- Object.entries(params.__metadata).forEach(([nameKey, values]) => {
71
- actionConfigJson[nameKey] = `{{ ${values.name} }}`;
72
- });
73
- const upd = await core_1.__(manager.update(Node_1.default, params.nodeId, {
74
- actionConfigJson: JSON.stringify(actionConfigJson),
75
- }));
76
- return {
77
- actionConfigJson,
78
- success: true,
79
- nodeId: params.nodeId,
80
- upd
81
- };
82
- }
83
- async getParameterizedNode(params, manager) {
84
- lodash_1.default.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
85
- const { nodeId, flowId, substitutionsSchemaJson = {} } = params;
86
- const tNodeOrigin = await core_1.__(Node_1.default.findOne({
87
- relations: ['action'],
88
- where: {
89
- flowId: flowId,
90
- isInit: 'Y',
91
- action: {
92
- originName: typeorm_1.Not(typeorm_1.IsNull())
93
- }
94
- }
95
- }));
96
- const tNodeData = core_1.__(Node_1.default.findOne(nodeId));
97
- const tFieldMapData = core_1.__(manager.createQueryBuilder(FieldMap_1.default, 'fm')
98
- .innerJoin(OriginName_1.default, 'on', 'on.originNameId = fm.originNameId')
99
- .where("on.name = :n ", { n: tNodeOrigin.action.originName })
100
- .getMany());
101
- //const nodeOrigin = await tNodeOrigin; todo
102
- const nodeData = await tNodeData;
103
- const fieldMapData = await tFieldMapData;
104
- /*const [nodeData, fieldMapData] = await Promise.all([
105
- tNodeData,
106
- tFieldMapData
107
- ]);*/
108
- const { actionConfigJson, action: { schemaJson, configJsonTemplate, actionType: { schemaJson: schemaJsonFromActionType } } } = nodeData;
109
- const actionConfigJsonObject = actionConfigJson ? JSON.parse(actionConfigJson) : {};
110
- const configJsonTemplateObject = configJsonTemplate ? JSON.parse(configJsonTemplate) : {};
111
- let schemaJsonFromActionTypeObject = schemaJsonFromActionType ? JSON.parse(lodash_1.default.template(schemaJsonFromActionType)(substitutionsSchemaJson)) : {};
112
- let schemaJsonFromActionObject = schemaJson ? JSON.parse(lodash_1.default.template(schemaJson)(substitutionsSchemaJson)) : {};
113
- let schemaJsonObject = { ...schemaJsonFromActionTypeObject, ...schemaJsonFromActionObject };
114
- const mergeValues = {
115
- ...configJsonTemplateObject,
116
- ...actionConfigJsonObject
117
- };
118
- const verifyIfValueFromFieldMap = (str) => {
119
- if (/^{{/.test(str) && /}}$/.test(str)) {
120
- return true;
121
- }
122
- return false;
123
- };
124
- const findFieldMapAndMetaData = (value) => {
125
- const found = fieldMapData.find((fmd) => `{{ ${fmd.name} }}` === value) || {};
126
- return {
127
- initialValue: found.alias || value,
128
- metadata: found
129
- };
130
- };
131
- const findFieldMapUniqueByType = (fieldMappingType) => {
132
- const filtered = fieldMapData.filter((fmd) => fmd.type === fieldMappingType);
133
- if (filtered && filtered.length === 1) {
134
- const [found] = filtered;
135
- return {
136
- initialValue: found.alias,
137
- metadata: found
138
- };
139
- }
140
- return undefined;
141
- };
142
- // this logic is for autocomplete for moment
143
- const findFieldInConfigForComponent = async (json, value) => {
144
- if (json.formComponent && json.formComponent.type === 'AutoComplete') {
145
- const url = json.formComponent.store.axios.url;
146
- const method = json.formComponent.store.axios.method;
147
- const data = json.formComponent.store.axios.data;
148
- const idDD = json.formComponent.store.idDD;
149
- const descDD = json.formComponent.store.descDD;
150
- const config = {
151
- method: method,
152
- url: url,
153
- headers: {
154
- 'Authorization': '' + process.env.TOKEN_PXP_ND + '',
155
- 'Content-Type': 'application/json'
156
- },
157
- data: {
158
- ...data,
159
- [idDD]: value
160
- }
161
- };
162
- // @ts-ignore
163
- const resControllerAxios = await core_1.__(axios_1.default(config));
164
- const desc = resControllerAxios.data.data[descDD];
165
- return desc;
166
- }
167
- else if (json.formComponentTemplate && json.configGetDescValue) { // todo we need to see how works here
168
- const { controller, storeId, descColumn } = json.configGetDescValue;
169
- const config = {
170
- method: "get",
171
- url: `http://localhost:${process.env.PORT}/api/${controller}`,
172
- headers: {
173
- 'Authorization': '' + process.env.TOKEN_PXP_ND + '',
174
- 'Content-Type': 'application/json'
175
- },
176
- data: {
177
- [storeId]: value
178
- }
179
- };
180
- // @ts-ignore
181
- const resControllerAxios = await core_1.__(axios_1.default(config));
182
- const desc = resControllerAxios.data.data[descColumn];
183
- return desc;
184
- }
185
- return undefined;
186
- };
187
- for (const [nameKey, value] of Object.entries(mergeValues)) {
188
- if (schemaJsonObject[nameKey]) {
189
- const descValue = await core_1.__(findFieldInConfigForComponent(schemaJsonObject[nameKey], value));
190
- schemaJsonObject[nameKey] = {
191
- ...schemaJsonObject[nameKey],
192
- initialValue: value,
193
- ...(descValue && { descValue: descValue }),
194
- ...(verifyIfValueFromFieldMap(value) && { fromFieldMap: true, ...findFieldMapAndMetaData(value) }),
195
- };
196
- }
197
- }
198
- Object.entries(schemaJsonObject)
199
- .filter(([, value]) => value.initialValue === undefined && value.fromFieldMap === undefined && value.fieldMappingType)
200
- .forEach(([nameKey]) => {
201
- const hasUniqueByTypeInMappingData = findFieldMapUniqueByType(schemaJsonObject[nameKey].fieldMappingType);
202
- schemaJsonObject[nameKey] = {
203
- ...schemaJsonObject[nameKey],
204
- ...(hasUniqueByTypeInMappingData && { fromFieldMap: true, ...hasUniqueByTypeInMappingData }),
205
- };
206
- });
207
- return {
208
- actionConfigJsonObject,
209
- configJsonTemplateObject,
210
- mergeValues,
211
- schemaJsonObject,
212
- schemaJson,
213
- node: nodeData,
214
- fieldMapData,
215
- };
216
- }
217
- async executeActionJson(params, manager) {
218
- const { nodeId, originName, originKey, fromValues } = params;
219
- // we need to get the value from merge values with originKey
220
- const getParameterizedNodeData = await core_1.__(this.getParameterizedNode({ nodeId: nodeId }, manager));
221
- const { mergeValues } = getParameterizedNodeData;
222
- const findOriginValue = Object.entries(mergeValues).find(([nameValue]) => fromValues === nameValue);
223
- const resValueObject = Object.fromEntries([findOriginValue]);
224
- const originValue = resValueObject[fromValues];
225
- const executeViewString = `select * from ${originName} where ${originKey} = ${originValue}`;
226
- const resExecuteView = await typeorm_1.getManager().query(executeViewString);
227
- /*const executeView = `select * from ${originName} where ${originKey} = ${newEvent.dataId}`;
228
- const resExecuteView = await getManager().query(executeView);*/
229
- return {
230
- ...resExecuteView[0]
231
- };
232
- }
233
- };
234
- __decorate([
235
- core_1.Post(),
236
- core_1.DbSettings('Orm'),
237
- core_1.ReadOnly(false),
238
- core_1.Log(true),
239
- __metadata("design:type", Function),
240
- __metadata("design:paramtypes", [Object, typeorm_1.EntityManager]),
241
- __metadata("design:returntype", Promise)
242
- ], Node.prototype, "add", null);
243
- __decorate([
244
- core_1.Post(),
245
- core_1.DbSettings('Orm'),
246
- core_1.ReadOnly(false),
247
- core_1.Log(true),
248
- __metadata("design:type", Function),
249
- __metadata("design:paramtypes", [Object, typeorm_1.EntityManager]),
250
- __metadata("design:returntype", Promise)
251
- ], Node.prototype, "AddActionConfigJson", null);
252
- __decorate([
253
- core_1.Post(),
254
- core_1.DbSettings('Orm'),
255
- core_1.ReadOnly(false),
256
- core_1.Log(true),
257
- __metadata("design:type", Function),
258
- __metadata("design:paramtypes", [Object, typeorm_1.EntityManager]),
259
- __metadata("design:returntype", Promise)
260
- ], Node.prototype, "getParameterizedNode", null);
261
- __decorate([
262
- core_1.Post(),
263
- core_1.DbSettings('Orm'),
264
- core_1.ReadOnly(false),
265
- core_1.Log(true),
266
- __metadata("design:type", Function),
267
- __metadata("design:paramtypes", [Object, typeorm_1.EntityManager]),
268
- __metadata("design:returntype", Promise)
269
- ], Node.prototype, "executeActionJson", null);
270
- Node = __decorate([
271
- core_1.Model('flow-nd/Node')
272
- ], Node);
273
- exports.default = Node;
@@ -1,21 +0,0 @@
1
- /**
2
- * Kplian 2021
3
- *
4
- * MIT
5
- *
6
- * NodeInstance Controller
7
- *
8
- * @summary Member Controller
9
- * @author Favio Figueroa
10
- * Jaime Rivera
11
- *
12
- * Created at : 2021-07-08 12:55:38
13
- * Last modified :
14
- */
15
- import { EntityManager } from 'typeorm';
16
- import { Controller } from '@pxp-nd/core';
17
- declare class NodeInstance extends Controller {
18
- RecursiveInstance(params: Record<string, any>): Promise<unknown>;
19
- ProcessDelay(params: Record<string, any>, manager: EntityManager): Promise<unknown>;
20
- }
21
- export default NodeInstance;