import path from 'path' import { readFileSync, writeFileSync } from './util' import { merge } from 'lodash' function load () { try { return JSON.parse(readFileSync(resolve('./deps.json'))) } catch (e) { return {} } } function save (deps) { writeFileSync(resolve('./deps.json'), JSON.stringify(deps, null, ' ')) } function resolve (file) { return path.resolve(__dirname, file) } export function get (file) { let deps = load() return deps[file] } export function add (data) { let deps = load() save(merge(deps, data)) } export function remove (data) { let deps = load() Object.keys(data).forEach(key => { if (deps[key]) { delete deps[key][data[key]] } }) save(deps) } export function removeFile (file) { let deps = load() delete deps[file] Object.keys(deps).forEach(key => { delete deps[key][file] }) }