UNPKG

easy-api.ts

Version:

A powerful library to create your own API with ease.

1 lines 2.04 kB
Object.defineProperty(exports,"__esModule",{value:!0});let tslib_1=require("tslib"),APIFunction_1=require("../../classes/structures/APIFunction"),canvas_1=require("@napi-rs/canvas"),Error_1=require("../../classes/structures/Error"),createCanvas_1=tslib_1.__importDefault(require("./createCanvas")),Util_1=require("../../classes/internal/Util");class DrawImage extends APIFunction_1.APIFunction{name="$drawImage";description="Draws an image over the canvas.";parameters=[{name:"ID",description:"The image ID.",type:APIFunction_1.ParamType.String,required:!0,rest:!1,defaultValue:null},{name:"X",description:"X coordinate to place the image to.",type:APIFunction_1.ParamType.Number,required:!0,rest:!1,defaultValue:null},{name:"Y",description:"Y coordinate to place the image to.",type:APIFunction_1.ParamType.Number,required:!0,rest:!1,defaultValue:null},{name:"Width",description:"Image width.",type:APIFunction_1.ParamType.Number,required:!0,rest:!1,defaultValue:null},{name:"Height",description:"Image height.",type:APIFunction_1.ParamType.Number,required:!0,rest:!1,defaultValue:null},{name:"Radius",description:"Image corner radius.",type:APIFunction_1.ParamType.Number,required:!1,rest:!1,defaultValue:"0"}];usage="$drawImage[id;x;y;width;height;radius?]";returns=APIFunction_1.ParamType.Unknown;aliases=[];compile=!0;parent=new createCanvas_1.default;async run(e,[r,a,t,n,i,u="0"]){if([a,t,n,i,u].some(e=>!Util_1.Util.isNumber(e)))throw new Error_1.InvalidField("Number",e.function);var s=e.parent.getInternalVar("NodeJS.Canvas"),r=e.parent.getInternalVar("NodeJS.Images:"+r);if(!(s instanceof canvas_1.Canvas))throw new Error_1.EATS_Error("Unable to find a valid Canvas instance, you must start it using $setDimensions[...args]!");if(!r)throw new Error_1.InvalidField("Image ID",e.function);(s=e.parent.getInternalVar("NodeJS.CanvasContext")).save(),Util_1.Util.molde(s,Number(a),Number(t),Number(n),Number(i),parseInt(u)),s.clip(),s.drawImage(r,Number(a),Number(t),Number(n),Number(i)),s.restore(),s.save()}}exports.default=DrawImage;