import { readFile } from 'fs' import path from 'path' import yaml from 'js-yaml' export default { namespaced: true, state: { data_dir: '/home/lafrite/scripts/comptes/data/', config_dir: '/home/lafrite/scripts/comptes/config/', config_filename: 'config.yml', tags: {} }, getters: { data_dir: (state) => { return state.data_dir }, config_dir: (state) => { return state.config_dir }, config_filename: (state) => { return state.config_filename }, tags: (state) => { return state.tags }, tag: (state) => (tagname) => { return state.tags[tagname.toLowerCase()] } }, mutations: { SET_TAGS: (state, { tags }) => { state.tags = Object.keys(tags) .reduce((c, k) => (c[k.toLowerCase()] = tags[k], c), {}) } }, actions: { load (context) { readFile(path.join(context.getters.config_dir, context.getters.config_filename), 'utf8', (err, content) => { if (err) { console.log(err) } else { var parseConfig = { header: true } var parsed = yaml.safeLoad(content, parseConfig) context.commit('SET_TAGS', { tags: parsed.tags }) } }) }, edit_tag (context, tag) { console.log(tag) } } }