apexify.js 4.5.45 → 4.5.51

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 (440) hide show
  1. package/dist/cjs/ai/ApexAI.d.ts.map +1 -0
  2. package/dist/cjs/ai/ApexAI.js.map +1 -0
  3. package/dist/{ai → cjs/ai}/ApexModules.d.ts +12 -1
  4. package/dist/cjs/ai/ApexModules.d.ts.map +1 -0
  5. package/dist/{ai → cjs/ai}/ApexModules.js +10 -0
  6. package/dist/cjs/ai/ApexModules.js.map +1 -0
  7. package/dist/cjs/ai/buttons/drawMenu.d.ts.map +1 -0
  8. package/dist/cjs/ai/buttons/drawMenu.js.map +1 -0
  9. package/dist/cjs/ai/buttons/tools.d.ts.map +1 -0
  10. package/dist/cjs/ai/buttons/tools.js.map +1 -0
  11. package/dist/cjs/ai/functions/chunkString.d.ts.map +1 -0
  12. package/dist/cjs/ai/functions/chunkString.js.map +1 -0
  13. package/dist/{ai → cjs/ai}/functions/draw.d.ts +1 -0
  14. package/dist/cjs/ai/functions/draw.d.ts.map +1 -0
  15. package/dist/{ai → cjs/ai}/functions/draw.js +56 -5
  16. package/dist/cjs/ai/functions/draw.js.map +1 -0
  17. package/dist/cjs/ai/functions/generateVoiceResponse.d.ts.map +1 -0
  18. package/dist/cjs/ai/functions/generateVoiceResponse.js.map +1 -0
  19. package/dist/cjs/ai/functions/imageReader.d.ts.map +1 -0
  20. package/dist/cjs/ai/functions/imageReader.js.map +1 -0
  21. package/dist/cjs/ai/functions/readFiles.d.ts.map +1 -0
  22. package/dist/{ai → cjs/ai}/functions/readFiles.js +17 -7
  23. package/dist/cjs/ai/functions/readFiles.js.map +1 -0
  24. package/dist/cjs/ai/functions/shouldDrawImage.d.ts.map +1 -0
  25. package/dist/cjs/ai/functions/shouldDrawImage.js.map +1 -0
  26. package/dist/cjs/ai/functions/typeWriter.d.ts.map +1 -0
  27. package/dist/cjs/ai/functions/typeWriter.js.map +1 -0
  28. package/dist/cjs/ai/functions/validOptions.d.ts.map +1 -0
  29. package/dist/cjs/ai/functions/validOptions.js.map +1 -0
  30. package/dist/cjs/ai/modals-chat/electronHub/chatmodels.d.ts.map +1 -0
  31. package/dist/cjs/ai/modals-chat/electronHub/chatmodels.js.map +1 -0
  32. package/dist/cjs/ai/modals-chat/electronHub/imageModels.d.ts.map +1 -0
  33. package/dist/cjs/ai/modals-chat/electronHub/imageModels.js.map +1 -0
  34. package/dist/cjs/ai/modals-chat/electronHub/songModels.d.ts +1 -0
  35. package/dist/cjs/ai/modals-chat/electronHub/songModels.d.ts.map +1 -0
  36. package/dist/cjs/ai/modals-chat/electronHub/songModels.js +2 -0
  37. package/dist/cjs/ai/modals-chat/electronHub/songModels.js.map +1 -0
  38. package/dist/cjs/ai/modals-chat/electronHub/speechModels.d.ts +7 -0
  39. package/dist/cjs/ai/modals-chat/electronHub/speechModels.d.ts.map +1 -0
  40. package/dist/cjs/ai/modals-chat/electronHub/speechModels.js +60 -0
  41. package/dist/cjs/ai/modals-chat/electronHub/speechModels.js.map +1 -0
  42. package/dist/cjs/ai/modals-chat/electronHub/videoModels.d.ts +6 -0
  43. package/dist/cjs/ai/modals-chat/electronHub/videoModels.d.ts.map +1 -0
  44. package/dist/cjs/ai/modals-chat/electronHub/videoModels.js +63 -0
  45. package/dist/cjs/ai/modals-chat/electronHub/videoModels.js.map +1 -0
  46. package/dist/cjs/ai/modals-chat/gemini/Gemini-flash.d.ts.map +1 -0
  47. package/dist/cjs/ai/modals-chat/gemini/Gemini-flash.js.map +1 -0
  48. package/dist/cjs/ai/modals-chat/gemini/Gemini-pro.d.ts.map +1 -0
  49. package/dist/cjs/ai/modals-chat/gemini/Gemini-pro.js.map +1 -0
  50. package/dist/cjs/ai/modals-chat/gemini/config.d.ts.map +1 -0
  51. package/dist/cjs/ai/modals-chat/gemini/config.js.map +1 -0
  52. package/dist/cjs/ai/modals-chat/gemini/geminiFast.d.ts.map +1 -0
  53. package/dist/cjs/ai/modals-chat/gemini/geminiFast.js.map +1 -0
  54. package/dist/cjs/ai/modals-chat/groq/chatgroq.d.ts.map +1 -0
  55. package/dist/cjs/ai/modals-chat/groq/chatgroq.js.map +1 -0
  56. package/dist/cjs/ai/modals-chat/groq/imageAnalyzer.d.ts.map +1 -0
  57. package/dist/cjs/ai/modals-chat/groq/imageAnalyzer.js.map +1 -0
  58. package/dist/cjs/ai/modals-chat/groq/whisper.d.ts.map +1 -0
  59. package/dist/cjs/ai/modals-chat/groq/whisper.js.map +1 -0
  60. package/dist/cjs/ai/modals-chat/hercai/chatModels.d.ts.map +1 -0
  61. package/dist/cjs/ai/modals-chat/hercai/chatModels.js.map +1 -0
  62. package/dist/cjs/ai/modals-chat/others/otherModels.d.ts.map +1 -0
  63. package/dist/cjs/ai/modals-chat/others/otherModels.js.map +1 -0
  64. package/dist/cjs/ai/utils.d.ts +13 -0
  65. package/dist/cjs/ai/utils.d.ts.map +1 -0
  66. package/dist/{ai → cjs/ai}/utils.js +3 -1
  67. package/dist/cjs/ai/utils.js.map +1 -0
  68. package/dist/{canvas → cjs/canvas}/ApexPainter.d.ts +7 -7
  69. package/dist/cjs/canvas/ApexPainter.d.ts.map +1 -0
  70. package/dist/{canvas → cjs/canvas}/ApexPainter.js +6 -15
  71. package/dist/cjs/canvas/ApexPainter.js.map +1 -0
  72. package/dist/cjs/canvas/utils/bg.d.ts.map +1 -0
  73. package/dist/cjs/canvas/utils/bg.js.map +1 -0
  74. package/dist/{canvas → cjs/canvas}/utils/charts.d.ts +1 -1
  75. package/dist/cjs/canvas/utils/charts.d.ts.map +1 -0
  76. package/dist/cjs/canvas/utils/charts.js.map +1 -0
  77. package/dist/cjs/canvas/utils/circular.d.ts.map +1 -0
  78. package/dist/cjs/canvas/utils/circular.js.map +1 -0
  79. package/dist/{canvas → cjs/canvas}/utils/conversion.d.ts +1 -1
  80. package/dist/cjs/canvas/utils/conversion.d.ts.map +1 -0
  81. package/dist/{canvas → cjs/canvas}/utils/conversion.js +0 -1
  82. package/dist/cjs/canvas/utils/conversion.js.map +1 -0
  83. package/dist/cjs/canvas/utils/customLines.d.ts.map +1 -0
  84. package/dist/cjs/canvas/utils/customLines.js.map +1 -0
  85. package/dist/{canvas → cjs/canvas}/utils/general functions.d.ts +2 -2
  86. package/dist/cjs/canvas/utils/general functions.d.ts.map +1 -0
  87. package/dist/{canvas → cjs/canvas}/utils/general functions.js +181 -47
  88. package/dist/cjs/canvas/utils/general functions.js.map +1 -0
  89. package/dist/cjs/canvas/utils/imageProperties.d.ts.map +1 -0
  90. package/dist/cjs/canvas/utils/imageProperties.js.map +1 -0
  91. package/dist/cjs/canvas/utils/radius.d.ts.map +1 -0
  92. package/dist/cjs/canvas/utils/radius.js.map +1 -0
  93. package/dist/cjs/canvas/utils/textProperties.d.ts.map +1 -0
  94. package/dist/cjs/canvas/utils/textProperties.js.map +1 -0
  95. package/dist/cjs/canvas/utils/types.d.ts.map +1 -0
  96. package/dist/cjs/canvas/utils/types.js.map +1 -0
  97. package/dist/cjs/canvas/utils/utils.d.ts.map +1 -0
  98. package/dist/cjs/canvas/utils/utils.js.map +1 -0
  99. package/dist/{index.d.ts → cjs/index.d.ts} +4 -2
  100. package/dist/cjs/index.d.ts.map +1 -0
  101. package/dist/{index.js → cjs/index.js} +21 -9
  102. package/dist/cjs/index.js.map +1 -0
  103. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  104. package/dist/cjs/utils.d.ts +5 -0
  105. package/dist/cjs/utils.d.ts.map +1 -0
  106. package/dist/{utils.js → cjs/utils.js} +3 -1
  107. package/dist/cjs/utils.js.map +1 -0
  108. package/dist/esm/ai/ApexAI.d.ts +163 -0
  109. package/dist/esm/ai/ApexAI.d.ts.map +1 -0
  110. package/dist/esm/ai/ApexAI.js +376 -0
  111. package/dist/esm/ai/ApexAI.js.map +1 -0
  112. package/dist/esm/ai/ApexModules.d.ts +46 -0
  113. package/dist/esm/ai/ApexModules.d.ts.map +1 -0
  114. package/dist/esm/ai/ApexModules.js +722 -0
  115. package/dist/esm/ai/ApexModules.js.map +1 -0
  116. package/dist/esm/ai/buttons/drawMenu.d.ts +3 -0
  117. package/dist/esm/ai/buttons/drawMenu.d.ts.map +1 -0
  118. package/dist/esm/ai/buttons/drawMenu.js +271 -0
  119. package/dist/esm/ai/buttons/drawMenu.js.map +1 -0
  120. package/dist/esm/ai/buttons/tools.d.ts +3 -0
  121. package/dist/esm/ai/buttons/tools.d.ts.map +1 -0
  122. package/dist/esm/ai/buttons/tools.js +442 -0
  123. package/dist/esm/ai/buttons/tools.js.map +1 -0
  124. package/dist/esm/ai/functions/chunkString.d.ts +2 -0
  125. package/dist/esm/ai/functions/chunkString.d.ts.map +1 -0
  126. package/dist/esm/ai/functions/chunkString.js +4 -0
  127. package/dist/esm/ai/functions/chunkString.js.map +1 -0
  128. package/dist/esm/ai/functions/draw.d.ts +10 -0
  129. package/dist/esm/ai/functions/draw.d.ts.map +1 -0
  130. package/dist/esm/ai/functions/draw.js +643 -0
  131. package/dist/esm/ai/functions/draw.js.map +1 -0
  132. package/dist/esm/ai/functions/generateVoiceResponse.d.ts +10 -0
  133. package/dist/esm/ai/functions/generateVoiceResponse.d.ts.map +1 -0
  134. package/dist/esm/ai/functions/generateVoiceResponse.js +156 -0
  135. package/dist/esm/ai/functions/generateVoiceResponse.js.map +1 -0
  136. package/dist/esm/ai/functions/imageReader.d.ts +3 -0
  137. package/dist/esm/ai/functions/imageReader.d.ts.map +1 -0
  138. package/dist/esm/ai/functions/imageReader.js +20 -0
  139. package/dist/esm/ai/functions/imageReader.js.map +1 -0
  140. package/dist/esm/ai/functions/readFiles.d.ts +2 -0
  141. package/dist/esm/ai/functions/readFiles.d.ts.map +1 -0
  142. package/dist/esm/ai/functions/readFiles.js +72 -0
  143. package/dist/esm/ai/functions/readFiles.js.map +1 -0
  144. package/dist/esm/ai/functions/shouldDrawImage.d.ts +2 -0
  145. package/dist/esm/ai/functions/shouldDrawImage.d.ts.map +1 -0
  146. package/dist/esm/ai/functions/shouldDrawImage.js +7 -0
  147. package/dist/esm/ai/functions/shouldDrawImage.js.map +1 -0
  148. package/dist/esm/ai/functions/typeWriter.d.ts +2 -0
  149. package/dist/esm/ai/functions/typeWriter.d.ts.map +1 -0
  150. package/dist/esm/ai/functions/typeWriter.js +21 -0
  151. package/dist/{ai → esm/ai}/functions/typeWriter.js.map +1 -1
  152. package/dist/esm/ai/functions/validOptions.d.ts +14 -0
  153. package/dist/esm/ai/functions/validOptions.d.ts.map +1 -0
  154. package/dist/esm/ai/functions/validOptions.js +56 -0
  155. package/dist/esm/ai/functions/validOptions.js.map +1 -0
  156. package/dist/esm/ai/modals-chat/electronHub/chatmodels.d.ts +7 -0
  157. package/dist/esm/ai/modals-chat/electronHub/chatmodels.d.ts.map +1 -0
  158. package/dist/esm/ai/modals-chat/electronHub/chatmodels.js +48 -0
  159. package/dist/esm/ai/modals-chat/electronHub/chatmodels.js.map +1 -0
  160. package/dist/esm/ai/modals-chat/electronHub/imageModels.d.ts +6 -0
  161. package/dist/esm/ai/modals-chat/electronHub/imageModels.d.ts.map +1 -0
  162. package/dist/esm/ai/modals-chat/electronHub/imageModels.js +43 -0
  163. package/dist/esm/ai/modals-chat/electronHub/imageModels.js.map +1 -0
  164. package/dist/esm/ai/modals-chat/electronHub/songModels.d.ts +1 -0
  165. package/dist/esm/ai/modals-chat/electronHub/songModels.d.ts.map +1 -0
  166. package/dist/esm/ai/modals-chat/electronHub/songModels.js +2 -0
  167. package/dist/esm/ai/modals-chat/electronHub/songModels.js.map +1 -0
  168. package/dist/esm/ai/modals-chat/electronHub/speechModels.d.ts +7 -0
  169. package/dist/esm/ai/modals-chat/electronHub/speechModels.d.ts.map +1 -0
  170. package/dist/esm/ai/modals-chat/electronHub/speechModels.js +54 -0
  171. package/dist/esm/ai/modals-chat/electronHub/speechModels.js.map +1 -0
  172. package/dist/esm/ai/modals-chat/electronHub/videoModels.d.ts +6 -0
  173. package/dist/esm/ai/modals-chat/electronHub/videoModels.d.ts.map +1 -0
  174. package/dist/esm/ai/modals-chat/electronHub/videoModels.js +57 -0
  175. package/dist/esm/ai/modals-chat/electronHub/videoModels.js.map +1 -0
  176. package/dist/esm/ai/modals-chat/gemini/Gemini-flash.d.ts +13 -0
  177. package/dist/esm/ai/modals-chat/gemini/Gemini-flash.d.ts.map +1 -0
  178. package/dist/esm/ai/modals-chat/gemini/Gemini-flash.js +179 -0
  179. package/dist/esm/ai/modals-chat/gemini/Gemini-flash.js.map +1 -0
  180. package/dist/esm/ai/modals-chat/gemini/Gemini-pro.d.ts +13 -0
  181. package/dist/esm/ai/modals-chat/gemini/Gemini-pro.d.ts.map +1 -0
  182. package/dist/esm/ai/modals-chat/gemini/Gemini-pro.js +179 -0
  183. package/dist/esm/ai/modals-chat/gemini/Gemini-pro.js.map +1 -0
  184. package/dist/esm/ai/modals-chat/gemini/config.d.ts +5 -0
  185. package/dist/esm/ai/modals-chat/gemini/config.d.ts.map +1 -0
  186. package/dist/esm/ai/modals-chat/gemini/config.js +11 -0
  187. package/dist/esm/ai/modals-chat/gemini/config.js.map +1 -0
  188. package/dist/esm/ai/modals-chat/gemini/geminiFast.d.ts +15 -0
  189. package/dist/esm/ai/modals-chat/gemini/geminiFast.d.ts.map +1 -0
  190. package/dist/esm/ai/modals-chat/gemini/geminiFast.js +140 -0
  191. package/dist/esm/ai/modals-chat/gemini/geminiFast.js.map +1 -0
  192. package/dist/esm/ai/modals-chat/groq/chatgroq.d.ts +9 -0
  193. package/dist/esm/ai/modals-chat/groq/chatgroq.d.ts.map +1 -0
  194. package/dist/esm/ai/modals-chat/groq/chatgroq.js +58 -0
  195. package/dist/esm/ai/modals-chat/groq/chatgroq.js.map +1 -0
  196. package/dist/esm/ai/modals-chat/groq/imageAnalyzer.d.ts +8 -0
  197. package/dist/esm/ai/modals-chat/groq/imageAnalyzer.d.ts.map +1 -0
  198. package/dist/esm/ai/modals-chat/groq/imageAnalyzer.js +53 -0
  199. package/dist/esm/ai/modals-chat/groq/imageAnalyzer.js.map +1 -0
  200. package/dist/esm/ai/modals-chat/groq/whisper.d.ts +2 -0
  201. package/dist/esm/ai/modals-chat/groq/whisper.d.ts.map +1 -0
  202. package/dist/esm/ai/modals-chat/groq/whisper.js +92 -0
  203. package/dist/esm/ai/modals-chat/groq/whisper.js.map +1 -0
  204. package/dist/esm/ai/modals-chat/hercai/chatModels.d.ts +7 -0
  205. package/dist/esm/ai/modals-chat/hercai/chatModels.d.ts.map +1 -0
  206. package/dist/esm/ai/modals-chat/hercai/chatModels.js +20 -0
  207. package/dist/esm/ai/modals-chat/hercai/chatModels.js.map +1 -0
  208. package/dist/esm/ai/modals-chat/others/otherModels.d.ts +9 -0
  209. package/dist/esm/ai/modals-chat/others/otherModels.d.ts.map +1 -0
  210. package/dist/esm/ai/modals-chat/others/otherModels.js +95 -0
  211. package/dist/esm/ai/modals-chat/others/otherModels.js.map +1 -0
  212. package/dist/esm/ai/utils.d.ts +13 -0
  213. package/dist/esm/ai/utils.d.ts.map +1 -0
  214. package/dist/{ai/utils.d.ts → esm/ai/utils.js} +3 -3
  215. package/dist/esm/ai/utils.js.map +1 -0
  216. package/dist/esm/canvas/ApexPainter.d.ts +131 -0
  217. package/dist/esm/canvas/ApexPainter.d.ts.map +1 -0
  218. package/dist/esm/canvas/ApexPainter.js +760 -0
  219. package/dist/esm/canvas/ApexPainter.js.map +1 -0
  220. package/dist/esm/canvas/utils/bg.d.ts +23 -0
  221. package/dist/esm/canvas/utils/bg.d.ts.map +1 -0
  222. package/dist/esm/canvas/utils/bg.js +103 -0
  223. package/dist/esm/canvas/utils/bg.js.map +1 -0
  224. package/dist/esm/canvas/utils/charts.d.ts +8 -0
  225. package/dist/esm/canvas/utils/charts.d.ts.map +1 -0
  226. package/dist/esm/canvas/utils/charts.js +456 -0
  227. package/dist/esm/canvas/utils/charts.js.map +1 -0
  228. package/dist/esm/canvas/utils/circular.d.ts +10 -0
  229. package/dist/esm/canvas/utils/circular.d.ts.map +1 -0
  230. package/dist/esm/canvas/utils/circular.js +18 -0
  231. package/dist/esm/canvas/utils/circular.js.map +1 -0
  232. package/dist/esm/canvas/utils/conversion.d.ts +6 -0
  233. package/dist/esm/canvas/utils/conversion.d.ts.map +1 -0
  234. package/dist/esm/canvas/utils/conversion.js +27 -0
  235. package/dist/esm/canvas/utils/conversion.js.map +1 -0
  236. package/dist/esm/canvas/utils/customLines.d.ts +3 -0
  237. package/dist/esm/canvas/utils/customLines.d.ts.map +1 -0
  238. package/dist/esm/canvas/utils/customLines.js +82 -0
  239. package/dist/esm/canvas/utils/customLines.js.map +1 -0
  240. package/dist/esm/canvas/utils/general functions.d.ts +20 -0
  241. package/dist/esm/canvas/utils/general functions.d.ts.map +1 -0
  242. package/dist/esm/canvas/utils/general functions.js +561 -0
  243. package/dist/esm/canvas/utils/general functions.js.map +1 -0
  244. package/dist/esm/canvas/utils/imageProperties.d.ts +62 -0
  245. package/dist/esm/canvas/utils/imageProperties.d.ts.map +1 -0
  246. package/dist/esm/canvas/utils/imageProperties.js +332 -0
  247. package/dist/esm/canvas/utils/imageProperties.js.map +1 -0
  248. package/dist/esm/canvas/utils/radius.d.ts +10 -0
  249. package/dist/esm/canvas/utils/radius.d.ts.map +1 -0
  250. package/dist/esm/canvas/utils/radius.js +27 -0
  251. package/dist/esm/canvas/utils/radius.js.map +1 -0
  252. package/dist/esm/canvas/utils/textProperties.d.ts +19 -0
  253. package/dist/esm/canvas/utils/textProperties.d.ts.map +1 -0
  254. package/dist/esm/canvas/utils/textProperties.js +146 -0
  255. package/dist/esm/canvas/utils/textProperties.js.map +1 -0
  256. package/dist/esm/canvas/utils/types.d.ts +536 -0
  257. package/dist/esm/canvas/utils/types.d.ts.map +1 -0
  258. package/dist/esm/canvas/utils/types.js +6 -0
  259. package/dist/esm/canvas/utils/types.js.map +1 -0
  260. package/dist/esm/canvas/utils/utils.d.ts +21 -0
  261. package/dist/esm/canvas/utils/utils.d.ts.map +1 -0
  262. package/dist/esm/canvas/utils/utils.js +20 -0
  263. package/dist/esm/canvas/utils/utils.js.map +1 -0
  264. package/dist/esm/index.d.ts +32 -0
  265. package/dist/esm/index.d.ts.map +1 -0
  266. package/dist/esm/index.js +39 -0
  267. package/dist/esm/index.js.map +1 -0
  268. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
  269. package/dist/esm/utils.d.ts +5 -0
  270. package/dist/esm/utils.d.ts.map +1 -0
  271. package/dist/{utils.d.ts → esm/utils.js} +3 -3
  272. package/dist/esm/utils.js.map +1 -0
  273. package/lib/ai/ApexModules.ts +20 -1
  274. package/lib/ai/functions/draw.ts +71 -5
  275. package/lib/ai/modals-chat/electronHub/songModels.ts +0 -0
  276. package/lib/ai/modals-chat/electronHub/speechModels.ts +70 -0
  277. package/lib/ai/modals-chat/electronHub/videoModels.ts +75 -0
  278. package/lib/ai/utils.ts +4 -2
  279. package/lib/canvas/ApexPainter.ts +7 -15
  280. package/lib/canvas/utils/conversion.ts +0 -1
  281. package/lib/canvas/utils/general functions.ts +246 -89
  282. package/lib/index.ts +3 -3
  283. package/lib/utils.ts +2 -2
  284. package/package.json +28 -9
  285. package/dist/ai/ApexAI.d.ts.map +0 -1
  286. package/dist/ai/ApexAI.js.map +0 -1
  287. package/dist/ai/ApexModules.d.ts.map +0 -1
  288. package/dist/ai/ApexModules.js.map +0 -1
  289. package/dist/ai/buttons/drawMenu.d.ts.map +0 -1
  290. package/dist/ai/buttons/drawMenu.js.map +0 -1
  291. package/dist/ai/buttons/tools.d.ts.map +0 -1
  292. package/dist/ai/buttons/tools.js.map +0 -1
  293. package/dist/ai/functions/chunkString.d.ts.map +0 -1
  294. package/dist/ai/functions/chunkString.js.map +0 -1
  295. package/dist/ai/functions/draw.d.ts.map +0 -1
  296. package/dist/ai/functions/draw.js.map +0 -1
  297. package/dist/ai/functions/generateVoiceResponse.d.ts.map +0 -1
  298. package/dist/ai/functions/generateVoiceResponse.js.map +0 -1
  299. package/dist/ai/functions/imageReader.d.ts.map +0 -1
  300. package/dist/ai/functions/imageReader.js.map +0 -1
  301. package/dist/ai/functions/readFiles.d.ts.map +0 -1
  302. package/dist/ai/functions/readFiles.js.map +0 -1
  303. package/dist/ai/functions/shouldDrawImage.d.ts.map +0 -1
  304. package/dist/ai/functions/shouldDrawImage.js.map +0 -1
  305. package/dist/ai/functions/typeWriter.d.ts.map +0 -1
  306. package/dist/ai/functions/validOptions.d.ts.map +0 -1
  307. package/dist/ai/functions/validOptions.js.map +0 -1
  308. package/dist/ai/modals-chat/electronHub/chatmodels.d.ts.map +0 -1
  309. package/dist/ai/modals-chat/electronHub/chatmodels.js.map +0 -1
  310. package/dist/ai/modals-chat/electronHub/imageModels.d.ts.map +0 -1
  311. package/dist/ai/modals-chat/electronHub/imageModels.js.map +0 -1
  312. package/dist/ai/modals-chat/freesedgpt/cartoon.d.ts +0 -2
  313. package/dist/ai/modals-chat/freesedgpt/cartoon.d.ts.map +0 -1
  314. package/dist/ai/modals-chat/freesedgpt/cartoon.js +0 -26
  315. package/dist/ai/modals-chat/freesedgpt/cartoon.js.map +0 -1
  316. package/dist/ai/modals-chat/freesedgpt/chat.d.ts +0 -5
  317. package/dist/ai/modals-chat/freesedgpt/chat.d.ts.map +0 -1
  318. package/dist/ai/modals-chat/freesedgpt/chat.js +0 -30
  319. package/dist/ai/modals-chat/freesedgpt/chat.js.map +0 -1
  320. package/dist/ai/modals-chat/freesedgpt/flux.d.ts +0 -2
  321. package/dist/ai/modals-chat/freesedgpt/flux.d.ts.map +0 -1
  322. package/dist/ai/modals-chat/freesedgpt/flux.js +0 -26
  323. package/dist/ai/modals-chat/freesedgpt/flux.js.map +0 -1
  324. package/dist/ai/modals-chat/freesedgpt/fresedImagine.d.ts +0 -2
  325. package/dist/ai/modals-chat/freesedgpt/fresedImagine.d.ts.map +0 -1
  326. package/dist/ai/modals-chat/freesedgpt/fresedImagine.js +0 -26
  327. package/dist/ai/modals-chat/freesedgpt/fresedImagine.js.map +0 -1
  328. package/dist/ai/modals-chat/gemini/Gemini-flash.d.ts.map +0 -1
  329. package/dist/ai/modals-chat/gemini/Gemini-flash.js.map +0 -1
  330. package/dist/ai/modals-chat/gemini/Gemini-pro.d.ts.map +0 -1
  331. package/dist/ai/modals-chat/gemini/Gemini-pro.js.map +0 -1
  332. package/dist/ai/modals-chat/gemini/config.d.ts.map +0 -1
  333. package/dist/ai/modals-chat/gemini/config.js.map +0 -1
  334. package/dist/ai/modals-chat/gemini/geminiFast.d.ts.map +0 -1
  335. package/dist/ai/modals-chat/gemini/geminiFast.js.map +0 -1
  336. package/dist/ai/modals-chat/groq/chatgroq.d.ts.map +0 -1
  337. package/dist/ai/modals-chat/groq/chatgroq.js.map +0 -1
  338. package/dist/ai/modals-chat/groq/imageAnalyzer.d.ts.map +0 -1
  339. package/dist/ai/modals-chat/groq/imageAnalyzer.js.map +0 -1
  340. package/dist/ai/modals-chat/groq/whisper.d.ts.map +0 -1
  341. package/dist/ai/modals-chat/groq/whisper.js.map +0 -1
  342. package/dist/ai/modals-chat/hercai/chatModels.d.ts.map +0 -1
  343. package/dist/ai/modals-chat/hercai/chatModels.js.map +0 -1
  344. package/dist/ai/modals-chat/others/otherModels.d.ts.map +0 -1
  345. package/dist/ai/modals-chat/others/otherModels.js.map +0 -1
  346. package/dist/ai/modals-chat/rsn/rsnChat.d.ts +0 -8
  347. package/dist/ai/modals-chat/rsn/rsnChat.d.ts.map +0 -1
  348. package/dist/ai/modals-chat/rsn/rsnChat.js +0 -69
  349. package/dist/ai/modals-chat/rsn/rsnChat.js.map +0 -1
  350. package/dist/ai/utils.d.ts.map +0 -1
  351. package/dist/ai/utils.js.map +0 -1
  352. package/dist/canvas/ApexPainter.d.ts.map +0 -1
  353. package/dist/canvas/ApexPainter.js.map +0 -1
  354. package/dist/canvas/utils/bg.d.ts.map +0 -1
  355. package/dist/canvas/utils/bg.js.map +0 -1
  356. package/dist/canvas/utils/charts.d.ts.map +0 -1
  357. package/dist/canvas/utils/charts.js.map +0 -1
  358. package/dist/canvas/utils/circular.d.ts.map +0 -1
  359. package/dist/canvas/utils/circular.js.map +0 -1
  360. package/dist/canvas/utils/conversion.d.ts.map +0 -1
  361. package/dist/canvas/utils/conversion.js.map +0 -1
  362. package/dist/canvas/utils/customLines.d.ts.map +0 -1
  363. package/dist/canvas/utils/customLines.js.map +0 -1
  364. package/dist/canvas/utils/general functions.d.ts.map +0 -1
  365. package/dist/canvas/utils/general functions.js.map +0 -1
  366. package/dist/canvas/utils/imageProperties.d.ts.map +0 -1
  367. package/dist/canvas/utils/imageProperties.js.map +0 -1
  368. package/dist/canvas/utils/radius.d.ts.map +0 -1
  369. package/dist/canvas/utils/radius.js.map +0 -1
  370. package/dist/canvas/utils/textProperties.d.ts.map +0 -1
  371. package/dist/canvas/utils/textProperties.js.map +0 -1
  372. package/dist/canvas/utils/types.d.ts.map +0 -1
  373. package/dist/canvas/utils/types.js.map +0 -1
  374. package/dist/canvas/utils/utils.d.ts.map +0 -1
  375. package/dist/canvas/utils/utils.js.map +0 -1
  376. package/dist/index.d.ts.map +0 -1
  377. package/dist/index.js.map +0 -1
  378. package/dist/utils.d.ts.map +0 -1
  379. package/dist/utils.js.map +0 -1
  380. package/examples/barchart.txt +0 -71
  381. package/examples/linechart.txt +0 -93
  382. package/examples/piechart.txt +0 -67
  383. /package/dist/{ai → cjs/ai}/ApexAI.d.ts +0 -0
  384. /package/dist/{ai → cjs/ai}/ApexAI.js +0 -0
  385. /package/dist/{ai → cjs/ai}/buttons/drawMenu.d.ts +0 -0
  386. /package/dist/{ai → cjs/ai}/buttons/drawMenu.js +0 -0
  387. /package/dist/{ai → cjs/ai}/buttons/tools.d.ts +0 -0
  388. /package/dist/{ai → cjs/ai}/buttons/tools.js +0 -0
  389. /package/dist/{ai → cjs/ai}/functions/chunkString.d.ts +0 -0
  390. /package/dist/{ai → cjs/ai}/functions/chunkString.js +0 -0
  391. /package/dist/{ai → cjs/ai}/functions/generateVoiceResponse.d.ts +0 -0
  392. /package/dist/{ai → cjs/ai}/functions/generateVoiceResponse.js +0 -0
  393. /package/dist/{ai → cjs/ai}/functions/imageReader.d.ts +0 -0
  394. /package/dist/{ai → cjs/ai}/functions/imageReader.js +0 -0
  395. /package/dist/{ai → cjs/ai}/functions/readFiles.d.ts +0 -0
  396. /package/dist/{ai → cjs/ai}/functions/shouldDrawImage.d.ts +0 -0
  397. /package/dist/{ai → cjs/ai}/functions/shouldDrawImage.js +0 -0
  398. /package/dist/{ai → cjs/ai}/functions/typeWriter.d.ts +0 -0
  399. /package/dist/{ai → cjs/ai}/functions/typeWriter.js +0 -0
  400. /package/dist/{ai → cjs/ai}/functions/validOptions.d.ts +0 -0
  401. /package/dist/{ai → cjs/ai}/functions/validOptions.js +0 -0
  402. /package/dist/{ai → cjs/ai}/modals-chat/electronHub/chatmodels.d.ts +0 -0
  403. /package/dist/{ai → cjs/ai}/modals-chat/electronHub/chatmodels.js +0 -0
  404. /package/dist/{ai → cjs/ai}/modals-chat/electronHub/imageModels.d.ts +0 -0
  405. /package/dist/{ai → cjs/ai}/modals-chat/electronHub/imageModels.js +0 -0
  406. /package/dist/{ai → cjs/ai}/modals-chat/gemini/Gemini-flash.d.ts +0 -0
  407. /package/dist/{ai → cjs/ai}/modals-chat/gemini/Gemini-flash.js +0 -0
  408. /package/dist/{ai → cjs/ai}/modals-chat/gemini/Gemini-pro.d.ts +0 -0
  409. /package/dist/{ai → cjs/ai}/modals-chat/gemini/Gemini-pro.js +0 -0
  410. /package/dist/{ai → cjs/ai}/modals-chat/gemini/config.d.ts +0 -0
  411. /package/dist/{ai → cjs/ai}/modals-chat/gemini/config.js +0 -0
  412. /package/dist/{ai → cjs/ai}/modals-chat/gemini/geminiFast.d.ts +0 -0
  413. /package/dist/{ai → cjs/ai}/modals-chat/gemini/geminiFast.js +0 -0
  414. /package/dist/{ai → cjs/ai}/modals-chat/groq/chatgroq.d.ts +0 -0
  415. /package/dist/{ai → cjs/ai}/modals-chat/groq/chatgroq.js +0 -0
  416. /package/dist/{ai → cjs/ai}/modals-chat/groq/imageAnalyzer.d.ts +0 -0
  417. /package/dist/{ai → cjs/ai}/modals-chat/groq/imageAnalyzer.js +0 -0
  418. /package/dist/{ai → cjs/ai}/modals-chat/groq/whisper.d.ts +0 -0
  419. /package/dist/{ai → cjs/ai}/modals-chat/groq/whisper.js +0 -0
  420. /package/dist/{ai → cjs/ai}/modals-chat/hercai/chatModels.d.ts +0 -0
  421. /package/dist/{ai → cjs/ai}/modals-chat/hercai/chatModels.js +0 -0
  422. /package/dist/{ai → cjs/ai}/modals-chat/others/otherModels.d.ts +0 -0
  423. /package/dist/{ai → cjs/ai}/modals-chat/others/otherModels.js +0 -0
  424. /package/dist/{canvas → cjs/canvas}/utils/bg.d.ts +0 -0
  425. /package/dist/{canvas → cjs/canvas}/utils/bg.js +0 -0
  426. /package/dist/{canvas → cjs/canvas}/utils/charts.js +0 -0
  427. /package/dist/{canvas → cjs/canvas}/utils/circular.d.ts +0 -0
  428. /package/dist/{canvas → cjs/canvas}/utils/circular.js +0 -0
  429. /package/dist/{canvas → cjs/canvas}/utils/customLines.d.ts +0 -0
  430. /package/dist/{canvas → cjs/canvas}/utils/customLines.js +0 -0
  431. /package/dist/{canvas → cjs/canvas}/utils/imageProperties.d.ts +0 -0
  432. /package/dist/{canvas → cjs/canvas}/utils/imageProperties.js +0 -0
  433. /package/dist/{canvas → cjs/canvas}/utils/radius.d.ts +0 -0
  434. /package/dist/{canvas → cjs/canvas}/utils/radius.js +0 -0
  435. /package/dist/{canvas → cjs/canvas}/utils/textProperties.d.ts +0 -0
  436. /package/dist/{canvas → cjs/canvas}/utils/textProperties.js +0 -0
  437. /package/dist/{canvas → cjs/canvas}/utils/types.d.ts +0 -0
  438. /package/dist/{canvas → cjs/canvas}/utils/types.js +0 -0
  439. /package/dist/{canvas → cjs/canvas}/utils/utils.d.ts +0 -0
  440. /package/dist/{canvas → cjs/canvas}/utils/utils.js +0 -0
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Draws text on the canvas context.
3
+ * @param ctx The canvas rendering context.
4
+ * @param textOptions The options for the text.
5
+ */
6
+ export function drawText(ctx, textOptions, size) {
7
+ ctx.save();
8
+ // Apply rotation if specified
9
+ if (textOptions.rotation && textOptions.rotation !== 0) {
10
+ ctx.translate(textOptions.x || 0, textOptions.y || 0);
11
+ ctx.rotate(textOptions.rotation * Math.PI / 180);
12
+ }
13
+ ctx.font = `${textOptions.isBold ? 'bold ' : ''}${textOptions.fontSize || 16}px "${textOptions.fontName || 'Arial'}"`;
14
+ ctx.textAlign = textOptions.textAlign || 'left';
15
+ ctx.textBaseline = textOptions.textBaseline || 'alphabetic';
16
+ // Apply shadow
17
+ if (textOptions.shadow) {
18
+ const { color, offsetX, offsetY, blur, opacity } = textOptions.shadow;
19
+ ctx.shadowColor = color || "transparent";
20
+ ctx.shadowOffsetX = offsetX || 0;
21
+ ctx.shadowOffsetY = offsetY || 0;
22
+ ctx.shadowBlur = blur || 0;
23
+ ctx.globalAlpha = opacity || 1;
24
+ }
25
+ // Apply opacity
26
+ if (textOptions.opacity !== undefined) {
27
+ if (textOptions.opacity > 1 || textOptions.opacity < 0)
28
+ throw new Error("Text opacity Error: the value can't be smaller than 0 or bigger than 1.");
29
+ ctx.globalAlpha = textOptions.opacity;
30
+ }
31
+ const textWidth = ctx.measureText(textOptions.text).width;
32
+ const textHeight = textOptions.fontSize || 16; // Rough estimate for height
33
+ // Apply gradient fill
34
+ if (textOptions.gradient) {
35
+ const gradientFill = createGradient(ctx, textOptions.gradient, textOptions.x || 0, textOptions.y || 0 - textHeight, (textOptions.x || 0) + textWidth, (textOptions.y || 0));
36
+ console.log("Gradient Fill Created:", gradientFill);
37
+ ctx.fillStyle = gradientFill;
38
+ }
39
+ else {
40
+ ctx.fillStyle = textOptions.color || 'darkgray';
41
+ }
42
+ // Apply stroke with gradient
43
+ if (textOptions.outlined || textOptions.stroke) {
44
+ if (textOptions.stroke?.gradient) {
45
+ const gradientStroke = createGradient(ctx, textOptions.stroke.gradient, textOptions.x || 0, textOptions.y || 0 - textHeight, (textOptions.x || 0) + textWidth, (textOptions.y || 0));
46
+ console.log("Gradient Stroke Created:", gradientStroke);
47
+ ctx.strokeStyle = gradientStroke;
48
+ }
49
+ else {
50
+ ctx.strokeStyle = textOptions.stroke?.color || textOptions.color;
51
+ }
52
+ ctx.lineWidth = textOptions.stroke?.width || 1;
53
+ ctx.strokeText(textOptions.text, textOptions.x || 0, textOptions.y || 0);
54
+ }
55
+ // Draw the text
56
+ if (textOptions.maxWidth) {
57
+ WrappedText(ctx, textOptions.text || 'Hello World', textOptions.x || 0, textOptions.y || 0, textOptions.maxWidth, textOptions);
58
+ }
59
+ else {
60
+ if (!textOptions.rotation) {
61
+ ctx.fillText(textOptions.text, textOptions.x || 0, textOptions.y || 0);
62
+ }
63
+ else {
64
+ ctx.fillText(textOptions.text, 0, 0);
65
+ }
66
+ }
67
+ ctx.restore();
68
+ }
69
+ /**
70
+ * Draws wrapped text on the canvas context.
71
+ * @param ctx The canvas rendering context.
72
+ * @param text The text to be drawn.
73
+ * @param x The x-coordinate of the starting point of the text.
74
+ * @param y The y-coordinate of the starting point of the text.
75
+ * @param maxWidth The maximum width for wrapping the text.
76
+ * @param textOptions The options for the text.
77
+ */
78
+ export function WrappedText(ctx, text, x, y, maxWidth, textOptions) {
79
+ const words = text.split(' ');
80
+ let currentLine = '';
81
+ const fontSize = textOptions.fontSize || 16;
82
+ const lineHeight = textOptions.lineHeight || fontSize;
83
+ ctx.save();
84
+ ctx.fillStyle = textOptions.color || 'darkgray';
85
+ if (textOptions.outlined || textOptions.stroke) {
86
+ ctx.strokeStyle = textOptions.stroke?.color || textOptions.color;
87
+ ctx.lineWidth = textOptions.stroke?.width || 1;
88
+ }
89
+ if (textOptions.rotation && textOptions.rotation !== 0) {
90
+ ctx.translate(x, y);
91
+ ctx.rotate(textOptions.rotation * Math.PI / 180);
92
+ x = 0;
93
+ y = 0;
94
+ }
95
+ for (let n = 0; n < words.length; n++) {
96
+ const testLine = currentLine + words[n] + ' ';
97
+ const metrics = ctx.measureText(testLine);
98
+ const testWidth = metrics.width;
99
+ if (testWidth > maxWidth && n > 0) {
100
+ const adjustedY = y + lineHeight;
101
+ if (textOptions.outlined || textOptions.stroke) {
102
+ ctx.strokeText(currentLine.trim(), x, adjustedY);
103
+ }
104
+ else {
105
+ ctx.fillText(currentLine.trim(), x, adjustedY);
106
+ }
107
+ currentLine = words[n] + ' ';
108
+ y += lineHeight;
109
+ }
110
+ else {
111
+ currentLine = testLine;
112
+ }
113
+ }
114
+ const adjustedY = y + lineHeight;
115
+ if (textOptions.outlined || textOptions.stroke) {
116
+ ctx.strokeText(currentLine.trim(), x, adjustedY);
117
+ }
118
+ else {
119
+ ctx.fillText(currentLine.trim(), x, adjustedY);
120
+ }
121
+ ctx.restore();
122
+ }
123
+ export function createGradient(ctx, gradientOptions, startX, startY, endX, endY) {
124
+ if (!gradientOptions || !gradientOptions.type || !gradientOptions.colors) {
125
+ throw new Error("Invalid gradient options. Provide a valid object with type and colors properties.");
126
+ }
127
+ if (!Array.isArray(gradientOptions.colors)) {
128
+ throw new Error("Invalid gradient options. The colors property should be an array of color stops.");
129
+ }
130
+ let gradient;
131
+ if (gradientOptions.type === "linear") {
132
+ gradient = ctx.createLinearGradient(startX, startY, endX, endY);
133
+ }
134
+ else if (gradientOptions.type === "radial") {
135
+ gradient = ctx.createRadialGradient(gradientOptions.startX || startX, gradientOptions.startY || startY, gradientOptions.startRadius || 0, gradientOptions.endX || endX, gradientOptions.endY || endY, gradientOptions.endRadius || 0);
136
+ }
137
+ else {
138
+ throw new Error('Unsupported gradient type. Use "linear" or "radial".');
139
+ }
140
+ for (const colorStop of gradientOptions.colors) {
141
+ console.log(`Adding color stop: ${colorStop.stop} ${colorStop.color}`);
142
+ gradient.addColorStop(colorStop.stop, colorStop.color);
143
+ }
144
+ return gradient;
145
+ }
146
+ //# sourceMappingURL=textProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textProperties.js","sourceRoot":"","sources":["../../../../lib/canvas/utils/textProperties.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,536 @@
1
+ import { Canvas } from "@napi-rs/canvas";
2
+ /**
3
+ * Configuration option to decide the outputformate from ApexPainter
4
+ * @param {type} default - 'buffer', other formates: url, blob, base64, dataURL, arraybuffer.
5
+ */
6
+ export interface OutputFormat {
7
+ type?: 'buffer' | 'url' | 'blob' | 'base64' | 'dataURL' | 'arraybuffer';
8
+ }
9
+ /**
10
+ * Configuration options for the canvas.
11
+ * @param {number} width - The width of the canvas.
12
+ * @param {number} height - The height of the canvas.
13
+ * @param {string} customBg - The URL or local path to the custom background image.
14
+ * @param {string} colorBg - The background color of the canvas.
15
+ * @param {object} gradientBg - The gradient settings for the canvas background.
16
+ * @param {number | string} borderRadius - The border radius of the canvas.
17
+ */
18
+ export interface CanvasConfig {
19
+ width?: number;
20
+ height?: number;
21
+ x?: number;
22
+ y?: number;
23
+ customBg?: string;
24
+ colorBg?: string;
25
+ zoom?: {
26
+ scale?: number;
27
+ x?: number;
28
+ y?: number;
29
+ };
30
+ gradientBg?: {
31
+ type?: 'linear' | 'radial';
32
+ startX?: number;
33
+ startY?: number;
34
+ startRadius?: number;
35
+ endRadius?: number;
36
+ endX?: number;
37
+ endY?: number;
38
+ colors?: {
39
+ stop?: number;
40
+ color?: string;
41
+ }[];
42
+ };
43
+ stroke?: {
44
+ color?: string;
45
+ width?: number;
46
+ position?: number;
47
+ borderRadius?: number | "circular";
48
+ };
49
+ shadow?: {
50
+ color?: string;
51
+ offsetX?: number;
52
+ offsetY?: number;
53
+ blur?: number;
54
+ opacity?: number;
55
+ borderRadius?: number | "circular";
56
+ };
57
+ rotation?: number;
58
+ borderRadius?: number | "circular";
59
+ }
60
+ /**
61
+ * Properties of an image or shape to be drawn on the canvas.
62
+ * @param {string} source - URL or path to the image or shape name.
63
+ * @param {number} width - The width of the image or shape.
64
+ * @param {number} height - The height of the image or shape.
65
+ * @param {number} x - The x-coordinate of the image or shape.
66
+ * @param {number} y - The y-coordinate of the image or shape.
67
+ * @param {boolean} isFilled - Whether the shape is filled or not (Only applicable if source is a shape name).
68
+ * @param {string} color - The color of the shape (Only applicable if source is a shape name).
69
+ * @param {object} gradient - The gradient settings for the shape (Only applicable if source is a shape name).
70
+ * @param {number} rotation - Rotation angle in degrees.
71
+ * @param {number | string} borderRadius - The border radius of the image or shape.
72
+ * @param {object} stroke - The stroke properties.
73
+ * @param {string} stroke.color - The color of the stroke.
74
+ * @param {number} stroke.width - The width of the stroke.
75
+ * @param {number} stroke.position - Space between stroke and the image it's stroked on.
76
+ * @param {number | string} stroke.borderRadius - The border radius of the stroke.
77
+ * @param {object} shadow - The shadow properties.
78
+ * @param {string} shadow.color - The color of the shadow.
79
+ * @param {number} shadow.offsetX - The horizontal offset of the shadow.
80
+ * @param {number} shadow.offsetY - The vertical offset of the shadow.
81
+ * @param {number} shadow.blur - The blur radius of the shadow.
82
+ * @param {number} shadow.opacity - The opacity of the shadow.
83
+ * @param {number | string} shadow.borderRadius - The border radius of the shadow.
84
+ */
85
+ export interface ImageProperties {
86
+ source: string;
87
+ width?: number;
88
+ height?: number;
89
+ x?: number;
90
+ y?: number;
91
+ isFilled?: boolean;
92
+ color?: string;
93
+ opacity?: number;
94
+ gradient?: {
95
+ type?: 'linear' | 'radial';
96
+ startX?: number;
97
+ startY?: number;
98
+ startRadius?: number;
99
+ endRadius?: number;
100
+ endX?: number;
101
+ endY?: number;
102
+ colors?: {
103
+ stop?: number;
104
+ color?: string;
105
+ }[];
106
+ };
107
+ rotation?: number;
108
+ borderRadius?: number | "circular";
109
+ borderPosition?: 'all' | 'top' | 'left' | 'right' | 'bottom';
110
+ stroke?: {
111
+ color?: string;
112
+ width?: number;
113
+ position?: number;
114
+ borderRadius?: number | "circular";
115
+ borderPosition?: 'all' | 'top' | 'left' | 'right' | 'bottom';
116
+ gradient?: {
117
+ type: 'linear' | 'radial';
118
+ startX?: number;
119
+ startY?: number;
120
+ endX?: number;
121
+ endY?: number;
122
+ startRadius?: number;
123
+ endRadius?: number;
124
+ colors: {
125
+ stop: number;
126
+ color: string;
127
+ }[];
128
+ };
129
+ };
130
+ shadow?: {
131
+ color?: string;
132
+ offsetX?: number;
133
+ offsetY?: number;
134
+ blur?: number;
135
+ opacity?: number;
136
+ borderRadius?: number | "circular";
137
+ borderPosition?: 'all' | 'top' | 'left' | 'right' | 'bottom';
138
+ };
139
+ }
140
+ export interface TextObject {
141
+ text?: string;
142
+ x?: number;
143
+ y?: number;
144
+ fontPath?: string;
145
+ fontName?: string;
146
+ fontSize?: number;
147
+ isBold?: boolean;
148
+ color?: string;
149
+ maxWidth?: number;
150
+ lineHeight?: number;
151
+ textAlign?: "end" | "center" | "left" | "right" | "start" | "justify";
152
+ textBaseline?: "alphabetic" | "bottom" | "hanging" | "ideographic" | "middle" | "top";
153
+ outlined?: boolean;
154
+ gradient?: {
155
+ type?: 'linear' | 'radial';
156
+ startX?: number;
157
+ startY?: number;
158
+ endX?: number;
159
+ endY?: number;
160
+ startRadius?: number;
161
+ endRadius?: number;
162
+ colors: {
163
+ stop: number;
164
+ color: string;
165
+ }[];
166
+ };
167
+ shadow?: {
168
+ color?: string;
169
+ offsetX?: number;
170
+ offsetY?: number;
171
+ blur?: number;
172
+ opacity?: number;
173
+ };
174
+ stroke?: {
175
+ color?: string;
176
+ width?: number;
177
+ gradient?: {
178
+ type: 'linear' | 'radial';
179
+ startX?: number;
180
+ startY?: number;
181
+ endX?: number;
182
+ endY?: number;
183
+ startRadius?: number;
184
+ endRadius?: number;
185
+ colors: {
186
+ stop: number;
187
+ color: string;
188
+ }[];
189
+ };
190
+ };
191
+ rotation?: number;
192
+ opacity?: number;
193
+ }
194
+ /**
195
+ * Options for creating a GIF.
196
+ * @param outputFormat The format of the output ('file', 'base64', 'attachment', or 'buffer').
197
+ * @param outputFile The file path if output format is 'file'.
198
+ * @param width The width of the GIF.
199
+ * @param height The height of the GIF.
200
+ * @param repeat The number of times the GIF should repeat.
201
+ * @param quality The quality of the GIF.
202
+ * @param delay The delay between frames in milliseconds.
203
+ * @param watermark The watermark settings.
204
+ * @param textOverlay The text overlay settings.
205
+ * @param basDir The base directory for files.
206
+ */
207
+ export interface GIFOptions {
208
+ outputFormat: 'file' | 'base64' | 'attachment' | 'buffer' | string;
209
+ outputFile?: string;
210
+ width?: number;
211
+ height?: number;
212
+ repeat?: number;
213
+ quality?: number;
214
+ delay?: number;
215
+ watermark?: {
216
+ enable: boolean;
217
+ url: string;
218
+ };
219
+ textOverlay?: {
220
+ text: string;
221
+ fontName?: string;
222
+ fontPath?: string;
223
+ fontSize?: number;
224
+ fontColor?: string;
225
+ x?: number;
226
+ y?: number;
227
+ };
228
+ basDir?: any;
229
+ }
230
+ /**
231
+ * Results of creating a GIF.
232
+ * @param buffer The buffer containing the GIF data.
233
+ * @param base64 The base64 representation of the GIF.
234
+ * @param attachment The attachment containing the GIF stream.
235
+ */
236
+ export interface GIFResults {
237
+ buffer?: Buffer;
238
+ base64?: string;
239
+ attachment?: {
240
+ attachment: NodeJS.ReadableStream | any;
241
+ name: string;
242
+ };
243
+ }
244
+ /**
245
+ * Custom options for drawing.
246
+ * @param startCoordinates The starting coordinates.
247
+ * @param endCoordinates The ending coordinates.
248
+ * @param lineStyle The style of the line.
249
+ */
250
+ export interface CustomOptions {
251
+ startCoordinates: {
252
+ x: number;
253
+ y: number;
254
+ };
255
+ endCoordinates: {
256
+ x: number;
257
+ y: number;
258
+ };
259
+ lineStyle?: {
260
+ width?: number;
261
+ color?: string;
262
+ lineRadius?: number | string;
263
+ lineJoin?: 'round' | 'bevel' | 'miter';
264
+ lineCap?: 'butt' | 'round' | 'square';
265
+ singleLine?: boolean;
266
+ lineDash?: {
267
+ dashArray?: number[];
268
+ offset?: number;
269
+ };
270
+ stroke?: {
271
+ color?: string;
272
+ width?: number;
273
+ lineRadius?: number | string;
274
+ };
275
+ shadow?: {
276
+ offsetX?: number;
277
+ offsetY?: number;
278
+ blur?: number;
279
+ color?: string;
280
+ lineRadius?: number | string;
281
+ };
282
+ };
283
+ }
284
+ export interface ChartData {
285
+ height?: number;
286
+ width?: number;
287
+ widthPerc?: number;
288
+ heightPerc?: number;
289
+ title?: {
290
+ title?: string;
291
+ color?: string;
292
+ size?: number;
293
+ };
294
+ bg?: {
295
+ image?: string;
296
+ bgColor?: string;
297
+ };
298
+ grid?: {
299
+ enable: boolean;
300
+ color?: string;
301
+ width?: number;
302
+ };
303
+ axis?: {
304
+ color?: string;
305
+ size?: number;
306
+ };
307
+ labels?: {
308
+ color?: string;
309
+ fontSize?: number;
310
+ };
311
+ }
312
+ export interface DataPoint {
313
+ label: string;
314
+ barColor?: string;
315
+ stroke?: {
316
+ color?: string;
317
+ width?: number;
318
+ };
319
+ value: number;
320
+ position: {
321
+ startsXLabel: number;
322
+ endsXLabel: number;
323
+ };
324
+ }
325
+ export interface barChart_1 {
326
+ chartData?: ChartData;
327
+ xLabels: number[];
328
+ yLabels: number[];
329
+ data: {
330
+ xAxis: DataPoint[];
331
+ yAxis: number[];
332
+ keys?: {
333
+ [color: string]: string;
334
+ };
335
+ keyColor?: string;
336
+ xTitle?: string;
337
+ yTitle?: string;
338
+ labelStyle?: {
339
+ color?: string;
340
+ size?: number;
341
+ };
342
+ };
343
+ }
344
+ export interface bgConfig {
345
+ width?: number;
346
+ height?: number;
347
+ bgcolor?: string;
348
+ }
349
+ export interface KeyBoxConfig {
350
+ width?: number;
351
+ height?: number;
352
+ radius?: number;
353
+ bgcolor?: string;
354
+ x?: number;
355
+ y?: number;
356
+ content?: KeyBoxContent;
357
+ }
358
+ export interface KeyBoxContent {
359
+ keyTitle?: {
360
+ text?: string;
361
+ fontSize?: number;
362
+ x?: number;
363
+ y?: number;
364
+ };
365
+ keys?: {
366
+ x?: number;
367
+ y?: number;
368
+ fontSize?: number;
369
+ };
370
+ }
371
+ export interface StrokeConfig {
372
+ color?: string;
373
+ size?: number;
374
+ }
375
+ export interface TitleConfig {
376
+ text?: string;
377
+ color?: string;
378
+ fontSize?: number;
379
+ x?: number;
380
+ y?: number;
381
+ }
382
+ export interface PieDataConfig {
383
+ x?: number;
384
+ y?: number;
385
+ stroke?: StrokeConfig;
386
+ title?: TitleConfig;
387
+ boxes?: {
388
+ labelDistance?: number;
389
+ width?: number;
390
+ height?: number;
391
+ fontSize?: number;
392
+ labelColor?: string;
393
+ boxColor?: string;
394
+ strokeColor?: string;
395
+ };
396
+ radius?: number;
397
+ }
398
+ export interface PieConfig {
399
+ canvas?: bgConfig;
400
+ keyBox?: KeyBoxConfig;
401
+ pieData?: PieDataConfig;
402
+ }
403
+ export interface DataItem {
404
+ label: string;
405
+ color: string;
406
+ value: number;
407
+ key: string;
408
+ }
409
+ export interface PieChartData {
410
+ data?: DataItem[];
411
+ pieConfig?: PieConfig;
412
+ }
413
+ export interface DataPoint {
414
+ label: string;
415
+ y: number;
416
+ }
417
+ export interface LineChartConfig {
418
+ yLabels: string[];
419
+ fillArea: {
420
+ color: string;
421
+ }[];
422
+ lineColor: string[];
423
+ plot?: {
424
+ enable: boolean;
425
+ color: string[];
426
+ size: number;
427
+ };
428
+ yaxisLabel?: {
429
+ label?: string;
430
+ x?: number;
431
+ y?: number;
432
+ color?: string;
433
+ fontSize?: string;
434
+ };
435
+ lineTension?: number[];
436
+ grid?: {
437
+ type: 'vertical' | 'horizontal' | 'both';
438
+ color: string;
439
+ width: number;
440
+ };
441
+ keys?: {
442
+ [color: string]: string;
443
+ };
444
+ keysConfig?: {
445
+ radius?: number;
446
+ keyPadding?: number;
447
+ textPadding?: number;
448
+ lineWidth?: number;
449
+ fontColor?: string;
450
+ };
451
+ canvas?: {
452
+ bgColor?: string;
453
+ fontColor?: string;
454
+ fontSize?: number;
455
+ width?: number;
456
+ height?: number;
457
+ image?: string;
458
+ };
459
+ }
460
+ export interface cropCoordinate {
461
+ from: {
462
+ x: number;
463
+ y: number;
464
+ };
465
+ to: {
466
+ x: number;
467
+ y: number;
468
+ };
469
+ tension?: number;
470
+ }
471
+ export interface cropOptions {
472
+ coordinates: cropCoordinate[];
473
+ imageSource: string;
474
+ crop: 'inner' | 'outer';
475
+ radius: number | "circular";
476
+ }
477
+ export interface GradientConfig {
478
+ type: 'linear' | 'radial';
479
+ startX?: number;
480
+ startY?: number;
481
+ endX?: number;
482
+ endY?: number;
483
+ startRadius?: number;
484
+ endRadius?: number;
485
+ angle?: number;
486
+ colors: {
487
+ stop: number;
488
+ color: string;
489
+ }[];
490
+ }
491
+ export interface Frame {
492
+ backgroundColor?: string;
493
+ gradient?: GradientConfig;
494
+ pattern?: {
495
+ imagePath: string;
496
+ repeat?: 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat';
497
+ };
498
+ imagePath?: string;
499
+ blendMode?: GlobalCompositeOperation;
500
+ transformations?: {
501
+ scaleX?: number;
502
+ scaleY?: number;
503
+ rotate?: number;
504
+ translateX?: number;
505
+ translateY?: number;
506
+ };
507
+ duration?: number;
508
+ width?: number;
509
+ height?: number;
510
+ onDrawCustom?: (ctx: CanvasRenderingContext2D, canvas: Canvas) => void;
511
+ }
512
+ export interface PatternOptions {
513
+ type: 'dots' | 'stripes' | 'grid' | 'checkerboard' | 'custom';
514
+ color?: string;
515
+ secondaryColor?: string;
516
+ x?: number;
517
+ y?: number;
518
+ width?: number;
519
+ height?: number;
520
+ size?: number;
521
+ spacing?: number;
522
+ angle?: number;
523
+ customPatternImage?: string;
524
+ backgroundColor?: string;
525
+ gradient?: GradientConfig;
526
+ }
527
+ export interface ExtractFramesOptions {
528
+ interval: number;
529
+ outputFormat?: 'jpg' | 'png';
530
+ frameSelection?: {
531
+ start?: number;
532
+ end?: number;
533
+ };
534
+ watermark?: string;
535
+ }
536
+ //# sourceMappingURL=types.d.ts.map