@gulujs/toml
Version:
TOML parser and serializer
33 lines (32 loc) • 1.06 kB
JavaScript
import { Parser, Source } from './parser/index.js';
import { SchemaModeSerializer, SchemaValidator, SimpleModeSerializer } from './serializer/index.js';
export const version = '1.0.0';
export { InvalidValueError, TableObjectError } from './errors/index.js';
export { TableComment } from './table-object/index.js';
export * from './date.js';
export * from './converter/index.js';
export * from './serializer/schema.js';
export function parse(source, options) {
const parser = new Parser(new Source(source), options);
return parser.parse();
}
export function stringify(obj, options) {
if (options?.schemata) {
const serializer = new SchemaModeSerializer(obj, options);
return serializer.serialize();
}
else {
const serializer = new SimpleModeSerializer(obj, options);
return serializer.serialize();
}
}
export function isValidSchema(schemata) {
const validator = new SchemaValidator(schemata);
try {
validator.validate();
return true;
}
catch (e) {
return false;
}
}