| 12345678910111213141516171819202122232425262728293031 |
- import { read } from 'yaml-import'
- import { AnyJson, Denormalizer } from '~/types/interfaces'
- import BaseDenormalizer from '~/services/serializer/denormalizer/baseDenormalizer'
- import { DENORMALIZER_TYPE } from '~/types/enums'
- const yaml = require('js-yaml')
- /**
- * @category Services/utils
- * @class YamlParser
- * Classe permettant d'assurer la dénormalization d'un fichier JSON en JSON
- */
- class Yaml extends BaseDenormalizer implements Denormalizer {
- static support (type: DENORMALIZER_TYPE): boolean {
- return type === DENORMALIZER_TYPE.YAML
- }
- /**
- * Parse un fichier Yaml pour en retourner son équivalent en Json
- * @param {AnyJson} data
- * @return {AnyJson}
- */
- denormalize (data: AnyJson): AnyJson {
- try {
- return yaml.load(yaml.dump(read(data.path)))
- } catch (e) {
- throw new Error(e.message)
- }
- }
- }
- export default Yaml
|