@or-sdk/idw 1.3.7 → 1.3.8-beta.1536.0

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 (36) hide show
  1. package/dist/cjs/idw.js +22 -16
  2. package/dist/cjs/idw.js.map +1 -1
  3. package/dist/cjs/migration-base.js +7 -6
  4. package/dist/cjs/migration-base.js.map +1 -1
  5. package/dist/cjs/migration-handler.js +17 -18
  6. package/dist/cjs/migration-handler.js.map +1 -1
  7. package/dist/cjs/migrations/Migration__3.js +108 -0
  8. package/dist/cjs/migrations/Migration__3.js.map +1 -0
  9. package/dist/cjs/migrations/index.js +3 -1
  10. package/dist/cjs/migrations/index.js.map +1 -1
  11. package/dist/esm/idw.js +12 -4
  12. package/dist/esm/idw.js.map +1 -1
  13. package/dist/esm/migration-base.js +7 -6
  14. package/dist/esm/migration-base.js.map +1 -1
  15. package/dist/esm/migration-handler.js +8 -10
  16. package/dist/esm/migration-handler.js.map +1 -1
  17. package/dist/esm/migrations/Migration__3.js +53 -0
  18. package/dist/esm/migrations/Migration__3.js.map +1 -0
  19. package/dist/esm/migrations/index.js +1 -0
  20. package/dist/esm/migrations/index.js.map +1 -1
  21. package/dist/types/idw.d.ts +1 -0
  22. package/dist/types/idw.d.ts.map +1 -1
  23. package/dist/types/migration-base.d.ts +3 -1
  24. package/dist/types/migration-base.d.ts.map +1 -1
  25. package/dist/types/migration-handler.d.ts +3 -1
  26. package/dist/types/migration-handler.d.ts.map +1 -1
  27. package/dist/types/migrations/Migration__3.d.ts +5 -0
  28. package/dist/types/migrations/Migration__3.d.ts.map +1 -0
  29. package/dist/types/migrations/index.d.ts +1 -0
  30. package/dist/types/migrations/index.d.ts.map +1 -1
  31. package/package.json +3 -3
  32. package/src/idw.ts +11 -1
  33. package/src/migration-base.ts +9 -12
  34. package/src/migration-handler.ts +23 -11
  35. package/src/migrations/Migration__3.ts +45 -0
  36. package/src/migrations/index.ts +1 -0
package/dist/cjs/idw.js CHANGED
@@ -62,6 +62,7 @@ var users_1 = require("@or-sdk/users");
62
62
  var accounts_1 = require("@or-sdk/accounts");
63
63
  var constants_1 = require("./constants");
64
64
  var migration_handler_1 = __importDefault(require("./migration-handler"));
65
+ var flows_1 = require("@or-sdk/flows");
65
66
  var IDW = (function (_super) {
66
67
  __extends(IDW, _super);
67
68
  function IDW(params) {
@@ -94,8 +95,12 @@ var IDW = (function (_super) {
94
95
  token: token,
95
96
  sdkUrl: sdkApiUrl,
96
97
  });
98
+ _this.flows = new flows_1.Flows({
99
+ token: token,
100
+ discoveryUrl: discoveryUrl,
101
+ });
97
102
  _this.accountId = accountId;
98
- _this.migrationHandler = new migration_handler_1.default(_this.graphApi, _this.users, _this.accounts, _this.settings, _this.accountId);
103
+ _this.migrationHandler = new migration_handler_1.default(_this.graphApi, _this.users, _this.accounts, _this.settings, _this.accountId, _this.flows);
99
104
  return _this;
100
105
  }
101
106
  IDW.prototype.runMigrations = function () {
@@ -144,11 +149,11 @@ var IDW = (function (_super) {
144
149
  });
145
150
  };
146
151
  IDW.prototype.createOrUpdateFlow = function (flow) {
147
- var _a, _b;
152
+ var _a, _b, _c, _d, _e, _f;
148
153
  return __awaiter(this, void 0, void 0, function () {
149
- var id, _c, username, userId, channel, skills, preparedIds;
150
- return __generator(this, function (_d) {
151
- switch (_d.label) {
154
+ var id, _g, username, userId, channel, skills, preparedIds;
155
+ return __generator(this, function (_h) {
156
+ switch (_h.label) {
152
157
  case 0:
153
158
  id = flow.id;
154
159
  if (id === undefined) {
@@ -156,11 +161,11 @@ var IDW = (function (_super) {
156
161
  }
157
162
  if (!flow.isDeleted) return [3, 2];
158
163
  return [4, this.deleteFlow(id)];
159
- case 1: return [2, _d.sent()];
164
+ case 1: return [2, _h.sent()];
160
165
  case 2: return [4, this.users.getCurrentUser()];
161
166
  case 3:
162
- _c = _d.sent(), username = _c.username, userId = _c.userId;
163
- return [4, this.graphQuery("\n MERGE (flow:FLOW { id: $id })\n ON MATCH\n SET flow.createdAt = $createdAt,\n flow.createdBy = $userId,\n flow.description = $description,\n flow.groupId = $groupId,\n flow.name = $name,\n flow.updatedAt = $updatedAt,\n flow.updatedBy = $username\n ON CREATE\n SET flow.createdAt = $createdAt,\n flow.createdBy = $userId,\n flow.description = $description,\n flow.groupId = $groupId,\n flow.isActive = false,\n flow.name = $name,\n flow.updatedAt = $updatedAt,\n flow.updatedBy = $username\n RETURN flow\n ", {
167
+ _g = _h.sent(), username = _g.username, userId = _g.userId;
168
+ return [4, this.graphQuery("\n MERGE (flow:FLOW { id: $id })\n ON MATCH\n SET flow.createdAt = $createdAt,\n flow.createdBy = $userId,\n flow.description = $description,\n flow.groupId = $groupId,\n flow.name = $name,\n flow.updatedAt = $updatedAt,\n flow.updatedBy = $username\n flow.steps = $steps\n ON CREATE\n SET flow.createdAt = $createdAt,\n flow.createdBy = $userId,\n flow.description = $description,\n flow.groupId = $groupId,\n flow.isActive = false,\n flow.name = $name,\n flow.updatedAt = $updatedAt,\n flow.updatedBy = $username\n flow.steps = $steps\n RETURN flow\n ", {
164
169
  createdAt: flow.dateCreated,
165
170
  description: flow.data.description,
166
171
  groupId: flow.botId,
@@ -169,22 +174,23 @@ var IDW = (function (_super) {
169
174
  updatedAt: flow.dateModified,
170
175
  username: username,
171
176
  userId: userId,
177
+ steps: (_d = (_c = (_b = (_a = flow.data.trees) === null || _a === void 0 ? void 0 : _a.main) === null || _b === void 0 ? void 0 : _b.steps) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0,
172
178
  })];
173
179
  case 4:
174
- _d.sent();
180
+ _h.sent();
175
181
  return [4, this.graphQuery("\n MATCH (flow:FLOW { id: $id })\n OPTIONAL MATCH (flow)-[channelRelations:IMPLEMENTS { isActive: false }]->(:CHANNEL)\n OPTIONAL MATCH (flow)-[skillRelations:IMPLEMENTS { isActive: false }]->(:SKILL)\n DELETE channelRelations, skillRelations\n ", { id: id })];
176
182
  case 5:
177
- _d.sent();
178
- channel = (_a = flow.data.meta.idw) === null || _a === void 0 ? void 0 : _a.channel;
179
- skills = (_b = flow.data.meta.idw) === null || _b === void 0 ? void 0 : _b.skills;
183
+ _h.sent();
184
+ channel = (_e = flow.data.meta.idw) === null || _e === void 0 ? void 0 : _e.channel;
185
+ skills = (_f = flow.data.meta.idw) === null || _f === void 0 ? void 0 : _f.skills;
180
186
  if (!(channel !== undefined && channel.length !== 0)) return [3, 7];
181
187
  return [4, this.graphQuery("\n MATCH (flow:FLOW { id: $id }),\n (channel:CHANNEL { id: $channel })\n MERGE (flow)-[relationship:IMPLEMENTS]->(channel)\n ON CREATE\n SET relationship.isActive = false\n ", {
182
188
  channel: channel,
183
189
  id: id,
184
190
  })];
185
191
  case 6:
186
- _d.sent();
187
- _d.label = 7;
192
+ _h.sent();
193
+ _h.label = 7;
188
194
  case 7:
189
195
  if (!(skills === null || skills === void 0 ? void 0 : skills.length)) return [3, 9];
190
196
  preparedIds = skills.map(function (id) { return "'".concat(id, "'"); });
@@ -192,8 +198,8 @@ var IDW = (function (_super) {
192
198
  id: id,
193
199
  })];
194
200
  case 8:
195
- _d.sent();
196
- _d.label = 9;
201
+ _h.sent();
202
+ _h.label = 9;
197
203
  case 9: return [2];
198
204
  }
199
205
  });
@@ -1 +1 @@
1
- {"version":3,"file":"idw.js","sourceRoot":"","sources":["../../src/idw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"idw.js","sourceRoot":"","sources":["../../src/idw.ts"],"names":[],"mappings":"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"}
@@ -38,12 +38,13 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.MigrationBase = void 0;
40
40
  var MigrationBase = (function () {
41
- function MigrationBase(params) {
42
- this.graphApi = params.graphApi;
43
- this.users = params.users;
44
- this.accounts = params.accounts;
45
- this.settings = params.settings;
46
- this.accountId = params.accountId;
41
+ function MigrationBase(graphApi, users, accounts, settings, accountId, flows) {
42
+ this.graphApi = graphApi;
43
+ this.users = users;
44
+ this.accounts = accounts;
45
+ this.settings = settings;
46
+ this.accountId = accountId;
47
+ this.flows = flows;
47
48
  }
48
49
  MigrationBase.prototype.resolveAccountId = function () {
49
50
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"migration-base.js","sourceRoot":"","sources":["../../src/migration-base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA;IAOE,uBAAY,MAAwB;QAClC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IAIe,wCAAgB,GAAhC;;;;;gBACE,WAAO,MAAA,IAAI,CAAC,SAAS,mCAAI,CAAC;;;;wCACF,WAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,EAAA;;oCAA/C,SAAS,GAAK,CAAA,SAAiC,CAAA,UAAtC;oCACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;oCAC3B,WAAO,SAAS,EAAC;;;yBAClB,CAAC,EAAE,EAAC;;;KACN;IACH,oBAAC;AAAD,CAAC,AAxBD,IAwBC;AAxBqB,sCAAa"}
1
+ {"version":3,"file":"migration-base.js","sourceRoot":"","sources":["../../src/migration-base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA;IACE,uBACY,QAAgB,EAChB,KAAY,EACZ,QAAkB,EAClB,QAAkB,EAClB,SAA6B,EAC7B,KAAY;QALZ,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAO;QACZ,aAAQ,GAAR,QAAQ,CAAU;QAClB,aAAQ,GAAR,QAAQ,CAAU;QAClB,cAAS,GAAT,SAAS,CAAoB;QAC7B,UAAK,GAAL,KAAK,CAAO;IAExB,CAAC;IAIe,wCAAgB,GAAhC;;;;;gBACE,WAAO,MAAA,IAAI,CAAC,SAAS,mCAAI,CAAC;;;;wCACF,WAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,EAAA;;oCAA/C,SAAS,GAAK,CAAA,SAAiC,CAAA,UAAtC;oCACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;oCAC3B,WAAO,SAAS,EAAC;;;yBAClB,CAAC,EAAE,EAAC;;;KACN;IACH,oBAAC;AAAD,CAAC,AApBD,IAoBC;AApBqB,sCAAa"}
@@ -63,52 +63,51 @@ var constants_1 = require("./constants");
63
63
  var migrations = __importStar(require("./migrations"));
64
64
  var PREFIX = 'Migration__';
65
65
  var MigrationHandler = (function () {
66
- function MigrationHandler(graphApi, users, accounts, settings, accountId) {
66
+ function MigrationHandler(graphApi, users, accounts, settings, accountId, flows) {
67
+ var _this = this;
67
68
  this.graphApi = graphApi;
68
69
  this.users = users;
69
70
  this.accounts = accounts;
70
71
  this.settings = settings;
71
72
  this.accountId = accountId;
72
- var params = {
73
- graphApi: graphApi,
74
- users: users,
75
- accounts: accounts,
76
- settings: settings,
77
- accountId: accountId,
78
- };
79
- this.migrations = new Map(Object.values(migrations).map(function (ctor) { return [ctor.name, new ctor(params)]; }));
73
+ this.flows = flows;
74
+ this.migrations = new Map(Object.values(migrations)
75
+ .map(function (ctor) { return [
76
+ ctor.name, new ctor(_this.graphApi, _this.users, _this.accounts, _this.settings, _this.accountId, _this.flows),
77
+ ]; }));
80
78
  }
81
79
  MigrationHandler.prototype.applyMigrations = function () {
80
+ var _a;
82
81
  return __awaiter(this, void 0, void 0, function () {
83
82
  var accountsLatestVersion, migrationVersions, i, migration, e_1;
84
- return __generator(this, function (_a) {
85
- switch (_a.label) {
83
+ return __generator(this, function (_b) {
84
+ switch (_b.label) {
86
85
  case 0: return [4, this.findAccountsMigrationVersion()];
87
86
  case 1:
88
- accountsLatestVersion = _a.sent();
87
+ accountsLatestVersion = (_a = (_b.sent())) !== null && _a !== void 0 ? _a : 0;
89
88
  migrationVersions = Array.from(this.migrations.keys()).map(function (migrationName) {
90
89
  var _a = migrationName.split(PREFIX), version = _a[1];
91
90
  return Number(version);
92
91
  }).sort();
93
92
  i = 0;
94
- _a.label = 2;
93
+ _b.label = 2;
95
94
  case 2:
96
95
  if (!(i < migrationVersions.length)) return [3, 8];
97
96
  if (!(migrationVersions[i] > accountsLatestVersion)) return [3, 7];
98
97
  migration = this.migrations.get(PREFIX + migrationVersions[i]);
99
98
  if (!migration) return [3, 7];
100
- _a.label = 3;
99
+ _b.label = 3;
101
100
  case 3:
102
- _a.trys.push([3, 6, , 7]);
101
+ _b.trys.push([3, 6, , 7]);
103
102
  return [4, migration.up()];
104
103
  case 4:
105
- _a.sent();
104
+ _b.sent();
106
105
  return [4, this.saveVersion(migrationVersions[i])];
107
106
  case 5:
108
- _a.sent();
107
+ _b.sent();
109
108
  return [3, 7];
110
109
  case 6:
111
- e_1 = _a.sent();
110
+ e_1 = _b.sent();
112
111
  throw new Error("Migration ".concat(migration.constructor.name, " is not applied"));
113
112
  case 7:
114
113
  i++;
@@ -1 +1 @@
1
- {"version":3,"file":"migration-handler.js","sourceRoot":"","sources":["../../src/migration-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration-handler.js","sourceRoot":"","sources":["../../src/migration-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
+ return new (P || (P = Promise))(function (resolve, reject) {
20
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
24
+ });
25
+ };
26
+ var __generator = (this && this.__generator) || function (thisArg, body) {
27
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
+ function verb(n) { return function (v) { return step([n, v]); }; }
30
+ function step(op) {
31
+ if (f) throw new TypeError("Generator is already executing.");
32
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
33
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
34
+ if (y = 0, t) op = [op[0] & 2, t.value];
35
+ switch (op[0]) {
36
+ case 0: case 1: t = op; break;
37
+ case 4: _.label++; return { value: op[1], done: false };
38
+ case 5: _.label++; y = op[1]; op = [0]; continue;
39
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
+ default:
41
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
+ if (t[2]) _.ops.pop();
46
+ _.trys.pop(); continue;
47
+ }
48
+ op = body.call(thisArg, _);
49
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
+ }
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ var migration_base_1 = require("../migration-base");
55
+ var constants_1 = require("../constants");
56
+ var Migration__3 = (function (_super) {
57
+ __extends(Migration__3, _super);
58
+ function Migration__3() {
59
+ return _super !== null && _super.apply(this, arguments) || this;
60
+ }
61
+ Migration__3.prototype.up = function () {
62
+ return __awaiter(this, void 0, void 0, function () {
63
+ var flowsIds, preparedIds, flows, pairs;
64
+ return __generator(this, function (_a) {
65
+ switch (_a.label) {
66
+ case 0: return [4, this.graphApi.query({
67
+ graph: constants_1.GRAPH_NAME,
68
+ query: "match (flow: FLOW)\n where flow.steps is NULL\n return flow.id as id\n ",
69
+ params: {},
70
+ })];
71
+ case 1:
72
+ flowsIds = _a.sent();
73
+ if (!flowsIds.length) return [3, 4];
74
+ preparedIds = flowsIds.map(function (f) { return f.id; });
75
+ return [4, this.flows.listFlows({
76
+ query: {
77
+ id: preparedIds,
78
+ },
79
+ projection: ['data.trees.main.steps'],
80
+ })];
81
+ case 2:
82
+ flows = _a.sent();
83
+ pairs = flows.items.map(function (flow) {
84
+ var _a, _b, _c;
85
+ return ({
86
+ steps: (_c = (_b = (_a = flow.data.trees) === null || _a === void 0 ? void 0 : _a.main.steps) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0,
87
+ id: flow.id,
88
+ });
89
+ });
90
+ return [4, this.graphApi.query({
91
+ graph: constants_1.GRAPH_NAME,
92
+ query: "\n unwind $list as pairs\n MERGE (flow:FLOW { id: pairs.id })\n SET flow.steps = pairs.steps\n ",
93
+ params: {
94
+ list: pairs,
95
+ },
96
+ })];
97
+ case 3:
98
+ _a.sent();
99
+ _a.label = 4;
100
+ case 4: return [2];
101
+ }
102
+ });
103
+ });
104
+ };
105
+ return Migration__3;
106
+ }(migration_base_1.MigrationBase));
107
+ exports.default = Migration__3;
108
+ //# sourceMappingURL=Migration__3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Migration__3.js","sourceRoot":"","sources":["../../../src/migrations/Migration__3.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAkD;AAClD,0CAA0C;AAG1C;IAA0C,gCAAa;IAAvD;;IAwCA,CAAC;IAvCO,yBAAE,GAAR;;;;;4BACmB,WAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAgB;4BACxD,KAAK,EAAE,sBAAU;4BACjB,KAAK,EAAE,gHAGE;4BACT,MAAM,EAAE,EAAE;yBACX,CAAC,EAAA;;wBAPI,QAAQ,GAAG,SAOf;6BAEE,QAAQ,CAAC,MAAM,EAAf,cAAe;wBACX,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,EAAJ,CAAI,CAAC,CAAC;wBAC9B,WAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;gCACvC,KAAK,EAAE;oCACL,EAAE,EAAE,WAAW;iCAChB;gCACD,UAAU,EAAE,CAAC,uBAAuB,CAAC;6BACtC,CAAC,EAAA;;wBALI,KAAK,GAAG,SAKZ;wBAEI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI;;4BAAI,OAAA,CACpC;gCACE,KAAK,EAAE,MAAA,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,KAAK,0CAAE,IAAI,CAAC,KAAK,0CAAE,MAAM,mCAAI,CAAC;gCAC/C,EAAE,EAAE,IAAI,CAAC,EAAE;6BACZ,CAAC,CAAA;yBAAA,CACH,CAAC;wBAEF,WAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gCACxB,KAAK,EAAE,sBAAU;gCACjB,KAAK,EAAE,2JAIA;gCACP,MAAM,EAAE;oCACN,IAAI,EAAE,KAAY;iCACnB;6BACF,CAAC,EAAA;;wBAVF,SAUE,CAAC;;;;;;KAEN;IACH,mBAAC;AAAD,CAAC,AAxCD,CAA0C,8BAAa,GAwCtD"}
@@ -3,9 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Migration__2 = exports.Migration__1 = void 0;
6
+ exports.Migration__3 = exports.Migration__2 = exports.Migration__1 = void 0;
7
7
  var Migration__1_1 = require("./Migration__1");
8
8
  Object.defineProperty(exports, "Migration__1", { enumerable: true, get: function () { return __importDefault(Migration__1_1).default; } });
9
9
  var Migration__2_1 = require("./Migration__2");
10
10
  Object.defineProperty(exports, "Migration__2", { enumerable: true, get: function () { return __importDefault(Migration__2_1).default; } });
11
+ var Migration__3_1 = require("./Migration__3");
12
+ Object.defineProperty(exports, "Migration__3", { enumerable: true, get: function () { return __importDefault(Migration__3_1).default; } });
11
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB"}
package/dist/esm/idw.js CHANGED
@@ -14,6 +14,7 @@ import { Users } from '@or-sdk/users';
14
14
  import { Accounts } from '@or-sdk/accounts';
15
15
  import { GRAPH_NAME, SERVICE_KEY } from './constants';
16
16
  import MigrationHandler from './migration-handler';
17
+ import { Flows } from '@or-sdk/flows';
17
18
  export class IDW extends Base {
18
19
  constructor(params) {
19
20
  const { accountId, discoveryUrl, graphUrl, sdkApiUrl, token, } = params;
@@ -44,8 +45,12 @@ export class IDW extends Base {
44
45
  token,
45
46
  sdkUrl: sdkApiUrl,
46
47
  });
48
+ this.flows = new Flows({
49
+ token,
50
+ discoveryUrl,
51
+ });
47
52
  this.accountId = accountId;
48
- this.migrationHandler = new MigrationHandler(this.graphApi, this.users, this.accounts, this.settings, this.accountId);
53
+ this.migrationHandler = new MigrationHandler(this.graphApi, this.users, this.accounts, this.settings, this.accountId, this.flows);
49
54
  }
50
55
  runMigrations() {
51
56
  return __awaiter(this, void 0, void 0, function* () {
@@ -69,7 +74,7 @@ export class IDW extends Base {
69
74
  });
70
75
  }
71
76
  createOrUpdateFlow(flow) {
72
- var _a, _b;
77
+ var _a, _b, _c, _d, _e, _f;
73
78
  return __awaiter(this, void 0, void 0, function* () {
74
79
  const id = flow.id;
75
80
  if (id === undefined) {
@@ -89,6 +94,7 @@ export class IDW extends Base {
89
94
  flow.name = $name,
90
95
  flow.updatedAt = $updatedAt,
91
96
  flow.updatedBy = $username
97
+ flow.steps = $steps
92
98
  ON CREATE
93
99
  SET flow.createdAt = $createdAt,
94
100
  flow.createdBy = $userId,
@@ -98,6 +104,7 @@ export class IDW extends Base {
98
104
  flow.name = $name,
99
105
  flow.updatedAt = $updatedAt,
100
106
  flow.updatedBy = $username
107
+ flow.steps = $steps
101
108
  RETURN flow
102
109
  `, {
103
110
  createdAt: flow.dateCreated,
@@ -108,6 +115,7 @@ export class IDW extends Base {
108
115
  updatedAt: flow.dateModified,
109
116
  username,
110
117
  userId,
118
+ steps: (_d = (_c = (_b = (_a = flow.data.trees) === null || _a === void 0 ? void 0 : _a.main) === null || _b === void 0 ? void 0 : _b.steps) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0,
111
119
  });
112
120
  yield this.graphQuery(`
113
121
  MATCH (flow:FLOW { id: $id })
@@ -115,8 +123,8 @@ export class IDW extends Base {
115
123
  OPTIONAL MATCH (flow)-[skillRelations:IMPLEMENTS { isActive: false }]->(:SKILL)
116
124
  DELETE channelRelations, skillRelations
117
125
  `, { id });
118
- const channel = (_a = flow.data.meta.idw) === null || _a === void 0 ? void 0 : _a.channel;
119
- const skills = (_b = flow.data.meta.idw) === null || _b === void 0 ? void 0 : _b.skills;
126
+ const channel = (_e = flow.data.meta.idw) === null || _e === void 0 ? void 0 : _e.channel;
127
+ const skills = (_f = flow.data.meta.idw) === null || _f === void 0 ? void 0 : _f.skills;
120
128
  if (channel !== undefined && channel.length !== 0) {
121
129
  yield this.graphQuery(`
122
130
  MATCH (flow:FLOW { id: $id }),
@@ -1 +1 @@
1
- {"version":3,"file":"idw.js","sourceRoot":"","sources":["../../src/idw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"idw.js","sourceRoot":"","sources":["../../src/idw.ts"],"names":[],"mappings":"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"}
@@ -8,12 +8,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  export class MigrationBase {
11
- constructor(params) {
12
- this.graphApi = params.graphApi;
13
- this.users = params.users;
14
- this.accounts = params.accounts;
15
- this.settings = params.settings;
16
- this.accountId = params.accountId;
11
+ constructor(graphApi, users, accounts, settings, accountId, flows) {
12
+ this.graphApi = graphApi;
13
+ this.users = users;
14
+ this.accounts = accounts;
15
+ this.settings = settings;
16
+ this.accountId = accountId;
17
+ this.flows = flows;
17
18
  }
18
19
  resolveAccountId() {
19
20
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"migration-base.js","sourceRoot":"","sources":["../../src/migration-base.ts"],"names":[],"mappings":";;;;;;;;;AAaA,MAAM,OAAgB,aAAa;IAOjC,YAAY,MAAwB;QAClC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IAIe,gBAAgB;;;YAC9B,OAAO,MAAA,IAAI,CAAC,SAAS,mCAAI,CAAC,GAAS,EAAE;gBACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;gBACxD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,OAAO,SAAS,CAAC;YACnB,CAAC,CAAA,CAAC,EAAE,CAAC;;KACN;CACF"}
1
+ {"version":3,"file":"migration-base.js","sourceRoot":"","sources":["../../src/migration-base.ts"],"names":[],"mappings":";;;;;;;;;AAcA,MAAM,OAAgB,aAAa;IACjC,YACY,QAAgB,EAChB,KAAY,EACZ,QAAkB,EAClB,QAAkB,EAClB,SAA6B,EAC7B,KAAY;QALZ,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAO;QACZ,aAAQ,GAAR,QAAQ,CAAU;QAClB,aAAQ,GAAR,QAAQ,CAAU;QAClB,cAAS,GAAT,SAAS,CAAoB;QAC7B,UAAK,GAAL,KAAK,CAAO;IAExB,CAAC;IAIe,gBAAgB;;;YAC9B,OAAO,MAAA,IAAI,CAAC,SAAS,mCAAI,CAAC,GAAS,EAAE;gBACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;gBACxD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,OAAO,SAAS,CAAC;YACnB,CAAC,CAAA,CAAC,EAAE,CAAC;;KACN;CACF"}
@@ -11,24 +11,22 @@ import { SERVICE_KEY, VERSION_PROP } from './constants';
11
11
  import * as migrations from './migrations';
12
12
  const PREFIX = 'Migration__';
13
13
  export default class MigrationHandler {
14
- constructor(graphApi, users, accounts, settings, accountId) {
14
+ constructor(graphApi, users, accounts, settings, accountId, flows) {
15
15
  this.graphApi = graphApi;
16
16
  this.users = users;
17
17
  this.accounts = accounts;
18
18
  this.settings = settings;
19
19
  this.accountId = accountId;
20
- const params = {
21
- graphApi,
22
- users,
23
- accounts,
24
- settings,
25
- accountId,
26
- };
27
- this.migrations = new Map(Object.values(migrations).map(ctor => [ctor.name, new ctor(params)]));
20
+ this.flows = flows;
21
+ this.migrations = new Map(Object.values(migrations)
22
+ .map(ctor => [
23
+ ctor.name, new ctor(this.graphApi, this.users, this.accounts, this.settings, this.accountId, this.flows),
24
+ ]));
28
25
  }
29
26
  applyMigrations() {
27
+ var _a;
30
28
  return __awaiter(this, void 0, void 0, function* () {
31
- const accountsLatestVersion = yield this.findAccountsMigrationVersion();
29
+ const accountsLatestVersion = (_a = (yield this.findAccountsMigrationVersion())) !== null && _a !== void 0 ? _a : 0;
32
30
  const migrationVersions = Array.from(this.migrations.keys()).map(migrationName => {
33
31
  const [, version] = migrationName.split(PREFIX);
34
32
  return Number(version);
@@ -1 +1 @@
1
- {"version":3,"file":"migration-handler.js","sourceRoot":"","sources":["../../src/migration-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration-handler.js","sourceRoot":"","sources":["../../src/migration-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { MigrationBase } from '../migration-base';
11
+ import { GRAPH_NAME } from '../constants';
12
+ export default class Migration__3 extends MigrationBase {
13
+ up() {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ const flowsIds = yield this.graphApi.query({
16
+ graph: GRAPH_NAME,
17
+ query: `match (flow: FLOW)
18
+ where flow.steps is NULL
19
+ return flow.id as id
20
+ `,
21
+ params: {},
22
+ });
23
+ if (flowsIds.length) {
24
+ const preparedIds = flowsIds.map(f => f.id);
25
+ const flows = yield this.flows.listFlows({
26
+ query: {
27
+ id: preparedIds,
28
+ },
29
+ projection: ['data.trees.main.steps'],
30
+ });
31
+ const pairs = flows.items.map(flow => {
32
+ var _a, _b, _c;
33
+ return ({
34
+ steps: (_c = (_b = (_a = flow.data.trees) === null || _a === void 0 ? void 0 : _a.main.steps) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0,
35
+ id: flow.id,
36
+ });
37
+ });
38
+ yield this.graphApi.query({
39
+ graph: GRAPH_NAME,
40
+ query: `
41
+ unwind $list as pairs
42
+ MERGE (flow:FLOW { id: pairs.id })
43
+ SET flow.steps = pairs.steps
44
+ `,
45
+ params: {
46
+ list: pairs,
47
+ },
48
+ });
49
+ }
50
+ });
51
+ }
52
+ }
53
+ //# sourceMappingURL=Migration__3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Migration__3.js","sourceRoot":"","sources":["../../../src/migrations/Migration__3.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAa;IAC/C,EAAE;;YACN,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAgB;gBACxD,KAAK,EAAE,UAAU;gBACjB,KAAK,EAAE;;;eAGE;gBACT,MAAM,EAAE,EAAE;aACX,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,MAAM,EAAE;gBACnB,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;oBACvC,KAAK,EAAE;wBACL,EAAE,EAAE,WAAW;qBAChB;oBACD,UAAU,EAAE,CAAC,uBAAuB,CAAC;iBACtC,CAAC,CAAC;gBAEH,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;;oBAAC,OAAA,CACpC;wBACE,KAAK,EAAE,MAAA,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,KAAK,0CAAE,IAAI,CAAC,KAAK,0CAAE,MAAM,mCAAI,CAAC;wBAC/C,EAAE,EAAE,IAAI,CAAC,EAAE;qBACZ,CAAC,CAAA;iBAAA,CACH,CAAC;gBAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oBACxB,KAAK,EAAE,UAAU;oBACjB,KAAK,EAAE;;;;eAIA;oBACP,MAAM,EAAE;wBACN,IAAI,EAAE,KAAY;qBACnB;iBACF,CAAC,CAAC;aACJ;QACH,CAAC;KAAA;CACF"}
@@ -1,3 +1,4 @@
1
1
  export { default as Migration__1 } from './Migration__1';
2
2
  export { default as Migration__2 } from './Migration__2';
3
+ export { default as Migration__3 } from './Migration__3';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
@@ -6,6 +6,7 @@ export declare class IDW extends Base {
6
6
  private readonly users;
7
7
  private readonly accounts;
8
8
  private readonly settings;
9
+ private readonly flows;
9
10
  private accountId;
10
11
  private migrationHandler;
11
12
  constructor(params: IDWConfig);
@@ -1 +1 @@
1
- {"version":3,"file":"idw.d.ts","sourceRoot":"","sources":["../../src/idw.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAKpC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAQxC,qBAAa,GAAI,SAAQ,IAAI;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,gBAAgB,CAAmB;gBAa/B,MAAM,EAAE,SAAS;IAiDvB,aAAa;IAIb,eAAe;YAYP,QAAQ;IAIhB,kBAAkB,CAAC,IAAI,EAAE,IAAI;IAgF7B,UAAU,CAAC,EAAE,EAAE,MAAM;IAOrB,YAAY,CAAC,IAAI,EAAE,IAAI;IA8CvB,cAAc,CAAC,EAAE,EAAE,MAAM;YAajB,UAAU;CAoBzB"}
1
+ {"version":3,"file":"idw.d.ts","sourceRoot":"","sources":["../../src/idw.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAKpC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AASxC,qBAAa,GAAI,SAAQ,IAAI;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,gBAAgB,CAAmB;gBAa/B,MAAM,EAAE,SAAS;IAsDvB,aAAa;IAIb,eAAe;YAYP,QAAQ;IAIhB,kBAAkB,CAAC,IAAI,EAAE,IAAI;IAmF7B,UAAU,CAAC,EAAE,EAAE,MAAM;IAOrB,YAAY,CAAC,IAAI,EAAE,IAAI;IA8CvB,cAAc,CAAC,EAAE,EAAE,MAAM;YAajB,UAAU;CAoBzB"}
@@ -2,6 +2,7 @@ import { Accounts } from '@or-sdk/accounts';
2
2
  import { Graphs } from '@or-sdk/graph';
3
3
  import { Settings } from '@or-sdk/settings';
4
4
  import { Users } from '@or-sdk/users';
5
+ import { Flows } from '@or-sdk/flows';
5
6
  export interface MigrationsParams {
6
7
  graphApi: Graphs;
7
8
  users: Users;
@@ -15,7 +16,8 @@ export declare abstract class MigrationBase {
15
16
  protected accounts: Accounts;
16
17
  protected settings: Settings;
17
18
  protected accountId: string | undefined;
18
- constructor(params: MigrationsParams);
19
+ protected flows: Flows;
20
+ constructor(graphApi: Graphs, users: Users, accounts: Accounts, settings: Settings, accountId: string | undefined, flows: Flows);
19
21
  abstract up(): Promise<void>;
20
22
  protected resolveAccountId(): Promise<string>;
21
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"migration-base.d.ts","sourceRoot":"","sources":["../../src/migration-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED,8BAAsB,aAAa;IACjC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;gBAE5B,MAAM,EAAE,gBAAgB;IAQpC,QAAQ,CAAC,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC;cAEZ,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;CAOpD"}
1
+ {"version":3,"file":"migration-base.d.ts","sourceRoot":"","sources":["../../src/migration-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED,8BAAsB,aAAa;IAE/B,SAAS,CAAC,QAAQ,EAAE,MAAM;IAC1B,SAAS,CAAC,KAAK,EAAE,KAAK;IACtB,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAC5B,SAAS,CAAC,QAAQ,EAAE,QAAQ;IAC5B,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;IACvC,SAAS,CAAC,KAAK,EAAE,KAAK;gBALZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,KAAK,EAAE,KAAK;IAIxB,QAAQ,CAAC,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC;cAEZ,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;CAOpD"}
@@ -2,14 +2,16 @@ import { Accounts } from '@or-sdk/accounts';
2
2
  import { Graphs } from '@or-sdk/graph';
3
3
  import { Users } from '@or-sdk/users';
4
4
  import { Settings } from '@or-sdk/settings';
5
+ import { Flows } from '@or-sdk/flows';
5
6
  export default class MigrationHandler {
6
7
  private graphApi;
7
8
  private users;
8
9
  private accounts;
9
10
  private settings;
10
11
  private accountId;
12
+ private flows;
11
13
  private migrations;
12
- constructor(graphApi: Graphs, users: Users, accounts: Accounts, settings: Settings, accountId: string | undefined);
14
+ constructor(graphApi: Graphs, users: Users, accounts: Accounts, settings: Settings, accountId: string | undefined, flows: Flows);
13
15
  applyMigrations(): Promise<void>;
14
16
  saveVersion(currentLatestVersion: number): Promise<void>;
15
17
  deleteMigrationVersion(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"migration-handler.d.ts","sourceRoot":"","sources":["../../src/migration-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAA6B,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAOvE,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAGvB,OAAO,CAAC,QAAQ;IAAU,OAAO,CAAC,KAAK;IAAS,OAAO,CAAC,QAAQ;IAC1E,OAAO,CAAC,QAAQ;IAAY,OAAO,CAAC,SAAS;IAH/C,OAAO,CAAC,UAAU,CAA6B;gBAE3B,QAAQ,EAAE,MAAM,EAAU,KAAK,EAAE,KAAK,EAAU,QAAQ,EAAE,QAAQ,EAC5E,QAAQ,EAAE,QAAQ,EAAU,SAAS,EAAE,MAAM,GAAG,SAAS;IAY7D,eAAe;IAwBf,WAAW,CAAC,oBAAoB,EAAE,MAAM;IAaxC,sBAAsB;IAOtB,4BAA4B;CAWnC"}
1
+ {"version":3,"file":"migration-handler.d.ts","sourceRoot":"","sources":["../../src/migration-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAA6B,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIvE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAItC,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAIjC,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,KAAK;IARf,OAAO,CAAC,UAAU,CAA6B;gBAGrC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,KAAK,EAAE,KAAK;IAkBhB,eAAe;IAwBf,WAAW,CAAC,oBAAoB,EAAE,MAAM;IAaxC,sBAAsB;IAOtB,4BAA4B;CAWnC"}
@@ -0,0 +1,5 @@
1
+ import { MigrationBase } from '../migration-base';
2
+ export default class Migration__3 extends MigrationBase {
3
+ up(): Promise<void>;
4
+ }
5
+ //# sourceMappingURL=Migration__3.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Migration__3.d.ts","sourceRoot":"","sources":["../../../src/migrations/Migration__3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIlD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAa;IAC/C,EAAE;CAuCT"}
@@ -1,3 +1,4 @@
1
1
  export { default as Migration__1 } from './Migration__1';
2
2
  export { default as Migration__2 } from './Migration__2';
3
+ export { default as Migration__3 } from './Migration__3';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.3.7",
2
+ "version": "1.3.8-beta.1536.0",
3
3
  "name": "@or-sdk/idw",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
@@ -27,10 +27,10 @@
27
27
  "@or-sdk/accounts": "^1.2.13",
28
28
  "@or-sdk/base": "^0.28.3",
29
29
  "@or-sdk/deployer": "^1.1.5",
30
+ "@or-sdk/flows": "^2.0.2",
30
31
  "@or-sdk/graph": "^1.4.1",
31
32
  "@or-sdk/settings": "^0.24.11",
32
33
  "@or-sdk/users": "^0.30.2",
33
34
  "axios": "^0.24.0"
34
- },
35
- "gitHead": "79a0a0801d0bcf1f52962ea5e522c96028461a9a"
35
+ }
36
36
  }
package/src/idw.ts CHANGED
@@ -7,6 +7,7 @@ import { GRAPH_NAME, SERVICE_KEY } from './constants';
7
7
  import { IDWConfig } from './types';
8
8
  import MigrationHandler from './migration-handler';
9
9
  import { Flow } from '@or-sdk/deployer';
10
+ import { Flows } from '@or-sdk/flows';
10
11
  /**
11
12
  * OneReach IDW service client
12
13
  * ## Installation:
@@ -19,6 +20,7 @@ export class IDW extends Base {
19
20
  private readonly users: Users;
20
21
  private readonly accounts: Accounts;
21
22
  private readonly settings: Settings;
23
+ private readonly flows: Flows;
22
24
  private accountId: string | undefined;
23
25
  private migrationHandler: MigrationHandler;
24
26
 
@@ -70,6 +72,10 @@ export class IDW extends Base {
70
72
  token,
71
73
  sdkUrl: sdkApiUrl,
72
74
  });
75
+ this.flows = new Flows({
76
+ token,
77
+ discoveryUrl,
78
+ });
73
79
 
74
80
  this.accountId = accountId;
75
81
 
@@ -78,7 +84,8 @@ export class IDW extends Base {
78
84
  this.users,
79
85
  this.accounts,
80
86
  this.settings,
81
- this.accountId
87
+ this.accountId,
88
+ this.flows
82
89
  );
83
90
  }
84
91
 
@@ -124,6 +131,7 @@ export class IDW extends Base {
124
131
  flow.name = $name,
125
132
  flow.updatedAt = $updatedAt,
126
133
  flow.updatedBy = $username
134
+ flow.steps = $steps
127
135
  ON CREATE
128
136
  SET flow.createdAt = $createdAt,
129
137
  flow.createdBy = $userId,
@@ -133,6 +141,7 @@ export class IDW extends Base {
133
141
  flow.name = $name,
134
142
  flow.updatedAt = $updatedAt,
135
143
  flow.updatedBy = $username
144
+ flow.steps = $steps
136
145
  RETURN flow
137
146
  `, {
138
147
  createdAt: flow.dateCreated,
@@ -143,6 +152,7 @@ export class IDW extends Base {
143
152
  updatedAt: flow.dateModified,
144
153
  username,
145
154
  userId,
155
+ steps: flow.data.trees?.main?.steps?.length ?? 0,
146
156
  });
147
157
 
148
158
  await this.graphQuery(`
@@ -2,6 +2,7 @@ import { Accounts } from '@or-sdk/accounts';
2
2
  import { Graphs } from '@or-sdk/graph';
3
3
  import { Settings } from '@or-sdk/settings';
4
4
  import { Users } from '@or-sdk/users';
5
+ import { Flows } from '@or-sdk/flows';
5
6
 
6
7
  export interface MigrationsParams {
7
8
  graphApi: Graphs;
@@ -12,18 +13,14 @@ export interface MigrationsParams {
12
13
  }
13
14
 
14
15
  export abstract class MigrationBase {
15
- protected graphApi: Graphs;
16
- protected users: Users;
17
- protected accounts: Accounts;
18
- protected settings: Settings;
19
- protected accountId: string | undefined;
20
-
21
- constructor(params: MigrationsParams) {
22
- this.graphApi = params.graphApi;
23
- this.users = params.users;
24
- this.accounts = params.accounts;
25
- this.settings = params.settings;
26
- this.accountId = params.accountId;
16
+ constructor(
17
+ protected graphApi: Graphs,
18
+ protected users: Users,
19
+ protected accounts: Accounts,
20
+ protected settings: Settings,
21
+ protected accountId: string | undefined,
22
+ protected flows: Flows
23
+ ) {
27
24
  }
28
25
 
29
26
  abstract up(): Promise<void>;
@@ -5,27 +5,39 @@ import { AccountRouteDeletePayload, Settings } from '@or-sdk/settings';
5
5
  import { MigrationBase } from './migration-base';
6
6
  import { SERVICE_KEY, VERSION_PROP } from './constants';
7
7
  import * as migrations from './migrations';
8
+ import { Flows } from '@or-sdk/flows';
8
9
 
9
10
  const PREFIX = 'Migration__';
10
11
 
11
12
  export default class MigrationHandler {
12
13
  private migrations: Map<string, MigrationBase>;
13
14
 
14
- constructor(private graphApi: Graphs, private users: Users, private accounts: Accounts,
15
- private settings: Settings, private accountId: string | undefined) {
16
- const params = {
17
- graphApi,
18
- users,
19
- accounts,
20
- settings,
21
- accountId,
22
- };
15
+ constructor(
16
+ private graphApi: Graphs,
17
+ private users: Users,
18
+ private accounts: Accounts,
19
+ private settings: Settings,
20
+ private accountId: string | undefined,
21
+ private flows: Flows
22
+ ) {
23
23
 
24
- this.migrations = new Map(Object.values(migrations).map(ctor => [ctor.name, new ctor(params)]));
24
+ this.migrations = new Map(
25
+ Object.values(migrations)
26
+ .map(ctor => [
27
+ ctor.name, new ctor(
28
+ this.graphApi,
29
+ this.users,
30
+ this.accounts,
31
+ this.settings,
32
+ this.accountId,
33
+ this.flows
34
+ ),
35
+ ])
36
+ );
25
37
  }
26
38
 
27
39
  async applyMigrations() {
28
- const accountsLatestVersion = await this.findAccountsMigrationVersion();
40
+ const accountsLatestVersion = (await this.findAccountsMigrationVersion()) ?? 0;
29
41
 
30
42
  const migrationVersions = Array.from(this.migrations.keys()).map(migrationName => {
31
43
  const [, version] = migrationName.split(PREFIX);
@@ -0,0 +1,45 @@
1
+ import { MigrationBase } from '../migration-base';
2
+ import { GRAPH_NAME } from '../constants';
3
+
4
+ // eslint-disable-next-line @typescript-eslint/naming-convention
5
+ export default class Migration__3 extends MigrationBase {
6
+ async up() {
7
+ const flowsIds = await this.graphApi.query<{id: string;}>({
8
+ graph: GRAPH_NAME,
9
+ query: `match (flow: FLOW)
10
+ where flow.steps is NULL
11
+ return flow.id as id
12
+ `,
13
+ params: {},
14
+ });
15
+
16
+ if (flowsIds.length) {
17
+ const preparedIds = flowsIds.map(f => f.id);
18
+ const flows = await this.flows.listFlows({
19
+ query: {
20
+ id: preparedIds,
21
+ },
22
+ projection: ['data.trees.main.steps'],
23
+ });
24
+
25
+ const pairs = flows.items.map(flow => (
26
+ {
27
+ steps: flow.data.trees?.main.steps?.length ?? 0,
28
+ id: flow.id,
29
+ })
30
+ );
31
+
32
+ await this.graphApi.query({
33
+ graph: GRAPH_NAME,
34
+ query: `
35
+ unwind $list as pairs
36
+ MERGE (flow:FLOW { id: pairs.id })
37
+ SET flow.steps = pairs.steps
38
+ `,
39
+ params: {
40
+ list: pairs as any,
41
+ },
42
+ });
43
+ }
44
+ }
45
+ }
@@ -1,2 +1,3 @@
1
1
  export { default as Migration__1 } from './Migration__1';
2
2
  export { default as Migration__2 } from './Migration__2';
3
+ export { default as Migration__3 } from './Migration__3';