@oaklean/profiler-core
Version:
Part of the @oaklean suite. It provides all basic functions to work with the `.oak` file format. It allows parsing the `.oak` file format as well as tools for analyzing the measurement values. It also provides all necessary capabilities required for prec
100 lines • 7.45 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExportAssetHelper = void 0;
const fs = __importStar(require("fs"));
const glob_1 = require("glob");
const system_1 = require("../system");
const constants_1 = require("../constants");
class ExportAssetHelper {
constructor(outputDir) {
this._outputDir = outputDir;
}
outputDir() {
return this._outputDir;
}
outputReportPath(title) {
return this.outputDir().join(`${title}${constants_1.REPORT_FILE_EXTENSION}`);
}
outputMetricsDataCollectionPath(title) {
return this.outputDir().join(`${title}${constants_1.METRICS_DATA_COLLECTION_FILE_EXTENSION}`);
}
outputCPUProfilePath(title) {
return this.outputDir().join(`${title}${constants_1.CPU_PROFILE_FILE_EXTENSION}`);
}
outputExternalResourceHelperPath(title) {
return this.outputDir().join(`${title}${constants_1.EXTERNAL_RESOURCE_HELPER_FILE_EXTENSION}`);
}
outputPerformancePath() {
return this.outputDir().join(constants_1.PERFORMANCE_FILE_NAME);
}
outputExecutionDetailsPath() {
return this.outputDir().join(constants_1.EXECUTION_DETAILS_FILE_NAME);
}
outputAccumulatedReportPath() {
return this.outputDir().join(constants_1.ACCUMULATED_REPORT_FILE_NAME);
}
titleFromReportFilePath(reportFilePath) {
const titlePath = this.outputDir().pathTo(reportFilePath).toString();
if (titlePath.endsWith(constants_1.REPORT_FILE_EXTENSION)) {
return titlePath.slice(0, -constants_1.REPORT_FILE_EXTENSION.length);
}
throw new Error(`Invalid report file path: ${reportFilePath.toPlatformString()}. Expected to end
with ${constants_1.REPORT_FILE_EXTENSION}`);
}
static historyReportFileName(timestamp, commitHash) {
return (timestamp.toString() +
(commitHash ? '-' + commitHash : '') +
constants_1.REPORT_FILE_EXTENSION);
}
allReportPathsInOutputDir() {
const globPattern = this.outputDir().join('**', `*${constants_1.REPORT_FILE_EXTENSION}`);
if (fs.existsSync(this.outputDir().toPlatformString())) {
const filePaths = (0, glob_1.sync)(globPattern.toString());
return filePaths.map((filePath) => new system_1.UnifiedPath(filePath));
}
return [];
}
allExternalResourcePathsInOutputDir() {
const globPattern = this.outputDir().join('**', `*${constants_1.EXTERNAL_RESOURCE_HELPER_FILE_EXTENSION}`);
if (fs.existsSync(this.outputDir().toPlatformString())) {
const filePaths = (0, glob_1.sync)(globPattern.toString());
return filePaths.map((filePath) => new system_1.UnifiedPath(filePath));
}
return [];
}
}
exports.ExportAssetHelper = ExportAssetHelper;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwb3J0QXNzZXRIZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaGVscGVyL0V4cG9ydEFzc2V0SGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF3QjtBQUV4QiwrQkFBMkI7QUFFM0Isc0NBQXVDO0FBR3ZDLDRDQVFxQjtBQUVyQixNQUFhLGlCQUFpQjtJQUc3QixZQUFZLFNBQXNCO1FBQ2pDLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFBO0lBQzVCLENBQUM7SUFFRCxTQUFTO1FBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFBO0lBQ3ZCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFhO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxpQ0FBcUIsRUFBRSxDQUFDLENBQUE7SUFDakUsQ0FBQztJQUVELCtCQUErQixDQUFDLEtBQWE7UUFDNUMsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUMzQixHQUFHLEtBQUssR0FBRyxrREFBc0MsRUFBRSxDQUNuRCxDQUFBO0lBQ0YsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQWE7UUFDakMsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLHNDQUEwQixFQUFFLENBQUMsQ0FBQTtJQUN0RSxDQUFDO0lBRUQsZ0NBQWdDLENBQUMsS0FBYTtRQUM3QyxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQzNCLEdBQUcsS0FBSyxHQUFHLG1EQUF1QyxFQUFFLENBQ3BELENBQUE7SUFDRixDQUFDO0lBRUQscUJBQXFCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxpQ0FBcUIsQ0FBQyxDQUFBO0lB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