@tarojs/taro-h5 3.7.0-alpha.8 → 3.7.0-beta.3
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/api/canvas/CanvasContext.d.ts +5 -3
- package/dist/api/canvas/CanvasContext.js +23 -5
- package/dist/api/canvas/CanvasContext.js.map +1 -1
- package/dist/api/index.js +3 -1
- package/dist/api/index.js.map +1 -1
- package/dist/api/media/audio/InnerAudioContext.d.ts +20 -20
- package/dist/api/media/audio/InnerAudioContext.js +11 -1
- package/dist/api/media/audio/InnerAudioContext.js.map +1 -1
- package/dist/api/media/background-audio/BackgroundAudioManager.js +11 -1
- package/dist/api/media/background-audio/BackgroundAudioManager.js.map +1 -1
- package/dist/api/network/download.js +10 -8
- package/dist/api/network/download.js.map +1 -1
- package/dist/api/network/upload.js +10 -8
- package/dist/api/network/upload.js.map +1 -1
- package/dist/api/open-api/favorites.d.ts +1 -2
- package/dist/api/open-api/favorites.js +1 -2
- package/dist/api/open-api/favorites.js.map +1 -1
- package/dist/api/open-api/index.d.ts +2 -0
- package/dist/api/open-api/index.js +3 -1
- package/dist/api/open-api/index.js.map +1 -1
- package/dist/api/open-api/my-miniprogram.d.ts +2 -0
- package/dist/api/open-api/my-miniprogram.js +7 -0
- package/dist/api/open-api/my-miniprogram.js.map +1 -0
- package/dist/api/open-api/privacy.d.ts +5 -0
- package/dist/api/open-api/privacy.js +10 -0
- package/dist/api/open-api/privacy.js.map +1 -0
- package/dist/api/taro.js +16 -8
- package/dist/api/taro.js.map +1 -1
- package/dist/index.cjs.d.ts +8 -2
- package/dist/index.cjs.js +94 -32
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.d.ts +8 -2
- package/dist/index.esm.js +91 -33
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/package.json +7 -8
- package/types/overlay.d.ts +5 -5
|
@@ -63,7 +63,7 @@ declare class CanvasContext implements Taro.CanvasContext {
|
|
|
63
63
|
clearRect(...args: any[]): void;
|
|
64
64
|
clip(...args: any[]): void;
|
|
65
65
|
closePath(...args: any[]): void;
|
|
66
|
-
createPattern(
|
|
66
|
+
createPattern(imageResource: string, repetition: keyof Taro.CanvasContext.Repetition): CanvasPattern | null | Promise<CanvasPattern | null>;
|
|
67
67
|
/**
|
|
68
68
|
* 将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中。
|
|
69
69
|
* @todo 每次 draw 都会读取 width 和 height
|
|
@@ -81,9 +81,11 @@ declare class CanvasContext implements Taro.CanvasContext {
|
|
|
81
81
|
moveTo(...args: any[]): void;
|
|
82
82
|
quadraticCurveTo(...args: any[]): void;
|
|
83
83
|
rect(...args: any[]): void;
|
|
84
|
-
|
|
84
|
+
// @ts-ignore
|
|
85
|
+
reset(): any;
|
|
86
|
+
restore(): void;
|
|
85
87
|
rotate(...args: any[]): void;
|
|
86
|
-
save(
|
|
88
|
+
save(): void;
|
|
87
89
|
scale(...args: any[]): void;
|
|
88
90
|
setFillStyle(color: string | CanvasGradient): void;
|
|
89
91
|
setFontSize(fontSize: number): void;
|
|
@@ -76,8 +76,19 @@ class CanvasContext {
|
|
|
76
76
|
clearRect(...args) { return this.enqueueActions(this.ctx.clearRect, ...args); }
|
|
77
77
|
clip(...args) { return this.enqueueActions(this.ctx.clip, ...args); }
|
|
78
78
|
closePath(...args) { return this.enqueueActions(this.ctx.closePath, ...args); }
|
|
79
|
-
createPattern(
|
|
80
|
-
|
|
79
|
+
createPattern(imageResource, repetition) {
|
|
80
|
+
// 需要转换为 Image
|
|
81
|
+
if (typeof imageResource === 'string') {
|
|
82
|
+
const img = new Image();
|
|
83
|
+
img.src = imageResource;
|
|
84
|
+
return new Promise((resolve, reject) => {
|
|
85
|
+
img.onload = () => {
|
|
86
|
+
resolve(this.ctx.createPattern(img, repetition));
|
|
87
|
+
};
|
|
88
|
+
img.onerror = reject;
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
return this.ctx.createPattern(imageResource, repetition);
|
|
81
92
|
}
|
|
82
93
|
/**
|
|
83
94
|
* 将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中。
|
|
@@ -128,15 +139,22 @@ class CanvasContext {
|
|
|
128
139
|
moveTo(...args) { return this.enqueueActions(this.ctx.moveTo, ...args); }
|
|
129
140
|
quadraticCurveTo(...args) { return this.enqueueActions(this.ctx.quadraticCurveTo, ...args); }
|
|
130
141
|
rect(...args) { return this.enqueueActions(this.ctx.rect, ...args); }
|
|
131
|
-
|
|
142
|
+
// @ts-ignore
|
|
143
|
+
reset() { return this.ctx.reset(); }
|
|
144
|
+
restore() { return this.ctx.restore(); }
|
|
132
145
|
rotate(...args) { return this.enqueueActions(this.ctx.rotate, ...args); }
|
|
133
|
-
save(
|
|
146
|
+
save() { return this.ctx.save(); }
|
|
134
147
|
scale(...args) { return this.enqueueActions(this.ctx.scale, ...args); }
|
|
135
148
|
setFillStyle(color) {
|
|
136
149
|
this.enqueueActions(() => { this.ctx.fillStyle = color; });
|
|
137
150
|
}
|
|
138
151
|
setFontSize(fontSize) {
|
|
139
|
-
this.font
|
|
152
|
+
const arr = this.font.split(/\s/);
|
|
153
|
+
const idx = arr.findIndex(e => /^\d+px$/.test(e));
|
|
154
|
+
if (idx !== -1) {
|
|
155
|
+
arr[idx] = `${fontSize}px`;
|
|
156
|
+
this.font = arr.join(' ');
|
|
157
|
+
}
|
|
140
158
|
}
|
|
141
159
|
setGlobalAlpha(alpha) {
|
|
142
160
|
this.globalAlpha = alpha;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasContext.js","sources":["../../../src/api/canvas/CanvasContext.ts"],"sourcesContent":["import Taro, { CanvasGradient } from '@tarojs/api'\n\ninterface IAction {\n func: (...arr: any[]) => void\n args: any[]\n}\n\nconst TextBaseLineMap: Record<keyof Taro.CanvasContext.TextBaseline, CanvasTextBaseline> = {\n top: 'top',\n bottom: 'bottom',\n middle: 'middle',\n normal: 'alphabetic'\n}\n\nexport class CanvasContext implements Taro.CanvasContext {\n __raw__: CanvasRenderingContext2D\n actions: IAction[] = []\n\n constructor (canvas, ctx) {\n this.canvas = canvas\n this.ctx = ctx\n }\n\n set ctx (e: CanvasRenderingContext2D) {\n this.__raw__ = e\n }\n\n get ctx () {\n return this.__raw__ || {}\n }\n\n canvas: HTMLCanvasElement\n\n protected emptyActions () {\n this.actions.length = 0\n }\n\n protected enqueueActions (func: IAction['func'], ...args) {\n this.actions.push({\n func,\n args\n })\n }\n\n set fillStyle (e) { this.enqueueActions(() => { this.ctx.fillStyle = e }) }\n get fillStyle () { return this.ctx.fillStyle as string }\n set font (e) { this.ctx.font = e }\n get font () { return this.ctx.font }\n set globalAlpha (e) { this.enqueueActions(() => { this.ctx.globalAlpha = e }) }\n get globalAlpha () { return this.ctx.globalAlpha }\n set globalCompositeOperation (e) { this.enqueueActions(() => { this.ctx.globalCompositeOperation = e }) }\n get globalCompositeOperation () { return this.ctx.globalCompositeOperation }\n set lineCap (e) { this.enqueueActions(() => { this.ctx.lineCap = e }) }\n get lineCap () { return this.ctx.lineCap }\n set lineDashOffset (e) { this.enqueueActions(() => { this.ctx.lineDashOffset = e }) }\n get lineDashOffset () { return this.ctx.lineDashOffset }\n set lineJoin (e) { this.enqueueActions(() => { this.ctx.lineJoin = e }) }\n get lineJoin () { return this.ctx.lineJoin }\n set lineWidth (e) { this.enqueueActions(() => { this.ctx.lineWidth = e }) }\n get lineWidth () { return this.ctx.lineWidth }\n set miterLimit (e) { this.enqueueActions(() => { this.ctx.miterLimit = e }) }\n get miterLimit () { return this.ctx.miterLimit }\n set shadowBlur (e) { this.enqueueActions(() => { this.ctx.shadowBlur = e }) }\n get shadowBlur () { return this.ctx.shadowBlur }\n set shadowColor (e) { this.enqueueActions(() => { this.ctx.shadowColor = e }) }\n get shadowColor () { return this.ctx.shadowColor }\n set shadowOffsetX (e) { this.enqueueActions(() => { this.ctx.shadowOffsetX = e }) }\n get shadowOffsetX () { return this.ctx.shadowOffsetX }\n set shadowOffsetY (e) { this.enqueueActions(() => { this.ctx.shadowOffsetY = e }) }\n get shadowOffsetY () { return this.ctx.shadowOffsetY }\n set strokeStyle (e) { this.enqueueActions(() => { this.ctx.strokeStyle = e }) }\n get strokeStyle () { return this.ctx.strokeStyle as string }\n /** 小程序文档中不包括 ↓↓↓ */\n set textAlign (e) { this.ctx.textAlign = e }\n get textAlign () { return this.ctx.textAlign }\n set textBaseline (e) { this.ctx.textBaseline = e }\n get textBaseline () { return this.ctx.textBaseline }\n set direction (e) { this.ctx.direction = e }\n get direction () { return this.ctx.direction }\n set imageSmoothingEnabled (e) { this.enqueueActions(() => { this.ctx.imageSmoothingEnabled = e }) }\n get imageSmoothingEnabled () { return this.ctx.imageSmoothingEnabled }\n set imageSmoothingQuality (e) { this.enqueueActions(() => { this.ctx.imageSmoothingQuality = e }) }\n get imageSmoothingQuality () { return this.ctx.imageSmoothingQuality }\n set filter (e) { this.enqueueActions(() => { this.ctx.filter = e }) }\n get filter () { return this.ctx.filter }\n /** 小程序文档中不包括 ↑↑↑ */\n\n arc (...args) { return this.enqueueActions(this.ctx.arc, ...args) }\n arcTo (...args) { return this.enqueueActions(this.ctx.arcTo, ...args) }\n beginPath (...args) { return this.enqueueActions(this.ctx.beginPath, ...args) }\n bezierCurveTo (...args) { return this.enqueueActions(this.ctx.bezierCurveTo, ...args) }\n clearRect (...args) { return this.enqueueActions(this.ctx.clearRect, ...args) }\n clip (...args) { return this.enqueueActions(this.ctx.clip, ...args) }\n closePath (...args) { return this.enqueueActions(this.ctx.closePath, ...args) }\n\n createPattern (image: string, repetition: keyof Taro.CanvasContext.Repetition): void {\n return this.createPattern(image, repetition)\n }\n\n /**\n * 将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中。\n * @todo 每次 draw 都会读取 width 和 height\n */\n async draw (reserve?: boolean, callback?: (...args: any[]) => any): Promise<void> {\n try {\n if (!reserve) {\n this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height)\n }\n\n // 部分 action 是异步的\n for (const { func, args } of this.actions) {\n await func.apply(this.ctx, args)\n }\n\n this.emptyActions()\n callback && callback()\n } catch (e) {\n /* eslint-disable no-throw-literal */\n throw {\n errMsg: e.message\n }\n }\n }\n\n drawImage (imageResource: string, ...extra: any[]): void {\n type TExtra = [number, number]\n this.enqueueActions(() => {\n // 需要转换为 Image\n if (typeof imageResource === 'string') {\n const img = new Image()\n img.src = imageResource\n return new Promise<void>((resolve, reject) => {\n img.onload = () => {\n this.ctx.drawImage(img, ...extra as TExtra)\n resolve()\n }\n img.onerror = reject\n })\n }\n\n this.ctx.drawImage(imageResource, ...extra as TExtra)\n })\n }\n\n fill (...args) { return this.enqueueActions(this.ctx.fill, ...args) }\n fillRect (...args) { return this.enqueueActions(this.ctx.fillRect, ...args) }\n fillText (...args) { return this.enqueueActions(this.ctx.fillText, ...args) }\n lineTo (...args) { return this.enqueueActions(this.ctx.lineTo, ...args) }\n moveTo (...args) { return this.enqueueActions(this.ctx.moveTo, ...args) }\n quadraticCurveTo (...args) { return this.enqueueActions(this.ctx.quadraticCurveTo, ...args) }\n rect (...args) { return this.enqueueActions(this.ctx.rect, ...args) }\n restore (...args) { return this.enqueueActions(this.ctx.restore, ...args) }\n rotate (...args) { return this.enqueueActions(this.ctx.rotate, ...args) }\n save (...args) { return this.enqueueActions(this.ctx.save, ...args) }\n scale (...args) { return this.enqueueActions(this.ctx.scale, ...args) }\n\n setFillStyle (color: string | CanvasGradient): void {\n this.enqueueActions(() => { this.ctx.fillStyle = color })\n }\n\n setFontSize (fontSize: number): void {\n this.font = `${fontSize}px`\n }\n\n setGlobalAlpha (alpha: number): void {\n this.globalAlpha = alpha\n }\n\n setLineCap (lineCap: keyof Taro.CanvasContext.LineCap): void {\n this.lineCap = lineCap\n }\n\n setLineDash (pattern: number[], offset: number): void {\n this.enqueueActions(() => {\n this.ctx.setLineDash(pattern)\n this.ctx.lineDashOffset = offset\n })\n }\n\n setLineJoin (lineJoin: keyof Taro.CanvasContext.LineJoin): void {\n this.lineJoin = lineJoin\n }\n\n setLineWidth (lineWidth: number): void {\n this.lineWidth = lineWidth\n }\n\n setMiterLimit (miterLimit: number): void {\n this.miterLimit = miterLimit\n }\n\n setShadow (offsetX: number, offsetY: number, blur: number, color: string): void {\n this.enqueueActions(() => {\n this.ctx.shadowOffsetX = offsetX\n this.ctx.shadowOffsetY = offsetY\n this.ctx.shadowColor = color\n this.ctx.shadowBlur = blur\n })\n }\n\n setStrokeStyle (color: string | CanvasGradient): void {\n this.enqueueActions(() => { this.ctx.strokeStyle = color })\n }\n\n setTextAlign (align: keyof Taro.CanvasContext.Align): void {\n this.textAlign = align\n }\n\n setTextBaseline (textBaseline: keyof Taro.CanvasContext.TextBaseline): void {\n this.textBaseline = TextBaseLineMap[textBaseline] || 'alphabetic'\n }\n\n setTransform (...args) { return this.enqueueActions(this.ctx.setTransform, ...args) }\n stroke (...args) { return this.enqueueActions(this.ctx.stroke, ...args) }\n strokeRect (...args) { return this.enqueueActions(this.ctx.strokeRect, ...args) }\n strokeText (...args) { return this.enqueueActions(this.ctx.strokeText, ...args) }\n transform (...args) { return this.enqueueActions(this.ctx.transform, ...args) }\n translate (...args) { return this.enqueueActions(this.ctx.translate, ...args) }\n\n measureText (text: string): TextMetrics {\n return this.ctx.measureText(text)\n }\n\n createCircularGradient (x: number, y: number, r: number): CanvasGradient {\n const radialGradient = this.ctx.createRadialGradient(x, y, 0, x, y, r)\n\n return radialGradient\n }\n\n createLinearGradient (x0: number, y0: number, x1: number, y1: number): CanvasGradient {\n return this.ctx.createLinearGradient(x0, y0, x1, y1)\n }\n}\n"],"names":[],"mappings":";;AAOA,MAAM,eAAe,GAAsE;AACzF,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,MAAM,EAAE,YAAY;CACrB,CAAA;MAEY,aAAa,CAAA;IAIxB,WAAa,CAAA,MAAM,EAAE,GAAG,EAAA;QAFxB,IAAO,CAAA,OAAA,GAAc,EAAE,CAAA;AAGrB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;AACpB,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;KACf;IAED,IAAI,GAAG,CAAE,CAA2B,EAAA;AAClC,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;KACjB;AAED,IAAA,IAAI,GAAG,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;KAC1B;IAIS,YAAY,GAAA;AACpB,QAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;KACxB;AAES,IAAA,cAAc,CAAE,IAAqB,EAAE,GAAG,IAAI,EAAA;AACtD,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YAChB,IAAI;YACJ,IAAI;AACL,SAAA,CAAC,CAAA;KACH;IAED,IAAI,SAAS,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IAC3E,IAAI,SAAS,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,SAAmB,CAAA,EAAE;AACxD,IAAA,IAAI,IAAI,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAA,EAAE;IAClC,IAAI,IAAI,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAA,EAAE;IACpC,IAAI,WAAW,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IAC/E,IAAI,WAAW,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAA,EAAE;IAClD,IAAI,wBAAwB,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,wBAAwB,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACzG,IAAI,wBAAwB,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAA,EAAE;IAC5E,IAAI,OAAO,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACvE,IAAI,OAAO,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAA,EAAE;IAC1C,IAAI,cAAc,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACrF,IAAI,cAAc,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,CAAA,EAAE;IACxD,IAAI,QAAQ,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACzE,IAAI,QAAQ,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAA,EAAE;IAC5C,IAAI,SAAS,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IAC3E,IAAI,SAAS,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAA,EAAE;IAC9C,IAAI,UAAU,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IAC7E,IAAI,UAAU,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAA,EAAE;IAChD,IAAI,UAAU,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IAC7E,IAAI,UAAU,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAA,EAAE;IAChD,IAAI,WAAW,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IAC/E,IAAI,WAAW,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAA,EAAE;IAClD,IAAI,aAAa,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACnF,IAAI,aAAa,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAA,EAAE;IACtD,IAAI,aAAa,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACnF,IAAI,aAAa,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAA,EAAE;IACtD,IAAI,WAAW,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IAC/E,IAAI,WAAW,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,WAAqB,CAAA,EAAE;;AAE5D,IAAA,IAAI,SAAS,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAA,EAAE;IAC5C,IAAI,SAAS,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAA,EAAE;AAC9C,IAAA,IAAI,YAAY,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,CAAA,EAAE;IAClD,IAAI,YAAY,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAA,EAAE;AACpD,IAAA,IAAI,SAAS,CAAE,CAAC,EAAA,EAAI,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAA,EAAE;IAC5C,IAAI,SAAS,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAA,EAAE;IAC9C,IAAI,qBAAqB,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACnG,IAAI,qBAAqB,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAA,EAAE;IACtE,IAAI,qBAAqB,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACnG,IAAI,qBAAqB,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAA,EAAE;IACtE,IAAI,MAAM,CAAE,CAAC,EAAI,EAAA,IAAI,CAAC,cAAc,CAAC,MAAQ,EAAA,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAA,EAAE,CAAC,CAAA,EAAE;IACrE,IAAI,MAAM,GAAM,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAA,EAAE;;IAGxC,GAAG,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACnE,KAAK,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACvE,SAAS,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAC/E,aAAa,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACvF,SAAS,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAC/E,IAAI,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACrE,SAAS,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAE/E,aAAa,CAAE,KAAa,EAAE,UAA+C,EAAA;QAC3E,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;KAC7C;AAED;;;AAGG;IACG,IAAI,CAAE,OAAiB,EAAE,QAAkC,EAAA;;YAC/D,IAAI;gBACF,IAAI,CAAC,OAAO,EAAE;oBACZ,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAChE,iBAAA;;gBAGD,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;oBACzC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;AACjC,iBAAA;gBAED,IAAI,CAAC,YAAY,EAAE,CAAA;gBACnB,QAAQ,IAAI,QAAQ,EAAE,CAAA;AACvB,aAAA;AAAC,YAAA,OAAO,CAAC,EAAE;;gBAEV,MAAM;oBACJ,MAAM,EAAE,CAAC,CAAC,OAAO;iBAClB,CAAA;AACF,aAAA;SACF,CAAA,CAAA;AAAA,KAAA;AAED,IAAA,SAAS,CAAE,aAAqB,EAAE,GAAG,KAAY,EAAA;AAE/C,QAAA,IAAI,CAAC,cAAc,CAAC,MAAK;;AAEvB,YAAA,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;AACrC,gBAAA,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAA;AACvB,gBAAA,GAAG,CAAC,GAAG,GAAG,aAAa,CAAA;gBACvB,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,KAAI;AAC3C,oBAAA,GAAG,CAAC,MAAM,GAAG,MAAK;wBAChB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,KAAe,CAAC,CAAA;AAC3C,wBAAA,OAAO,EAAE,CAAA;AACX,qBAAC,CAAA;AACD,oBAAA,GAAG,CAAC,OAAO,GAAG,MAAM,CAAA;AACtB,iBAAC,CAAC,CAAA;AACH,aAAA;YAED,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,GAAG,KAAe,CAAC,CAAA;AACvD,SAAC,CAAC,CAAA;KACH;IAED,IAAI,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACrE,QAAQ,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAC7E,QAAQ,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAC7E,MAAM,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACzE,MAAM,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACzE,gBAAgB,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAC7F,IAAI,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACrE,OAAO,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAC3E,MAAM,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACzE,IAAI,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACrE,KAAK,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;AAEvE,IAAA,YAAY,CAAE,KAA8B,EAAA;AAC1C,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,KAAK,CAAA,EAAE,CAAC,CAAA;KAC1D;AAED,IAAA,WAAW,CAAE,QAAgB,EAAA;AAC3B,QAAA,IAAI,CAAC,IAAI,GAAG,CAAG,EAAA,QAAQ,IAAI,CAAA;KAC5B;AAED,IAAA,cAAc,CAAE,KAAa,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;KACzB;AAED,IAAA,UAAU,CAAE,OAAyC,EAAA;AACnD,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;KACvB;IAED,WAAW,CAAE,OAAiB,EAAE,MAAc,EAAA;AAC5C,QAAA,IAAI,CAAC,cAAc,CAAC,MAAK;AACvB,YAAA,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;AAC7B,YAAA,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,MAAM,CAAA;AAClC,SAAC,CAAC,CAAA;KACH;AAED,IAAA,WAAW,CAAE,QAA2C,EAAA;AACtD,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;KACzB;AAED,IAAA,YAAY,CAAE,SAAiB,EAAA;AAC7B,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;KAC3B;AAED,IAAA,aAAa,CAAE,UAAkB,EAAA;AAC/B,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;KAC7B;AAED,IAAA,SAAS,CAAE,OAAe,EAAE,OAAe,EAAE,IAAY,EAAE,KAAa,EAAA;AACtE,QAAA,IAAI,CAAC,cAAc,CAAC,MAAK;AACvB,YAAA,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,OAAO,CAAA;AAChC,YAAA,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,OAAO,CAAA;AAChC,YAAA,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,KAAK,CAAA;AAC5B,YAAA,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAA;AAC5B,SAAC,CAAC,CAAA;KACH;AAED,IAAA,cAAc,CAAE,KAA8B,EAAA;AAC5C,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,KAAK,CAAA,EAAE,CAAC,CAAA;KAC5D;AAED,IAAA,YAAY,CAAE,KAAqC,EAAA;AACjD,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;KACvB;AAED,IAAA,eAAe,CAAE,YAAmD,EAAA;QAClE,IAAI,CAAC,YAAY,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,YAAY,CAAA;KAClE;IAED,YAAY,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACrF,MAAM,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACzE,UAAU,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACjF,UAAU,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IACjF,SAAS,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;IAC/E,SAAS,CAAE,GAAG,IAAI,EAAA,EAAI,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAA,EAAE;AAE/E,IAAA,WAAW,CAAE,IAAY,EAAA;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;KAClC;AAED,IAAA,sBAAsB,CAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAA;QACrD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAEtE,QAAA,OAAO,cAAc,CAAA;KACtB;AAED,IAAA,oBAAoB,CAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAE,EAAU,EAAA;AAClE,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;KACrD;AACF;;;;"}
|
|
1
|
+
{"version":3,"file":"CanvasContext.js","sources":["../../../src/api/canvas/CanvasContext.ts"],"sourcesContent":["import Taro, { CanvasGradient } from '@tarojs/api'\n\ninterface IAction {\n func: (...arr: any[]) => void\n args: any[]\n}\n\nconst TextBaseLineMap: Record<keyof Taro.CanvasContext.TextBaseline, CanvasTextBaseline> = {\n top: 'top',\n bottom: 'bottom',\n middle: 'middle',\n normal: 'alphabetic'\n}\n\nexport class CanvasContext implements Taro.CanvasContext {\n __raw__: CanvasRenderingContext2D\n actions: IAction[] = []\n\n constructor (canvas, ctx) {\n this.canvas = canvas\n this.ctx = ctx\n }\n\n set ctx (e: CanvasRenderingContext2D) {\n this.__raw__ = e\n }\n\n get ctx () {\n return this.__raw__ || {}\n }\n\n canvas: HTMLCanvasElement\n\n protected emptyActions () {\n this.actions.length = 0\n }\n\n protected enqueueActions (func: IAction['func'], ...args) {\n this.actions.push({\n func,\n args\n })\n }\n\n set fillStyle (e) { this.enqueueActions(() => { this.ctx.fillStyle = e }) }\n get fillStyle () { return this.ctx.fillStyle as string }\n set font (e) { this.ctx.font = e }\n get font () { return this.ctx.font }\n set globalAlpha (e) { this.enqueueActions(() => { this.ctx.globalAlpha = e }) }\n get globalAlpha () { return this.ctx.globalAlpha }\n set globalCompositeOperation (e) { this.enqueueActions(() => { this.ctx.globalCompositeOperation = e }) }\n get globalCompositeOperation () { return this.ctx.globalCompositeOperation }\n set lineCap (e) { this.enqueueActions(() => { this.ctx.lineCap = e }) }\n get lineCap () { return this.ctx.lineCap }\n set lineDashOffset (e) { this.enqueueActions(() => { this.ctx.lineDashOffset = e }) }\n get lineDashOffset () { return this.ctx.lineDashOffset }\n set lineJoin (e) { this.enqueueActions(() => { this.ctx.lineJoin = e }) }\n get lineJoin () { return this.ctx.lineJoin }\n set lineWidth (e) { this.enqueueActions(() => { this.ctx.lineWidth = e }) }\n get lineWidth () { return this.ctx.lineWidth }\n set miterLimit (e) { this.enqueueActions(() => { this.ctx.miterLimit = e }) }\n get miterLimit () { return this.ctx.miterLimit }\n set shadowBlur (e) { this.enqueueActions(() => { this.ctx.shadowBlur = e }) }\n get shadowBlur () { return this.ctx.shadowBlur }\n set shadowColor (e) { this.enqueueActions(() => { this.ctx.shadowColor = e }) }\n get shadowColor () { return this.ctx.shadowColor }\n set shadowOffsetX (e) { this.enqueueActions(() => { this.ctx.shadowOffsetX = e }) }\n get shadowOffsetX () { return this.ctx.shadowOffsetX }\n set shadowOffsetY (e) { this.enqueueActions(() => { this.ctx.shadowOffsetY = e }) }\n get shadowOffsetY () { return this.ctx.shadowOffsetY }\n set strokeStyle (e) { this.enqueueActions(() => { this.ctx.strokeStyle = e }) }\n get strokeStyle () { return this.ctx.strokeStyle as string }\n /** 小程序文档中不包括 ↓↓↓ */\n set textAlign (e) { this.ctx.textAlign = e }\n get textAlign () { return this.ctx.textAlign }\n set textBaseline (e) { this.ctx.textBaseline = e }\n get textBaseline () { return this.ctx.textBaseline }\n set direction (e) { this.ctx.direction = e }\n get direction () { return this.ctx.direction }\n set imageSmoothingEnabled (e) { this.enqueueActions(() => { this.ctx.imageSmoothingEnabled = e }) }\n get imageSmoothingEnabled () { return this.ctx.imageSmoothingEnabled }\n set imageSmoothingQuality (e) { this.enqueueActions(() => { this.ctx.imageSmoothingQuality = e }) }\n get imageSmoothingQuality () { return this.ctx.imageSmoothingQuality }\n set filter (e) { this.enqueueActions(() => { this.ctx.filter = e }) }\n get filter () { return this.ctx.filter }\n /** 小程序文档中不包括 ↑↑↑ */\n\n arc (...args) { return this.enqueueActions(this.ctx.arc, ...args) }\n arcTo (...args) { return this.enqueueActions(this.ctx.arcTo, ...args) }\n beginPath (...args) { return this.enqueueActions(this.ctx.beginPath, ...args) }\n bezierCurveTo (...args) { return this.enqueueActions(this.ctx.bezierCurveTo, ...args) }\n clearRect (...args) { return this.enqueueActions(this.ctx.clearRect, ...args) }\n clip (...args) { return this.enqueueActions(this.ctx.clip, ...args) }\n closePath (...args) { return this.enqueueActions(this.ctx.closePath, ...args) }\n\n createPattern (imageResource: string, repetition: keyof Taro.CanvasContext.Repetition): CanvasPattern | null | Promise<CanvasPattern | null> {\n // 需要转换为 Image\n if (typeof imageResource === 'string') {\n const img = new Image()\n img.src = imageResource\n return new Promise<CanvasPattern | null>((resolve, reject) => {\n img.onload = () => {\n resolve(this.ctx.createPattern(img, repetition))\n }\n img.onerror = reject\n })\n }\n\n return this.ctx.createPattern(imageResource, repetition)\n }\n\n /**\n * 将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中。\n * @todo 每次 draw 都会读取 width 和 height\n */\n async draw (reserve?: boolean, callback?: (...args: any[]) => any): Promise<void> {\n try {\n if (!reserve) {\n this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height)\n }\n\n // 部分 action 是异步的\n for (const { func, args } of this.actions) {\n await func.apply(this.ctx, args)\n }\n\n this.emptyActions()\n callback && callback()\n } catch (e) {\n /* eslint-disable no-throw-literal */\n throw {\n errMsg: e.message\n }\n }\n }\n\n drawImage (imageResource: string, ...extra: any[]): void {\n type TExtra = [number, number]\n this.enqueueActions(() => {\n // 需要转换为 Image\n if (typeof imageResource === 'string') {\n const img = new Image()\n img.src = imageResource\n return new Promise<void>((resolve, reject) => {\n img.onload = () => {\n this.ctx.drawImage(img, ...extra as TExtra)\n resolve()\n }\n img.onerror = reject\n })\n }\n\n this.ctx.drawImage(imageResource, ...extra as TExtra)\n })\n }\n\n fill (...args) { return this.enqueueActions(this.ctx.fill, ...args) }\n fillRect (...args) { return this.enqueueActions(this.ctx.fillRect, ...args) }\n fillText (...args) { return this.enqueueActions(this.ctx.fillText, ...args) }\n lineTo (...args) { return this.enqueueActions(this.ctx.lineTo, ...args) }\n moveTo (...args) { return this.enqueueActions(this.ctx.moveTo, ...args) }\n quadraticCurveTo (...args) { return this.enqueueActions(this.ctx.quadraticCurveTo, ...args) }\n rect (...args) { return this.enqueueActions(this.ctx.rect, ...args) }\n // @ts-ignore\n reset () { return this.ctx.reset() }\n restore () { return this.ctx.restore() }\n rotate (...args) { return this.enqueueActions(this.ctx.rotate, ...args) }\n save () { return this.ctx.save() }\n scale (...args) { return this.enqueueActions(this.ctx.scale, ...args) }\n\n setFillStyle (color: string | CanvasGradient): void {\n this.enqueueActions(() => { this.ctx.fillStyle = color })\n }\n\n setFontSize (fontSize: number): void {\n const arr = this.font.split(/\\s/)\n const idx = arr.findIndex(e => /^\\d+px$/.test(e))\n if (idx !== -1) {\n arr[idx] = `${fontSize}px`\n this.font = arr.join(' ')\n }\n }\n\n setGlobalAlpha (alpha: number): void {\n this.globalAlpha = alpha\n }\n\n setLineCap (lineCap: keyof Taro.CanvasContext.LineCap): void {\n this.lineCap = lineCap\n }\n\n setLineDash (pattern: number[], offset: number): void {\n this.enqueueActions(() => {\n this.ctx.setLineDash(pattern)\n this.ctx.lineDashOffset = offset\n })\n }\n\n setLineJoin (lineJoin: keyof Taro.CanvasContext.LineJoin): void {\n this.lineJoin = lineJoin\n }\n\n setLineWidth (lineWidth: number): void {\n this.lineWidth = lineWidth\n }\n\n setMiterLimit (miterLimit: number): void {\n this.miterLimit = miterLimit\n }\n\n setShadow (offsetX: number, offsetY: number, blur: number, color: string): void {\n this.enqueueActions(() => {\n this.ctx.shadowOffsetX = offsetX\n this.ctx.shadowOffsetY = offsetY\n this.ctx.shadowColor = color\n this.ctx.shadowBlur = blur\n })\n }\n\n setStrokeStyle (color: string | CanvasGradient): void {\n this.enqueueActions(() => { this.ctx.strokeStyle = color })\n }\n\n setTextAlign (align: keyof Taro.CanvasContext.Align): void {\n this.textAlign = align\n }\n\n setTextBaseline (textBaseline: keyof Taro.CanvasContext.TextBaseline): void {\n this.textBaseline = TextBaseLineMap[textBaseline] || 'alphabetic'\n }\n\n setTransform (...args) { return this.enqueueActions(this.ctx.setTransform, ...args) }\n stroke (...args) { return this.enqueueActions(this.ctx.stroke, ...args) }\n strokeRect (...args) { return this.enqueueActions(this.ctx.strokeRect, ...args) }\n strokeText (...args) { return this.enqueueActions(this.ctx.strokeText, ...args) }\n transform (...args) { return this.enqueueActions(this.ctx.transform, ...args) }\n translate (...args) { return this.enqueueActions(this.ctx.translate, ...args) }\n\n measureText (text: string): TextMetrics {\n return this.ctx.measureText(text)\n }\n\n createCircularGradient (x: number, y: number, r: number): CanvasGradient {\n const radialGradient = this.ctx.createRadialGradient(x, y, 0, x, y, r)\n\n return radialGradient\n }\n\n createLinearGradient (x0: number, y0: number, x1: number, y1: number): CanvasGradient {\n return this.ctx.createLinearGradient(x0, y0, x1, y1)\n }\n}\n"],"names":[],"mappings":"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"}
|
package/dist/api/index.js
CHANGED
|
@@ -99,11 +99,13 @@ export { getChannelsLiveInfo, getChannelsLiveNoticeInfo, getChannelsShareKey, op
|
|
|
99
99
|
export { openCustomerServiceChat } from './open-api/customer-service.js';
|
|
100
100
|
export { getDeviceVoIPList, requestDeviceVoIP } from './open-api/device-voip.js';
|
|
101
101
|
export { checkIsSupportFacialRecognition, faceVerifyForPay, startFacialRecognitionVerify, startFacialRecognitionVerifyAndUploadVideo } from './open-api/facial.js';
|
|
102
|
-
export { addFileToFavorites, addVideoToFavorites
|
|
102
|
+
export { addFileToFavorites, addVideoToFavorites } from './open-api/favorites.js';
|
|
103
103
|
export { getGroupEnterInfo } from './open-api/group.js';
|
|
104
104
|
export { chooseInvoice, chooseInvoiceTitle } from './open-api/invoice.js';
|
|
105
105
|
export { chooseLicensePlate } from './open-api/license-plate.js';
|
|
106
106
|
export { checkSession, login, pluginLogin } from './open-api/login.js';
|
|
107
|
+
export { checkIsAddedToMyMiniProgram } from './open-api/my-miniprogram.js';
|
|
108
|
+
export { getPrivacySetting, onNeedPrivacyAuthorization, openPrivacyContract, requirePrivacyAuthorize } from './open-api/privacy.js';
|
|
107
109
|
export { showRedPackage } from './open-api/red-package.js';
|
|
108
110
|
export { getSetting, openSetting } from './open-api/settings.js';
|
|
109
111
|
export { checkIsSoterEnrolledInDevice, checkIsSupportSoterAuthentication, startSoterAuthentication } from './open-api/soter.js';
|
package/dist/api/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -37,25 +37,25 @@ declare class InnerAudioContext implements Taro.InnerAudioContext {
|
|
|
37
37
|
* @TODO destroy得并不干净
|
|
38
38
|
*/
|
|
39
39
|
destroy: () => void;
|
|
40
|
-
onCanplay: (callback?:
|
|
41
|
-
onPlay: (callback?:
|
|
42
|
-
onPause: (callback?:
|
|
43
|
-
onStop: (callback?:
|
|
44
|
-
onEnded: (callback?:
|
|
45
|
-
onTimeUpdate: (callback?:
|
|
46
|
-
onError: (callback
|
|
47
|
-
onWaiting: (callback?:
|
|
48
|
-
onSeeking: (callback?:
|
|
49
|
-
onSeeked: (callback?:
|
|
50
|
-
offCanplay: (callback?:
|
|
51
|
-
offPlay: (callback?:
|
|
52
|
-
offPause: (callback?:
|
|
53
|
-
offStop: (callback?:
|
|
54
|
-
offEnded: (callback?:
|
|
55
|
-
offTimeUpdate: (callback?:
|
|
56
|
-
offError: (callback?:
|
|
57
|
-
offWaiting: (callback?:
|
|
58
|
-
offSeeking: (callback?:
|
|
59
|
-
offSeeked: (callback?:
|
|
40
|
+
onCanplay: (callback?: Taro.InnerAudioContext.OnCanplayCallback) => void | undefined;
|
|
41
|
+
onPlay: (callback?: Taro.InnerAudioContext.OnPlayCallback) => void | undefined;
|
|
42
|
+
onPause: (callback?: Taro.InnerAudioContext.OnPauseCallback) => void | undefined;
|
|
43
|
+
onStop: (callback?: Taro.InnerAudioContext.OnStopCallback) => void;
|
|
44
|
+
onEnded: (callback?: Taro.InnerAudioContext.OnEndedCallback) => void | undefined;
|
|
45
|
+
onTimeUpdate: (callback?: Taro.InnerAudioContext.OnTimeUpdateCallback) => void | undefined;
|
|
46
|
+
onError: (callback: Taro.InnerAudioContext.OnErrorCallback) => void;
|
|
47
|
+
onWaiting: (callback?: Taro.InnerAudioContext.OnWaitingCallback) => void | undefined;
|
|
48
|
+
onSeeking: (callback?: Taro.InnerAudioContext.OnSeekingCallback) => void | undefined;
|
|
49
|
+
onSeeked: (callback?: Taro.InnerAudioContext.OnSeekedCallback) => void | undefined;
|
|
50
|
+
offCanplay: (callback?: Taro.InnerAudioContext.OnCanplayCallback) => void | undefined;
|
|
51
|
+
offPlay: (callback?: Taro.InnerAudioContext.OnPlayCallback) => void | undefined;
|
|
52
|
+
offPause: (callback?: Taro.InnerAudioContext.OnPauseCallback) => void | undefined;
|
|
53
|
+
offStop: (callback?: Taro.InnerAudioContext.OnStopCallback) => void;
|
|
54
|
+
offEnded: (callback?: Taro.InnerAudioContext.OnEndedCallback) => void | undefined;
|
|
55
|
+
offTimeUpdate: (callback?: Taro.InnerAudioContext.OnTimeUpdateCallback) => void | undefined;
|
|
56
|
+
offError: (callback?: Taro.InnerAudioContext.OnErrorCallback) => void;
|
|
57
|
+
offWaiting: (callback?: Taro.InnerAudioContext.OnWaitingCallback) => void | undefined;
|
|
58
|
+
offSeeking: (callback?: Taro.InnerAudioContext.OnSeekingCallback) => void | undefined;
|
|
59
|
+
offSeeked: (callback?: Taro.InnerAudioContext.OnSeekedCallback) => void | undefined;
|
|
60
60
|
}
|
|
61
61
|
export { InnerAudioContext };
|
|
@@ -61,7 +61,17 @@ class InnerAudioContext {
|
|
|
61
61
|
}
|
|
62
62
|
set autoplay(e) { this.setProperty('autoplay', e); }
|
|
63
63
|
get autoplay() { var _a; return ((_a = this.Instance) === null || _a === void 0 ? void 0 : _a.autoplay) || false; }
|
|
64
|
-
get buffered() {
|
|
64
|
+
get buffered() {
|
|
65
|
+
const { currentTime = 0, buffered: timeRange } = this.Instance || {};
|
|
66
|
+
if (timeRange) {
|
|
67
|
+
for (let i = 0; i < timeRange.length; i++) {
|
|
68
|
+
if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {
|
|
69
|
+
return timeRange.end(i);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return 0;
|
|
74
|
+
}
|
|
65
75
|
get currentTime() { var _a; return ((_a = this.Instance) === null || _a === void 0 ? void 0 : _a.currentTime) || 0; }
|
|
66
76
|
set currentTime(e) { this.seek(e); }
|
|
67
77
|
get duration() { var _a; return ((_a = this.Instance) === null || _a === void 0 ? void 0 : _a.duration) || 0; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InnerAudioContext.js","sources":["../../../../src/api/media/audio/InnerAudioContext.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class InnerAudioContext implements Taro.InnerAudioContext {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n __isFirstPlay = true\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n this.Instance.onerror = this.errorStack.trigger\n\n Taro.eventCenter.on('__taroRouterChange', () => { this.stop() })\n this.onPlay(() => {\n if (this.__isFirstPlay) {\n this.__isFirstPlay = false\n this.seek(this.startTime)\n }\n })\n }\n\n set autoplay (e) { this.setProperty('autoplay', e) }\n get autoplay () { return this.Instance?.autoplay || false }\n get buffered () { return this.Instance?.buffered.length || 0 }\n get currentTime () { return this.Instance?.currentTime || 0 }\n set currentTime (e) { this.seek(e) }\n get duration () { return this.Instance?.duration || 0 }\n set loop (e) { this.setProperty('loop', e) }\n get loop () { return this.Instance?.loop || false }\n get paused () { return this.Instance?.paused ?? true }\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set volume (e) { this.setProperty('volume', e) }\n get volume () { return this.Instance?.volume || 0 }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n set obeyMuteSwitch (_e) { permanentlyNotSupport('InnerAudioContext.obeyMuteSwitch')() }\n get obeyMuteSwitch () { return true }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n /**\n * @TODO destroy得并不干净\n */\n destroy = () => {\n this.stop()\n if (this.Instance) {\n this.Instance = undefined\n }\n }\n\n onCanplay = (callback = () => {}) => this.Instance?.addEventListener('canplay', callback)\n onPlay = (callback = () => {}) => this.Instance?.addEventListener('play', callback)\n onPause = (callback = () => {}) => this.Instance?.addEventListener('pause', callback)\n onStop = (callback = () => {}) => this.stopStack.add(callback)\n onEnded = (callback = () => {}) => this.Instance?.addEventListener('ended', callback)\n onTimeUpdate = (callback = () => {}) => this.Instance?.addEventListener('timeupdate', callback)\n onError = (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => this.errorStack.add(callback)\n onWaiting = (callback = () => {}) => this.Instance?.addEventListener('waiting', callback)\n onSeeking = (callback = () => {}) => this.Instance?.addEventListener('seeking', callback)\n onSeeked = (callback = () => {}) => this.Instance?.addEventListener('seeked', callback)\n offCanplay = (callback = () => {}) => this.Instance?.removeEventListener('canplay', callback)\n offPlay = (callback = () => {}) => this.Instance?.removeEventListener('play', callback)\n offPause = (callback = () => {}) => this.Instance?.removeEventListener('pause', callback)\n offStop = (callback = () => {}) => this.stopStack.remove(callback)\n offEnded = (callback = () => {}) => this.Instance?.removeEventListener('ended', callback)\n offTimeUpdate = (callback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback)\n offError = (callback = () => {}) => this.errorStack.remove(callback)\n offWaiting = (callback = () => {}) => this.Instance?.removeEventListener('waiting', callback)\n offSeeking = (callback = () => {}) => this.Instance?.removeEventListener('seeking', callback)\n offSeeked = (callback = () => {}) => this.Instance?.removeEventListener('seeked', callback)\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InnerAudioContext.js","sources":["../../../../src/api/media/audio/InnerAudioContext.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class InnerAudioContext implements Taro.InnerAudioContext {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n __isFirstPlay = true\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n this.Instance.onerror = this.errorStack.trigger\n\n Taro.eventCenter.on('__taroRouterChange', () => { this.stop() })\n this.onPlay(() => {\n if (this.__isFirstPlay) {\n this.__isFirstPlay = false\n this.seek(this.startTime)\n }\n })\n }\n\n set autoplay (e) { this.setProperty('autoplay', e) }\n get autoplay () { return this.Instance?.autoplay || false }\n get buffered () {\n const { currentTime = 0, buffered: timeRange } = this.Instance || {}\n if (timeRange) {\n for (let i = 0; i < timeRange.length; i++) {\n if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {\n return timeRange.end(i)\n }\n }\n }\n return 0\n }\n\n get currentTime () { return this.Instance?.currentTime || 0 }\n set currentTime (e) { this.seek(e) }\n get duration () { return this.Instance?.duration || 0 }\n set loop (e) { this.setProperty('loop', e) }\n get loop () { return this.Instance?.loop || false }\n get paused () { return this.Instance?.paused ?? true }\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set volume (e) { this.setProperty('volume', e) }\n get volume () { return this.Instance?.volume || 0 }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n set obeyMuteSwitch (_e) { permanentlyNotSupport('InnerAudioContext.obeyMuteSwitch')() }\n get obeyMuteSwitch () { return true }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n /**\n * @TODO destroy得并不干净\n */\n destroy = () => {\n this.stop()\n if (this.Instance) {\n this.Instance = undefined\n }\n }\n\n onCanplay = (callback: Taro.InnerAudioContext.OnCanplayCallback = () => {}) => this.Instance?.addEventListener('canplay', callback as any)\n onPlay = (callback: Taro.InnerAudioContext.OnPlayCallback = () => {}) => this.Instance?.addEventListener('play', callback as any)\n onPause = (callback: Taro.InnerAudioContext.OnPauseCallback = () => {}) => this.Instance?.addEventListener('pause', callback as any)\n onStop = (callback: Taro.InnerAudioContext.OnStopCallback = () => {}) => this.stopStack.add(callback)\n onEnded = (callback: Taro.InnerAudioContext.OnEndedCallback = () => {}) => this.Instance?.addEventListener('ended', callback as any)\n onTimeUpdate = (callback: Taro.InnerAudioContext.OnTimeUpdateCallback = () => {}) => this.Instance?.addEventListener('timeupdate', callback as any)\n onError = (callback: Taro.InnerAudioContext.OnErrorCallback) => this.errorStack.add(callback)\n onWaiting = (callback: Taro.InnerAudioContext.OnWaitingCallback = () => {}) => this.Instance?.addEventListener('waiting', callback as any)\n onSeeking = (callback: Taro.InnerAudioContext.OnSeekingCallback = () => {}) => this.Instance?.addEventListener('seeking', callback as any)\n onSeeked = (callback: Taro.InnerAudioContext.OnSeekedCallback = () => {}) => this.Instance?.addEventListener('seeked', callback as any)\n offCanplay = (callback: Taro.InnerAudioContext.OnCanplayCallback = () => {}) => this.Instance?.removeEventListener('canplay', callback as any)\n offPlay = (callback: Taro.InnerAudioContext.OnPlayCallback = () => {}) => this.Instance?.removeEventListener('play', callback as any)\n offPause = (callback: Taro.InnerAudioContext.OnPauseCallback = () => {}) => this.Instance?.removeEventListener('pause', callback as any)\n offStop = (callback: Taro.InnerAudioContext.OnStopCallback = () => {}) => this.stopStack.remove(callback)\n offEnded = (callback: Taro.InnerAudioContext.OnEndedCallback = () => {}) => this.Instance?.removeEventListener('ended', callback as any)\n offTimeUpdate = (callback: Taro.InnerAudioContext.OnTimeUpdateCallback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback as any)\n offError = (callback: Taro.InnerAudioContext.OnErrorCallback = () => {}) => this.errorStack.remove(callback)\n offWaiting = (callback: Taro.InnerAudioContext.OnWaitingCallback = () => {}) => this.Instance?.removeEventListener('waiting', callback as any)\n offSeeking = (callback: Taro.InnerAudioContext.OnSeekingCallback = () => {}) => this.Instance?.removeEventListener('seeking', callback as any)\n offSeeked = (callback: Taro.InnerAudioContext.OnSeekedCallback = () => {}) => this.Instance?.removeEventListener('seeked', callback as any)\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -72,7 +72,17 @@ class BackgroundAudioManager {
|
|
|
72
72
|
get duration() { var _a; return ((_a = this.Instance) === null || _a === void 0 ? void 0 : _a.duration) || 0; }
|
|
73
73
|
get currentTime() { var _a; return ((_a = this.Instance) === null || _a === void 0 ? void 0 : _a.currentTime) || 0; }
|
|
74
74
|
get paused() { var _a; return ((_a = this.Instance) === null || _a === void 0 ? void 0 : _a.paused) || false; }
|
|
75
|
-
get buffered() {
|
|
75
|
+
get buffered() {
|
|
76
|
+
const { currentTime = 0, buffered: timeRange } = this.Instance || {};
|
|
77
|
+
if (timeRange) {
|
|
78
|
+
for (let i = 0; i < timeRange.length; i++) {
|
|
79
|
+
if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {
|
|
80
|
+
return timeRange.end(i);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return 0;
|
|
85
|
+
}
|
|
76
86
|
set referrerPolicy(e) { var _a; (_a = this.Instance) === null || _a === void 0 ? void 0 : _a.setAttribute('referrerpolicy', e); }
|
|
77
87
|
get referrerPolicy() { var _a; return ((_a = this.Instance) === null || _a === void 0 ? void 0 : _a.getAttribute('referrerpolicy')) || 'origin'; }
|
|
78
88
|
setProperty(key, value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackgroundAudioManager.js","sources":["../../../../src/api/media/background-audio/BackgroundAudioManager.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class BackgroundAudioManager implements Taro.BackgroundAudioManager {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n this.Instance.onerror = this.errorStack.trigger\n this.Instance.autoplay = true\n this.onPlay(() => {\n if (this.currentTime !== this.startTime) {\n this.seek(this.startTime)\n }\n })\n }\n\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set title (e) { this.dataset('title', e) }\n get title () { return this.Instance?.dataset.title || '' }\n set epname (e) { this.dataset('epname', e) }\n get epname () { return this.Instance?.dataset.epname || '' }\n set singer (e) { this.dataset('singer', e) }\n get singer () { return this.Instance?.dataset.singer || '' }\n set coverImgUrl (e) { this.dataset('coverImgUrl', e) }\n get coverImgUrl () { return this.Instance?.dataset.coverImgUrl || '' }\n set webUrl (e) { this.dataset('webUrl', e) }\n get webUrl () { return this.Instance?.dataset.webUrl || '' }\n set protocol (e) { this.dataset('protocol', e) }\n get protocol () { return this.Instance?.dataset.protocol || '' }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n get duration () { return this.Instance?.duration || 0 }\n get currentTime () { return this.Instance?.currentTime || 0 }\n get paused () { return this.Instance?.paused || false }\n get buffered () { return this.Instance?.buffered.length || 0 }\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n private dataset (key: string, value: string) {\n if (this.Instance) {\n this.Instance.dataset[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n onCanplay = (callback = () => {}) => this.Instance?.addEventListener('canplay', callback)\n onWaiting = (callback = () => {}) => this.Instance?.addEventListener('waiting', callback)\n onError = (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => this.errorStack.add(callback)\n onPlay = (callback = () => {}) => this.Instance?.addEventListener('play', callback)\n onPause = (callback = () => {}) => this.Instance?.addEventListener('pause', callback)\n onSeeking = (callback = () => {}) => this.Instance?.addEventListener('seeking', callback)\n onSeeked = (callback = () => {}) => this.Instance?.addEventListener('seeked', callback)\n\n onEnded = (callback = () => {}) => this.Instance?.addEventListener('ended', callback)\n onStop = (callback = () => {}) => this.stopStack.add(callback)\n onTimeUpdate = (callback = () => {}) => this.Instance?.addEventListener('timeupdate', callback)\n onPrev = permanentlyNotSupport('BackgroundAudioManager.onPrev')\n onNext = permanentlyNotSupport('BackgroundAudioManager.onNext')\n\n offCanplay = (callback = () => {}) => this.Instance?.removeEventListener('canplay', callback)\n offWaiting = (callback = () => {}) => this.Instance?.removeEventListener('waiting', callback)\n offError = (callback = () => {}) => this.errorStack.remove(callback)\n offPlay = (callback = () => {}) => this.Instance?.removeEventListener('play', callback)\n offPause = (callback = () => {}) => this.Instance?.removeEventListener('pause', callback)\n offSeeking = (callback = () => {}) => this.Instance?.removeEventListener('seeking', callback)\n offSeeked = (callback = () => {}) => this.Instance?.removeEventListener('seeked', callback)\n\n offEnded = (callback = () => {}) => this.Instance?.removeEventListener('ended', callback)\n offStop = (callback = () => {}) => this.stopStack.remove(callback)\n offTimeUpdate = (callback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback)\n offPrev = permanentlyNotSupport('BackgroundAudioManager.offPrev')\n offNext = permanentlyNotSupport('BackgroundAudioManager.offNext')\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BackgroundAudioManager.js","sources":["../../../../src/api/media/background-audio/BackgroundAudioManager.ts"],"sourcesContent":["import Taro from '@tarojs/api'\n\nimport { permanentlyNotSupport } from '../../../utils'\nimport { CallbackManager } from '../../../utils/handler'\n\nexport class BackgroundAudioManager implements Taro.BackgroundAudioManager {\n Instance?: HTMLAudioElement\n errorStack: CallbackManager\n stopStack: CallbackManager\n __startTime = 0\n\n constructor () {\n this.Instance = new Audio()\n this.errorStack = new CallbackManager()\n this.stopStack = new CallbackManager()\n this.Instance.onerror = this.errorStack.trigger\n this.Instance.autoplay = true\n this.onPlay(() => {\n if (this.currentTime !== this.startTime) {\n this.seek(this.startTime)\n }\n })\n }\n\n set src (e) { this.setProperty('src', e) }\n get src () { return this.Instance?.src || '' }\n set startTime (e) { this.__startTime = e }\n get startTime () { return this.__startTime || 0 }\n set title (e) { this.dataset('title', e) }\n get title () { return this.Instance?.dataset.title || '' }\n set epname (e) { this.dataset('epname', e) }\n get epname () { return this.Instance?.dataset.epname || '' }\n set singer (e) { this.dataset('singer', e) }\n get singer () { return this.Instance?.dataset.singer || '' }\n set coverImgUrl (e) { this.dataset('coverImgUrl', e) }\n get coverImgUrl () { return this.Instance?.dataset.coverImgUrl || '' }\n set webUrl (e) { this.dataset('webUrl', e) }\n get webUrl () { return this.Instance?.dataset.webUrl || '' }\n set protocol (e) { this.dataset('protocol', e) }\n get protocol () { return this.Instance?.dataset.protocol || '' }\n set playbackRate (e) { this.setProperty('playbackRate', e) }\n get playbackRate () { return this.Instance?.playbackRate || 0 }\n get duration () { return this.Instance?.duration || 0 }\n get currentTime () { return this.Instance?.currentTime || 0 }\n get paused () { return this.Instance?.paused || false }\n get buffered () {\n const { currentTime = 0, buffered: timeRange } = this.Instance || {}\n if (timeRange) {\n for (let i = 0; i < timeRange.length; i++) {\n if (timeRange.start(i) <= currentTime && timeRange.end(i) >= currentTime) {\n return timeRange.end(i)\n }\n }\n }\n return 0\n }\n\n set referrerPolicy (e) { this.Instance?.setAttribute('referrerpolicy', e) }\n get referrerPolicy () { return this.Instance?.getAttribute('referrerpolicy') || 'origin' }\n\n private setProperty (key: string, value: unknown) {\n if (this.Instance) {\n this.Instance[key] = value\n }\n }\n\n private dataset (key: string, value: string) {\n if (this.Instance) {\n this.Instance.dataset[key] = value\n }\n }\n\n play = () => this.Instance?.play()\n\n pause = () => this.Instance?.pause()\n\n seek = (position: number) => {\n if (this.Instance) {\n this.Instance.currentTime = position\n }\n }\n\n stop = () => {\n this.pause()\n this.seek(0)\n this.stopStack.trigger()\n }\n\n onCanplay = (callback = () => {}) => this.Instance?.addEventListener('canplay', callback)\n onWaiting = (callback = () => {}) => this.Instance?.addEventListener('waiting', callback)\n onError = (callback?: ((res: Taro.InnerAudioContext.onErrorDetail) => void)) => this.errorStack.add(callback)\n onPlay = (callback = () => {}) => this.Instance?.addEventListener('play', callback)\n onPause = (callback = () => {}) => this.Instance?.addEventListener('pause', callback)\n onSeeking = (callback = () => {}) => this.Instance?.addEventListener('seeking', callback)\n onSeeked = (callback = () => {}) => this.Instance?.addEventListener('seeked', callback)\n\n onEnded = (callback = () => {}) => this.Instance?.addEventListener('ended', callback)\n onStop = (callback = () => {}) => this.stopStack.add(callback)\n onTimeUpdate = (callback = () => {}) => this.Instance?.addEventListener('timeupdate', callback)\n onPrev = permanentlyNotSupport('BackgroundAudioManager.onPrev')\n onNext = permanentlyNotSupport('BackgroundAudioManager.onNext')\n\n offCanplay = (callback = () => {}) => this.Instance?.removeEventListener('canplay', callback)\n offWaiting = (callback = () => {}) => this.Instance?.removeEventListener('waiting', callback)\n offError = (callback = () => {}) => this.errorStack.remove(callback)\n offPlay = (callback = () => {}) => this.Instance?.removeEventListener('play', callback)\n offPause = (callback = () => {}) => this.Instance?.removeEventListener('pause', callback)\n offSeeking = (callback = () => {}) => this.Instance?.removeEventListener('seeking', callback)\n offSeeked = (callback = () => {}) => this.Instance?.removeEventListener('seeked', callback)\n\n offEnded = (callback = () => {}) => this.Instance?.removeEventListener('ended', callback)\n offStop = (callback = () => {}) => this.stopStack.remove(callback)\n offTimeUpdate = (callback = () => {}) => this.Instance?.removeEventListener('timeupdate', callback)\n offPrev = permanentlyNotSupport('BackgroundAudioManager.offPrev')\n offNext = permanentlyNotSupport('BackgroundAudioManager.offNext')\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -121,15 +121,17 @@ const downloadFile = ({ url, header, withCredentials, timeout, success, fail, co
|
|
|
121
121
|
}
|
|
122
122
|
});
|
|
123
123
|
});
|
|
124
|
-
result.headersReceive = task.onHeadersReceived;
|
|
125
|
-
result.progress = task.onProgressUpdate;
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
124
|
+
result.headersReceive = task.onHeadersReceived.bind(task);
|
|
125
|
+
result.progress = task.onProgressUpdate.bind(task);
|
|
126
|
+
const properties = {};
|
|
127
|
+
Object.keys(task).forEach(key => {
|
|
128
|
+
properties[key] = {
|
|
129
|
+
get() {
|
|
130
|
+
return typeof task[key] === 'function' ? task[key].bind(task) : task[key];
|
|
131
|
+
}
|
|
132
|
+
};
|
|
132
133
|
});
|
|
134
|
+
return Object.defineProperties(result, properties);
|
|
133
135
|
};
|
|
134
136
|
|
|
135
137
|
export { downloadFile };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download.js","sources":["../../../src/api/network/download.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { CallbackManager } from '../../utils/handler'\r\nimport { NETWORK_TIMEOUT, setHeader, XHR_STATS } from './utils'\r\n\r\nconst createDownloadTask = ({ url, header, withCredentials = true, timeout, success, error }): Taro.DownloadTask => {\r\n let timeoutInter: ReturnType<typeof setTimeout>\r\n const apiName = 'downloadFile'\r\n const xhr = new XMLHttpRequest()\r\n const callbackManager = {\r\n headersReceived: new CallbackManager(),\r\n progressUpdate: new CallbackManager()\r\n }\r\n\r\n xhr.open('GET', url, true)\r\n xhr.withCredentials = !!withCredentials\r\n xhr.responseType = 'blob'\r\n setHeader(xhr, header)\r\n\r\n xhr.onprogress = e => {\r\n const { loaded, total } = e\r\n callbackManager.progressUpdate.trigger({\r\n progress: Math.round(loaded / total * 100),\r\n totalBytesWritten: loaded,\r\n totalBytesExpectedToWrite: total\r\n })\r\n }\r\n\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState !== XHR_STATS.HEADERS_RECEIVED) return\r\n callbackManager.headersReceived.trigger({\r\n header: xhr.getAllResponseHeaders()\r\n })\r\n }\r\n\r\n xhr.onload = () => {\r\n const response = xhr.response\r\n const status = xhr.status\r\n success({\r\n errMsg: `${apiName}:ok`,\r\n statusCode: status,\r\n tempFilePath: window.URL.createObjectURL(response)\r\n })\r\n }\r\n\r\n xhr.onabort = () => {\r\n clearTimeout(timeoutInter)\r\n error({\r\n errMsg: `${apiName}:fail abort`\r\n })\r\n }\r\n\r\n xhr.onerror = (e: ProgressEvent<EventTarget> & { message?: string }) => {\r\n error({\r\n errMsg: `${apiName}:fail ${e.message}`\r\n })\r\n }\r\n\r\n /**\r\n * 中断任务\r\n */\r\n const abort = () => {\r\n xhr.abort()\r\n }\r\n\r\n const send = () => {\r\n xhr.send()\r\n timeoutInter = setTimeout(() => {\r\n xhr.onabort = null\r\n xhr.onload = null\r\n xhr.onprogress = null\r\n xhr.onreadystatechange = null\r\n xhr.onerror = null\r\n abort()\r\n error({\r\n errMsg: `${apiName}:fail timeout`\r\n })\r\n }, timeout || NETWORK_TIMEOUT)\r\n }\r\n\r\n send()\r\n\r\n /**\r\n * 监听 HTTP Response Header 事件。会比请求完成事件更早\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onHeadersReceived = callbackManager.headersReceived.add\r\n /**\r\n * 取消监听 HTTP Response Header 事件\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offHeadersReceived = callbackManager.headersReceived.remove\r\n\r\n /**\r\n * 监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onProgressUpdate = callbackManager.progressUpdate.add\r\n /**\r\n * 取消监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offProgressUpdate = callbackManager.progressUpdate.remove\r\n\r\n return {\r\n abort,\r\n onHeadersReceived,\r\n offHeadersReceived,\r\n onProgressUpdate,\r\n offProgressUpdate\r\n }\r\n}\r\n\r\n/**\r\n * 下载文件资源到本地。客户端直接发起一个 HTTPS GET 请求,返回文件的本地临时路径。使用前请注意阅读相关说明。\r\n * 注意:请在服务端响应的 header 中指定合理的 Content-Type 字段,以保证客户端正确处理文件类型。\r\n */\r\nexport const downloadFile: typeof Taro.downloadFile = ({ url, header, withCredentials, timeout, success, fail, complete }) => {\r\n let task!: Taro.DownloadTask\r\n const result: ReturnType<typeof Taro.downloadFile> = new Promise((resolve, reject) => {\r\n task = createDownloadTask({\r\n url,\r\n header,\r\n withCredentials,\r\n timeout,\r\n success: res => {\r\n success && success(res)\r\n complete && complete(res)\r\n resolve(res)\r\n },\r\n error: res => {\r\n fail && fail(res)\r\n complete && complete(res)\r\n reject(res)\r\n }\r\n })\r\n }) as any\r\n\r\n result.headersReceive = task.onHeadersReceived\r\n result.progress = task.onProgressUpdate\r\n\r\n
|
|
1
|
+
{"version":3,"file":"download.js","sources":["../../../src/api/network/download.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { CallbackManager } from '../../utils/handler'\r\nimport { NETWORK_TIMEOUT, setHeader, XHR_STATS } from './utils'\r\n\r\nconst createDownloadTask = ({ url, header, withCredentials = true, timeout, success, error }): Taro.DownloadTask => {\r\n let timeoutInter: ReturnType<typeof setTimeout>\r\n const apiName = 'downloadFile'\r\n const xhr = new XMLHttpRequest()\r\n const callbackManager = {\r\n headersReceived: new CallbackManager(),\r\n progressUpdate: new CallbackManager()\r\n }\r\n\r\n xhr.open('GET', url, true)\r\n xhr.withCredentials = !!withCredentials\r\n xhr.responseType = 'blob'\r\n setHeader(xhr, header)\r\n\r\n xhr.onprogress = e => {\r\n const { loaded, total } = e\r\n callbackManager.progressUpdate.trigger({\r\n progress: Math.round(loaded / total * 100),\r\n totalBytesWritten: loaded,\r\n totalBytesExpectedToWrite: total\r\n })\r\n }\r\n\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState !== XHR_STATS.HEADERS_RECEIVED) return\r\n callbackManager.headersReceived.trigger({\r\n header: xhr.getAllResponseHeaders()\r\n })\r\n }\r\n\r\n xhr.onload = () => {\r\n const response = xhr.response\r\n const status = xhr.status\r\n success({\r\n errMsg: `${apiName}:ok`,\r\n statusCode: status,\r\n tempFilePath: window.URL.createObjectURL(response)\r\n })\r\n }\r\n\r\n xhr.onabort = () => {\r\n clearTimeout(timeoutInter)\r\n error({\r\n errMsg: `${apiName}:fail abort`\r\n })\r\n }\r\n\r\n xhr.onerror = (e: ProgressEvent<EventTarget> & { message?: string }) => {\r\n error({\r\n errMsg: `${apiName}:fail ${e.message}`\r\n })\r\n }\r\n\r\n /**\r\n * 中断任务\r\n */\r\n const abort = () => {\r\n xhr.abort()\r\n }\r\n\r\n const send = () => {\r\n xhr.send()\r\n timeoutInter = setTimeout(() => {\r\n xhr.onabort = null\r\n xhr.onload = null\r\n xhr.onprogress = null\r\n xhr.onreadystatechange = null\r\n xhr.onerror = null\r\n abort()\r\n error({\r\n errMsg: `${apiName}:fail timeout`\r\n })\r\n }, timeout || NETWORK_TIMEOUT)\r\n }\r\n\r\n send()\r\n\r\n /**\r\n * 监听 HTTP Response Header 事件。会比请求完成事件更早\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onHeadersReceived = callbackManager.headersReceived.add\r\n /**\r\n * 取消监听 HTTP Response Header 事件\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offHeadersReceived = callbackManager.headersReceived.remove\r\n\r\n /**\r\n * 监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onProgressUpdate = callbackManager.progressUpdate.add\r\n /**\r\n * 取消监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offProgressUpdate = callbackManager.progressUpdate.remove\r\n\r\n return {\r\n abort,\r\n onHeadersReceived,\r\n offHeadersReceived,\r\n onProgressUpdate,\r\n offProgressUpdate\r\n }\r\n}\r\n\r\n/**\r\n * 下载文件资源到本地。客户端直接发起一个 HTTPS GET 请求,返回文件的本地临时路径。使用前请注意阅读相关说明。\r\n * 注意:请在服务端响应的 header 中指定合理的 Content-Type 字段,以保证客户端正确处理文件类型。\r\n */\r\nexport const downloadFile: typeof Taro.downloadFile = ({ url, header, withCredentials, timeout, success, fail, complete }) => {\r\n let task!: Taro.DownloadTask\r\n const result: ReturnType<typeof Taro.downloadFile> = new Promise((resolve, reject) => {\r\n task = createDownloadTask({\r\n url,\r\n header,\r\n withCredentials,\r\n timeout,\r\n success: res => {\r\n success && success(res)\r\n complete && complete(res)\r\n resolve(res)\r\n },\r\n error: res => {\r\n fail && fail(res)\r\n complete && complete(res)\r\n reject(res)\r\n }\r\n })\r\n }) as any\r\n\r\n result.headersReceive = task.onHeadersReceived.bind(task)\r\n result.progress = task.onProgressUpdate.bind(task)\r\n\r\n const properties = {}\r\n Object.keys(task).forEach(key => {\r\n properties[key] = {\r\n get () {\r\n return typeof task[key] === 'function' ? task[key].bind(task) : task[key]\r\n }\r\n }\r\n })\r\n return Object.defineProperties(result, properties)\r\n}\r\n"],"names":[],"mappings":"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"}
|
|
@@ -142,15 +142,17 @@ const uploadFile = ({ url, filePath, name, header, formData, timeout, fileName,
|
|
|
142
142
|
}
|
|
143
143
|
});
|
|
144
144
|
});
|
|
145
|
-
result.headersReceive = task.onHeadersReceived;
|
|
146
|
-
result.progress = task.onProgressUpdate;
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
145
|
+
result.headersReceive = task.onHeadersReceived.bind(task);
|
|
146
|
+
result.progress = task.onProgressUpdate.bind(task);
|
|
147
|
+
const properties = {};
|
|
148
|
+
Object.keys(task).forEach(key => {
|
|
149
|
+
properties[key] = {
|
|
150
|
+
get() {
|
|
151
|
+
return typeof task[key] === 'function' ? task[key].bind(task) : task[key];
|
|
152
|
+
}
|
|
153
|
+
};
|
|
153
154
|
});
|
|
155
|
+
return Object.defineProperties(result, properties);
|
|
154
156
|
};
|
|
155
157
|
|
|
156
158
|
export { uploadFile };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","sources":["../../../src/api/network/upload.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { CallbackManager } from '../../utils/handler'\r\nimport {\r\n convertObjectUrlToBlob,\r\n NETWORK_TIMEOUT,\r\n setHeader,\r\n XHR_STATS\r\n} from './utils'\r\n\r\nconst createUploadTask = ({ url, filePath, formData = {}, name, header, timeout, fileName, withCredentials = true, success, error }): Taro.UploadTask => {\r\n let timeoutInter: ReturnType<typeof setTimeout>\r\n let formKey\r\n const apiName = 'uploadFile'\r\n const xhr = new XMLHttpRequest()\r\n const form = new FormData()\r\n const callbackManager = {\r\n headersReceived: new CallbackManager(),\r\n progressUpdate: new CallbackManager()\r\n }\r\n\r\n xhr.open('POST', url)\r\n xhr.withCredentials = !!withCredentials\r\n setHeader(xhr, header)\r\n\r\n for (formKey in formData) {\r\n form.append(formKey, formData[formKey])\r\n }\r\n\r\n xhr.upload.onprogress = e => {\r\n const { loaded, total } = e\r\n callbackManager.progressUpdate.trigger({\r\n progress: Math.round(loaded / total * 100),\r\n totalBytesSent: loaded,\r\n totalBytesExpectedToSend: total\r\n })\r\n }\r\n\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState !== XHR_STATS.HEADERS_RECEIVED) return\r\n callbackManager.headersReceived.trigger({\r\n header: xhr.getAllResponseHeaders()\r\n })\r\n }\r\n\r\n xhr.onload = () => {\r\n const status = xhr.status\r\n clearTimeout(timeoutInter)\r\n success({\r\n errMsg: `${apiName}:ok`,\r\n statusCode: status,\r\n data: xhr.responseText || xhr.response\r\n })\r\n }\r\n\r\n xhr.onabort = () => {\r\n clearTimeout(timeoutInter)\r\n error({\r\n errMsg: `${apiName}:fail abort`\r\n })\r\n }\r\n\r\n xhr.onerror = (e: ProgressEvent<EventTarget> & { message?: string }) => {\r\n clearTimeout(timeoutInter)\r\n error({\r\n errMsg: `${apiName}:fail ${e.message}`\r\n })\r\n }\r\n\r\n /**\r\n * 中断任务\r\n */\r\n const abort = () => {\r\n clearTimeout(timeoutInter)\r\n xhr.abort()\r\n }\r\n\r\n const send = () => {\r\n xhr.send(form)\r\n timeoutInter = setTimeout(() => {\r\n xhr.onabort = null\r\n xhr.onload = null\r\n xhr.upload.onprogress = null\r\n xhr.onreadystatechange = null\r\n xhr.onerror = null\r\n abort()\r\n error({\r\n errMsg: `${apiName}:fail timeout`\r\n })\r\n }, timeout || NETWORK_TIMEOUT)\r\n }\r\n\r\n convertObjectUrlToBlob(filePath)\r\n .then((fileObj: string | (Blob & { name?: string })) => {\r\n if (!fileName) {\r\n fileName = typeof fileObj !== 'string' && fileObj.name\r\n }\r\n form.append(name, fileObj, fileName || `file-${Date.now()}`)\r\n send()\r\n })\r\n .catch(e => {\r\n error({\r\n errMsg: `${apiName}:fail ${e.message}`\r\n })\r\n })\r\n\r\n /**\r\n * 监听 HTTP Response Header 事件。会比请求完成事件更早\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onHeadersReceived = callbackManager.headersReceived.add\r\n /**\r\n * 取消监听 HTTP Response Header 事件\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offHeadersReceived = callbackManager.headersReceived.remove\r\n\r\n /**\r\n * 监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onProgressUpdate = callbackManager.progressUpdate.add\r\n /**\r\n * 取消监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offProgressUpdate = callbackManager.progressUpdate.remove\r\n\r\n return {\r\n abort,\r\n onHeadersReceived,\r\n offHeadersReceived,\r\n onProgressUpdate,\r\n offProgressUpdate\r\n }\r\n}\r\n\r\n/**\r\n * 将本地资源上传到服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data。使用前请注意阅读相关说明。\r\n */\r\nexport const uploadFile: typeof Taro.uploadFile = ({ url, filePath, name, header, formData, timeout, fileName, withCredentials, success, fail, complete }) => {\r\n let task!: Taro.UploadTask\r\n const result: ReturnType<typeof Taro.uploadFile> = new Promise((resolve, reject) => {\r\n task = createUploadTask({\r\n url,\r\n header,\r\n name,\r\n filePath,\r\n formData,\r\n timeout,\r\n fileName,\r\n withCredentials,\r\n success: res => {\r\n success && success(res)\r\n complete && complete(res)\r\n resolve(res)\r\n },\r\n error: res => {\r\n fail && fail(res)\r\n complete && complete(res)\r\n reject(res)\r\n }\r\n })\r\n }) as any\r\n\r\n result.headersReceive = task.onHeadersReceived\r\n result.progress = task.onProgressUpdate\r\n\r\n
|
|
1
|
+
{"version":3,"file":"upload.js","sources":["../../../src/api/network/upload.ts"],"sourcesContent":["import Taro from '@tarojs/api'\r\n\r\nimport { CallbackManager } from '../../utils/handler'\r\nimport {\r\n convertObjectUrlToBlob,\r\n NETWORK_TIMEOUT,\r\n setHeader,\r\n XHR_STATS\r\n} from './utils'\r\n\r\nconst createUploadTask = ({ url, filePath, formData = {}, name, header, timeout, fileName, withCredentials = true, success, error }): Taro.UploadTask => {\r\n let timeoutInter: ReturnType<typeof setTimeout>\r\n let formKey\r\n const apiName = 'uploadFile'\r\n const xhr = new XMLHttpRequest()\r\n const form = new FormData()\r\n const callbackManager = {\r\n headersReceived: new CallbackManager(),\r\n progressUpdate: new CallbackManager()\r\n }\r\n\r\n xhr.open('POST', url)\r\n xhr.withCredentials = !!withCredentials\r\n setHeader(xhr, header)\r\n\r\n for (formKey in formData) {\r\n form.append(formKey, formData[formKey])\r\n }\r\n\r\n xhr.upload.onprogress = e => {\r\n const { loaded, total } = e\r\n callbackManager.progressUpdate.trigger({\r\n progress: Math.round(loaded / total * 100),\r\n totalBytesSent: loaded,\r\n totalBytesExpectedToSend: total\r\n })\r\n }\r\n\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState !== XHR_STATS.HEADERS_RECEIVED) return\r\n callbackManager.headersReceived.trigger({\r\n header: xhr.getAllResponseHeaders()\r\n })\r\n }\r\n\r\n xhr.onload = () => {\r\n const status = xhr.status\r\n clearTimeout(timeoutInter)\r\n success({\r\n errMsg: `${apiName}:ok`,\r\n statusCode: status,\r\n data: xhr.responseText || xhr.response\r\n })\r\n }\r\n\r\n xhr.onabort = () => {\r\n clearTimeout(timeoutInter)\r\n error({\r\n errMsg: `${apiName}:fail abort`\r\n })\r\n }\r\n\r\n xhr.onerror = (e: ProgressEvent<EventTarget> & { message?: string }) => {\r\n clearTimeout(timeoutInter)\r\n error({\r\n errMsg: `${apiName}:fail ${e.message}`\r\n })\r\n }\r\n\r\n /**\r\n * 中断任务\r\n */\r\n const abort = () => {\r\n clearTimeout(timeoutInter)\r\n xhr.abort()\r\n }\r\n\r\n const send = () => {\r\n xhr.send(form)\r\n timeoutInter = setTimeout(() => {\r\n xhr.onabort = null\r\n xhr.onload = null\r\n xhr.upload.onprogress = null\r\n xhr.onreadystatechange = null\r\n xhr.onerror = null\r\n abort()\r\n error({\r\n errMsg: `${apiName}:fail timeout`\r\n })\r\n }, timeout || NETWORK_TIMEOUT)\r\n }\r\n\r\n convertObjectUrlToBlob(filePath)\r\n .then((fileObj: string | (Blob & { name?: string })) => {\r\n if (!fileName) {\r\n fileName = typeof fileObj !== 'string' && fileObj.name\r\n }\r\n form.append(name, fileObj as Blob, fileName || `file-${Date.now()}`)\r\n send()\r\n })\r\n .catch(e => {\r\n error({\r\n errMsg: `${apiName}:fail ${e.message}`\r\n })\r\n })\r\n\r\n /**\r\n * 监听 HTTP Response Header 事件。会比请求完成事件更早\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onHeadersReceived = callbackManager.headersReceived.add\r\n /**\r\n * 取消监听 HTTP Response Header 事件\r\n * @param {HeadersReceivedCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offHeadersReceived = callbackManager.headersReceived.remove\r\n\r\n /**\r\n * 监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const onProgressUpdate = callbackManager.progressUpdate.add\r\n /**\r\n * 取消监听进度变化事件\r\n * @param {ProgressUpdateCallback} callback HTTP Response Header 事件的回调函数\r\n */\r\n const offProgressUpdate = callbackManager.progressUpdate.remove\r\n\r\n return {\r\n abort,\r\n onHeadersReceived,\r\n offHeadersReceived,\r\n onProgressUpdate,\r\n offProgressUpdate\r\n }\r\n}\r\n\r\n/**\r\n * 将本地资源上传到服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data。使用前请注意阅读相关说明。\r\n */\r\nexport const uploadFile: typeof Taro.uploadFile = ({ url, filePath, name, header, formData, timeout, fileName, withCredentials, success, fail, complete }) => {\r\n let task!: Taro.UploadTask\r\n const result: ReturnType<typeof Taro.uploadFile> = new Promise((resolve, reject) => {\r\n task = createUploadTask({\r\n url,\r\n header,\r\n name,\r\n filePath,\r\n formData,\r\n timeout,\r\n fileName,\r\n withCredentials,\r\n success: res => {\r\n success && success(res)\r\n complete && complete(res)\r\n resolve(res)\r\n },\r\n error: res => {\r\n fail && fail(res)\r\n complete && complete(res)\r\n reject(res)\r\n }\r\n })\r\n }) as any\r\n\r\n result.headersReceive = task.onHeadersReceived.bind(task)\r\n result.progress = task.onProgressUpdate.bind(task)\r\n\r\n const properties = {}\r\n Object.keys(task).forEach(key => {\r\n properties[key] = {\r\n get () {\r\n return typeof task[key] === 'function' ? task[key].bind(task) : task[key]\r\n }\r\n }\r\n })\r\n return Object.defineProperties(result, properties)\r\n}\r\n"],"names":[],"mappings":";;;AAUA,MAAM,gBAAgB,GAAG,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAqB;AACtJ,IAAA,IAAI,YAA2C,CAAA;AAC/C,IAAA,IAAI,OAAO,CAAA;IACX,MAAM,OAAO,GAAG,YAAY,CAAA;AAC5B,IAAA,MAAM,GAAG,GAAG,IAAI,cAAc,EAAE,CAAA;AAChC,IAAA,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAA;AAC3B,IAAA,MAAM,eAAe,GAAG;QACtB,eAAe,EAAE,IAAI,eAAe,EAAE;QACtC,cAAc,EAAE,IAAI,eAAe,EAAE;KACtC,CAAA;AAED,IAAA,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AACrB,IAAA,GAAG,CAAC,eAAe,GAAG,CAAC,CAAC,eAAe,CAAA;AACvC,IAAA,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAEtB,KAAK,OAAO,IAAI,QAAQ,EAAE;QACxB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;AACxC,KAAA;AAED,IAAA,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,IAAG;AAC1B,QAAA,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;AAC3B,QAAA,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC;YACrC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,GAAG,CAAC;AAC1C,YAAA,cAAc,EAAE,MAAM;AACtB,YAAA,wBAAwB,EAAE,KAAK;AAChC,SAAA,CAAC,CAAA;AACJ,KAAC,CAAA;AAED,IAAA,GAAG,CAAC,kBAAkB,GAAG,MAAK;AAC5B,QAAA,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,gBAAgB;YAAE,OAAM;AACzD,QAAA,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC;AACtC,YAAA,MAAM,EAAE,GAAG,CAAC,qBAAqB,EAAE;AACpC,SAAA,CAAC,CAAA;AACJ,KAAC,CAAA;AAED,IAAA,GAAG,CAAC,MAAM,GAAG,MAAK;AAChB,QAAA,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACzB,YAAY,CAAC,YAAY,CAAC,CAAA;AAC1B,QAAA,OAAO,CAAC;YACN,MAAM,EAAE,CAAG,EAAA,OAAO,CAAK,GAAA,CAAA;AACvB,YAAA,UAAU,EAAE,MAAM;AAClB,YAAA,IAAI,EAAE,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,QAAQ;AACvC,SAAA,CAAC,CAAA;AACJ,KAAC,CAAA;AAED,IAAA,GAAG,CAAC,OAAO,GAAG,MAAK;QACjB,YAAY,CAAC,YAAY,CAAC,CAAA;AAC1B,QAAA,KAAK,CAAC;YACJ,MAAM,EAAE,CAAG,EAAA,OAAO,CAAa,WAAA,CAAA;AAChC,SAAA,CAAC,CAAA;AACJ,KAAC,CAAA;AAED,IAAA,GAAG,CAAC,OAAO,GAAG,CAAC,CAAoD,KAAI;QACrE,YAAY,CAAC,YAAY,CAAC,CAAA;AAC1B,QAAA,KAAK,CAAC;AACJ,YAAA,MAAM,EAAE,CAAG,EAAA,OAAO,SAAS,CAAC,CAAC,OAAO,CAAE,CAAA;AACvC,SAAA,CAAC,CAAA;AACJ,KAAC,CAAA;AAED;;AAEG;IACH,MAAM,KAAK,GAAG,MAAK;QACjB,YAAY,CAAC,YAAY,CAAC,CAAA;QAC1B,GAAG,CAAC,KAAK,EAAE,CAAA;AACb,KAAC,CAAA;IAED,MAAM,IAAI,GAAG,MAAK;AAChB,QAAA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,QAAA,YAAY,GAAG,UAAU,CAAC,MAAK;AAC7B,YAAA,GAAG,CAAC,OAAO,GAAG,IAAI,CAAA;AAClB,YAAA,GAAG,CAAC,MAAM,GAAG,IAAI,CAAA;AACjB,YAAA,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAA;AAC5B,YAAA,GAAG,CAAC,kBAAkB,GAAG,IAAI,CAAA;AAC7B,YAAA,GAAG,CAAC,OAAO,GAAG,IAAI,CAAA;AAClB,YAAA,KAAK,EAAE,CAAA;AACP,YAAA,KAAK,CAAC;gBACJ,MAAM,EAAE,CAAG,EAAA,OAAO,CAAe,aAAA,CAAA;AAClC,aAAA,CAAC,CAAA;AACJ,SAAC,EAAE,OAAO,IAAI,eAAe,CAAC,CAAA;AAChC,KAAC,CAAA;IAED,sBAAsB,CAAC,QAAQ,CAAC;AAC7B,SAAA,IAAI,CAAC,CAAC,OAA4C,KAAI;QACrD,IAAI,CAAC,QAAQ,EAAE;YACb,QAAQ,GAAG,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAA;AACvD,SAAA;AACD,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAe,EAAE,QAAQ,IAAI,CAAA,KAAA,EAAQ,IAAI,CAAC,GAAG,EAAE,CAAA,CAAE,CAAC,CAAA;AACpE,QAAA,IAAI,EAAE,CAAA;AACR,KAAC,CAAC;SACD,KAAK,CAAC,CAAC,IAAG;AACT,QAAA,KAAK,CAAC;AACJ,YAAA,MAAM,EAAE,CAAG,EAAA,OAAO,SAAS,CAAC,CAAC,OAAO,CAAE,CAAA;AACvC,SAAA,CAAC,CAAA;AACJ,KAAC,CAAC,CAAA;AAEJ;;;AAGG;AACH,IAAA,MAAM,iBAAiB,GAAG,eAAe,CAAC,eAAe,CAAC,GAAG,CAAA;AAC7D;;;AAGG;AACH,IAAA,MAAM,kBAAkB,GAAG,eAAe,CAAC,eAAe,CAAC,MAAM,CAAA;AAEjE;;;AAGG;AACH,IAAA,MAAM,gBAAgB,GAAG,eAAe,CAAC,cAAc,CAAC,GAAG,CAAA;AAC3D;;;AAGG;AACH,IAAA,MAAM,iBAAiB,GAAG,eAAe,CAAC,cAAc,CAAC,MAAM,CAAA;IAE/D,OAAO;QACL,KAAK;QACL,iBAAiB;QACjB,kBAAkB;QAClB,gBAAgB;QAChB,iBAAiB;KAClB,CAAA;AACH,CAAC,CAAA;AAED;;AAEG;AACI,MAAM,UAAU,GAA2B,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAI;AAC3J,IAAA,IAAI,IAAsB,CAAA;IAC1B,MAAM,MAAM,GAAuC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;QACjF,IAAI,GAAG,gBAAgB,CAAC;YACtB,GAAG;YACH,MAAM;YACN,IAAI;YACJ,QAAQ;YACR,QAAQ;YACR,OAAO;YACP,QAAQ;YACR,eAAe;YACf,OAAO,EAAE,GAAG,IAAG;AACb,gBAAA,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,CAAA;AACvB,gBAAA,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAA;gBACzB,OAAO,CAAC,GAAG,CAAC,CAAA;aACb;YACD,KAAK,EAAE,GAAG,IAAG;AACX,gBAAA,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;AACjB,gBAAA,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAA;gBACzB,MAAM,CAAC,GAAG,CAAC,CAAA;aACZ;AACF,SAAA,CAAC,CAAA;AACJ,KAAC,CAAQ,CAAA;IAET,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACzD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAElD,MAAM,UAAU,GAAG,EAAE,CAAA;IACrB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,IAAG;QAC9B,UAAU,CAAC,GAAG,CAAC,GAAG;YAChB,GAAG,GAAA;gBACD,OAAO,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;aAC1E;SACF,CAAA;AACH,KAAC,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;AACpD;;;;"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
declare const addVideoToFavorites: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
|
|
2
2
|
declare const addFileToFavorites: (option?: {}, ...args: any[]) => Promise<Partial<TaroGeneral.CallbackResult> & Record<string, unknown> & TaroGeneral.CallbackResult>;
|
|
3
|
-
|
|
4
|
-
export { addVideoToFavorites, addFileToFavorites, checkIsAddedToMyMiniProgram };
|
|
3
|
+
export { addVideoToFavorites, addFileToFavorites };
|
|
@@ -3,7 +3,6 @@ import { temporarilyNotSupport } from '../../utils/index.js';
|
|
|
3
3
|
// 收藏
|
|
4
4
|
const addVideoToFavorites = /* @__PURE__ */ temporarilyNotSupport('addVideoToFavorites');
|
|
5
5
|
const addFileToFavorites = /* @__PURE__ */ temporarilyNotSupport('addFileToFavorites');
|
|
6
|
-
const checkIsAddedToMyMiniProgram = /* @__PURE__ */ temporarilyNotSupport('checkIsAddedToMyMiniProgram');
|
|
7
6
|
|
|
8
|
-
export { addFileToFavorites, addVideoToFavorites
|
|
7
|
+
export { addFileToFavorites, addVideoToFavorites };
|
|
9
8
|
//# sourceMappingURL=favorites.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"favorites.js","sources":["../../../src/api/open-api/favorites.ts"],"sourcesContent":["import { temporarilyNotSupport } from '../../utils'\n\n// 收藏\nexport const addVideoToFavorites = /* @__PURE__ */ temporarilyNotSupport('addVideoToFavorites')\nexport const addFileToFavorites = /* @__PURE__ */ temporarilyNotSupport('addFileToFavorites')\
|
|
1
|
+
{"version":3,"file":"favorites.js","sources":["../../../src/api/open-api/favorites.ts"],"sourcesContent":["import { temporarilyNotSupport } from '../../utils'\n\n// 收藏\nexport const addVideoToFavorites = /* @__PURE__ */ temporarilyNotSupport('addVideoToFavorites')\nexport const addFileToFavorites = /* @__PURE__ */ temporarilyNotSupport('addFileToFavorites')\n"],"names":[],"mappings":";;AAEA;AACa,MAAA,mBAAmB,mBAAmB,qBAAqB,CAAC,qBAAqB,EAAC;AAClF,MAAA,kBAAkB,mBAAmB,qBAAqB,CAAC,oBAAoB;;;;"}
|