npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@xatali/primateutil

v1.0.9

Published

Primate的工具包,用于vue项目build时的模型文件打包,自动发布至服务器等功能。

Downloads

3

Readme

PrimateUtil

介绍

Primate的工具包,用于vue项目build时的模型文件打包,自动发布至服务器等功能。

安装教程

  1. npm install @xatali/primateutil --save-dev

使用说明

压缩文件的使用方式(参考compress.js)。

  • 详细说明:

    调用此方法将返回压缩需要压缩的文件夹下的模型文件。并生成一个js文件,里面记录了压缩文件的名称,及场景加载的一些配置信息。

    此方法在开启前端缓存时比较有效,可以每次监测模型文件是否更新。如果更新,将会版本增加,文件名更改,前端缓存也将失效,将会加载新的模型文件。

  • 参数说明:

    • distPath:

      需要压缩的文件所处的路径,需要为一个绝对路径

    • opts :

      压缩过程中的一些配置,为一个对象。

      • expireTime :过期时间,0则为永不过期,单位为毫秒

      • isComPress:是否压缩,默认为true、

      • useCache:是否使用缓存。默认为true,

      • useWorker:是否使用线程,默认为true。

      • textureLoadAsync:图片是否异步加载,默认为false。

      • outSettingFileName:'ModelSetting.js';

      • isRemoveOld:是否删除原始文件。默认为true。

      • token:文件加密的字符串。必须为16位。

  • 返回值说明:

    将返回一个Promise对象。


ssh2客户端使用说明(参考compress.js)。

功能说明:

目前已实现的功能: 连接到远程linux服务器,并执行命令,上传下载文件及文件夹,远程删除创建文件夹,判断远程一个路径是否为文件或者文件夹等。

方法:
  • connect连接服务器

    • 说明:

      连接远程服务器。

    • 参数说明:

      • serverOption
      {
        host: '***.***.***.***',
        port: 22,
        username: 'user_name',
        password: 'pass_word',
      }
            

      为一个对象,描述了服务器的地址及密码等。

    • connectSecret 1.0.3版本新增

      • 说明:

        使用密文连接远程服务器。

      • 参数说明:

        • serverOption

          serverOption.host 服务器的主机地址。

          serverOption.port 服务器的端口号。

          serverOption.secret 调用secretServerOption时假面连接密码时的秘钥。

          serverOption.tokenPath:调用secretServerOption生成的token的地址。

          serverOption.privateKeyPath:调用secretServerOption生成的私钥的地址。

      • 返回值: Promise

    • secretServerOption 1.0.3版本新增

      • 说明:

        加密连接的配置。生成秘钥

      • 参数说明:

        • serverOption

          serverOption.host 服务器的主机地址。

          serverOption.port 服务器的端口号。

          serverOption.username 服务器用户名。

          serverOption.password 服务器密码。

          serverOption.secret 秘钥,一般字符串。

          serverOption.privateKeyOutPutPath:生成的私钥的地址。

          serverOption.tokenOutPutPath:生成的token的地址。

      • 返回值: Promise

  • shell 执行shell

    • 说明:

      连接远程服务器。

    • 参数说明:

      • cmd

      在linux上执行的命令

  • putFile 上传文件

    • 参数说明:

      • localPath

      本地的文件路径。

      • remotePath

      服务器的文件路径。

      • opts

      文件的设置,默认为null即可。

      • autoEndSFTP

      是否自动关闭SFTP,如果后续还有文件操作可不关闭,节省资源。

  • putDir 上传文件夹

    • 参数说明:

      • localDir

      本地的文件夹路径。

      • remoteDir

      服务器的文件夹路径。

      • autoEndSFTP

      是否自动关闭SFTP,如果后续还有文件操作可不关闭,节省资源。

  • creatDir 创建文件夹

    • 参数说明:

      • path

      服务器上要创建的文件夹路径。必须保证其父目录存在,不然会抛出错误。

  • createDirs 递归创建文件夹 1.0.3版本新增

    • 参数说明:

      • path

      服务器上要创建的文件夹路径。不必保证其父级目录存在单必须,必须使用绝对路径。

  • removeDir 递归删除文件夹

    • 参数说明:

      • path

      服务器上要删除的文件夹路径。使用的shell为 rm -rf

  • downFile 下载文件

    • 参数说明:

      • localPath

        本地文件的存储路径+名称

      • remotePath

        服务器存储的文件+名称

      • autoEndSFTP

        是否自动关闭SFTP,如果后续还有文件操作可不关闭,节省资源。

  • downDir 下载文件夹

    下载远程文件,将会首先删除本地要下载到的文件夹

    • 参数说明:

      • localPath

        本地要存储的文件夹路径

      • remotePath

        服务器的文件夹路径

      • autoEndSFTP

        是否自动关闭SFTP,如果后续还有文件操作可不关闭,节省资源。

  • openSFTP 获取一个SFTP连接

    基于ssh2模块,此方法将打开一个sftp连接。

  • close 关闭连接

    不使用此连接时,关闭资源。

  • exists 文件是否存在 1.0.2版本新增

    • 参数说明:

      • path

      检测文件是否存在


日志工具类(参考log.js)。

版本记录

  1. 2021-10-26 发布1.0.0版本。

    版本增加了模型文件压缩及SSH客户端工具类。

  2. 2021-10.28 发布1.0.2版本

    修复了多次打开通道的未知错误问题。

  3. 2021-11.01 发布1.0.4版本

    抛出日志工具类,并将构建方式修改为rollup。

  4. 2021-11.8 发布1.0.5版本

    修正其依赖的包。如 mkdirp,del等模块。

  5. 2021-11.11 发布 1.0.6版本

    抛出Utils工具类,包含以下功能:

    • 文件夹的递归复制

    • 递归删除文件夹。

    • 递归创建文件夹。

    • 对模型文件进行pri压缩。

    • 获取模型的类型

    • 获取文件的后缀

    • 获取文件的名称,不带后缀

    • 判断文件是否为模型文件

  6. 2021-11.11 发布 1.0.7版本

    增加types约束。

  7. 2021-11.11 发布 1.0.8版本

    增加压缩方法参数,增加设置文件输出路径,增加或者压缩后文件名称方法。

  8. 2021-11.12 发布 1.0.9版本

    增加压缩输出路径参数。