@agnostack/env
Version:
Please contact agnoStack via info@agnostack.com for any questions
45 lines • 2.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.parsePackageInfo = exports.parseProjectName = void 0;
const display_1 = require("./display");
const parseProjectName = (_name) => {
var _a;
const name = (0, display_1.ensureStringOnly)(_name);
const [, organization, ...parts] = (_a = /(@.*)([\\]+|\/)+(.*)/.exec(name)) !== null && _a !== void 0 ? _a : [];
const projectName = organization ? name.replace(organization, '').replace('/', '') : name;
return {
name,
parts,
organization,
projectName,
};
};
exports.parseProjectName = parseProjectName;
const parsePackageInfo = (packageInfo) => {
const { version, keywords, shortName, siteHandle, siteAuthor, devDependencies, peerDependencies, bundleDependencies, bundledDependencies = bundleDependencies, dependencies: runtimeDependencies, optionalDependencies, browserDependencies, name: _name, owner: _appOwner, appName: _appName, siteName: _siteName, } = packageInfo !== null && packageInfo !== void 0 ? packageInfo : {};
const { name, organization, projectName } = (0, exports.parseProjectName)(_name);
const appName = _appName !== null && _appName !== void 0 ? _appName : projectName === null || projectName === void 0 ? void 0 : projectName.slice((projectName === null || projectName === void 0 ? void 0 : projectName.indexOf('-')) + 1);
const siteName = _siteName !== null && _siteName !== void 0 ? _siteName : projectName === null || projectName === void 0 ? void 0 : projectName.slice((projectName === null || projectName === void 0 ? void 0 : projectName.indexOf('-')) + 1);
const companyName = organization === null || organization === void 0 ? void 0 : organization.replace('@', '');
const appOwner = _appOwner !== null && _appOwner !== void 0 ? _appOwner : companyName;
return [{
keywords,
appOwner,
appName,
version,
siteName,
shortName,
siteHandle,
siteAuthor,
companyName,
projectName,
devDependencies,
peerDependencies,
bundledDependencies,
runtimeDependencies,
browserDependencies,
optionalDependencies,
}, organization, name];
};
exports.parsePackageInfo = parsePackageInfo;
//# sourceMappingURL=project.js.map