Add NamespacedJsonCompiler

This commit is contained in:
Kim Biesbjerg
2017-01-13 09:02:01 +01:00
parent 183592acc3
commit 7822916e28
6 changed files with 94 additions and 20 deletions

View File

@@ -0,0 +1,18 @@
import { CompilerInterface } from './compiler.interface';
import { TranslationCollection } from '../utils/translation.collection';
import * as flat from 'flat';
export class NamespacedJsonCompiler implements CompilerInterface {
public compile(collection: TranslationCollection): string {
const values = flat.unflatten(collection.values);
return JSON.stringify(values, null, '\t');
}
public parse(contents: string): TranslationCollection {
const values = flat.flatten(JSON.parse(contents));
return new TranslationCollection(values);
}
}