Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@finclip/applet-builder-ci
Advanced tools
const { Project } = require('@finclip/applet-builder-ci')
(async () => {
const project = new Project({
appid: 'xxx',
type: 'miniProgram',
projectPath: 'the/project/path',
output: '',
userInfo: {
openAPISecret: '',
url: ''
}
})
/**
*
* @param {Object} options - 编译参数
* @param {string} options.input - 小程序路径
* @param {string} options.output - 输出路径
* @param {boolean} options.zip - 是否输出 zip 包
* @param {boolean} options.minify - 压缩小程序js
* @param {boolean} options.obfuscate - 混淆小程序js
* @param {boolean} options.DSL - 控制文件后缀名与前缀
* @param {Object} options.compileSettings - 只有v2为true是生效
* @param {boolean} v2 - 是否使用新编译库
* @returns Promise
*/
const builder = await project.build({
input: '/path/to/miniprogram',
output: '/path/to/output/dir',
zip: true,
minify: false,
obfuscate: false,
DSL: {
alias: ['foo', 'bar'],
prefix: 'ft', // wx.修改为ft
wxml: 'fxml', // .wxml为.fxml
wxss: 'ftss',
wxs: 'fts',
finClipConf: 'FinClipConf.js'
},
modifyCss: { // 替换全局样式: modifyCss.md
builtCss: []
}
watch: {
exclude: [], // watch需要忽略的目录与文件 支持glob与正则
},
exclude: [], //打包时需要忽略的目录与文件 支持glob与正则
trimText: false, //单行文本内容不换行
compileSettings: {
es6: true, // es6转es5
minify: true, // 上传时自动压缩脚本
minifyWXSS: true, // 上传时自动压缩样式
autoPrefixWXSS: true, // 上传时样式自动补全
sourceMap: true, // 开启 sourceMap
}
}, v2)
if (watch) { // 是否开启watch
builder.pause() //是否停止watch
builder.resume() //是否重启watch
}
})()
const { packNpm } = require('@finclip/applet-builder-ci')
(async () => {
/**
*
* @param {string} project - 小程序路径
* @param {Object} options - 编译参数
* @param {[string]} options.ignores - 指定构建npm需要排除的规则
* @param {string} options.reporter - 构建回调信息
* @returns Promise
*/
// 在有需要的时候构建npm
await packNpm(project, {
ignores: ['pack_npm_ignore_list'],
reporter: (infos) => { console.log(infos) }
})
})()
const { packNpmManually } = require('@finclip/applet-builder-ci')
(async () => {
/**
*
* @param {Object} options - 编译参数
* @param {string} options.packageJsonPath - 希望被构建的node_modules 对应的 package.json 的路径
* @param {string} options.miniprogramNpmDistDir - 被构建 miniprogram_npm 的目标位置目标位置
* @param {[string]} options.ignores - 指定需要排除的规则
* @returns Promise
*/
// 在有需要的时候构建npm
await packNpmManually({
packageJsonPath: './lib/package.json',
miniprogramNpmDistDir: './miniprogram-project/miniprogram/'
})
})()
const { Project } = require('@finclip/applet-builder-ci')
const project = new Project({
appid: 'xxx',
type: 'miniProgram',
projectPath: 'the/project/path',
output: '',
userInfo: {
openAPISecret: '',
url: ''
}
})
const version = '0.1.6'
const uploadData = await project.upload(version, 'this is desc') // 上传小程序
/**
* 提交审核
* @param {string} appId 版本号
* @param {string} buildId 审核通过后自动上架
*/
const submitAuditData = await project.submitAudit({ appId: uploadData.appId, buildId: uploadData.buildId })
/**
* 审核并发布
* @param {string} sequence 编译序列号
* @param {boolean} pass 是否通过
* @param {string} reason 驳回原因
*/
await project.audit(submitAuditData.sequence, pass, reason)
const { Project } = require('@finclip/applet-builder-ci')
const project = new Project({
appid: 'xxx',
type: 'miniProgram',
projectPath: 'the/project/path',
output: '',
userInfo: {
openAPISecret: '',
url: ''
}
})
/**
* 提交审核
* @param {string} version 版本号
* @param {string} desc 描述
*/
await project.publish(version, desc) //一键发布
const { Project } = require('@finclip/applet-builder-ci')
const project = new Project({
appid: 'xxx',
type: 'miniProgram',
projectPath: 'the/project/path',
output: '',
userInfo: {
openAPISecret: '',
url: ''
}
})
await project.getAppVersion()
FAQs
`@finclip/applet-builder-ci` 是一个 Node.js 库,提供了与编译、上传、审核和发布小程序相关的功能。该库的目标是简化小程序开发和部署的流程。
The npm package @finclip/applet-builder-ci receives a total of 42 weekly downloads. As such, @finclip/applet-builder-ci popularity was classified as not popular.
We found that @finclip/applet-builder-ci demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.