apexify.js 4.5.51 → 4.5.53
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/cjs/ai/ApexAI.d.ts +2 -0
- package/dist/cjs/ai/ApexAI.d.ts.map +1 -1
- package/dist/cjs/ai/ApexAI.js +1 -1
- package/dist/cjs/ai/ApexAI.js.map +1 -1
- package/dist/cjs/ai/ApexModules.d.ts +2 -0
- package/dist/cjs/ai/ApexModules.d.ts.map +1 -1
- package/dist/cjs/ai/ApexModules.js +2 -2
- package/dist/cjs/ai/ApexModules.js.map +1 -1
- package/dist/cjs/ai/functions/draw.js +1 -1
- package/dist/cjs/ai/functions/draw.js.map +1 -1
- package/dist/cjs/ai/functions/validOptions.js +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/chatmodels.js +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/imageModels.d.ts +7 -1
- package/dist/cjs/ai/modals-chat/electronHub/imageModels.d.ts.map +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/imageModels.js +48 -6
- package/dist/cjs/ai/modals-chat/electronHub/imageModels.js.map +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/songModels.d.ts +1 -0
- package/dist/cjs/ai/modals-chat/electronHub/songModels.js +1 -0
- package/dist/cjs/ai/modals-chat/electronHub/speechModels.js +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/videoModels.js +1 -1
- package/dist/esm/ai/ApexAI.d.ts +2 -0
- package/dist/esm/ai/ApexAI.d.ts.map +1 -1
- package/dist/esm/ai/ApexAI.js +37 -34
- package/dist/esm/ai/ApexAI.js.map +1 -1
- package/dist/esm/ai/ApexModules.d.ts +2 -0
- package/dist/esm/ai/ApexModules.d.ts.map +1 -1
- package/dist/esm/ai/ApexModules.js +38 -29
- package/dist/esm/ai/ApexModules.js.map +1 -1
- package/dist/esm/ai/buttons/drawMenu.js +3 -1
- package/dist/esm/ai/buttons/drawMenu.js.map +1 -1
- package/dist/esm/ai/buttons/tools.js +5 -3
- package/dist/esm/ai/buttons/tools.js.map +1 -1
- package/dist/esm/ai/functions/chunkString.js +4 -1
- package/dist/esm/ai/functions/chunkString.js.map +1 -1
- package/dist/esm/ai/functions/draw.js +29 -23
- package/dist/esm/ai/functions/draw.js.map +1 -1
- package/dist/esm/ai/functions/generateVoiceResponse.js +23 -18
- package/dist/esm/ai/functions/generateVoiceResponse.js.map +1 -1
- package/dist/esm/ai/functions/imageReader.js +5 -3
- package/dist/esm/ai/functions/imageReader.js.map +1 -1
- package/dist/esm/ai/functions/readFiles.js +54 -15
- package/dist/esm/ai/functions/readFiles.js.map +1 -1
- package/dist/esm/ai/functions/shouldDrawImage.js +4 -1
- package/dist/esm/ai/functions/shouldDrawImage.js.map +1 -1
- package/dist/esm/ai/functions/typeWriter.js +4 -1
- package/dist/esm/ai/functions/typeWriter.js.map +1 -1
- package/dist/esm/ai/functions/validOptions.js +23 -14
- package/dist/esm/ai/functions/validOptions.js.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/chatmodels.js +10 -4
- package/dist/esm/ai/modals-chat/electronHub/chatmodels.js.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/imageModels.d.ts +7 -1
- package/dist/esm/ai/modals-chat/electronHub/imageModels.d.ts.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/imageModels.js +56 -8
- package/dist/esm/ai/modals-chat/electronHub/imageModels.js.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/songModels.d.ts +1 -0
- package/dist/esm/ai/modals-chat/electronHub/songModels.js +1 -0
- package/dist/esm/ai/modals-chat/electronHub/speechModels.js +12 -6
- package/dist/esm/ai/modals-chat/electronHub/speechModels.js.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/videoModels.js +12 -6
- package/dist/esm/ai/modals-chat/electronHub/videoModels.js.map +1 -1
- package/dist/esm/ai/modals-chat/gemini/Gemini-flash.js +32 -26
- package/dist/esm/ai/modals-chat/gemini/Gemini-flash.js.map +1 -1
- package/dist/esm/ai/modals-chat/gemini/Gemini-pro.js +32 -26
- package/dist/esm/ai/modals-chat/gemini/Gemini-pro.js.map +1 -1
- package/dist/esm/ai/modals-chat/gemini/config.js +3 -1
- package/dist/esm/ai/modals-chat/gemini/config.js.map +1 -1
- package/dist/esm/ai/modals-chat/gemini/geminiFast.js +23 -17
- package/dist/esm/ai/modals-chat/gemini/geminiFast.js.map +1 -1
- package/dist/esm/ai/modals-chat/groq/chatgroq.js +10 -4
- package/dist/esm/ai/modals-chat/groq/chatgroq.js.map +1 -1
- package/dist/esm/ai/modals-chat/groq/imageAnalyzer.js +11 -5
- package/dist/esm/ai/modals-chat/groq/imageAnalyzer.js.map +1 -1
- package/dist/esm/ai/modals-chat/groq/whisper.js +24 -18
- package/dist/esm/ai/modals-chat/groq/whisper.js.map +1 -1
- package/dist/esm/ai/modals-chat/hercai/chatModels.js +6 -3
- package/dist/esm/ai/modals-chat/hercai/chatModels.js.map +1 -1
- package/dist/esm/ai/modals-chat/others/otherModels.js +13 -7
- package/dist/esm/ai/modals-chat/others/otherModels.js.map +1 -1
- package/dist/esm/ai/utils.js +29 -12
- package/dist/esm/ai/utils.js.map +1 -1
- package/dist/esm/canvas/ApexPainter.js +92 -85
- package/dist/esm/canvas/ApexPainter.js.map +1 -1
- package/dist/esm/canvas/utils/bg.js +15 -7
- package/dist/esm/canvas/utils/bg.js.map +1 -1
- package/dist/esm/canvas/utils/charts.js +22 -14
- package/dist/esm/canvas/utils/charts.js.map +1 -1
- package/dist/esm/canvas/utils/circular.js +4 -1
- package/dist/esm/canvas/utils/circular.js.map +1 -1
- package/dist/esm/canvas/utils/conversion.js +14 -7
- package/dist/esm/canvas/utils/conversion.js.map +1 -1
- package/dist/esm/canvas/utils/customLines.js +4 -1
- package/dist/esm/canvas/utils/customLines.js.map +1 -1
- package/dist/esm/canvas/utils/general functions.js +64 -49
- package/dist/esm/canvas/utils/general functions.js.map +1 -1
- package/dist/esm/canvas/utils/imageProperties.js +16 -7
- package/dist/esm/canvas/utils/imageProperties.js.map +1 -1
- package/dist/esm/canvas/utils/radius.js +4 -1
- package/dist/esm/canvas/utils/radius.js.map +1 -1
- package/dist/esm/canvas/utils/textProperties.js +8 -3
- package/dist/esm/canvas/utils/textProperties.js.map +1 -1
- package/dist/esm/canvas/utils/types.js +2 -1
- package/dist/esm/canvas/utils/types.js.map +1 -1
- package/dist/esm/canvas/utils/utils.js +44 -10
- package/dist/esm/canvas/utils/utils.js.map +1 -1
- package/dist/esm/index.js +62 -13
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils.js +15 -4
- package/dist/esm/utils.js.map +1 -1
- package/lib/ai/ApexAI.ts +6 -2
- package/lib/ai/ApexModules.ts +4 -2
- package/lib/ai/functions/draw.ts +1 -1
- package/lib/ai/functions/validOptions.ts +1 -1
- package/lib/ai/modals-chat/electronHub/chatmodels.ts +1 -1
- package/lib/ai/modals-chat/electronHub/imageModels.ts +72 -12
- package/lib/ai/modals-chat/electronHub/speechModels.ts +1 -1
- package/lib/ai/modals-chat/electronHub/videoModels.ts +1 -1
- package/package.json +1 -1
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ApexPainter = void 0;
|
|
7
|
+
const canvas_1 = require("@napi-rs/canvas");
|
|
8
|
+
const gifencoder_1 = __importDefault(require("gifencoder"));
|
|
9
|
+
const fluent_ffmpeg_1 = __importDefault(require("fluent-ffmpeg"));
|
|
10
|
+
const stream_1 = require("stream");
|
|
11
|
+
const axios_1 = __importDefault(require("axios"));
|
|
12
|
+
const fs_1 = __importDefault(require("fs"));
|
|
13
|
+
const path_1 = __importDefault(require("path"));
|
|
14
|
+
const utils_1 = require("./utils/utils");
|
|
15
|
+
class ApexPainter {
|
|
10
16
|
format;
|
|
11
17
|
constructor({ type } = { type: 'buffer' }) {
|
|
12
18
|
this.format = { type: type || 'buffer' };
|
|
@@ -15,29 +21,29 @@ export class ApexPainter {
|
|
|
15
21
|
let canvasWidth = canvas.width || 500;
|
|
16
22
|
let canvasHeight = canvas.height || 500;
|
|
17
23
|
let borderRadius = canvas.borderRadius || 0;
|
|
18
|
-
const canvasInstance = createCanvas(canvasWidth, canvasHeight);
|
|
24
|
+
const canvasInstance = (0, canvas_1.createCanvas)(canvasWidth, canvasHeight);
|
|
19
25
|
const ctx = canvasInstance.getContext('2d');
|
|
20
26
|
if (!ctx) {
|
|
21
27
|
throw new Error('Unable to get 2D rendering context from canvas');
|
|
22
28
|
}
|
|
23
|
-
applyRotation(ctx, canvas.rotation || 0, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight);
|
|
24
|
-
applyShadow(ctx, canvas.shadow, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight);
|
|
29
|
+
(0, utils_1.applyRotation)(ctx, canvas.rotation || 0, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight);
|
|
30
|
+
(0, utils_1.applyShadow)(ctx, canvas.shadow, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight);
|
|
25
31
|
if (typeof borderRadius === 'string') {
|
|
26
|
-
circularBorder(ctx, canvasWidth, canvasHeight);
|
|
32
|
+
(0, utils_1.circularBorder)(ctx, canvasWidth, canvasHeight);
|
|
27
33
|
}
|
|
28
34
|
else if (typeof borderRadius === 'number') {
|
|
29
|
-
radiusBorder(ctx, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight, borderRadius);
|
|
35
|
+
(0, utils_1.radiusBorder)(ctx, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight, borderRadius);
|
|
30
36
|
}
|
|
31
37
|
if (canvas.customBg) {
|
|
32
|
-
await customBackground(ctx, canvas);
|
|
38
|
+
await (0, utils_1.customBackground)(ctx, canvas);
|
|
33
39
|
}
|
|
34
40
|
else if (canvas.gradientBg) {
|
|
35
|
-
await drawBackgroundGradient(ctx, canvas);
|
|
41
|
+
await (0, utils_1.drawBackgroundGradient)(ctx, canvas);
|
|
36
42
|
}
|
|
37
43
|
else {
|
|
38
|
-
await drawBackgroundColor(ctx, canvas);
|
|
44
|
+
await (0, utils_1.drawBackgroundColor)(ctx, canvas);
|
|
39
45
|
}
|
|
40
|
-
applyStroke(ctx, canvas.stroke, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight);
|
|
46
|
+
(0, utils_1.applyStroke)(ctx, canvas.stroke, canvas.x || 0, canvas.y || 0, canvasWidth, canvasHeight);
|
|
41
47
|
return { buffer: canvasInstance.toBuffer('image/png'), canvas };
|
|
42
48
|
}
|
|
43
49
|
async createImage(images, canvasBuffer) {
|
|
@@ -46,10 +52,10 @@ export class ApexPainter {
|
|
|
46
52
|
}
|
|
47
53
|
let existingCanvas;
|
|
48
54
|
if (Buffer.isBuffer(canvasBuffer)) {
|
|
49
|
-
existingCanvas = await loadImage(canvasBuffer);
|
|
55
|
+
existingCanvas = await (0, canvas_1.loadImage)(canvasBuffer);
|
|
50
56
|
}
|
|
51
57
|
else if (canvasBuffer && canvasBuffer.buffer) {
|
|
52
|
-
existingCanvas = await loadImage(canvasBuffer.buffer);
|
|
58
|
+
existingCanvas = await (0, canvas_1.loadImage)(canvasBuffer.buffer);
|
|
53
59
|
}
|
|
54
60
|
else {
|
|
55
61
|
throw new Error('Invalid canvasBuffer provided, should be Buffer or CanvasResults object with buffer');
|
|
@@ -57,7 +63,7 @@ export class ApexPainter {
|
|
|
57
63
|
if (!existingCanvas) {
|
|
58
64
|
throw new Error('Unable to load image from buffer');
|
|
59
65
|
}
|
|
60
|
-
const canvas = createCanvas(existingCanvas.width, existingCanvas.height);
|
|
66
|
+
const canvas = (0, canvas_1.createCanvas)(existingCanvas.width, existingCanvas.height);
|
|
61
67
|
const ctx = canvas.getContext('2d');
|
|
62
68
|
if (!ctx) {
|
|
63
69
|
throw new Error('Unable to get 2D rendering context from canvas');
|
|
@@ -75,10 +81,10 @@ export class ApexPainter {
|
|
|
75
81
|
}
|
|
76
82
|
let existingImage;
|
|
77
83
|
if (Buffer.isBuffer(buffer)) {
|
|
78
|
-
existingImage = await loadImage(buffer);
|
|
84
|
+
existingImage = await (0, canvas_1.loadImage)(buffer);
|
|
79
85
|
}
|
|
80
86
|
else if (buffer && buffer.buffer) {
|
|
81
|
-
existingImage = await loadImage(buffer.buffer);
|
|
87
|
+
existingImage = await (0, canvas_1.loadImage)(buffer.buffer);
|
|
82
88
|
}
|
|
83
89
|
else {
|
|
84
90
|
throw new Error('Invalid canvasBuffer provided. It should be a Buffer or CanvasResults object with a buffer');
|
|
@@ -86,16 +92,16 @@ export class ApexPainter {
|
|
|
86
92
|
if (!existingImage) {
|
|
87
93
|
throw new Error('Unable to load image from buffer');
|
|
88
94
|
}
|
|
89
|
-
const canvas = createCanvas(existingImage.width, existingImage.height);
|
|
95
|
+
const canvas = (0, canvas_1.createCanvas)(existingImage.width, existingImage.height);
|
|
90
96
|
const ctx = canvas.getContext("2d");
|
|
91
97
|
ctx.drawImage(existingImage, 0, 0);
|
|
92
98
|
for (const textOptions of textOptionsArray) {
|
|
93
99
|
const mergedTextOptions = textOptions;
|
|
94
100
|
if (mergedTextOptions.fontPath) {
|
|
95
|
-
GlobalFonts.registerFromPath(
|
|
101
|
+
canvas_1.GlobalFonts.registerFromPath(path_1.default.join(process.cwd(), mergedTextOptions.fontPath), mergedTextOptions.fontName);
|
|
96
102
|
}
|
|
97
103
|
const size = { width: existingImage.width, height: existingImage.height };
|
|
98
|
-
drawText(ctx, mergedTextOptions, size);
|
|
104
|
+
(0, utils_1.drawText)(ctx, mergedTextOptions, size);
|
|
99
105
|
}
|
|
100
106
|
return canvas.toBuffer("image/png");
|
|
101
107
|
}
|
|
@@ -111,10 +117,10 @@ export class ApexPainter {
|
|
|
111
117
|
}
|
|
112
118
|
let existingImage;
|
|
113
119
|
if (Buffer.isBuffer(buffer)) {
|
|
114
|
-
existingImage = await loadImage(buffer);
|
|
120
|
+
existingImage = await (0, canvas_1.loadImage)(buffer);
|
|
115
121
|
}
|
|
116
122
|
else if (buffer && buffer.buffer) {
|
|
117
|
-
existingImage = await loadImage(buffer.buffer);
|
|
123
|
+
existingImage = await (0, canvas_1.loadImage)(buffer.buffer);
|
|
118
124
|
}
|
|
119
125
|
else {
|
|
120
126
|
throw new Error('Invalid canvasBuffer provided. It should be a Buffer or CanvasResults object with a buffer');
|
|
@@ -122,10 +128,10 @@ export class ApexPainter {
|
|
|
122
128
|
if (!existingImage) {
|
|
123
129
|
throw new Error('Unable to load image from buffer');
|
|
124
130
|
}
|
|
125
|
-
const canvas = createCanvas(existingImage.width, existingImage.height);
|
|
131
|
+
const canvas = (0, canvas_1.createCanvas)(existingImage.width, existingImage.height);
|
|
126
132
|
const ctx = canvas.getContext("2d");
|
|
127
133
|
ctx.drawImage(existingImage, 0, 0);
|
|
128
|
-
customLines(ctx, options);
|
|
134
|
+
(0, utils_1.customLines)(ctx, options);
|
|
129
135
|
return canvas.toBuffer("image/png");
|
|
130
136
|
}
|
|
131
137
|
catch (error) {
|
|
@@ -135,16 +141,16 @@ export class ApexPainter {
|
|
|
135
141
|
}
|
|
136
142
|
async createGIF(gifFrames, options) {
|
|
137
143
|
async function resizeImage(image, targetWidth, targetHeight) {
|
|
138
|
-
const canvas = createCanvas(targetWidth, targetHeight);
|
|
144
|
+
const canvas = (0, canvas_1.createCanvas)(targetWidth, targetHeight);
|
|
139
145
|
const ctx = canvas.getContext("2d");
|
|
140
146
|
ctx.drawImage(image, 0, 0, targetWidth, targetHeight);
|
|
141
147
|
return canvas;
|
|
142
148
|
}
|
|
143
149
|
function createOutputStream(outputFile) {
|
|
144
|
-
return
|
|
150
|
+
return fs_1.default.createWriteStream(outputFile);
|
|
145
151
|
}
|
|
146
152
|
function createBufferStream() {
|
|
147
|
-
const bufferStream = new PassThrough();
|
|
153
|
+
const bufferStream = new stream_1.PassThrough();
|
|
148
154
|
const chunks = [];
|
|
149
155
|
bufferStream.on('data', (chunk) => {
|
|
150
156
|
chunks.push(chunk);
|
|
@@ -186,21 +192,21 @@ export class ApexPainter {
|
|
|
186
192
|
validateOptions(options);
|
|
187
193
|
const canvasWidth = options.width || 1200;
|
|
188
194
|
const canvasHeight = options.height || 1200;
|
|
189
|
-
const encoder = new
|
|
195
|
+
const encoder = new gifencoder_1.default(canvasWidth, canvasHeight);
|
|
190
196
|
const outputStream = options.outputFile ? createOutputStream(options.outputFile) : createBufferStream();
|
|
191
197
|
encoder.createReadStream().pipe(outputStream);
|
|
192
198
|
encoder.start();
|
|
193
199
|
encoder.setRepeat(options.repeat || 0);
|
|
194
200
|
encoder.setQuality(options.quality || 10);
|
|
195
|
-
const canvas = createCanvas(canvasWidth, canvasHeight);
|
|
201
|
+
const canvas = (0, canvas_1.createCanvas)(canvasWidth, canvasHeight);
|
|
196
202
|
const ctx = canvas.getContext("2d");
|
|
197
203
|
for (const frame of gifFrames) {
|
|
198
|
-
const image = await loadImage(frame.background);
|
|
204
|
+
const image = await (0, canvas_1.loadImage)(frame.background);
|
|
199
205
|
const resizedImage = await resizeImage(image, canvasWidth, canvasHeight);
|
|
200
206
|
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
|
201
207
|
ctx.drawImage(resizedImage, 0, 0);
|
|
202
208
|
if (options.watermark?.enable) {
|
|
203
|
-
const watermark = await loadImage(options.watermark.url);
|
|
209
|
+
const watermark = await (0, canvas_1.loadImage)(options.watermark.url);
|
|
204
210
|
ctx.drawImage(watermark, 10, canvasHeight - watermark.height - 10);
|
|
205
211
|
}
|
|
206
212
|
if (options.textOverlay) {
|
|
@@ -240,34 +246,34 @@ export class ApexPainter {
|
|
|
240
246
|
}
|
|
241
247
|
}
|
|
242
248
|
async resize(resizeOptions) {
|
|
243
|
-
return resizingImg(resizeOptions);
|
|
249
|
+
return (0, utils_1.resizingImg)(resizeOptions);
|
|
244
250
|
}
|
|
245
251
|
async imgConverter(imagePath, newExtension) {
|
|
246
|
-
return converter(imagePath, newExtension);
|
|
252
|
+
return (0, utils_1.converter)(imagePath, newExtension);
|
|
247
253
|
}
|
|
248
254
|
async processImage(imagePath, filters) {
|
|
249
|
-
return imgEffects(imagePath, filters);
|
|
255
|
+
return (0, utils_1.imgEffects)(imagePath, filters);
|
|
250
256
|
}
|
|
251
257
|
async colorsFilter(imagePath, filterColor, opacity) {
|
|
252
|
-
return applyColorFilters(imagePath, filterColor, opacity);
|
|
258
|
+
return (0, utils_1.applyColorFilters)(imagePath, filterColor, opacity);
|
|
253
259
|
}
|
|
254
260
|
async colorAnalysis(imagePath) {
|
|
255
|
-
return detectColors(imagePath);
|
|
261
|
+
return (0, utils_1.detectColors)(imagePath);
|
|
256
262
|
}
|
|
257
263
|
async colorsRemover(imagePath, colorToRemove) {
|
|
258
|
-
return removeColor(imagePath, colorToRemove);
|
|
264
|
+
return (0, utils_1.removeColor)(imagePath, colorToRemove);
|
|
259
265
|
}
|
|
260
266
|
async removeBackground(imageURL, apiKey) {
|
|
261
|
-
return bgRemoval(imageURL, apiKey);
|
|
267
|
+
return (0, utils_1.bgRemoval)(imageURL, apiKey);
|
|
262
268
|
}
|
|
263
269
|
async blend(layers, baseImageBuffer) {
|
|
264
270
|
try {
|
|
265
|
-
const baseImage = await loadImage(baseImageBuffer);
|
|
266
|
-
const canvas = createCanvas(baseImage.width, baseImage.height);
|
|
271
|
+
const baseImage = await (0, canvas_1.loadImage)(baseImageBuffer);
|
|
272
|
+
const canvas = (0, canvas_1.createCanvas)(baseImage.width, baseImage.height);
|
|
267
273
|
const ctx = canvas.getContext('2d');
|
|
268
274
|
ctx.drawImage(baseImage, 0, 0);
|
|
269
275
|
for (const layer of layers) {
|
|
270
|
-
const layerImage = await loadImage(layer.image);
|
|
276
|
+
const layerImage = await (0, canvas_1.loadImage)(layer.image);
|
|
271
277
|
ctx.globalAlpha = layer.opacity !== undefined ? layer.opacity : 1.0;
|
|
272
278
|
ctx.globalCompositeOperation = layer.blendMode;
|
|
273
279
|
ctx.drawImage(layerImage, layer.position?.x || 0, layer.position?.y || 0);
|
|
@@ -293,7 +299,7 @@ export class ApexPainter {
|
|
|
293
299
|
case 'bar':
|
|
294
300
|
switch (chartNumber) {
|
|
295
301
|
case 1:
|
|
296
|
-
return await verticalBarChart(data);
|
|
302
|
+
return await (0, utils_1.verticalBarChart)(data);
|
|
297
303
|
case 2:
|
|
298
304
|
throw new Error('Type 2 is still under development.');
|
|
299
305
|
default:
|
|
@@ -302,7 +308,7 @@ export class ApexPainter {
|
|
|
302
308
|
case 'line':
|
|
303
309
|
switch (chartNumber) {
|
|
304
310
|
case 1:
|
|
305
|
-
return await lineChart(data);
|
|
311
|
+
return await (0, utils_1.lineChart)(data);
|
|
306
312
|
case 2:
|
|
307
313
|
throw new Error('Type 2 is still under development.');
|
|
308
314
|
default:
|
|
@@ -311,7 +317,7 @@ export class ApexPainter {
|
|
|
311
317
|
case 'pie':
|
|
312
318
|
switch (chartNumber) {
|
|
313
319
|
case 1:
|
|
314
|
-
return await pieChart(data);
|
|
320
|
+
return await (0, utils_1.pieChart)(data);
|
|
315
321
|
case 2:
|
|
316
322
|
throw new Error('Type 2 is still under development.');
|
|
317
323
|
default:
|
|
@@ -328,10 +334,10 @@ export class ApexPainter {
|
|
|
328
334
|
if (!options.coordinates || options.coordinates.length < 3)
|
|
329
335
|
throw new Error('The "coordinates" option is needed. Please provide coordinates to crop the image.');
|
|
330
336
|
if (options.crop === 'outer') {
|
|
331
|
-
return await cropOuter(options);
|
|
337
|
+
return await (0, utils_1.cropOuter)(options);
|
|
332
338
|
}
|
|
333
339
|
else if (options.crop === 'inner') {
|
|
334
|
-
return await cropInner(options);
|
|
340
|
+
return await (0, utils_1.cropInner)(options);
|
|
335
341
|
}
|
|
336
342
|
else {
|
|
337
343
|
throw new Error('Invalid crop option. Please specify "inner" or "outer".');
|
|
@@ -355,15 +361,15 @@ export class ApexPainter {
|
|
|
355
361
|
ctx.globalAlpha = opacity;
|
|
356
362
|
}
|
|
357
363
|
if (source.startsWith('http')) {
|
|
358
|
-
img = await loadImage(source);
|
|
364
|
+
img = await (0, canvas_1.loadImage)(source);
|
|
359
365
|
}
|
|
360
366
|
else if (isShape) {
|
|
361
|
-
drawShape(ctx, { source, x, y, width, height, rotation, borderRadius, stroke, shadow, isFilled, color, gradient, borderPosition });
|
|
367
|
+
(0, utils_1.drawShape)(ctx, { source, x, y, width, height, rotation, borderRadius, stroke, shadow, isFilled, color, gradient, borderPosition });
|
|
362
368
|
}
|
|
363
369
|
else {
|
|
364
|
-
const imagePath =
|
|
370
|
+
const imagePath = path_1.default.join(process.cwd(), source);
|
|
365
371
|
try {
|
|
366
|
-
img = await loadImage(imagePath);
|
|
372
|
+
img = await (0, canvas_1.loadImage)(imagePath);
|
|
367
373
|
}
|
|
368
374
|
catch (e) {
|
|
369
375
|
throw new Error(`Error loading image: ${e.message}`);
|
|
@@ -371,10 +377,10 @@ export class ApexPainter {
|
|
|
371
377
|
}
|
|
372
378
|
if (img) {
|
|
373
379
|
ctx.save();
|
|
374
|
-
applyRotation(ctx, rotation || 0, x, y, width, height);
|
|
375
|
-
applyShadow(ctx, shadow, x, y, width, height);
|
|
376
|
-
imageRadius(ctx, img, x, y, width, height, borderRadius || 0, borderPosition);
|
|
377
|
-
applyStroke(ctx, stroke, x, y, width, height);
|
|
380
|
+
(0, utils_1.applyRotation)(ctx, rotation || 0, x, y, width, height);
|
|
381
|
+
(0, utils_1.applyShadow)(ctx, shadow, x, y, width, height);
|
|
382
|
+
(0, utils_1.imageRadius)(ctx, img, x, y, width, height, borderRadius || 0, borderPosition);
|
|
383
|
+
(0, utils_1.applyStroke)(ctx, stroke, x, y, width, height);
|
|
378
384
|
ctx.restore();
|
|
379
385
|
}
|
|
380
386
|
else if (!isShape) {
|
|
@@ -390,34 +396,34 @@ export class ApexPainter {
|
|
|
390
396
|
}
|
|
391
397
|
async extractFrames(videoSource, options) {
|
|
392
398
|
const frames = [];
|
|
393
|
-
const frameDir =
|
|
394
|
-
if (!
|
|
395
|
-
|
|
399
|
+
const frameDir = path_1.default.join(__dirname, 'frames');
|
|
400
|
+
if (!fs_1.default.existsSync(frameDir)) {
|
|
401
|
+
fs_1.default.mkdirSync(frameDir);
|
|
396
402
|
}
|
|
397
|
-
const videoPath = typeof videoSource === 'string' ? videoSource :
|
|
403
|
+
const videoPath = typeof videoSource === 'string' ? videoSource : path_1.default.join(frameDir, 'temp-video.mp4');
|
|
398
404
|
if (Buffer.isBuffer(videoSource)) {
|
|
399
|
-
|
|
405
|
+
fs_1.default.writeFileSync(videoPath, videoSource);
|
|
400
406
|
}
|
|
401
407
|
else if (videoSource.startsWith('http')) {
|
|
402
|
-
await
|
|
408
|
+
await (0, axios_1.default)({
|
|
403
409
|
method: 'get',
|
|
404
410
|
url: videoSource,
|
|
405
411
|
responseType: 'arraybuffer'
|
|
406
412
|
})
|
|
407
413
|
.then((response) => {
|
|
408
|
-
|
|
414
|
+
fs_1.default.writeFileSync(videoPath, response.data);
|
|
409
415
|
})
|
|
410
416
|
.catch(err => {
|
|
411
417
|
throw new Error(`Error downloading video: ${err.message}`);
|
|
412
418
|
});
|
|
413
419
|
}
|
|
414
|
-
else if (!
|
|
420
|
+
else if (!fs_1.default.existsSync(videoPath)) {
|
|
415
421
|
throw new Error("Video file not found at specified path.");
|
|
416
422
|
}
|
|
417
423
|
function processVideoExtraction(videoPath, frames, options, resolve, reject) {
|
|
418
424
|
const outputFormat = options.outputFormat || 'jpg';
|
|
419
425
|
const outputFileTemplate = `frame-%03d.${outputFormat}`;
|
|
420
|
-
|
|
426
|
+
(0, fluent_ffmpeg_1.default)(videoPath)
|
|
421
427
|
.on('end', () => {
|
|
422
428
|
console.log('Frames extracted successfully.');
|
|
423
429
|
resolve(frames);
|
|
@@ -427,8 +433,8 @@ export class ApexPainter {
|
|
|
427
433
|
reject(err);
|
|
428
434
|
})
|
|
429
435
|
.outputOptions([`-vf fps=1/${options.interval / 1000}`, `-q:v 2`])
|
|
430
|
-
.saveToFile(
|
|
431
|
-
|
|
436
|
+
.saveToFile(path_1.default.join(frameDir, outputFileTemplate));
|
|
437
|
+
fluent_ffmpeg_1.default.ffprobe(videoPath, (err, metadata) => {
|
|
432
438
|
if (err) {
|
|
433
439
|
return reject(err);
|
|
434
440
|
}
|
|
@@ -442,7 +448,7 @@ export class ApexPainter {
|
|
|
442
448
|
continue;
|
|
443
449
|
}
|
|
444
450
|
frames.push({
|
|
445
|
-
source:
|
|
451
|
+
source: path_1.default.join(frameDir, `frame-${String(i).padStart(3, '0')}.${outputFormat}`),
|
|
446
452
|
isRemote: false
|
|
447
453
|
});
|
|
448
454
|
}
|
|
@@ -459,8 +465,8 @@ export class ApexPainter {
|
|
|
459
465
|
* @returns {Promise<Buffer>} - The adjusted image buffer.
|
|
460
466
|
*/
|
|
461
467
|
async setPatternBackground(buffer, options) {
|
|
462
|
-
const img = await loadImage(buffer);
|
|
463
|
-
const canvas = createCanvas(img.width, img.height);
|
|
468
|
+
const img = await (0, canvas_1.loadImage)(buffer);
|
|
469
|
+
const canvas = (0, canvas_1.createCanvas)(img.width, img.height);
|
|
464
470
|
const ctx = canvas.getContext('2d');
|
|
465
471
|
ctx.drawImage(img, 0, 0);
|
|
466
472
|
const x = options.x || 0;
|
|
@@ -629,7 +635,7 @@ export class ApexPainter {
|
|
|
629
635
|
if (!options.customPatternImage) {
|
|
630
636
|
throw new Error('Custom pattern image path is required for custom patterns.');
|
|
631
637
|
}
|
|
632
|
-
const patternImage = await loadImage(options.customPatternImage);
|
|
638
|
+
const patternImage = await (0, canvas_1.loadImage)(options.customPatternImage);
|
|
633
639
|
const pattern = ctx.createPattern(patternImage, 'repeat');
|
|
634
640
|
ctx.fillStyle = pattern;
|
|
635
641
|
ctx.translate(x, y);
|
|
@@ -647,8 +653,8 @@ export class ApexPainter {
|
|
|
647
653
|
if (!options.gifPath) {
|
|
648
654
|
throw new Error("GIF generation enabled but no gifPath provided.");
|
|
649
655
|
}
|
|
650
|
-
encoder = new
|
|
651
|
-
gifStream =
|
|
656
|
+
encoder = new gifencoder_1.default(defaultWidth, defaultHeight);
|
|
657
|
+
gifStream = fs_1.default.createWriteStream(options.gifPath);
|
|
652
658
|
encoder.createReadStream().pipe(gifStream);
|
|
653
659
|
encoder.start();
|
|
654
660
|
encoder.setRepeat(0);
|
|
@@ -658,7 +664,7 @@ export class ApexPainter {
|
|
|
658
664
|
const frame = frames[i];
|
|
659
665
|
const width = frame.width || defaultWidth;
|
|
660
666
|
const height = frame.height || defaultHeight;
|
|
661
|
-
const canvas = createCanvas(width, height);
|
|
667
|
+
const canvas = (0, canvas_1.createCanvas)(width, height);
|
|
662
668
|
const ctx = canvas.getContext('2d');
|
|
663
669
|
if (!isNode) {
|
|
664
670
|
canvas.width = width;
|
|
@@ -690,7 +696,7 @@ export class ApexPainter {
|
|
|
690
696
|
fillStyle = gradient;
|
|
691
697
|
}
|
|
692
698
|
if (frame.pattern) {
|
|
693
|
-
const patternImage = await loadImage(frame.pattern.imagePath);
|
|
699
|
+
const patternImage = await (0, canvas_1.loadImage)(frame.pattern.imagePath);
|
|
694
700
|
const pattern = ctx.createPattern(patternImage, frame.pattern.repeat || 'repeat');
|
|
695
701
|
fillStyle = pattern;
|
|
696
702
|
}
|
|
@@ -702,7 +708,7 @@ export class ApexPainter {
|
|
|
702
708
|
ctx.fillRect(0, 0, width, height);
|
|
703
709
|
}
|
|
704
710
|
if (frame.imagePath) {
|
|
705
|
-
const image = await loadImage(frame.imagePath);
|
|
711
|
+
const image = await (0, canvas_1.loadImage)(frame.imagePath);
|
|
706
712
|
ctx.globalCompositeOperation = frame.blendMode || 'source-over';
|
|
707
713
|
ctx.drawImage(image, 0, 0, width, height);
|
|
708
714
|
}
|
|
@@ -743,18 +749,19 @@ export class ApexPainter {
|
|
|
743
749
|
case 'buffer':
|
|
744
750
|
return results;
|
|
745
751
|
case 'url':
|
|
746
|
-
return await url(results);
|
|
752
|
+
return await (0, utils_1.url)(results);
|
|
747
753
|
case 'dataURL':
|
|
748
|
-
return dataURL(results);
|
|
754
|
+
return (0, utils_1.dataURL)(results);
|
|
749
755
|
case 'blob':
|
|
750
|
-
return blob(results);
|
|
756
|
+
return (0, utils_1.blob)(results);
|
|
751
757
|
case 'base64':
|
|
752
|
-
return base64(results);
|
|
758
|
+
return (0, utils_1.base64)(results);
|
|
753
759
|
case 'arraybuffer':
|
|
754
|
-
return arrayBuffer(results);
|
|
760
|
+
return (0, utils_1.arrayBuffer)(results);
|
|
755
761
|
default:
|
|
756
762
|
throw new Error('Unsupported format');
|
|
757
763
|
}
|
|
758
764
|
}
|
|
759
765
|
}
|
|
766
|
+
exports.ApexPainter = ApexPainter;
|
|
760
767
|
//# sourceMappingURL=ApexPainter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApexPainter.js","sourceRoot":"","sources":["../../../lib/canvas/ApexPainter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ApexPainter.js","sourceRoot":"","sources":["../../../lib/canvas/ApexPainter.ts"],"names":[],"mappings":"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"}
|