apexify.js 4.6.2 → 4.6.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/cjs/ai/functions/readFiles.js +1 -1
- package/dist/cjs/ai/functions/readFiles.js.map +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/chatmodels.d.ts.map +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/chatmodels.js +2 -1
- package/dist/cjs/ai/modals-chat/electronHub/chatmodels.js.map +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/speechModels.d.ts.map +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/speechModels.js +1 -1
- package/dist/cjs/ai/modals-chat/electronHub/speechModels.js.map +1 -1
- package/dist/cjs/canvas/ApexPainter.d.ts.map +1 -1
- package/dist/cjs/canvas/ApexPainter.js +27 -28
- package/dist/cjs/canvas/ApexPainter.js.map +1 -1
- package/dist/cjs/canvas/Themes/Level-Up/levelup.d.ts +11 -0
- package/dist/cjs/canvas/Themes/Level-Up/levelup.d.ts.map +1 -0
- package/dist/cjs/canvas/Themes/Level-Up/levelup.js +163 -0
- package/dist/cjs/canvas/Themes/Level-Up/levelup.js.map +1 -0
- package/dist/cjs/canvas/utils/Background/bg.d.ts +17 -10
- package/dist/cjs/canvas/utils/Background/bg.d.ts.map +1 -1
- package/dist/cjs/canvas/utils/Background/bg.js +102 -27
- package/dist/cjs/canvas/utils/Background/bg.js.map +1 -1
- package/dist/cjs/canvas/utils/Custom/customLines.d.ts.map +1 -1
- package/dist/cjs/canvas/utils/Custom/customLines.js +43 -19
- package/dist/cjs/canvas/utils/Custom/customLines.js.map +1 -1
- package/dist/cjs/canvas/utils/General/general functions.d.ts +6 -1
- package/dist/cjs/canvas/utils/General/general functions.d.ts.map +1 -1
- package/dist/cjs/canvas/utils/General/general functions.js +19 -20
- package/dist/cjs/canvas/utils/General/general functions.js.map +1 -1
- package/dist/cjs/canvas/utils/Image/imageProperties.d.ts +3 -9
- package/dist/cjs/canvas/utils/Image/imageProperties.d.ts.map +1 -1
- package/dist/cjs/canvas/utils/Image/imageProperties.js +220 -214
- package/dist/cjs/canvas/utils/Image/imageProperties.js.map +1 -1
- package/dist/cjs/canvas/utils/Texts/textProperties.d.ts +12 -14
- package/dist/cjs/canvas/utils/Texts/textProperties.d.ts.map +1 -1
- package/dist/cjs/canvas/utils/Texts/textProperties.js +100 -91
- package/dist/cjs/canvas/utils/Texts/textProperties.js.map +1 -1
- package/dist/cjs/canvas/utils/types.d.ts +89 -109
- package/dist/cjs/canvas/utils/types.d.ts.map +1 -1
- package/dist/cjs/canvas/utils/types.js.map +1 -1
- package/dist/cjs/canvas/utils/utils.d.ts +2 -4
- package/dist/cjs/canvas/utils/utils.d.ts.map +1 -1
- package/dist/cjs/canvas/utils/utils.js +2 -5
- package/dist/cjs/canvas/utils/utils.js.map +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +31 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/ai/functions/readFiles.js +1 -1
- package/dist/esm/ai/functions/readFiles.js.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/chatmodels.d.ts.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/chatmodels.js +2 -1
- package/dist/esm/ai/modals-chat/electronHub/chatmodels.js.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/speechModels.d.ts.map +1 -1
- package/dist/esm/ai/modals-chat/electronHub/speechModels.js +1 -1
- package/dist/esm/ai/modals-chat/electronHub/speechModels.js.map +1 -1
- package/dist/esm/canvas/ApexPainter.d.ts.map +1 -1
- package/dist/esm/canvas/ApexPainter.js +27 -28
- package/dist/esm/canvas/ApexPainter.js.map +1 -1
- package/dist/esm/canvas/Themes/Level-Up/levelup.d.ts +11 -0
- package/dist/esm/canvas/Themes/Level-Up/levelup.d.ts.map +1 -0
- package/dist/esm/canvas/Themes/Level-Up/levelup.js +163 -0
- package/dist/esm/canvas/Themes/Level-Up/levelup.js.map +1 -0
- package/dist/esm/canvas/utils/Background/bg.d.ts +17 -10
- package/dist/esm/canvas/utils/Background/bg.d.ts.map +1 -1
- package/dist/esm/canvas/utils/Background/bg.js +102 -27
- package/dist/esm/canvas/utils/Background/bg.js.map +1 -1
- package/dist/esm/canvas/utils/Custom/customLines.d.ts.map +1 -1
- package/dist/esm/canvas/utils/Custom/customLines.js +43 -19
- package/dist/esm/canvas/utils/Custom/customLines.js.map +1 -1
- package/dist/esm/canvas/utils/General/general functions.d.ts +6 -1
- package/dist/esm/canvas/utils/General/general functions.d.ts.map +1 -1
- package/dist/esm/canvas/utils/General/general functions.js +19 -20
- package/dist/esm/canvas/utils/General/general functions.js.map +1 -1
- package/dist/esm/canvas/utils/Image/imageProperties.d.ts +3 -9
- package/dist/esm/canvas/utils/Image/imageProperties.d.ts.map +1 -1
- package/dist/esm/canvas/utils/Image/imageProperties.js +220 -214
- package/dist/esm/canvas/utils/Image/imageProperties.js.map +1 -1
- package/dist/esm/canvas/utils/Texts/textProperties.d.ts +12 -14
- package/dist/esm/canvas/utils/Texts/textProperties.d.ts.map +1 -1
- package/dist/esm/canvas/utils/Texts/textProperties.js +100 -91
- package/dist/esm/canvas/utils/Texts/textProperties.js.map +1 -1
- package/dist/esm/canvas/utils/types.d.ts +89 -109
- package/dist/esm/canvas/utils/types.d.ts.map +1 -1
- package/dist/esm/canvas/utils/types.js.map +1 -1
- package/dist/esm/canvas/utils/utils.d.ts +2 -4
- package/dist/esm/canvas/utils/utils.d.ts.map +1 -1
- package/dist/esm/canvas/utils/utils.js +2 -5
- package/dist/esm/canvas/utils/utils.js.map +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +31 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/ai/functions/readFiles.ts +1 -1
- package/lib/ai/modals-chat/electronHub/chatmodels.ts +4 -2
- package/lib/ai/modals-chat/electronHub/speechModels.ts +2 -1
- package/lib/canvas/ApexPainter.ts +52 -61
- package/lib/canvas/Themes/Level-Up/levelup.ts +183 -0
- package/lib/canvas/utils/Background/bg.ts +179 -65
- package/lib/canvas/utils/Custom/customLines.ts +53 -20
- package/lib/canvas/utils/General/general functions.ts +21 -29
- package/lib/canvas/utils/Image/imageProperties.ts +399 -318
- package/lib/canvas/utils/Texts/textProperties.ts +213 -162
- package/lib/canvas/utils/types.ts +74 -107
- package/lib/canvas/utils/utils.ts +2 -5
- package/lib/index.ts +38 -10
- package/package.json +2 -2
- package/dist/cjs/canvas/utils/Background/circular.d.ts +0 -3
- package/dist/cjs/canvas/utils/Background/circular.d.ts.map +0 -1
- package/dist/cjs/canvas/utils/Background/circular.js +0 -13
- package/dist/cjs/canvas/utils/Background/circular.js.map +0 -1
- package/dist/cjs/canvas/utils/Background/radius.d.ts +0 -18
- package/dist/cjs/canvas/utils/Background/radius.d.ts.map +0 -1
- package/dist/cjs/canvas/utils/Background/radius.js +0 -104
- package/dist/cjs/canvas/utils/Background/radius.js.map +0 -1
- package/dist/esm/canvas/utils/Background/circular.d.ts +0 -3
- package/dist/esm/canvas/utils/Background/circular.d.ts.map +0 -1
- package/dist/esm/canvas/utils/Background/circular.js +0 -13
- package/dist/esm/canvas/utils/Background/circular.js.map +0 -1
- package/dist/esm/canvas/utils/Background/radius.d.ts +0 -18
- package/dist/esm/canvas/utils/Background/radius.d.ts.map +0 -1
- package/dist/esm/canvas/utils/Background/radius.js +0 -104
- package/dist/esm/canvas/utils/Background/radius.js.map +0 -1
- package/lib/canvas/utils/Background/circular.ts +0 -17
- package/lib/canvas/utils/Background/radius.ts +0 -102
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Canvas } from "@napi-rs/canvas"
|
|
1
|
+
import { Canvas, SKRSContext2D } from "@napi-rs/canvas"
|
|
2
2
|
/**
|
|
3
3
|
* Configuration option to decide the outputformate from ApexPainter
|
|
4
4
|
* @param {type} default - 'buffer', other formates: url, blob, base64, dataURL, arraybuffer.
|
|
@@ -8,6 +8,21 @@ export interface OutputFormat {
|
|
|
8
8
|
type?: 'buffer' | 'url' | 'blob' | 'base64' | 'dataURL' | 'arraybuffer';
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
+
|
|
12
|
+
type gradient = {
|
|
13
|
+
type: 'linear' | 'radial';
|
|
14
|
+
rotate?: number;
|
|
15
|
+
startX?: number;
|
|
16
|
+
startY?: number;
|
|
17
|
+
endX?: number;
|
|
18
|
+
endY?: number;
|
|
19
|
+
startRadius?: number;
|
|
20
|
+
endRadius?: number;
|
|
21
|
+
colors: { stop: number; color: string }[];
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
type borderPosition = 'all' | 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | string;
|
|
25
|
+
|
|
11
26
|
/**
|
|
12
27
|
* Configuration options for the canvas.
|
|
13
28
|
* @param {number} width - The width of the canvas.
|
|
@@ -24,38 +39,22 @@ export interface CanvasConfig {
|
|
|
24
39
|
y?: number;
|
|
25
40
|
customBg?: string;
|
|
26
41
|
colorBg?: string;
|
|
42
|
+
gradientBg?: gradient;
|
|
27
43
|
opacity?: number;
|
|
44
|
+
blur?: number;
|
|
28
45
|
zoom?: {
|
|
29
46
|
scale?: number;
|
|
30
47
|
x?: number;
|
|
31
48
|
y?: number;
|
|
32
49
|
};
|
|
33
|
-
gradientBg?: {
|
|
34
|
-
type?: 'linear' | 'radial';
|
|
35
|
-
startX?: number;
|
|
36
|
-
startY?: number;
|
|
37
|
-
startRadius?: number;
|
|
38
|
-
endRadius?: number;
|
|
39
|
-
endX?: number;
|
|
40
|
-
endY?: number;
|
|
41
|
-
colors?: { stop?: number; color?: string }[];
|
|
42
|
-
};
|
|
43
50
|
stroke?: {
|
|
44
51
|
color?: string;
|
|
52
|
+
blur?: number;
|
|
45
53
|
width?: number;
|
|
46
54
|
position?: number;
|
|
47
55
|
borderRadius?: number | "circular";
|
|
48
|
-
borderPosition?:
|
|
49
|
-
gradient?:
|
|
50
|
-
type: 'linear' | 'radial';
|
|
51
|
-
startX?: number;
|
|
52
|
-
startY?: number;
|
|
53
|
-
endX?: number;
|
|
54
|
-
endY?: number;
|
|
55
|
-
startRadius?: number;
|
|
56
|
-
endRadius?: number;
|
|
57
|
-
colors: { stop: number; color: string }[];
|
|
58
|
-
};
|
|
56
|
+
borderPosition?: borderPosition;
|
|
57
|
+
gradient?: gradient;
|
|
59
58
|
};
|
|
60
59
|
shadow?: {
|
|
61
60
|
color?: string;
|
|
@@ -64,20 +63,11 @@ export interface CanvasConfig {
|
|
|
64
63
|
blur?: number;
|
|
65
64
|
opacity?: number;
|
|
66
65
|
borderRadius?: number | "circular";
|
|
67
|
-
gradient?:
|
|
68
|
-
type: 'linear' | 'radial';
|
|
69
|
-
startX?: number;
|
|
70
|
-
startY?: number;
|
|
71
|
-
endX?: number;
|
|
72
|
-
endY?: number;
|
|
73
|
-
startRadius?: number;
|
|
74
|
-
endRadius?: number;
|
|
75
|
-
colors: { stop: number; color: string }[];
|
|
76
|
-
};
|
|
66
|
+
gradient?: gradient;
|
|
77
67
|
};
|
|
78
68
|
rotation?: number;
|
|
79
69
|
borderRadius?: number | "circular";
|
|
80
|
-
borderPosition?:
|
|
70
|
+
borderPosition?: borderPosition;
|
|
81
71
|
};
|
|
82
72
|
|
|
83
73
|
/**
|
|
@@ -112,21 +102,19 @@ export interface ImageProperties {
|
|
|
112
102
|
x?: number;
|
|
113
103
|
y?: number;
|
|
114
104
|
isFilled?: boolean;
|
|
105
|
+
filling?: { percentage?: number, rotation?: number }
|
|
115
106
|
color?: string;
|
|
116
107
|
opacity?: number;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
endRadius?: number;
|
|
123
|
-
endX?: number;
|
|
124
|
-
endY?: number;
|
|
125
|
-
colors?: { stop?: number; color?: string }[];
|
|
108
|
+
blur?: number;
|
|
109
|
+
zoom?: {
|
|
110
|
+
scale?: number;
|
|
111
|
+
x?: number;
|
|
112
|
+
y?: number;
|
|
126
113
|
};
|
|
114
|
+
gradient?: gradient;
|
|
127
115
|
rotation?: number;
|
|
128
116
|
borderRadius?: number | "circular";
|
|
129
|
-
borderPosition?:
|
|
117
|
+
borderPosition?: borderPosition;
|
|
130
118
|
perspective?: {
|
|
131
119
|
topLeft: { x: number, y: number };
|
|
132
120
|
topRight: { x: number, y: number };
|
|
@@ -136,19 +124,11 @@ export interface ImageProperties {
|
|
|
136
124
|
stroke?: {
|
|
137
125
|
color?: string;
|
|
138
126
|
width?: number;
|
|
127
|
+
blur?: number;
|
|
139
128
|
position?: number;
|
|
140
129
|
borderRadius?: number | "circular";
|
|
141
|
-
borderPosition?:
|
|
142
|
-
gradient?:
|
|
143
|
-
type: 'linear' | 'radial';
|
|
144
|
-
startX?: number;
|
|
145
|
-
startY?: number;
|
|
146
|
-
endX?: number;
|
|
147
|
-
endY?: number;
|
|
148
|
-
startRadius?: number;
|
|
149
|
-
endRadius?: number;
|
|
150
|
-
colors: { stop: number; color: string }[];
|
|
151
|
-
};
|
|
130
|
+
borderPosition?: borderPosition;
|
|
131
|
+
gradient?: gradient;
|
|
152
132
|
};
|
|
153
133
|
shadow?: {
|
|
154
134
|
color?: string;
|
|
@@ -157,17 +137,19 @@ export interface ImageProperties {
|
|
|
157
137
|
blur?: number;
|
|
158
138
|
opacity?: number;
|
|
159
139
|
borderRadius?: number | "circular",
|
|
160
|
-
gradient?:
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
};
|
|
170
|
-
|
|
140
|
+
gradient?: gradient;
|
|
141
|
+
|
|
142
|
+
/// Adding soon
|
|
143
|
+
flip?: { horizontal?: boolean; vertical?: boolean };
|
|
144
|
+
clip?: { type: 'rect' | 'circle' | 'polygon' | 'custom'; points?: { x: number, y: number }[] };
|
|
145
|
+
tint?: { color: string; opacity?: number };
|
|
146
|
+
noise?: { intensity: number };
|
|
147
|
+
vignette?: { strength: number; radius?: number };
|
|
148
|
+
duotone?: { shadows: string; highlights: string };
|
|
149
|
+
pixelate?: { size: number };
|
|
150
|
+
bloom?: { intensity: number; threshold?: number; radius?: number };
|
|
151
|
+
warp?: { type: 'arc' | 'bulge' | 'pinch' | 'wave' | 'twist'; intensity: number };
|
|
152
|
+
halftone?: { dotSize: number; contrast?: number };
|
|
171
153
|
};
|
|
172
154
|
};
|
|
173
155
|
|
|
@@ -182,22 +164,11 @@ export interface TextObject {
|
|
|
182
164
|
color?: string;
|
|
183
165
|
maxWidth?: number;
|
|
184
166
|
lineHeight?: number;
|
|
185
|
-
|
|
167
|
+
maxHeight?: number;
|
|
168
|
+
textAlign?: "end" | "center" | "left" | "right" | "start" ;
|
|
186
169
|
textBaseline?: "alphabetic" | "bottom" | "hanging" | "ideographic" | "middle" | "top";
|
|
187
170
|
outlined?: boolean;
|
|
188
|
-
gradient?:
|
|
189
|
-
type?: 'linear' | 'radial';
|
|
190
|
-
startX?: number;
|
|
191
|
-
startY?: number;
|
|
192
|
-
endX?: number;
|
|
193
|
-
endY?: number;
|
|
194
|
-
startRadius?: number;
|
|
195
|
-
endRadius?: number;
|
|
196
|
-
colors: {
|
|
197
|
-
stop: number;
|
|
198
|
-
color: string;
|
|
199
|
-
}[];
|
|
200
|
-
};
|
|
171
|
+
gradient?: gradient;
|
|
201
172
|
shadow?: {
|
|
202
173
|
color?: string;
|
|
203
174
|
offsetX?: number;
|
|
@@ -207,17 +178,9 @@ export interface TextObject {
|
|
|
207
178
|
};
|
|
208
179
|
stroke?: {
|
|
209
180
|
color?: string;
|
|
181
|
+
blur?: number;
|
|
210
182
|
width?: number;
|
|
211
|
-
gradient?:
|
|
212
|
-
type: 'linear' | 'radial';
|
|
213
|
-
startX?: number;
|
|
214
|
-
startY?: number;
|
|
215
|
-
endX?: number;
|
|
216
|
-
endY?: number;
|
|
217
|
-
startRadius?: number;
|
|
218
|
-
endRadius?: number;
|
|
219
|
-
colors: { stop: number; color: string }[];
|
|
220
|
-
}
|
|
183
|
+
gradient?: gradient;
|
|
221
184
|
};
|
|
222
185
|
rotation?: number;
|
|
223
186
|
opacity?: number;
|
|
@@ -290,6 +253,7 @@ export interface CustomOptions {
|
|
|
290
253
|
lineStyle?: {
|
|
291
254
|
width?: number;
|
|
292
255
|
color?: string;
|
|
256
|
+
gradient?: gradient;
|
|
293
257
|
lineRadius?: number | string;
|
|
294
258
|
lineJoin?: 'round' | 'bevel' | 'miter';
|
|
295
259
|
lineCap?: 'butt' | 'round' | 'square';
|
|
@@ -300,14 +264,17 @@ export interface CustomOptions {
|
|
|
300
264
|
};
|
|
301
265
|
stroke?: {
|
|
302
266
|
color?: string;
|
|
267
|
+
gradient?: gradient;
|
|
303
268
|
width?: number;
|
|
304
269
|
lineRadius?: number | string;
|
|
270
|
+
lineCap?: 'butt' | 'round' | 'square';
|
|
305
271
|
};
|
|
306
272
|
shadow?: {
|
|
307
273
|
offsetX?: number;
|
|
308
274
|
offsetY?: number;
|
|
309
275
|
blur?: number;
|
|
310
276
|
color?: string;
|
|
277
|
+
gradient?: gradient;
|
|
311
278
|
lineRadius?: number | string;
|
|
312
279
|
};
|
|
313
280
|
};
|
|
@@ -524,7 +491,7 @@ export interface GradientConfig{
|
|
|
524
491
|
endY?: number;
|
|
525
492
|
startRadius?: number;
|
|
526
493
|
endRadius?: number;
|
|
527
|
-
angle?: number;
|
|
494
|
+
angle?: number;
|
|
528
495
|
colors: {
|
|
529
496
|
stop: number;
|
|
530
497
|
color: string;
|
|
@@ -532,42 +499,42 @@ export interface GradientConfig{
|
|
|
532
499
|
};
|
|
533
500
|
|
|
534
501
|
export interface Frame{
|
|
535
|
-
backgroundColor?: string;
|
|
502
|
+
backgroundColor?: string;
|
|
536
503
|
gradient?: GradientConfig;
|
|
537
504
|
pattern?: {
|
|
538
|
-
imagePath: string;
|
|
539
|
-
repeat?: 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat';
|
|
505
|
+
imagePath: string;
|
|
506
|
+
repeat?: 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat';
|
|
540
507
|
};
|
|
541
|
-
imagePath?: string;
|
|
542
|
-
blendMode?: GlobalCompositeOperation;
|
|
508
|
+
imagePath?: string;
|
|
509
|
+
blendMode?: GlobalCompositeOperation;
|
|
543
510
|
transformations?: {
|
|
544
511
|
scaleX?: number;
|
|
545
512
|
scaleY?: number;
|
|
546
|
-
rotate?: number;
|
|
513
|
+
rotate?: number;
|
|
547
514
|
translateX?: number;
|
|
548
515
|
translateY?: number;
|
|
549
516
|
};
|
|
550
|
-
duration?: number;
|
|
551
|
-
width?: number;
|
|
552
|
-
height?: number;
|
|
553
|
-
onDrawCustom?: (ctx:
|
|
517
|
+
duration?: number;
|
|
518
|
+
width?: number;
|
|
519
|
+
height?: number;
|
|
520
|
+
onDrawCustom?: (ctx: SKRSContext2D, canvas: Canvas) => void;
|
|
554
521
|
};
|
|
555
522
|
|
|
556
523
|
|
|
557
524
|
export interface PatternOptions {
|
|
558
525
|
type: 'dots' | 'stripes' | 'grid' | 'checkerboard' | 'custom';
|
|
559
|
-
color?: string;
|
|
526
|
+
color?: string;
|
|
560
527
|
secondaryColor?: string;
|
|
561
528
|
x?: number;
|
|
562
529
|
y?: number;
|
|
563
530
|
width?: number;
|
|
564
531
|
height?: number;
|
|
565
|
-
size?: number;
|
|
566
|
-
spacing?: number;
|
|
567
|
-
angle?: number;
|
|
568
|
-
customPatternImage?: string;
|
|
569
|
-
backgroundColor?: string;
|
|
570
|
-
gradient?: GradientConfig;
|
|
532
|
+
size?: number;
|
|
533
|
+
spacing?: number;
|
|
534
|
+
angle?: number;
|
|
535
|
+
customPatternImage?: string;
|
|
536
|
+
backgroundColor?: string;
|
|
537
|
+
gradient?: GradientConfig;
|
|
571
538
|
}
|
|
572
539
|
|
|
573
540
|
|
|
@@ -11,9 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
import { OutputFormat, CanvasConfig, ImageProperties, TextObject, GIFOptions, GIFResults, CustomOptions, cropOptions, GradientConfig, Frame, PatternOptions, ExtractFramesOptions, ResizeOptions, CropOptions } from "./types";
|
|
14
|
-
import {
|
|
15
|
-
import { circularBorder } from "./Background/circular";
|
|
16
|
-
import { drawBackgroundColor, drawBackgroundGradient, customBackground } from "./Background/bg";
|
|
14
|
+
import { drawBackgroundColor, drawBackgroundGradient, customBackground, backgroundRadius } from "./Background/bg";
|
|
17
15
|
import { applyRotation, imageRadius, applyStroke, applyZoom, applyShadow, objectRadius, drawShape, applyPerspective } from './Image/imageProperties'
|
|
18
16
|
import { drawText, WrappedText } from "./Texts/textProperties";
|
|
19
17
|
import { loadImages, resizingImg, converter, applyColorFilters, imgEffects, cropOuter, cropInner, detectColors, removeColor, bgRemoval } from './General/general functions';
|
|
@@ -35,9 +33,7 @@ export {
|
|
|
35
33
|
GIFResults,
|
|
36
34
|
CustomOptions,
|
|
37
35
|
cropOptions,
|
|
38
|
-
radiusBorder,
|
|
39
36
|
customLines,
|
|
40
|
-
circularBorder,
|
|
41
37
|
drawBackgroundColor,
|
|
42
38
|
drawBackgroundGradient,
|
|
43
39
|
customBackground,
|
|
@@ -47,6 +43,7 @@ export {
|
|
|
47
43
|
applyZoom,
|
|
48
44
|
applyShadow,
|
|
49
45
|
objectRadius,
|
|
46
|
+
backgroundRadius,
|
|
50
47
|
drawShape,
|
|
51
48
|
drawText,
|
|
52
49
|
WrappedText,
|
package/lib/index.ts
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import * as path from "path";
|
|
2
2
|
import * as fs from "fs";
|
|
3
|
+
import { execSync } from "child_process";
|
|
3
4
|
|
|
4
5
|
const CYAN = "\x1b[36m";
|
|
6
|
+
const GREEN = "\x1b[32m";
|
|
7
|
+
const RED = "\x1b[31m";
|
|
5
8
|
const RESET = "\x1b[0m";
|
|
6
9
|
|
|
7
10
|
const packageJsonPath = path.resolve(process.cwd(), "package.json");
|
|
8
11
|
let packageJson: Record<string, any> = {};
|
|
9
12
|
|
|
13
|
+
// ** Load package.json Safely **
|
|
10
14
|
try {
|
|
11
15
|
packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf8"));
|
|
12
16
|
} catch (error) {
|
|
@@ -14,29 +18,53 @@ try {
|
|
|
14
18
|
}
|
|
15
19
|
|
|
16
20
|
const getLibraryVersion = (library: string): string => {
|
|
17
|
-
const dependencies = packageJson.dependencies
|
|
18
|
-
const devDependencies = packageJson.devDependencies
|
|
19
|
-
|
|
21
|
+
const dependencies = packageJson.dependencies || {};
|
|
22
|
+
const devDependencies = packageJson.devDependencies || {};
|
|
23
|
+
|
|
20
24
|
return (
|
|
21
|
-
dependencies[library]?.replace(/^(\^|~)/, "") ||
|
|
22
|
-
devDependencies[library]?.replace(/^(\^|~)/, "") ||
|
|
25
|
+
dependencies[library]?.replace(/^(\^|~)/, "") ||
|
|
26
|
+
devDependencies[library]?.replace(/^(\^|~)/, "") ||
|
|
23
27
|
"Not installed"
|
|
24
28
|
);
|
|
25
29
|
};
|
|
26
30
|
|
|
31
|
+
// ** Check Installed Version BEFORE Fetching Remote Version **
|
|
32
|
+
const installedVersion = getLibraryVersion("apexify.js");
|
|
33
|
+
|
|
27
34
|
fetch("https://registry.npmjs.com/-/v1/search?text=apexify.js")
|
|
28
35
|
.then(response => response.json())
|
|
29
36
|
.then(data => {
|
|
30
37
|
const latestVersion = data.objects?.[0]?.package?.version;
|
|
31
|
-
|
|
38
|
+
console.log(`${CYAN}🌐 Latest Apexify.js Version: ${latestVersion}${RESET}`);
|
|
39
|
+
|
|
40
|
+
if (!installedVersion || installedVersion === "Not installed") {
|
|
41
|
+
console.log(`${RED}⚠️ Apexify.js is not installed.${RESET}`);
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
32
44
|
|
|
33
45
|
if (latestVersion && installedVersion !== latestVersion) {
|
|
34
|
-
console.
|
|
35
|
-
|
|
36
|
-
|
|
46
|
+
console.log(`${CYAN}🚀 A new version of Apexify.js is available: ${latestVersion}${RESET}`);
|
|
47
|
+
console.log(`${CYAN}📦 Updating Apexify.js...${RESET}`);
|
|
48
|
+
|
|
49
|
+
try {
|
|
50
|
+
execSync("npm install apexify.js@latest", { stdio: "inherit" });
|
|
51
|
+
console.log(`${GREEN}✅ Apexify.js has been successfully updated to version ${latestVersion}.${RESET}`);
|
|
52
|
+
} catch (error) {
|
|
53
|
+
console.error(`${RED}❌ Error updating Apexify.js: ${error}${RESET}`);
|
|
54
|
+
}
|
|
55
|
+
} else {
|
|
56
|
+
console.log(`${GREEN}✅ Apexify.js is up to date! (${installedVersion})${RESET}`);
|
|
37
57
|
}
|
|
38
58
|
})
|
|
39
|
-
.catch(error => console.error("⚠️ Error fetching latest
|
|
59
|
+
.catch(error => console.error("⚠️ Error fetching latest Apexify.js version:", error));
|
|
60
|
+
|
|
61
|
+
if (!installedVersion || installedVersion === "Not installed") {
|
|
62
|
+
console.log(`${RED}⚠️ Apexify.js is not installed. No need to uninstall.${RESET}`);
|
|
63
|
+
} else {
|
|
64
|
+
console.log(`${GREEN}✅ Apexify.js is already installed (Version: ${installedVersion}).${RESET}`);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// ✅ FIX: Do NOT uninstall automatically
|
|
40
68
|
|
|
41
69
|
import {
|
|
42
70
|
ApexAI, ApexChat, ApexImagine, ApexPainter, ApexListener, readFile,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apexify.js",
|
|
3
|
-
"version": "4.6.
|
|
3
|
+
"version": "4.6.3",
|
|
4
4
|
"description": "Unlimited AI models and Canvas library. Supports ts & js (supports front/back end).",
|
|
5
5
|
"author": "zenith-79",
|
|
6
6
|
"license": "MIT",
|
|
@@ -226,7 +226,7 @@
|
|
|
226
226
|
],
|
|
227
227
|
"dependencies": {
|
|
228
228
|
"@napi-rs/canvas": "^0.1.53",
|
|
229
|
-
"apexify.js": "^4.6.
|
|
229
|
+
"apexify.js": "^4.6.2",
|
|
230
230
|
"axios": "^1.7.7",
|
|
231
231
|
"discord.js": "^14.18.0",
|
|
232
232
|
"fluent-ffmpeg": "^2.1.3",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"circular.d.ts","sourceRoot":"","sources":["../../../../../lib/canvas/utils/Background/circular.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,wBAAgB,cAAc,CAC1B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAU,GACjB,IAAI,CAQN"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.circularBorder = circularBorder;
|
|
4
|
-
function circularBorder(ctx, width, height, radius = 0) {
|
|
5
|
-
const minDimension = Math.min(width, height);
|
|
6
|
-
const clipRadius = minDimension / 2 + radius;
|
|
7
|
-
ctx.save();
|
|
8
|
-
ctx.beginPath();
|
|
9
|
-
ctx.arc(width / 2, height / 2, clipRadius, 0, Math.PI * 2);
|
|
10
|
-
ctx.closePath();
|
|
11
|
-
ctx.clip();
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=circular.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"circular.js","sourceRoot":"","sources":["../../../../../lib/canvas/utils/Background/circular.ts"],"names":[],"mappings":";;AAEA,wCAaG;AAbH,SAAgB,cAAc,CAC1B,GAAkB,EAClB,KAAa,EACb,MAAc,EACd,SAAiB,CAAC;IAElB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,YAAY,GAAG,CAAC,GAAG,MAAM,CAAC;IAC7C,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,IAAI,EAAE,CAAC;AACb,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { SKRSContext2D } from "@napi-rs/canvas";
|
|
2
|
-
/**
|
|
3
|
-
* Applies a radius border (clipping path) to the canvas context with support for selective corner rounding.
|
|
4
|
-
*
|
|
5
|
-
* @param ctx The canvas rendering context.
|
|
6
|
-
* @param x The x-coordinate of the rectangle.
|
|
7
|
-
* @param y The y-coordinate of the rectangle.
|
|
8
|
-
* @param width The width of the rectangle.
|
|
9
|
-
* @param height The height of the rectangle.
|
|
10
|
-
* @param radius The radius for rounding the corners.
|
|
11
|
-
* @param borderPosition Which corners to round. Valid values include:
|
|
12
|
-
* - "all" (default)
|
|
13
|
-
* - "top", "bottom", "left", "right"
|
|
14
|
-
* - "top-left", "top-right", "bottom-left", "bottom-right"
|
|
15
|
-
* - A comma-separated list, e.g. "top, left, bottom" (for three sides) or "top-left, bottom-right"
|
|
16
|
-
*/
|
|
17
|
-
export declare function radiusBorder(ctx: SKRSContext2D, x: number | undefined, y: number | undefined, width: number, height: number, radius?: number, borderPosition?: string): void;
|
|
18
|
-
//# sourceMappingURL=radius.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"radius.d.ts","sourceRoot":"","sources":["../../../../../lib/canvas/utils/Background/radius.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,aAAa,EAClB,CAAC,EAAE,MAAM,YAAI,EACb,CAAC,EAAE,MAAM,YAAI,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAU,EAClB,cAAc,GAAE,MAAc,GAC7B,IAAI,CA4EN"}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.radiusBorder = radiusBorder;
|
|
4
|
-
/**
|
|
5
|
-
* Applies a radius border (clipping path) to the canvas context with support for selective corner rounding.
|
|
6
|
-
*
|
|
7
|
-
* @param ctx The canvas rendering context.
|
|
8
|
-
* @param x The x-coordinate of the rectangle.
|
|
9
|
-
* @param y The y-coordinate of the rectangle.
|
|
10
|
-
* @param width The width of the rectangle.
|
|
11
|
-
* @param height The height of the rectangle.
|
|
12
|
-
* @param radius The radius for rounding the corners.
|
|
13
|
-
* @param borderPosition Which corners to round. Valid values include:
|
|
14
|
-
* - "all" (default)
|
|
15
|
-
* - "top", "bottom", "left", "right"
|
|
16
|
-
* - "top-left", "top-right", "bottom-left", "bottom-right"
|
|
17
|
-
* - A comma-separated list, e.g. "top, left, bottom" (for three sides) or "top-left, bottom-right"
|
|
18
|
-
*/
|
|
19
|
-
function radiusBorder(ctx, x = 0, y = 0, width, height, radius = 0, borderPosition = 'all') {
|
|
20
|
-
const minDimension = Math.min(width, height);
|
|
21
|
-
const maxRadius = minDimension / 2;
|
|
22
|
-
const clipRadius = Math.min(radius, maxRadius);
|
|
23
|
-
let roundTopLeft = false;
|
|
24
|
-
let roundTopRight = false;
|
|
25
|
-
let roundBottomRight = false;
|
|
26
|
-
let roundBottomLeft = false;
|
|
27
|
-
const bp = borderPosition.trim().toLowerCase();
|
|
28
|
-
if (bp === 'all') {
|
|
29
|
-
roundTopLeft = roundTopRight = roundBottomRight = roundBottomLeft = true;
|
|
30
|
-
}
|
|
31
|
-
else if (bp === 'top') {
|
|
32
|
-
roundTopLeft = roundTopRight = true;
|
|
33
|
-
}
|
|
34
|
-
else if (bp === 'bottom') {
|
|
35
|
-
roundBottomLeft = roundBottomRight = true;
|
|
36
|
-
}
|
|
37
|
-
else if (bp === 'left') {
|
|
38
|
-
roundTopLeft = roundBottomLeft = true;
|
|
39
|
-
}
|
|
40
|
-
else if (bp === 'right') {
|
|
41
|
-
roundTopRight = roundBottomRight = true;
|
|
42
|
-
}
|
|
43
|
-
else if (bp === 'top-left') {
|
|
44
|
-
roundTopLeft = true;
|
|
45
|
-
}
|
|
46
|
-
else if (bp === 'top-right') {
|
|
47
|
-
roundTopRight = true;
|
|
48
|
-
}
|
|
49
|
-
else if (bp === 'bottom-left') {
|
|
50
|
-
roundBottomLeft = true;
|
|
51
|
-
}
|
|
52
|
-
else if (bp === 'bottom-right') {
|
|
53
|
-
roundBottomRight = true;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
const positions = bp.split(',').map(s => s.trim());
|
|
57
|
-
roundTopLeft =
|
|
58
|
-
positions.includes('top-left') || (positions.includes('top') && positions.includes('left'));
|
|
59
|
-
roundTopRight =
|
|
60
|
-
positions.includes('top-right') || (positions.includes('top') && positions.includes('right'));
|
|
61
|
-
roundBottomRight =
|
|
62
|
-
positions.includes('bottom-right') || (positions.includes('bottom') && positions.includes('right'));
|
|
63
|
-
roundBottomLeft =
|
|
64
|
-
positions.includes('bottom-left') || (positions.includes('bottom') && positions.includes('left'));
|
|
65
|
-
}
|
|
66
|
-
const tl = roundTopLeft ? clipRadius : 0;
|
|
67
|
-
const tr = roundTopRight ? clipRadius : 0;
|
|
68
|
-
const br = roundBottomRight ? clipRadius : 0;
|
|
69
|
-
const bl = roundBottomLeft ? clipRadius : 0;
|
|
70
|
-
ctx.save();
|
|
71
|
-
ctx.beginPath();
|
|
72
|
-
ctx.moveTo(x + tl, y);
|
|
73
|
-
ctx.lineTo(x + width - tr, y);
|
|
74
|
-
if (tr > 0) {
|
|
75
|
-
ctx.quadraticCurveTo(x + width, y, x + width, y + tr);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
ctx.lineTo(x + width, y);
|
|
79
|
-
}
|
|
80
|
-
ctx.lineTo(x + width, y + height - br);
|
|
81
|
-
if (br > 0) {
|
|
82
|
-
ctx.quadraticCurveTo(x + width, y + height, x + width - br, y + height);
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
ctx.lineTo(x + width, y + height);
|
|
86
|
-
}
|
|
87
|
-
ctx.lineTo(x + bl, y + height);
|
|
88
|
-
if (bl > 0) {
|
|
89
|
-
ctx.quadraticCurveTo(x, y + height, x, y + height - bl);
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
ctx.lineTo(x, y + height);
|
|
93
|
-
}
|
|
94
|
-
ctx.lineTo(x, y + tl);
|
|
95
|
-
if (tl > 0) {
|
|
96
|
-
ctx.quadraticCurveTo(x, y, x + tl, y);
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
ctx.lineTo(x, y);
|
|
100
|
-
}
|
|
101
|
-
ctx.closePath();
|
|
102
|
-
ctx.clip();
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=radius.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"radius.js","sourceRoot":"","sources":["../../../../../lib/canvas/utils/Background/radius.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"circular.d.ts","sourceRoot":"","sources":["../../../../../lib/canvas/utils/Background/circular.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,wBAAgB,cAAc,CAC1B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAU,GACjB,IAAI,CAQN"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.circularBorder = circularBorder;
|
|
4
|
-
function circularBorder(ctx, width, height, radius = 0) {
|
|
5
|
-
const minDimension = Math.min(width, height);
|
|
6
|
-
const clipRadius = minDimension / 2 + radius;
|
|
7
|
-
ctx.save();
|
|
8
|
-
ctx.beginPath();
|
|
9
|
-
ctx.arc(width / 2, height / 2, clipRadius, 0, Math.PI * 2);
|
|
10
|
-
ctx.closePath();
|
|
11
|
-
ctx.clip();
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=circular.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"circular.js","sourceRoot":"","sources":["../../../../../lib/canvas/utils/Background/circular.ts"],"names":[],"mappings":";;AAEA,wCAaG;AAbH,SAAgB,cAAc,CAC1B,GAAkB,EAClB,KAAa,EACb,MAAc,EACd,SAAiB,CAAC;IAElB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,YAAY,GAAG,CAAC,GAAG,MAAM,CAAC;IAC7C,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,IAAI,EAAE,CAAC;AACb,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { SKRSContext2D } from "@napi-rs/canvas";
|
|
2
|
-
/**
|
|
3
|
-
* Applies a radius border (clipping path) to the canvas context with support for selective corner rounding.
|
|
4
|
-
*
|
|
5
|
-
* @param ctx The canvas rendering context.
|
|
6
|
-
* @param x The x-coordinate of the rectangle.
|
|
7
|
-
* @param y The y-coordinate of the rectangle.
|
|
8
|
-
* @param width The width of the rectangle.
|
|
9
|
-
* @param height The height of the rectangle.
|
|
10
|
-
* @param radius The radius for rounding the corners.
|
|
11
|
-
* @param borderPosition Which corners to round. Valid values include:
|
|
12
|
-
* - "all" (default)
|
|
13
|
-
* - "top", "bottom", "left", "right"
|
|
14
|
-
* - "top-left", "top-right", "bottom-left", "bottom-right"
|
|
15
|
-
* - A comma-separated list, e.g. "top, left, bottom" (for three sides) or "top-left, bottom-right"
|
|
16
|
-
*/
|
|
17
|
-
export declare function radiusBorder(ctx: SKRSContext2D, x: number | undefined, y: number | undefined, width: number, height: number, radius?: number, borderPosition?: string): void;
|
|
18
|
-
//# sourceMappingURL=radius.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"radius.d.ts","sourceRoot":"","sources":["../../../../../lib/canvas/utils/Background/radius.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,aAAa,EAClB,CAAC,EAAE,MAAM,YAAI,EACb,CAAC,EAAE,MAAM,YAAI,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAU,EAClB,cAAc,GAAE,MAAc,GAC7B,IAAI,CA4EN"}
|