@featurevisor/core 0.61.0 → 0.62.1
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/.eslintcache +1 -1
- package/CHANGELOG.md +22 -0
- package/coverage/clover.xml +2 -2
- package/coverage/lcov-report/index.html +1 -1
- package/coverage/lcov-report/lib/builder/allocator.js.html +1 -1
- package/coverage/lcov-report/lib/builder/index.html +1 -1
- package/coverage/lcov-report/lib/builder/traffic.js.html +1 -1
- package/coverage/lcov-report/lib/tester/checkIfObjectsAreEqual.js.html +1 -1
- package/coverage/lcov-report/lib/tester/index.html +1 -1
- package/coverage/lcov-report/src/builder/allocator.ts.html +1 -1
- package/coverage/lcov-report/src/builder/index.html +1 -1
- package/coverage/lcov-report/src/builder/traffic.ts.html +1 -1
- package/coverage/lcov-report/src/tester/checkIfObjectsAreEqual.ts.html +1 -1
- package/coverage/lcov-report/src/tester/index.html +1 -1
- package/lib/datasource/adapter.d.ts +3 -2
- package/lib/datasource/adapter.js.map +1 -1
- package/lib/datasource/datasource.d.ts +5 -2
- package/lib/datasource/datasource.js +10 -2
- package/lib/datasource/datasource.js.map +1 -1
- package/lib/datasource/filesystemAdapter.d.ts +11 -3
- package/lib/datasource/filesystemAdapter.js +127 -1
- package/lib/datasource/filesystemAdapter.js.map +1 -1
- package/lib/site/exportSite.js +4 -3
- package/lib/site/exportSite.js.map +1 -1
- package/lib/site/generateHistory.d.ts +1 -1
- package/lib/site/generateHistory.js +77 -66
- package/lib/site/generateHistory.js.map +1 -1
- package/lib/{utils.js → utils/extractKeys.js} +1 -1
- package/lib/utils/extractKeys.js.map +1 -0
- package/lib/utils/git.d.ts +6 -0
- package/lib/utils/git.js +121 -0
- package/lib/utils/git.js.map +1 -0
- package/lib/utils/index.d.ts +2 -0
- package/lib/utils/index.js +19 -0
- package/lib/utils/index.js.map +1 -0
- package/package.json +5 -5
- package/src/datasource/adapter.ts +17 -3
- package/src/datasource/datasource.ts +12 -2
- package/src/datasource/filesystemAdapter.ts +144 -4
- package/src/site/exportSite.ts +1 -3
- package/src/site/generateHistory.ts +16 -78
- package/src/utils/git.ts +129 -0
- package/src/utils/index.ts +2 -0
- package/lib/utils.js.map +0 -1
- /package/lib/{utils.d.ts → utils/extractKeys.d.ts} +0 -0
- /package/src/{utils.ts → utils/extractKeys.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystemAdapter.js","sourceRoot":"","sources":["../../src/datasource/filesystemAdapter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uBAAyB;AACzB,2BAA6B;
|
|
1
|
+
{"version":3,"file":"filesystemAdapter.js","sourceRoot":"","sources":["../../src/datasource/filesystemAdapter.ts"],"names":[],"mappings":"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"}
|
package/lib/site/exportSite.js
CHANGED
|
@@ -56,17 +56,18 @@ function exportSite(deps) {
|
|
|
56
56
|
siteDistPath = path.join(sitePackagePath, "dist");
|
|
57
57
|
fs.cpSync(siteDistPath, projectConfig.siteExportDirectoryPath, { recursive: true });
|
|
58
58
|
console.log("Site dist copied to:", projectConfig.siteExportDirectoryPath);
|
|
59
|
-
|
|
59
|
+
return [4 /*yield*/, (0, generateHistory_1.generateHistory)(deps)];
|
|
60
|
+
case 1:
|
|
61
|
+
fullHistory = _a.sent();
|
|
60
62
|
repoDetails = (0, getRepoDetails_1.getRepoDetails)();
|
|
61
63
|
return [4 /*yield*/, (0, generateSiteSearchIndex_1.generateSiteSearchIndex)(deps, fullHistory, repoDetails)];
|
|
62
|
-
case
|
|
64
|
+
case 2:
|
|
63
65
|
searchIndex = _a.sent();
|
|
64
66
|
searchIndexFilePath = path.join(projectConfig.siteExportDirectoryPath, "search-index.json");
|
|
65
67
|
fs.writeFileSync(searchIndexFilePath, JSON.stringify(searchIndex));
|
|
66
68
|
console.log("Site search index written at: ".concat(searchIndexFilePath));
|
|
67
69
|
// copy datafiles
|
|
68
70
|
fs.cpSync(projectConfig.outputDirectoryPath, path.join(projectConfig.siteExportDirectoryPath, "datafiles"), { recursive: true });
|
|
69
|
-
// @TODO: replace placeoholders in index.html
|
|
70
71
|
return [2 /*return*/, hasError];
|
|
71
72
|
}
|
|
72
73
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportSite.js","sourceRoot":"","sources":["../../src/site/exportSite.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uBAAyB;AACzB,2BAA6B;AAE7B,+BAAiC;AAEjC,qDAAoD;AACpD,mDAAkD;AAClD,qEAAoE;AAGpE,SAAsB,UAAU,CAAC,IAAkB;;;;;;oBACzC,aAAa,GAAK,IAAI,cAAT,CAAU;oBAEzB,QAAQ,GAAG,KAAK,CAAC;oBAEvB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;oBAE7C,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC,CAAC;oBAGnF,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;oBACxD,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,uBAAuB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEpF,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"exportSite.js","sourceRoot":"","sources":["../../src/site/exportSite.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uBAAyB;AACzB,2BAA6B;AAE7B,+BAAiC;AAEjC,qDAAoD;AACpD,mDAAkD;AAClD,qEAAoE;AAGpE,SAAsB,UAAU,CAAC,IAAkB;;;;;;oBACzC,aAAa,GAAK,IAAI,cAAT,CAAU;oBAEzB,QAAQ,GAAG,KAAK,CAAC;oBAEvB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;oBAE7C,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC,CAAC;oBAGnF,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;oBACxD,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,uBAAuB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEpF,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;oBAGvD,qBAAM,IAAA,iCAAe,EAAC,IAAI,CAAC,EAAA;;oBAAzC,WAAW,GAAG,SAA2B;oBAGzC,WAAW,GAAG,IAAA,+BAAc,GAAE,CAAC;oBACjB,qBAAM,IAAA,iDAAuB,EAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,EAAA;;oBAA3E,WAAW,GAAG,SAA6D;oBAC3E,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,mBAAmB,CAAC,CAAC;oBAClG,EAAE,CAAC,aAAa,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;oBACnE,OAAO,CAAC,GAAG,CAAC,wCAAiC,mBAAmB,CAAE,CAAC,CAAC;oBAEpE,iBAAiB;oBACjB,EAAE,CAAC,MAAM,CACP,aAAa,CAAC,mBAAmB,EACjC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,WAAW,CAAC,EAC7D,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAC;oBAEF,sBAAO,QAAQ,EAAC;;;;CACjB;AAjCD,gCAiCC"}
|
|
@@ -1,77 +1,88 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
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;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
2
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
50
|
exports.generateHistory = void 0;
|
|
4
51
|
var path = require("path");
|
|
5
52
|
var fs = require("fs");
|
|
6
|
-
var child_process_1 = require("child_process");
|
|
7
|
-
var getRelativePaths_1 = require("./getRelativePaths");
|
|
8
53
|
function generateHistory(deps) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
// commit line
|
|
39
|
-
var parts = line.split("|");
|
|
40
|
-
entry_1 = {
|
|
41
|
-
commit: parts[0],
|
|
42
|
-
author: parts[1],
|
|
43
|
-
timestamp: parts[2],
|
|
44
|
-
entities: [],
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
// file line
|
|
49
|
-
var lineSplit = line.split(path.sep);
|
|
50
|
-
var fileName = lineSplit.pop();
|
|
51
|
-
var relativeDir = lineSplit.join(path.sep);
|
|
52
|
-
var key = fileName.replace("." + datasource.getExtension(), "");
|
|
53
|
-
var type = "feature";
|
|
54
|
-
if (relativeDir === relativeSegmentsPath_1) {
|
|
55
|
-
type = "segment";
|
|
56
|
-
}
|
|
57
|
-
else if (relativeDir === relativeAttributesPath_1) {
|
|
58
|
-
type = "attribute";
|
|
59
|
-
}
|
|
60
|
-
entry_1.entities.push({
|
|
61
|
-
type: type,
|
|
62
|
-
key: key,
|
|
63
|
-
});
|
|
54
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55
|
+
var projectConfig, datasource, fullHistory, filteredHistory, fullHistoryFilePath, error_1;
|
|
56
|
+
return __generator(this, function (_a) {
|
|
57
|
+
switch (_a.label) {
|
|
58
|
+
case 0:
|
|
59
|
+
projectConfig = deps.projectConfig, datasource = deps.datasource;
|
|
60
|
+
_a.label = 1;
|
|
61
|
+
case 1:
|
|
62
|
+
_a.trys.push([1, 3, , 4]);
|
|
63
|
+
return [4 /*yield*/, datasource.listHistoryEntries()];
|
|
64
|
+
case 2:
|
|
65
|
+
fullHistory = _a.sent();
|
|
66
|
+
filteredHistory = fullHistory
|
|
67
|
+
.map(function (historyEntry) {
|
|
68
|
+
return __assign(__assign({}, historyEntry), { entities: historyEntry.entities.filter(function (entity) {
|
|
69
|
+
// ignore test specs
|
|
70
|
+
return entity.type !== "test";
|
|
71
|
+
}) });
|
|
72
|
+
})
|
|
73
|
+
.filter(function (historyEntry) { return historyEntry.entities.length > 0; });
|
|
74
|
+
fullHistoryFilePath = path.join(projectConfig.siteExportDirectoryPath, "history-full.json");
|
|
75
|
+
fs.writeFileSync(fullHistoryFilePath, JSON.stringify(filteredHistory));
|
|
76
|
+
console.log("History (full) generated at: ".concat(fullHistoryFilePath));
|
|
77
|
+
return [2 /*return*/, filteredHistory];
|
|
78
|
+
case 3:
|
|
79
|
+
error_1 = _a.sent();
|
|
80
|
+
console.error("Error when generating history from git: ".concat(error_1.status, "\n").concat(error_1.stderr.toString()));
|
|
81
|
+
return [2 /*return*/, []];
|
|
82
|
+
case 4: return [2 /*return*/];
|
|
64
83
|
}
|
|
65
84
|
});
|
|
66
|
-
|
|
67
|
-
fs.writeFileSync(fullHistoryFilePath, JSON.stringify(fullHistory_1));
|
|
68
|
-
console.log("History (full) generated at: ".concat(fullHistoryFilePath));
|
|
69
|
-
return fullHistory_1;
|
|
70
|
-
}
|
|
71
|
-
catch (error) {
|
|
72
|
-
console.error("Error when generating history from git: ".concat(error.status, "\n").concat(error.stderr.toString()));
|
|
73
|
-
return [];
|
|
74
|
-
}
|
|
85
|
+
});
|
|
75
86
|
}
|
|
76
87
|
exports.generateHistory = generateHistory;
|
|
77
88
|
//# sourceMappingURL=generateHistory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateHistory.js","sourceRoot":"","sources":["../../src/site/generateHistory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generateHistory.js","sourceRoot":"","sources":["../../src/site/generateHistory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAA6B;AAC7B,uBAAyB;AAKzB,SAAsB,eAAe,CAAC,IAAkB;;;;;;oBAC9C,aAAa,GAAiB,IAAI,cAArB,EAAE,UAAU,GAAK,IAAI,WAAT,CAAU;;;;oBAGrB,qBAAM,UAAU,CAAC,kBAAkB,EAAE,EAAA;;oBAAnD,WAAW,GAAG,SAAqC;oBAEnD,eAAe,GAAG,WAAW;yBAChC,GAAG,CAAC,UAAC,YAAY;wBAChB,6BACK,YAAY,KACf,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAC,MAAM;gCAC5C,oBAAoB;gCACpB,OAAO,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC;4BAChC,CAAC,CAAC,IACF;oBACJ,CAAC,CAAC;yBACD,MAAM,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAhC,CAAgC,CAAC,CAAC;oBAExD,mBAAmB,GAAG,IAAI,CAAC,IAAI,CACnC,aAAa,CAAC,uBAAuB,EACrC,mBAAmB,CACpB,CAAC;oBACF,EAAE,CAAC,aAAa,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;oBACvE,OAAO,CAAC,GAAG,CAAC,uCAAgC,mBAAmB,CAAE,CAAC,CAAC;oBAEnE,sBAAO,eAAe,EAAC;;;oBAEvB,OAAO,CAAC,KAAK,CACX,kDAA2C,OAAK,CAAC,MAAM,eAAK,OAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAE,CACtF,CAAC;oBAEF,sBAAO,EAAE,EAAC;;;;;CAEb;AAjCD,0CAiCC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extractKeys.js","sourceRoot":"","sources":["../../src/utils/extractKeys.ts"],"names":[],"mappings":";;;AAEA,SAAgB,mCAAmC,CACjD,QAAuC;IAEvC,IAAM,MAAM,GAAG,IAAI,GAAG,EAAc,CAAC;IAErC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC3B,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;YACvB,mCAAmC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAC,UAAU;gBAC9D,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,IAAI,KAAK,IAAI,QAAQ,EAAE;YACrB,mCAAmC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,UAAU;gBACnE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;QAED,IAAI,IAAI,IAAI,QAAQ,EAAE;YACpB,mCAAmC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAC,UAAU;gBAClE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;QAED,IAAI,KAAK,IAAI,QAAQ,EAAE;YACrB,mCAAmC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,UAAU;gBACnE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;KACF;IAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;KACtB;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAtCD,kFAsCC;AAED,SAAgB,kCAAkC,CAChD,UAAmC;IAEnC,IAAM,MAAM,GAAG,IAAI,GAAG,EAAgB,CAAC;IAEvC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC7B,UAAU,CAAC,OAAO,CAAC,UAAC,SAAS;YAC3B,kCAAkC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,UAAC,YAAY;gBACjE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,WAAW,IAAI,UAAU,EAAE;QAC7B,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;KAClC;IAED,IAAI,KAAK,IAAI,UAAU,EAAE;QACvB,kCAAkC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,YAAY;YACtE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,IAAI,IAAI,UAAU,EAAE;QACtB,kCAAkC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAC,YAAY;YACrE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,KAAK,IAAI,UAAU,EAAE;QACvB,kCAAkC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,YAAY;YACtE,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AApCD,gFAoCC"}
|
package/lib/utils/git.js
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCommit = void 0;
|
|
4
|
+
var path = require("path");
|
|
5
|
+
function parseGitCommitShowOutput(gitShowOutput) {
|
|
6
|
+
var result = {
|
|
7
|
+
hash: "",
|
|
8
|
+
author: "",
|
|
9
|
+
date: "",
|
|
10
|
+
message: "",
|
|
11
|
+
diffs: {},
|
|
12
|
+
};
|
|
13
|
+
var lines = gitShowOutput.split("\n");
|
|
14
|
+
var currentFile = "";
|
|
15
|
+
var parsingDiffs = false;
|
|
16
|
+
var parsingMessage = false;
|
|
17
|
+
lines.forEach(function (line) {
|
|
18
|
+
if (line.startsWith("commit ")) {
|
|
19
|
+
result.hash = line.replace("commit ", "").trim();
|
|
20
|
+
}
|
|
21
|
+
else if (line.startsWith("Author:")) {
|
|
22
|
+
result.author = line.replace("Author:", "").trim();
|
|
23
|
+
parsingMessage = false;
|
|
24
|
+
}
|
|
25
|
+
else if (line.startsWith("Date:")) {
|
|
26
|
+
result.date = line.replace("Date:", "").trim();
|
|
27
|
+
parsingMessage = true; // Start parsing commit message
|
|
28
|
+
}
|
|
29
|
+
else if (line.startsWith("diff --git")) {
|
|
30
|
+
if (currentFile) {
|
|
31
|
+
// Finish capturing the previous file's diff
|
|
32
|
+
parsingDiffs = false;
|
|
33
|
+
}
|
|
34
|
+
currentFile = line.split(" ")[2].substring(2);
|
|
35
|
+
result.diffs[currentFile] = line + "\n"; // Include the diff --git line
|
|
36
|
+
parsingDiffs = true;
|
|
37
|
+
parsingMessage = false; // Stop parsing commit message
|
|
38
|
+
}
|
|
39
|
+
else if (parsingDiffs) {
|
|
40
|
+
result.diffs[currentFile] += line + "\n";
|
|
41
|
+
}
|
|
42
|
+
else if (parsingMessage && line.trim() !== "") {
|
|
43
|
+
result.message += line.trim() + "\n"; // Capture commit message
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
return result;
|
|
47
|
+
}
|
|
48
|
+
function analyzeFileChange(diff) {
|
|
49
|
+
var status = "updated"; // Default to 'updated'
|
|
50
|
+
// Check for file creation or deletion
|
|
51
|
+
if (diff.includes("new file mode")) {
|
|
52
|
+
status = "created";
|
|
53
|
+
}
|
|
54
|
+
else if (diff.includes("deleted file mode")) {
|
|
55
|
+
status = "deleted";
|
|
56
|
+
}
|
|
57
|
+
return status;
|
|
58
|
+
}
|
|
59
|
+
function getCommit(gitShowOutput, options) {
|
|
60
|
+
var parsed = parseGitCommitShowOutput(gitShowOutput);
|
|
61
|
+
var rootDirectoryPath = options.rootDirectoryPath, projectConfig = options.projectConfig;
|
|
62
|
+
var commit = {
|
|
63
|
+
hash: parsed.hash,
|
|
64
|
+
author: parsed.author,
|
|
65
|
+
timestamp: parsed.date,
|
|
66
|
+
entities: [],
|
|
67
|
+
};
|
|
68
|
+
Object.keys(parsed.diffs).forEach(function (file) {
|
|
69
|
+
var diff = parsed.diffs[file];
|
|
70
|
+
var status = analyzeFileChange(diff);
|
|
71
|
+
var absolutePath = path.join(rootDirectoryPath, file);
|
|
72
|
+
var relativeDir = path.dirname(absolutePath);
|
|
73
|
+
// get entity type
|
|
74
|
+
var type = "attribute";
|
|
75
|
+
if (relativeDir === projectConfig.attributesDirectoryPath) {
|
|
76
|
+
type = "attribute";
|
|
77
|
+
}
|
|
78
|
+
else if (relativeDir === projectConfig.segmentsDirectoryPath) {
|
|
79
|
+
type = "segment";
|
|
80
|
+
}
|
|
81
|
+
else if (relativeDir === projectConfig.featuresDirectoryPath) {
|
|
82
|
+
type = "feature";
|
|
83
|
+
}
|
|
84
|
+
else if (relativeDir === projectConfig.groupsDirectoryPath) {
|
|
85
|
+
type = "group";
|
|
86
|
+
}
|
|
87
|
+
else if (relativeDir === projectConfig.testsDirectoryPath) {
|
|
88
|
+
type = "test";
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
// unknown type
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
// get entity key
|
|
95
|
+
var fileName = absolutePath.split(path.sep).pop();
|
|
96
|
+
var extensionWithDot = "." + projectConfig.parser.extension;
|
|
97
|
+
if (!fileName.endsWith(extensionWithDot)) {
|
|
98
|
+
// unknown extension
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
var key = fileName.replace(extensionWithDot, "");
|
|
102
|
+
var entityDiff = {
|
|
103
|
+
type: type,
|
|
104
|
+
key: key,
|
|
105
|
+
content: diff,
|
|
106
|
+
};
|
|
107
|
+
if (status === "created") {
|
|
108
|
+
entityDiff.created = true;
|
|
109
|
+
}
|
|
110
|
+
else if (status === "deleted") {
|
|
111
|
+
entityDiff.deleted = true;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
entityDiff.updated = true;
|
|
115
|
+
}
|
|
116
|
+
commit.entities.push(entityDiff);
|
|
117
|
+
});
|
|
118
|
+
return commit;
|
|
119
|
+
}
|
|
120
|
+
exports.getCommit = getCommit;
|
|
121
|
+
//# sourceMappingURL=git.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./extractKeys"), exports);
|
|
18
|
+
__exportStar(require("./git"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,wCAAsB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@featurevisor/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.62.1",
|
|
4
4
|
"description": "Core package of Featurevisor for Node.js usage",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
},
|
|
45
45
|
"license": "MIT",
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@featurevisor/sdk": "^0.
|
|
48
|
-
"@featurevisor/site": "^0.
|
|
49
|
-
"@featurevisor/types": "^0.
|
|
47
|
+
"@featurevisor/sdk": "^0.62.0",
|
|
48
|
+
"@featurevisor/site": "^0.62.0",
|
|
49
|
+
"@featurevisor/types": "^0.62.0",
|
|
50
50
|
"axios": "^1.3.4",
|
|
51
51
|
"joi": "^17.8.3",
|
|
52
52
|
"js-yaml": "^4.1.0",
|
|
@@ -57,5 +57,5 @@
|
|
|
57
57
|
"@types/js-yaml": "^4.0.5",
|
|
58
58
|
"@types/tar": "^6.1.4"
|
|
59
59
|
},
|
|
60
|
-
"gitHead": "
|
|
60
|
+
"gitHead": "148c9869d094f4d02e0bb162ea476c184b8241f8"
|
|
61
61
|
}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import {
|
|
2
|
+
DatafileContent,
|
|
3
|
+
EnvironmentKey,
|
|
4
|
+
ExistingState,
|
|
5
|
+
HistoryEntry,
|
|
6
|
+
Commit,
|
|
7
|
+
CommitHash,
|
|
8
|
+
EntityType,
|
|
9
|
+
} from "@featurevisor/types";
|
|
4
10
|
|
|
5
11
|
export interface DatafileOptions {
|
|
6
12
|
environment: EnvironmentKey;
|
|
@@ -22,4 +28,12 @@ export abstract class Adapter {
|
|
|
22
28
|
// datafile
|
|
23
29
|
abstract readDatafile(options: DatafileOptions): Promise<DatafileContent>;
|
|
24
30
|
abstract writeDatafile(datafileContent: DatafileContent, options: DatafileOptions): Promise<void>;
|
|
31
|
+
|
|
32
|
+
// history
|
|
33
|
+
abstract listHistoryEntries(entityType?: EntityType, entityKey?: string): Promise<HistoryEntry[]>;
|
|
34
|
+
abstract readCommit(
|
|
35
|
+
commit: CommitHash,
|
|
36
|
+
entityType?: EntityType,
|
|
37
|
+
entityKey?: string,
|
|
38
|
+
): Promise<Commit>;
|
|
25
39
|
}
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
SegmentKey,
|
|
11
11
|
AttributeKey,
|
|
12
12
|
DatafileContent,
|
|
13
|
+
EntityType,
|
|
13
14
|
} from "@featurevisor/types";
|
|
14
15
|
|
|
15
16
|
import { ProjectConfig, CustomParser } from "../config";
|
|
@@ -19,8 +20,8 @@ import { Adapter, DatafileOptions } from "./adapter";
|
|
|
19
20
|
export class Datasource {
|
|
20
21
|
private adapter: Adapter;
|
|
21
22
|
|
|
22
|
-
constructor(private config: ProjectConfig) {
|
|
23
|
-
this.adapter = new config.adapter(config);
|
|
23
|
+
constructor(private config: ProjectConfig, private rootDirectoryPath?: string) {
|
|
24
|
+
this.adapter = new config.adapter(config, rootDirectoryPath);
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
// @TODO: only site generator needs it, find a way to get it out of here later
|
|
@@ -187,4 +188,13 @@ export class Datasource {
|
|
|
187
188
|
getTestSpecName(testKey: string) {
|
|
188
189
|
return `${testKey}.${this.getExtension()}`;
|
|
189
190
|
}
|
|
191
|
+
|
|
192
|
+
// history
|
|
193
|
+
listHistoryEntries(entityType?: EntityType, entityKey?: string) {
|
|
194
|
+
return this.adapter.listHistoryEntries(entityType, entityKey);
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
readCommit(commitHash: string, entityType?: EntityType, entityKey?: string) {
|
|
198
|
+
return this.adapter.readCommit(commitHash, entityType, entityKey);
|
|
199
|
+
}
|
|
190
200
|
}
|