UNPKG

whistle.capimock

Version:

连接capi的whistle插件

78 lines (65 loc) 1.6 kB
var NAME_RE = /^.*\.ts$/; var storage; function getTplName(name, type) { if (!NAME_RE.test(name)) { return -1; } return name; } function getList() { return storage.getFileList().map(function(item) { var name = item.name; var lists = JSON.parse(item.data); return { name: name, checkList: lists.checkList, list: lists.list }; }); } module.exports = { getList: getList, getTpl: function(vaseId) { var list = getList(); for (var i = 0, len = list.length; i < len; i++) { var item = list[i]; if (item.name == vaseId) { return item; } } }, setTplValue: function(name, value) { if (!name || !storage.existsFile(name)) { return; } storage.writeFile(name, JSON.stringify(value)); }, addTpl: function(item) { var name = getTplName(item.name); if (name === -1) { return '文件格式校验不通过'; } if (!name || storage.existsFile(name)) { return '已经存在'; } storage.writeFile(name, JSON.stringify(item)); }, removeTpl: function(item) { storage.removeFile(getTplName(item.name)); }, getAllNoScriptTpl: function() { return []; }, setProperty: function(name, value) { storage.setProperty(name, value); }, getProperty: function(name) { return storage.getProperty(name); } }; module.exports.setup = function(options) { var pluginDataDir = options.config.pluginDataDir; // eslint-disable-next-line no-console console.log('pluginDataDir=>', pluginDataDir); storage = options.storage; };