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.
Files changed (122) hide show
  1. package/dist/cjs/ai/functions/readFiles.js +1 -1
  2. package/dist/cjs/ai/functions/readFiles.js.map +1 -1
  3. package/dist/cjs/ai/modals-chat/electronHub/chatmodels.d.ts.map +1 -1
  4. package/dist/cjs/ai/modals-chat/electronHub/chatmodels.js +2 -1
  5. package/dist/cjs/ai/modals-chat/electronHub/chatmodels.js.map +1 -1
  6. package/dist/cjs/ai/modals-chat/electronHub/speechModels.d.ts.map +1 -1
  7. package/dist/cjs/ai/modals-chat/electronHub/speechModels.js +1 -1
  8. package/dist/cjs/ai/modals-chat/electronHub/speechModels.js.map +1 -1
  9. package/dist/cjs/canvas/ApexPainter.d.ts.map +1 -1
  10. package/dist/cjs/canvas/ApexPainter.js +27 -28
  11. package/dist/cjs/canvas/ApexPainter.js.map +1 -1
  12. package/dist/cjs/canvas/Themes/Level-Up/levelup.d.ts +11 -0
  13. package/dist/cjs/canvas/Themes/Level-Up/levelup.d.ts.map +1 -0
  14. package/dist/cjs/canvas/Themes/Level-Up/levelup.js +163 -0
  15. package/dist/cjs/canvas/Themes/Level-Up/levelup.js.map +1 -0
  16. package/dist/cjs/canvas/utils/Background/bg.d.ts +17 -10
  17. package/dist/cjs/canvas/utils/Background/bg.d.ts.map +1 -1
  18. package/dist/cjs/canvas/utils/Background/bg.js +102 -27
  19. package/dist/cjs/canvas/utils/Background/bg.js.map +1 -1
  20. package/dist/cjs/canvas/utils/Custom/customLines.d.ts.map +1 -1
  21. package/dist/cjs/canvas/utils/Custom/customLines.js +43 -19
  22. package/dist/cjs/canvas/utils/Custom/customLines.js.map +1 -1
  23. package/dist/cjs/canvas/utils/General/general functions.d.ts +6 -1
  24. package/dist/cjs/canvas/utils/General/general functions.d.ts.map +1 -1
  25. package/dist/cjs/canvas/utils/General/general functions.js +19 -20
  26. package/dist/cjs/canvas/utils/General/general functions.js.map +1 -1
  27. package/dist/cjs/canvas/utils/Image/imageProperties.d.ts +3 -9
  28. package/dist/cjs/canvas/utils/Image/imageProperties.d.ts.map +1 -1
  29. package/dist/cjs/canvas/utils/Image/imageProperties.js +220 -214
  30. package/dist/cjs/canvas/utils/Image/imageProperties.js.map +1 -1
  31. package/dist/cjs/canvas/utils/Texts/textProperties.d.ts +12 -14
  32. package/dist/cjs/canvas/utils/Texts/textProperties.d.ts.map +1 -1
  33. package/dist/cjs/canvas/utils/Texts/textProperties.js +100 -91
  34. package/dist/cjs/canvas/utils/Texts/textProperties.js.map +1 -1
  35. package/dist/cjs/canvas/utils/types.d.ts +89 -109
  36. package/dist/cjs/canvas/utils/types.d.ts.map +1 -1
  37. package/dist/cjs/canvas/utils/types.js.map +1 -1
  38. package/dist/cjs/canvas/utils/utils.d.ts +2 -4
  39. package/dist/cjs/canvas/utils/utils.d.ts.map +1 -1
  40. package/dist/cjs/canvas/utils/utils.js +2 -5
  41. package/dist/cjs/canvas/utils/utils.js.map +1 -1
  42. package/dist/cjs/index.d.ts.map +1 -1
  43. package/dist/cjs/index.js +31 -3
  44. package/dist/cjs/index.js.map +1 -1
  45. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  46. package/dist/esm/ai/functions/readFiles.js +1 -1
  47. package/dist/esm/ai/functions/readFiles.js.map +1 -1
  48. package/dist/esm/ai/modals-chat/electronHub/chatmodels.d.ts.map +1 -1
  49. package/dist/esm/ai/modals-chat/electronHub/chatmodels.js +2 -1
  50. package/dist/esm/ai/modals-chat/electronHub/chatmodels.js.map +1 -1
  51. package/dist/esm/ai/modals-chat/electronHub/speechModels.d.ts.map +1 -1
  52. package/dist/esm/ai/modals-chat/electronHub/speechModels.js +1 -1
  53. package/dist/esm/ai/modals-chat/electronHub/speechModels.js.map +1 -1
  54. package/dist/esm/canvas/ApexPainter.d.ts.map +1 -1
  55. package/dist/esm/canvas/ApexPainter.js +27 -28
  56. package/dist/esm/canvas/ApexPainter.js.map +1 -1
  57. package/dist/esm/canvas/Themes/Level-Up/levelup.d.ts +11 -0
  58. package/dist/esm/canvas/Themes/Level-Up/levelup.d.ts.map +1 -0
  59. package/dist/esm/canvas/Themes/Level-Up/levelup.js +163 -0
  60. package/dist/esm/canvas/Themes/Level-Up/levelup.js.map +1 -0
  61. package/dist/esm/canvas/utils/Background/bg.d.ts +17 -10
  62. package/dist/esm/canvas/utils/Background/bg.d.ts.map +1 -1
  63. package/dist/esm/canvas/utils/Background/bg.js +102 -27
  64. package/dist/esm/canvas/utils/Background/bg.js.map +1 -1
  65. package/dist/esm/canvas/utils/Custom/customLines.d.ts.map +1 -1
  66. package/dist/esm/canvas/utils/Custom/customLines.js +43 -19
  67. package/dist/esm/canvas/utils/Custom/customLines.js.map +1 -1
  68. package/dist/esm/canvas/utils/General/general functions.d.ts +6 -1
  69. package/dist/esm/canvas/utils/General/general functions.d.ts.map +1 -1
  70. package/dist/esm/canvas/utils/General/general functions.js +19 -20
  71. package/dist/esm/canvas/utils/General/general functions.js.map +1 -1
  72. package/dist/esm/canvas/utils/Image/imageProperties.d.ts +3 -9
  73. package/dist/esm/canvas/utils/Image/imageProperties.d.ts.map +1 -1
  74. package/dist/esm/canvas/utils/Image/imageProperties.js +220 -214
  75. package/dist/esm/canvas/utils/Image/imageProperties.js.map +1 -1
  76. package/dist/esm/canvas/utils/Texts/textProperties.d.ts +12 -14
  77. package/dist/esm/canvas/utils/Texts/textProperties.d.ts.map +1 -1
  78. package/dist/esm/canvas/utils/Texts/textProperties.js +100 -91
  79. package/dist/esm/canvas/utils/Texts/textProperties.js.map +1 -1
  80. package/dist/esm/canvas/utils/types.d.ts +89 -109
  81. package/dist/esm/canvas/utils/types.d.ts.map +1 -1
  82. package/dist/esm/canvas/utils/types.js.map +1 -1
  83. package/dist/esm/canvas/utils/utils.d.ts +2 -4
  84. package/dist/esm/canvas/utils/utils.d.ts.map +1 -1
  85. package/dist/esm/canvas/utils/utils.js +2 -5
  86. package/dist/esm/canvas/utils/utils.js.map +1 -1
  87. package/dist/esm/index.d.ts.map +1 -1
  88. package/dist/esm/index.js +31 -3
  89. package/dist/esm/index.js.map +1 -1
  90. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  91. package/lib/ai/functions/readFiles.ts +1 -1
  92. package/lib/ai/modals-chat/electronHub/chatmodels.ts +4 -2
  93. package/lib/ai/modals-chat/electronHub/speechModels.ts +2 -1
  94. package/lib/canvas/ApexPainter.ts +52 -61
  95. package/lib/canvas/Themes/Level-Up/levelup.ts +183 -0
  96. package/lib/canvas/utils/Background/bg.ts +179 -65
  97. package/lib/canvas/utils/Custom/customLines.ts +53 -20
  98. package/lib/canvas/utils/General/general functions.ts +21 -29
  99. package/lib/canvas/utils/Image/imageProperties.ts +399 -318
  100. package/lib/canvas/utils/Texts/textProperties.ts +213 -162
  101. package/lib/canvas/utils/types.ts +74 -107
  102. package/lib/canvas/utils/utils.ts +2 -5
  103. package/lib/index.ts +38 -10
  104. package/package.json +2 -2
  105. package/dist/cjs/canvas/utils/Background/circular.d.ts +0 -3
  106. package/dist/cjs/canvas/utils/Background/circular.d.ts.map +0 -1
  107. package/dist/cjs/canvas/utils/Background/circular.js +0 -13
  108. package/dist/cjs/canvas/utils/Background/circular.js.map +0 -1
  109. package/dist/cjs/canvas/utils/Background/radius.d.ts +0 -18
  110. package/dist/cjs/canvas/utils/Background/radius.d.ts.map +0 -1
  111. package/dist/cjs/canvas/utils/Background/radius.js +0 -104
  112. package/dist/cjs/canvas/utils/Background/radius.js.map +0 -1
  113. package/dist/esm/canvas/utils/Background/circular.d.ts +0 -3
  114. package/dist/esm/canvas/utils/Background/circular.d.ts.map +0 -1
  115. package/dist/esm/canvas/utils/Background/circular.js +0 -13
  116. package/dist/esm/canvas/utils/Background/circular.js.map +0 -1
  117. package/dist/esm/canvas/utils/Background/radius.d.ts +0 -18
  118. package/dist/esm/canvas/utils/Background/radius.d.ts.map +0 -1
  119. package/dist/esm/canvas/utils/Background/radius.js +0 -104
  120. package/dist/esm/canvas/utils/Background/radius.js.map +0 -1
  121. package/lib/canvas/utils/Background/circular.ts +0 -17
  122. 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?: 'all' | 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
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?: 'all' | 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
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
- gradient?: {
118
- type?: 'linear' | 'radial';
119
- startX?: number;
120
- startY?: number;
121
- startRadius?: number;
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?: 'all' | 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
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?: 'all' | 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
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
- type: 'linear' | 'radial';
162
- startX?: number;
163
- startY?: number;
164
- endX?: number;
165
- endY?: number;
166
- startRadius?: number;
167
- endRadius?: number;
168
- colors: { stop: number; color: string }[];
169
- };
170
- borderPosition?: 'all' | 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
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
- textAlign?: "end" | "center" | "left" | "right" | "start" | "justify";
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; // Optional: angle-based linear gradients
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; // Static color
502
+ backgroundColor?: string;
536
503
  gradient?: GradientConfig;
537
504
  pattern?: {
538
- imagePath: string; // Path to the pattern image
539
- repeat?: 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat'; // Pattern repetition options
505
+ imagePath: string;
506
+ repeat?: 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat';
540
507
  };
541
- imagePath?: string; // Path to the image file
542
- blendMode?: GlobalCompositeOperation; // Blending mode
508
+ imagePath?: string;
509
+ blendMode?: GlobalCompositeOperation;
543
510
  transformations?: {
544
511
  scaleX?: number;
545
512
  scaleY?: number;
546
- rotate?: number; // Rotation in degrees
513
+ rotate?: number;
547
514
  translateX?: number;
548
515
  translateY?: number;
549
516
  };
550
- duration?: number; // Custom duration for this frame
551
- width?: number; // Custom width for the canvas
552
- height?: number; // Custom height for the canvas
553
- onDrawCustom?: (ctx: CanvasRenderingContext2D, canvas: Canvas) => void; // Custom draw callback
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; // Base color for the pattern
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; // Size of the pattern (e.g., dot radius, stripe width)
566
- spacing?: number; // Spacing between patterns
567
- angle?: number; // Angle for stripes (degrees)
568
- customPatternImage?: string; // Path to a custom pattern image
569
- backgroundColor?: string; // Single background color to fill the canvas
570
- gradient?: GradientConfig; // Gradient options for background
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 { radiusBorder } from "./Background/radius";
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 as Record<string, string> || {};
18
- const devDependencies = packageJson.devDependencies as Record<string, string> || {};
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
- const installedVersion = getLibraryVersion("apexify.js");
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.error(
35
- `${CYAN}Error: Please update apexify.js to the latest version (${latestVersion}).${RESET}`
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 apexify.js version:", error));
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.2",
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.1",
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,3 +0,0 @@
1
- import { SKRSContext2D } from "@napi-rs/canvas";
2
- export declare function circularBorder(ctx: SKRSContext2D, width: number, height: number, radius?: number): void;
3
- //# sourceMappingURL=circular.d.ts.map
@@ -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,3 +0,0 @@
1
- import { SKRSContext2D } from "@napi-rs/canvas";
2
- export declare function circularBorder(ctx: SKRSContext2D, width: number, height: number, radius?: number): void;
3
- //# sourceMappingURL=circular.d.ts.map
@@ -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"}