@apistudio/apim-cli
Version:
CLI for API Management Products
34 lines (33 loc) • 1.34 kB
JavaScript
import { isNullOrUndefined } from "./data.helper.js";
import { AppConstants } from "../constants/app.constants.js";
import { getDocumentBasedOnLanguage } from "./data.parser.js";
function isBaseAsset(fileContent, language) {
const parsedYaml = getDocumentBasedOnLanguage(fileContent, language);
return !!parsedYaml?.kind;
}
function getBaseAsset(fileContent, language) {
const parsedYaml = getDocumentBasedOnLanguage(fileContent, language);
return parsedYaml.kind.toLowerCase();
}
function isValidAssetRefValue(assetRefValue) {
if (isNullOrUndefined(assetRefValue)) {
return false;
}
return (assetRefValue.split(AppConstants.COLON).length >= 1 &&
assetRefValue.split(AppConstants.COLON).length <= 3);
}
;
function isValidAsset(asset, checkForVersion) {
if (isNullOrUndefined(asset)) {
return false;
}
asset = asset;
return !isNullOrUndefined(asset.kind) &&
!isNullOrUndefined(asset.metadata) &&
!isNullOrUndefined(asset.metadata.name) &&
(!checkForVersion || !isNullOrUndefined(asset.metadata.version));
}
function isValidAssetFileName(filename) {
return filename.endsWith('.yaml') || filename.endsWith('.yml') || filename.endsWith('.json');
}
export { isBaseAsset, isValidAssetFileName, isValidAsset, isValidAssetRefValue, getBaseAsset };