1.0.0 • Published 6 months ago

@shoplinepayments/test v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
6 months ago

payment-sdk

标准 API 支付 SDK 具体文档以 https://shopline.yuque.com/payplatform/ptambp/am5i7m 为准

安装

pnpm install

可执行脚本

# 本地开发
pnpm start
# 本地 build 生产环境版本
pnpm build:prod
# 本地 build 开发环境版本
pnpm build:dev
# 打 tag 发布 npm 测试包
pnpm release:dev
# 打 tag 发布 npm 正式包
pnpm release:prod
# 发布到 static-file 到 demo 测试环境使用
pnpm release:local
# 检测代码格式
pnpm lint
# 自动修复格式错误
pnpm lint:fix
# 执行测试用例
pnpm test

本地开发

  1. 先在 payment-sdk 项目执行脚本 pnpm start
  2. 再在 sdk-demo 项目执行脚本 pnpm start

发布到测试环境 demo

  1. 根目录下增加 local-config.json 配置本地 static-file 项目位置,及版本环境,总共有 5 个版本环境
{
  "staticFilesLocalPath": "/Users/hemengqi/Documents/joyy/payment/static-files",
  "sdkFileName": "dev-1"
}
  1. 打包测试包
pnpm build:dev

sonar 质量检测

在提测前,即 code review 前,需经过 sonar 检测质量,通过后方可进行 code review,sonar 使用参考 gitlab ci 使用手册

npm 包发布步骤

使用 gitlab-ci 发布 npm 包,具体参考 gitlab ci 使用手册

  1. 修改 package.json 版本号 "version": "1.5.0"
  2. 修改 CHANGELOG.md 说明本次版本的更新内容
  3. 先 commit,push
# 测试环境 beta/alpha 包,测试包自动发布
pnpm release:dev

# 正式包需到 ci 手动发布
pnpm release:prod

源码目录结构

src/
├── assets/    # 静态资源
├── channels/  # 不同交互场景(支付方式、渠道), 每种都相互独立, 不得相互引用
├── libs/      # 各个模块
├── types/     # 公共类型, 非公共类型就近存储
├── utils/     # 工具方法, 无关功能的方法放在不同文件中
└── index.ts   # export 索引

env 环境变量设置

new Payment 时传入initData参数,根据initData.env的值使用预设的环境变量。 当initData.env的值为prod时,以预设的配置为准。 当initData.env的值非空且不是prod时,以传入的initData.host的值为准