diff --git a/applications/system/js_app/examples/apps/Scripts/keyboard.js b/applications/system/js_app/examples/apps/Scripts/keyboard.js index 6e7b8332a..ddcb40a61 100644 --- a/applications/system/js_app/examples/apps/Scripts/keyboard.js +++ b/applications/system/js_app/examples/apps/Scripts/keyboard.js @@ -2,4 +2,4 @@ let keyboard = require("keyboard"); let text = keyboard.text(100, "Please Input Shit", 1); -print(text); \ No newline at end of file +print("Got text:", text); \ No newline at end of file diff --git a/applications/system/js_app/examples/apps/Scripts/submenu.js b/applications/system/js_app/examples/apps/Scripts/submenu.js index 4c0cd79d0..6744ca452 100644 --- a/applications/system/js_app/examples/apps/Scripts/submenu.js +++ b/applications/system/js_app/examples/apps/Scripts/submenu.js @@ -8,4 +8,4 @@ submenu.setHeader("Select an option:"); let result = submenu.show(); -print("Result: ", result); +print("Result:", result); diff --git a/applications/system/js_app/modules/js_blebeacon.c b/applications/system/js_app/modules/js_blebeacon.c index 0e77e5648..946a99bab 100644 --- a/applications/system/js_app/modules/js_blebeacon.c +++ b/applications/system/js_app/modules/js_blebeacon.c @@ -7,7 +7,7 @@ typedef struct { char* mac_addr; size_t beacon_data_len; GapExtraBeaconConfig beacon_config; -} JSblebeaconInst; +} JsBlebeaconInst; struct OUI_MAP_ENTRY { const char* brand; @@ -78,9 +78,9 @@ static char* generate_mac_address(const char* brand) { return mac_address; } -static JSblebeaconInst* get_this_ctx(struct mjs* mjs) { +static JsBlebeaconInst* get_this_ctx(struct mjs* mjs) { mjs_val_t obj_inst = mjs_get(mjs, mjs_get_this(mjs), INST_PROP_NAME, ~0); - JSblebeaconInst* storage = mjs_get_ptr(mjs, obj_inst); + JsBlebeaconInst* storage = mjs_get_ptr(mjs, obj_inst); furi_assert(storage); return storage; } @@ -167,7 +167,7 @@ static uint8_t* hexstr_to_uint8(const char* hexstr, size_t* out_length) { static void js_blebeacon_set_data(struct mjs* mjs) { FURI_LOG_D("BLE", "Setting data"); if(!check_arg_count(mjs, 1)) return; - JSblebeaconInst* inst = get_this_ctx(mjs); + JsBlebeaconInst* inst = get_this_ctx(mjs); if(!inst) { FURI_LOG_D("BLE", "Beacon instance is null"); ret_bad_args(mjs, "Beacon instance is null"); @@ -214,7 +214,7 @@ static void js_blebeacon_set_mac(struct mjs* mjs) { return; } - JSblebeaconInst* inst = get_this_ctx(mjs); + JsBlebeaconInst* inst = get_this_ctx(mjs); char* mac_addr = ""; if(!get_str_arg(mjs, 0, &mac_addr)) return; inst->mac_addr = mac_addr; @@ -251,7 +251,7 @@ static void js_blebeacon_stop(struct mjs* mjs) { } static void* js_blebeacon_create(struct mjs* mjs, mjs_val_t* object) { - JSblebeaconInst* inst = malloc(sizeof(JSblebeaconInst)); + JsBlebeaconInst* inst = malloc(sizeof(JsBlebeaconInst)); mjs_val_t blebeacon_obj = mjs_mk_object(mjs); mjs_set(mjs, blebeacon_obj, INST_PROP_NAME, ~0, mjs_mk_foreign(mjs, inst)); mjs_set(mjs, blebeacon_obj, "setData", ~0, MJS_MK_FN(js_blebeacon_set_data)); @@ -264,7 +264,7 @@ static void* js_blebeacon_create(struct mjs* mjs, mjs_val_t* object) { } static void js_blebeacon_destroy(void* ptr) { - JSblebeaconInst* inst = (JSblebeaconInst*)ptr; + JsBlebeaconInst* inst = (JsBlebeaconInst*)ptr; if(inst) { free(inst->data); free(inst->mac_addr); @@ -278,12 +278,12 @@ static const JsModuleDescriptor js_blebeacon_desc = { js_blebeacon_destroy, }; -static const FlipperAppPluginDescriptor blebeacon_plugin_descriptor = { +static const FlipperAppPluginDescriptor plugin_descriptor = { .appid = PLUGIN_APP_ID, .ep_api_version = PLUGIN_API_VERSION, .entry_point = &js_blebeacon_desc, }; const FlipperAppPluginDescriptor* js_blebeacon_ep(void) { - return &blebeacon_plugin_descriptor; + return &plugin_descriptor; } \ No newline at end of file diff --git a/applications/system/js_app/modules/js_keyboard.c b/applications/system/js_app/modules/js_keyboard.c index d4e9fcba1..e120ee0d6 100644 --- a/applications/system/js_app/modules/js_keyboard.c +++ b/applications/system/js_app/modules/js_keyboard.c @@ -11,7 +11,7 @@ typedef struct { ByteInput* byteinputview; ViewDispatcher* view_dispatcher; uint8_t* byteinput; -} JSkeyboardInst; +} JsKeyboardInst; static void ret_bad_args(struct mjs* mjs, const char* error) { mjs_prepend_errorf(mjs, MJS_BAD_ARGS_ERROR, "%s", error); @@ -67,25 +67,25 @@ static bool get_int_arg(struct mjs* mjs, size_t index, int* value) { return true; } -static JSkeyboardInst* get_this_ctx(struct mjs* mjs) { +static JsKeyboardInst* get_this_ctx(struct mjs* mjs) { mjs_val_t obj_inst = mjs_get(mjs, mjs_get_this(mjs), INST_PROP_NAME, ~0); - JSkeyboardInst* storage = mjs_get_ptr(mjs, obj_inst); + JsKeyboardInst* storage = mjs_get_ptr(mjs, obj_inst); furi_assert(storage); return storage; } void text_input_callback(void* context) { - JSkeyboardInst* keyboardinst = (JSkeyboardInst*)context; + JsKeyboardInst* keyboardinst = (JsKeyboardInst*)context; view_dispatcher_stop(keyboardinst->view_dispatcher); } void byte_input_callback(void* context) { - JSkeyboardInst* keyboardinst = (JSkeyboardInst*)context; + JsKeyboardInst* keyboardinst = (JsKeyboardInst*)context; view_dispatcher_stop(keyboardinst->view_dispatcher); } static void js_keyboard_text(struct mjs* mjs) { - JSkeyboardInst* keyboardinst = get_this_ctx(mjs); + JsKeyboardInst* keyboardinst = get_this_ctx(mjs); int MaxInputLength; if(!get_int_arg(mjs, 0, &MaxInputLength)) return; @@ -127,7 +127,7 @@ static void js_keyboard_text(struct mjs* mjs) { } static void js_keyboard_byte(struct mjs* mjs) { - JSkeyboardInst* keyboardinst = get_this_ctx(mjs); + JsKeyboardInst* keyboardinst = get_this_ctx(mjs); int MaxInputLength; if(!get_int_arg(mjs, 0, &MaxInputLength)) return; @@ -167,7 +167,7 @@ static void js_keyboard_byte(struct mjs* mjs) { } static void* js_keyboard_create(struct mjs* mjs, mjs_val_t* object) { - JSkeyboardInst* keyboardinst = malloc(sizeof(JSkeyboardInst)); + JsKeyboardInst* keyboardinst = malloc(sizeof(JsKeyboardInst)); mjs_val_t keyboard_obj = mjs_mk_object(mjs); mjs_set(mjs, keyboard_obj, INST_PROP_NAME, ~0, mjs_mk_foreign(mjs, keyboardinst)); mjs_set(mjs, keyboard_obj, "text", ~0, MJS_MK_FN(js_keyboard_text)); @@ -187,7 +187,7 @@ static void* js_keyboard_create(struct mjs* mjs, mjs_val_t* object) { } static void js_keyboard_destroy(void* inst) { - JSkeyboardInst* insts = (JSkeyboardInst*)inst; + JsKeyboardInst* insts = (JsKeyboardInst*)inst; byte_input_free(insts->byteinputview); text_input_free(insts->textinput); view_dispatcher_free(insts->view_dispatcher); @@ -201,13 +201,12 @@ static const JsModuleDescriptor js_keyboard_desc = { js_keyboard_destroy, }; -static const FlipperAppPluginDescriptor keyboard_plugin_descriptor = { +static const FlipperAppPluginDescriptor plugin_descriptor = { .appid = PLUGIN_APP_ID, .ep_api_version = PLUGIN_API_VERSION, .entry_point = &js_keyboard_desc, }; const FlipperAppPluginDescriptor* js_keyboard_ep(void) { - UNUSED(js_keyboard_byte); - return &keyboard_plugin_descriptor; + return &plugin_descriptor; } \ No newline at end of file diff --git a/applications/system/js_app/modules/js_math.c b/applications/system/js_app/modules/js_math.c index 5e78fc661..2af989908 100644 --- a/applications/system/js_app/modules/js_math.c +++ b/applications/system/js_app/modules/js_math.c @@ -1,8 +1,8 @@ #include "../js_modules.h" #include "furi_hal_random.h" -#define MJS_PI (double)3.14159265358979323846 -#define MJS_E (double)2.7182818284590452354 +#define JS_MATH_PI (double)3.14159265358979323846 +#define JS_MATH_E (double)2.7182818284590452354 static void ret_bad_args(struct mjs* mjs, const char* error) { mjs_prepend_errorf(mjs, MJS_BAD_ARGS_ERROR, "%s", error); @@ -18,7 +18,7 @@ static bool check_arg_count(struct mjs* mjs, size_t count) { return true; } -void mjs_abs(struct mjs* mjs) { +void js_math_abs(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -26,7 +26,7 @@ void mjs_abs(struct mjs* mjs) { mjs_return(mjs, x < 0 ? mjs_mk_number(mjs, -x) : mjs_arg(mjs, 0)); } -void mjs_acos(struct mjs* mjs) { +void js_math_acos(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -35,10 +35,10 @@ void mjs_acos(struct mjs* mjs) { ret_bad_args(mjs, "Invalid input value for Math.acos"); mjs_return(mjs, MJS_UNDEFINED); } - mjs_return(mjs, mjs_mk_number(mjs, MJS_PI / (double)2 - atan(x / sqrt(1 - x * x)))); + mjs_return(mjs, mjs_mk_number(mjs, JS_MATH_PI / (double)2 - atan(x / sqrt(1 - x * x)))); } -void mjs_acosh(struct mjs* mjs) { +void js_math_acosh(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -50,7 +50,7 @@ void mjs_acosh(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, log(x + sqrt(x * x - 1)))); } -void mjs_asin(struct mjs* mjs) { +void js_math_asin(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -58,7 +58,7 @@ void mjs_asin(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, atan(x / sqrt(1 - x * x)))); } -void mjs_asinh(struct mjs* mjs) { +void js_math_asinh(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -66,7 +66,7 @@ void mjs_asinh(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, log(x + sqrt(x * x + 1)))); } -void mjs_atan(struct mjs* mjs) { +void js_math_atan(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -74,7 +74,7 @@ void mjs_atan(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, atan(x))); } -void mjs_atan2(struct mjs* mjs) { +void js_math_atan2(struct mjs* mjs) { if(!check_arg_count(mjs, 2) || !mjs_is_number(mjs_arg(mjs, 0)) || !mjs_is_number(mjs_arg(mjs, 1))) { mjs_return(mjs, MJS_UNDEFINED); @@ -84,7 +84,7 @@ void mjs_atan2(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, atan2(y, x))); } -void mjs_atanh(struct mjs* mjs) { +void js_math_atanh(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -96,7 +96,7 @@ void mjs_atanh(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, (double)0.5 * log((1 + x) / (1 - x)))); } -void mjs_cbrt(struct mjs* mjs) { +void js_math_cbrt(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -104,7 +104,7 @@ void mjs_cbrt(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, pow(x, 1.0 / 3.0))); } -void mjs_ceil(struct mjs* mjs) { +void js_math_ceil(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -112,7 +112,7 @@ void mjs_ceil(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, (int)(x + (double)0.5))); } -void mjs_clz32(struct mjs* mjs) { +void js_math_clz32(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -125,7 +125,7 @@ void mjs_clz32(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, 32 - count)); } -void mjs_cos(struct mjs* mjs) { +void js_math_cos(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -133,7 +133,7 @@ void mjs_cos(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, cos(x))); } -void mjs_exp(struct mjs* mjs) { +void js_math_exp(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -147,7 +147,7 @@ void mjs_exp(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, result)); } -void mjs_floor(struct mjs* mjs) { +void js_math_floor(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -155,7 +155,7 @@ void mjs_floor(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, (int)x)); } -void mjs_log(struct mjs* mjs) { +void js_math_log(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -165,14 +165,14 @@ void mjs_log(struct mjs* mjs) { mjs_return(mjs, MJS_UNDEFINED); } double result = 0; - while(x >= MJS_E) { - x /= MJS_E; + while(x >= JS_MATH_E) { + x /= JS_MATH_E; result++; } mjs_return(mjs, mjs_mk_number(mjs, result + log(x))); } -void mjs_max(struct mjs* mjs) { +void js_math_max(struct mjs* mjs) { if(!check_arg_count(mjs, 2) || !mjs_is_number(mjs_arg(mjs, 0)) || !mjs_is_number(mjs_arg(mjs, 1))) { mjs_return(mjs, MJS_UNDEFINED); @@ -182,7 +182,7 @@ void mjs_max(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, x > y ? x : y)); } -void mjs_min(struct mjs* mjs) { +void js_math_min(struct mjs* mjs) { if(!check_arg_count(mjs, 2) || !mjs_is_number(mjs_arg(mjs, 0)) || !mjs_is_number(mjs_arg(mjs, 1))) { mjs_return(mjs, MJS_UNDEFINED); @@ -192,7 +192,7 @@ void mjs_min(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, x < y ? x : y)); } -void mjs_pow(struct mjs* mjs) { +void js_math_pow(struct mjs* mjs) { if(!check_arg_count(mjs, 2) || !mjs_is_number(mjs_arg(mjs, 0)) || !mjs_is_number(mjs_arg(mjs, 1))) { mjs_return(mjs, MJS_UNDEFINED); @@ -206,7 +206,7 @@ void mjs_pow(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, result)); } -void mjs_random(struct mjs* mjs) { +void js_math_random(struct mjs* mjs) { if(!check_arg_count(mjs, 0)) { mjs_return(mjs, MJS_UNDEFINED); } @@ -215,7 +215,7 @@ void mjs_random(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, rnd)); } -void mjs_sign(struct mjs* mjs) { +void js_math_sign(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -223,7 +223,7 @@ void mjs_sign(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, x == 0 ? 0 : (x < 0 ? -1 : 1))); } -void mjs_sin(struct mjs* mjs) { +void js_math_sin(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -237,7 +237,7 @@ void mjs_sin(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, result)); } -void mjs_sqrt(struct mjs* mjs) { +void js_math_sqrt(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -253,7 +253,7 @@ void mjs_sqrt(struct mjs* mjs) { mjs_return(mjs, mjs_mk_number(mjs, result)); } -void mjs_trunc(struct mjs* mjs) { +void js_math_trunc(struct mjs* mjs) { if(!check_arg_count(mjs, 1) || !mjs_is_number(mjs_arg(mjs, 0))) { mjs_return(mjs, MJS_UNDEFINED); } @@ -263,50 +263,46 @@ void mjs_trunc(struct mjs* mjs) { static void* js_math_create(struct mjs* mjs, mjs_val_t* object) { mjs_val_t math_obj = mjs_mk_object(mjs); - mjs_set(mjs, math_obj, "abs", ~0, MJS_MK_FN(mjs_abs)); - mjs_set(mjs, math_obj, "acos", ~0, MJS_MK_FN(mjs_acos)); - mjs_set(mjs, math_obj, "acosh", ~0, MJS_MK_FN(mjs_acosh)); - mjs_set(mjs, math_obj, "asin", ~0, MJS_MK_FN(mjs_asin)); - mjs_set(mjs, math_obj, "asinh", ~0, MJS_MK_FN(mjs_asinh)); - mjs_set(mjs, math_obj, "atan", ~0, MJS_MK_FN(mjs_atan)); - mjs_set(mjs, math_obj, "atan2", ~0, MJS_MK_FN(mjs_atan2)); - mjs_set(mjs, math_obj, "atanh", ~0, MJS_MK_FN(mjs_atanh)); - mjs_set(mjs, math_obj, "cbrt", ~0, MJS_MK_FN(mjs_cbrt)); - mjs_set(mjs, math_obj, "ceil", ~0, MJS_MK_FN(mjs_ceil)); - mjs_set(mjs, math_obj, "clz32", ~0, MJS_MK_FN(mjs_clz32)); - mjs_set(mjs, math_obj, "cos", ~0, MJS_MK_FN(mjs_cos)); - mjs_set(mjs, math_obj, "exp", ~0, MJS_MK_FN(mjs_exp)); - mjs_set(mjs, math_obj, "floor", ~0, MJS_MK_FN(mjs_floor)); - mjs_set(mjs, math_obj, "log", ~0, MJS_MK_FN(mjs_log)); - mjs_set(mjs, math_obj, "max", ~0, MJS_MK_FN(mjs_max)); - mjs_set(mjs, math_obj, "min", ~0, MJS_MK_FN(mjs_min)); - mjs_set(mjs, math_obj, "pow", ~0, MJS_MK_FN(mjs_pow)); - mjs_set(mjs, math_obj, "random", ~0, MJS_MK_FN(mjs_random)); - mjs_set(mjs, math_obj, "sign", ~0, MJS_MK_FN(mjs_sign)); - mjs_set(mjs, math_obj, "sin", ~0, MJS_MK_FN(mjs_sin)); - mjs_set(mjs, math_obj, "sqrt", ~0, MJS_MK_FN(mjs_sqrt)); - mjs_set(mjs, math_obj, "trunc", ~0, MJS_MK_FN(mjs_trunc)); - mjs_set(mjs, math_obj, "PI", ~0, mjs_mk_number(mjs, MJS_PI)); + mjs_set(mjs, math_obj, "abs", ~0, MJS_MK_FN(js_math_abs)); + mjs_set(mjs, math_obj, "acos", ~0, MJS_MK_FN(js_math_acos)); + mjs_set(mjs, math_obj, "acosh", ~0, MJS_MK_FN(js_math_acosh)); + mjs_set(mjs, math_obj, "asin", ~0, MJS_MK_FN(js_math_asin)); + mjs_set(mjs, math_obj, "asinh", ~0, MJS_MK_FN(js_math_asinh)); + mjs_set(mjs, math_obj, "atan", ~0, MJS_MK_FN(js_math_atan)); + mjs_set(mjs, math_obj, "atan2", ~0, MJS_MK_FN(js_math_atan2)); + mjs_set(mjs, math_obj, "atanh", ~0, MJS_MK_FN(js_math_atanh)); + mjs_set(mjs, math_obj, "cbrt", ~0, MJS_MK_FN(js_math_cbrt)); + mjs_set(mjs, math_obj, "ceil", ~0, MJS_MK_FN(js_math_ceil)); + mjs_set(mjs, math_obj, "clz32", ~0, MJS_MK_FN(js_math_clz32)); + mjs_set(mjs, math_obj, "cos", ~0, MJS_MK_FN(js_math_cos)); + mjs_set(mjs, math_obj, "exp", ~0, MJS_MK_FN(js_math_exp)); + mjs_set(mjs, math_obj, "floor", ~0, MJS_MK_FN(js_math_floor)); + mjs_set(mjs, math_obj, "log", ~0, MJS_MK_FN(js_math_log)); + mjs_set(mjs, math_obj, "max", ~0, MJS_MK_FN(js_math_max)); + mjs_set(mjs, math_obj, "min", ~0, MJS_MK_FN(js_math_min)); + mjs_set(mjs, math_obj, "pow", ~0, MJS_MK_FN(js_math_pow)); + mjs_set(mjs, math_obj, "random", ~0, MJS_MK_FN(js_math_random)); + mjs_set(mjs, math_obj, "sign", ~0, MJS_MK_FN(js_math_sign)); + mjs_set(mjs, math_obj, "sin", ~0, MJS_MK_FN(js_math_sin)); + mjs_set(mjs, math_obj, "sqrt", ~0, MJS_MK_FN(js_math_sqrt)); + mjs_set(mjs, math_obj, "trunc", ~0, MJS_MK_FN(js_math_trunc)); + mjs_set(mjs, math_obj, "PI", ~0, mjs_mk_number(mjs, JS_MATH_PI)); *object = math_obj; - return object; -} - -static void js_math_destroy(void* ptr) { - UNUSED(ptr); + return (void*)1; } static const JsModuleDescriptor js_math_desc = { "math", js_math_create, - js_math_destroy, + NULL, }; -static const FlipperAppPluginDescriptor btkicker_plugin_descriptor = { +static const FlipperAppPluginDescriptor plugin_descriptor = { .appid = PLUGIN_APP_ID, .ep_api_version = PLUGIN_API_VERSION, .entry_point = &js_math_desc, }; const FlipperAppPluginDescriptor* js_math_ep(void) { - return &btkicker_plugin_descriptor; + return &plugin_descriptor; } \ No newline at end of file