dingtalk-qr-code 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +22 -0
- package/package.json +25 -0
- package/types/index.d.ts +37 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
import qr from "./qr";
|
|
3
|
+
export function generate(ctx, text, params) {
|
|
4
|
+
const {
|
|
5
|
+
logo,
|
|
6
|
+
ecc = 2,
|
|
7
|
+
size = 512,
|
|
8
|
+
shape = "square",
|
|
9
|
+
background = "#FFFFFF"
|
|
10
|
+
} = params || {};
|
|
11
|
+
ctx.canvas.width = size;
|
|
12
|
+
ctx.canvas.height = size;
|
|
13
|
+
ctx.save();
|
|
14
|
+
ctx.fillStyle = background;
|
|
15
|
+
ctx.fillRect(0, 0, size, size);
|
|
16
|
+
ctx.restore();
|
|
17
|
+
qr.draw(text, ctx, size, Number(ecc), {
|
|
18
|
+
imageUrl: logo,
|
|
19
|
+
shape,
|
|
20
|
+
background
|
|
21
|
+
});
|
|
22
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "dingtalk-qr-code",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"main": "dist/index.js",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"test": "bun run ./test/basic.ts",
|
|
7
|
+
"clean": "rimraf dist types",
|
|
8
|
+
"build": "npm run clean && esbuild ./src/index.ts --outfile=./dist/index.js && tsc"
|
|
9
|
+
},
|
|
10
|
+
"types": "./types",
|
|
11
|
+
"files": [
|
|
12
|
+
"types",
|
|
13
|
+
"dist"
|
|
14
|
+
],
|
|
15
|
+
"author": "Aiello Chan<aiello.chan@gmail.com>",
|
|
16
|
+
"license": "MIT",
|
|
17
|
+
"description": "Generate DingTalk style qr code, for node.js/web worker/dom",
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@napi-rs/canvas": "^0.1.53",
|
|
20
|
+
"@types/node": "^20.14.2",
|
|
21
|
+
"esbuild": "^0.21.5",
|
|
22
|
+
"rimraf": "^5.0.7",
|
|
23
|
+
"typescript": "^5.4.5"
|
|
24
|
+
}
|
|
25
|
+
}
|
package/types/index.d.ts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/**
|
|
3
|
+
* 在给定的 ctx 中绘制二维码
|
|
4
|
+
* @param ctx
|
|
5
|
+
* @param text
|
|
6
|
+
* @param params
|
|
7
|
+
*/
|
|
8
|
+
export declare function generate(
|
|
9
|
+
/**
|
|
10
|
+
* canvas 的绘制上下文
|
|
11
|
+
*/
|
|
12
|
+
ctx: CanvasRenderingContext2D,
|
|
13
|
+
/**
|
|
14
|
+
* 二维码的内容,通常为一个 url
|
|
15
|
+
*/
|
|
16
|
+
text: string, params: {
|
|
17
|
+
/**
|
|
18
|
+
* 二维码中间显示的图像
|
|
19
|
+
*/
|
|
20
|
+
logo?: HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame | Buffer;
|
|
21
|
+
/**
|
|
22
|
+
* 二维码的背景色,默认为 #FFFFFF
|
|
23
|
+
*/
|
|
24
|
+
background?: string;
|
|
25
|
+
/**
|
|
26
|
+
* 二维码的尺寸,默认为 512,也就是 512 * 512
|
|
27
|
+
*/
|
|
28
|
+
size?: number;
|
|
29
|
+
/**
|
|
30
|
+
* 二维码的形状,默认为 square
|
|
31
|
+
*/
|
|
32
|
+
shape?: "square" | "circle";
|
|
33
|
+
/**
|
|
34
|
+
* 纠错等级,默认为 2
|
|
35
|
+
*/
|
|
36
|
+
ecc?: number;
|
|
37
|
+
}): void;
|