UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

37 lines (36 loc) 971 B
/** * Copyright Super iPaaS Integration LLC, an IBM Company 2024 */ import * as yaml from 'js-yaml'; import { AppConstants } from '../constants/app.constants.js'; export function loadYaml(fileContent) { return (yaml.load(fileContent)); } export function isYAML(data) { try { const yamlString = yaml.dump(data); loadYaml(yamlString); return true; } catch (error) { return false; } } export function loadMultiYaml(fileContent) { return (yaml.loadAll(fileContent)); } export function isYamlFile(fileName) { return fileName.endsWith('.yaml') || fileName.endsWith('.yml'); } export function convertToYamlString(data, fileName) { try { return yaml.dump(data); } catch (err) { throw new Error(`${AppConstants.PARSING_EXCEPTION(fileName)} ${err.message}`); } } export function isMultiYAML(yamlString) { const multiDocs = loadMultiYaml(yamlString); return multiDocs.length > 1; }