@white-matrix/chainide-proxy-implements
TypeScript icon, indicating that this package has built-in type declarations

0.1.4 • Public • Published

Description

  • 支持 script 标签引入 或 es6 模块引入
  • 提供 chainIDE 提供的 API 以及 默认 event (获取文件内容,获取文件修改事件...)
  • 支持往 chainIDE 注册内部 function 和 event 供其他组件使用
  • 目前插件提供两块 view 注册区域,包含左侧 panel,与中间的 tabPanel,其中左侧 panel 必须包含 menuIcon

API

const newChainIdeProxyImp = new ChainIdeProxyImp({ pluginId: 'simplePlugin' });

// 注册插件方法(跨插件调用)
newChainIdeProxyImp.registerApiFunction(
  'registerSimplePluginFunc',
  ({ data }) => {
    console.log('registerSimplePluginFunc', data);
    return data;
  }
);

// 调用插件注册方法
newChainIdeProxyImp
  .callApiFunction(
    'simplePlugin',
    'registerSimplePluginFunc',
    'registerSimplePluginFunc res'
  )
  .then(({ data }) => {
    console.log('simplePlugin register function', data);
  });

// 插件内部订阅事件(跨插件通知)
newChainIdeProxyImp.subscribeEvent(
  'registerSimplePluginFunc.someChange',
  ({ data }) => console.log(data)
);

// 发布事件,可用于系统事件与插件内部事件相互通知
newChainIdeProxyImp.publishEvent(
  'registerSimplePluginFunc.someChange',
  'event'
);

// 调用 chainIDE fileSystem 提供的方法 获取文件树
newChainIdeProxyImp.fileSystemService('getFileTree').then(({ data }) => {
  console.log(data);
});

// 调用 chainIDE fileSystem 获取文件内容
newChainIdeProxyImp
  .fileSystemService('getFileContent', 'root/storage.sol')
  .then(({ data }) => {
  	console.log(data);
  });

// 调用 chainIDE fileSystem 获取文件 path list 第二个参数为正则
newChainIdeProxyImp
  .fileSystemService('getAllPathByRegex', '.*')
  .then(({ data }) => {
    console.log('getAllPathByRegex', data);
  });

// 订阅 ChainIDE 系统事件文件变动
newChainIdeProxyImp.subscribeEvent('onFileContentChange', ({ data }) => {
  console.log(data);
});

Readme

Keywords

none

Package Sidebar

Install

npm i @white-matrix/chainide-proxy-implements

Weekly Downloads

8

Version

0.1.4

License

GPL

Unpacked Size

47.6 kB

Total Files

19

Last publish

Collaborators

  • miles_wang
  • vera_wlz
  • hexi1997
  • sleepyyj
  • chen-yu
  • kilru
  • lucklyric
  • q33357
  • xiadd