| 123456789101112131415161718192021222324252627282930 |
- import { read } from 'yaml-import'
- import { AnyJson } from '~/types/interfaces'
- import BaseDenormalizer from '~/services/serializer/denormalizer/baseDenormalizer'
- import { DENORMALIZER_TYPE } from '~/types/enums'
- const yaml = require('js-yaml')
- /**
- * Classe permettant d'assurer la dénormalization d'un fichier JSON en JSON
- */
- class Yaml extends BaseDenormalizer {
- 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}
- */
- public static denormalize (data: AnyJson): AnyJson {
- try {
- return yaml.load(yaml.dump(read(data.path)))
- } catch (e) {
- throw new Error(e.message)
- }
- }
- }
- export default Yaml
|