Nunjucks Powers Mozilla

    @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);
    });

    Keywords

    none

    Install

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

    DownloadsWeekly Downloads

    87

    Version

    0.1.4

    License

    GPL

    Unpacked Size

    47.6 kB

    Total Files

    19

    Last publish

    Collaborators

    • feibowei
    • shige720
    • vera_wlz
    • hexi1997
    • sleepyyj
    • 12ain
    • chen-yu
    • wklili
    • cxm123
    • kilru
    • willin
    • liyw
    • lucklyric
    • q33357
    • xiadd