UNPKG

easy-api.ts

Version:

A powerful library to create your own API with ease.

1 lines 1.16 kB
Object.defineProperty(exports,"__esModule",{value:!0});let Error_1=require("../../classes/structures/Error"),APIFunction_1=require("../../classes/structures/APIFunction"),Util_1=require("../../classes/internal/Util");class ArrayAt extends APIFunction_1.APIFunction{name="$arrayAt";description="Returns the array element at the provided index.";parameters=[{name:"Name",description:"The name of the array.",type:APIFunction_1.ParamType.String,required:!0,rest:!1,defaultValue:null},{name:"Index",description:"The element index to be accessed.",type:APIFunction_1.ParamType.Number,required:!0,rest:!1,defaultValue:null}];usage="$arrayAt[name;index]";returns=APIFunction_1.ParamType.String;aliases=[];compile=!0;async run(e,[r,t]){var a=Util_1.Util.parseArrayLike(r),n=e.internalVarExists("NodeJS.Arrays:"+r),i=null===a;if(i&&!n)throw new Error_1.InvalidVariableName(Error_1.VariableType.Array,r,e.function);if(i=i||n?e.getInternalVar("NodeJS.Arrays:"+r):a,!Util_1.Util.isNumber(t)||Number(t)<1||Number(t)>i?.length)throw new Error_1.InvalidFieldIndex(t,e.function,"Element Index");return Util_1.Util.fallbackNullString(i?.at(Number(t)-1))}}exports.default=ArrayAt;