UNPKG

@altostra/core

Version:

Core library for shared types and logic

1 lines 1.14 kB
"use strict";var __awaiter=this&&this.__awaiter||function(r,e,t,o){return new(t||(t=Promise))((function(i,n){function s(r){try{c(o.next(r))}catch(r){n(r)}}function a(r){try{c(o.throw(r))}catch(r){n(r)}}function c(r){var e;r.done?i(r.value):(e=r.value,e instanceof t?e:new t((function(r){r(e)}))).then(s,a)}c((o=o.apply(r,e||[])).next())}))};Object.defineProperty(exports,"__esModule",{value:!0}),exports.isProjectVersion=exports.getVersion=void 0;const path_1=require("path"),AltoError_1=require("../Errors/AltoError"),type_validations_1=require("@altostra/type-validations"),primitives_1=require("@altostra/type-validations/lib/primitives"),FS_1=require("./FS");function getVersion(r){return __awaiter(this,void 0,void 0,(function*(){const e=r||process.cwd(),t=(0,path_1.join)(e,"package.json");try{const{name:r,version:e}=yield(0,FS_1.loadJsonFile)(t);return{name:r,version:e}}catch(r){const e=`Failed to parse ${t} as json`;throw console.error(e),AltoError_1.AltoError.wrapError(r,{message:e})}}))}exports.getVersion=getVersion,exports.isProjectVersion=(0,type_validations_1.objectOf)({name:primitives_1.string,version:primitives_1.string});