Willy-JL
262572bcfd
Me did oopsie pt2
2025-02-28 02:11:36 +00:00
Willy-JL
72281d9666
Merge remote-tracking branch 'ofw/dev' into mntm-dev
2025-02-18 16:25:29 +00:00
Anna Antonenko
e27f82f041
[FL-3925, FL-3942, FL-3944] JS features & bugfixes (SDK 0.2) ( #4075 )
...
* feat: JS GPIO PWM, JS GUI Widget view; fix: JS EvtLoop stop on request, JS EvtLoop stop on error
* fix: f18 build
* docs: widget
* fix: js unit test
* change feature naming
Co-authored-by: あく <alleteam@gmail.com >
2025-02-13 17:50:38 +09:00
WillyJL
3ef283824d
FBT: Optimize icons blob -4KB DFU, scrub unused icons ( #291 )
...
* Unused icons to check later
* Exclude disabled icons from firmware
* Format
* Also report free flash in gh comment
* Fix free flash calc
* Fix?
* Fix??
* Split to next line
* Remove dead icons
* Some spring cleaning of icons cooker
* Improve unused icons script
* Disable icons that cant be used in asset packs
* These will need a workaround for external
* Revert "These will need a workaround for external"
This reverts commit fb23d97952 .
* Here's the workaround: split assets lib
now there is "assets" and "fwassets"
firmware links with fwassets and includes all icons
however not all of them are exposed to api
if an app needs a firmware icon not in api, it can use fap_libs=["assets"]
this will link against this dummy assets lib
it only contains the icons that arent exposed to api
this way, an app using assets lib will still benefit from asset packs
but at same time, we can remove pointless icons from dfu blob
* Update changelog
2024-11-05 08:32:24 +01:00
WillyJL
2e7eedf291
CLI: More commands as plugins on SD -6KB DFU, refactor plugin wrapper, ( #276 )
...
* Unused icons to check later
* Exclude disabled icons from firmware
* Format
* CLI: Test moving more cmds to plugins
* CLI: Macro template for plugin wrapper
* Fix plugin filenames
* Retrofit older cli wrappers
* Fix unused
* Fix manifests
* Add explanation
* Revert "Unused icons to check later"
This reverts commit b7f98e344c .
* Revert "Exclude disabled icons from firmware"
This reverts commit ab62e99898 .
* Add back toplevel chat command
* Add DFU size to github comment
* Fix build
* Fix BT CLI preload fail
* Add these back
* Fix CLI command gpio preload fail
* Fix input command
* These can stay
* Fix negative size rounding
* Update changelog
* Fix DFU size calc
2024-11-04 09:42:25 +01:00
Willy-JL
9736f8ee3e
Fix JS CLI command missing imports
2024-11-01 19:21:11 +00:00
Willy-JL
d0358a42ad
Use asset packs not fap_libs=["assets"]
2024-10-31 19:03:59 +00:00
Willy-JL
462d0309c0
Merge commit '85e5642b2ab537ae9e1c0bccac8add975b8a9ed1' into mntm-dev
2024-10-31 17:51:09 +00:00
WillyJL
c807ffc324
JS: Backport³ and more additions & fixes ( #3961 )
...
* JS: Fix file select for fbt launch js_app
* JS: badusb: Add numpad keys
Co-authored-by: oldip <oldip@users.noreply.github.com >
* JS: badusb: Layout support
* JS: badusb: altPrint() and altPrintln()
Co-authored-by: oldip <oldip@users.noreply.github.com >
* JS: badusb: quit()
* JS: serial: readAny()
* JS: serial: end()
* JS: serial: Auto disable expansion service
* JS: storage: Add example script
* JS: gui: text_input: Fix NULL ptr when no prop given
* JS: gui: text_input: Default text props
Co-authored-by: xMasterX <xMasterX@users.noreply.github.com >
* JS: gui: byte_input
Co-authored-by: xMasterX <xMasterX@users.noreply.github.com >
* JS: gui: file_picker
* JS: gui: viewDispatcher.currentView
* JS: gui: view.hasProperty()
* JS: gui: Add some missing typedefs comments
* JS: globals: Fix toString() with negative numbers
* JS: globals: parseInt()
Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com >
* JS: globals: toUpperCase() and toLowerCase()
Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com >
* JS: globals: Add some missing typedefs
* JS: Add example for string functions
Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com >
* JS: globals: __dirpath and __filepath
Co-authored-by: jamisonderek <jamisonderek@users.noreply.github.com >
* JS: globals: load() typedef missing scope param
* JS: Add interactive REPL script example
* JS: Add missing icon for file picker
* JS: Rename to __filename and __dirname
* JS: Move toUpperCase() and toLowerCase() to string class
* JS: parseInt() refactor
* JS: Typedef base param for parseInt()
* Revert "JS: gui: view.hasProperty()"
This reverts commit 1967ec06d4f2e9cafc4e18384ad370f7a7c44468.
* JS: Move toString() to Number class
* JS: Fix duplicate plugin files
in plugins, `requires` is used to determine which app to distribute the .fal under `apps_data/appid/plugins`
* JS: math: Missing typedefs, use camelCase
* JS: badusb: layoutPath is optional in typedef
* Fix ASS scoping
* Rename mjs term prop type value
* Change load() description
* Enlarge buffers in default prop assign
* More checks for default data/text size
* Make PVS happy
* Fix icon symbol
* Update types for JS SDK
* toString() was moved to number class
Co-authored-by: oldip <oldip@users.noreply.github.com >
Co-authored-by: xMasterX <xMasterX@users.noreply.github.com >
Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com >
Co-authored-by: jamisonderek <jamisonderek@users.noreply.github.com >
Co-authored-by: hedger <hedger@users.noreply.github.com >
Co-authored-by: あく <alleteam@gmail.com >
2024-10-31 14:22:05 +09:00
Anna Antonenko
85e5642b2a
[FL-3918] Full-fledged JS SDK + npm packages ( #3963 )
...
* feat: js sdk
* refactor: move js back where it belongs
* docs: generate docs using typedoc
* feat: sdk versioning scheme
* ci: silence pvs warning
* docs: bring back old incomplete js docs
* style: readAnalog naming
* fix: rename script compatibility screens
Co-authored-by: あく <alleteam@gmail.com >
2024-10-31 11:42:57 +09:00
Derek Jamison
6b9ae090f8
JavaScript: SPI implementation ( #272 )
...
* JavaScript: SPI implementation
* Fix build
* Add typedefs
* Port example script to newJS
* Push new manifest to bottom
* Update changelog
---------
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com >
2024-10-23 00:33:34 +02:00
Derek Jamison
e682b6b19e
JavaScript: Add I2C support ( #259 )
...
* JavaScript: Add I2C support
* Format
* Check input bytes, allow arraybuf write input
* Add comment
* Return arraybuf, remove unnecessary malloc and memset
* More meaningful var names for code readability, fix some bugs
* Remove unnecessary state
* Fix build
* Update changelog
* Add typedefs
* toString() updates in example script
---------
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com >
2024-10-20 07:24:44 +02:00
Willy-JL
bb6c015235
JS: Second batch of OFW PR changes
2024-10-19 01:17:22 +01:00
Willy-JL
ba74e953c4
JS: C define to move JS runner to flash (still external for now)
2024-10-18 02:56:06 +01:00
Willy-JL
5d2bb9af5e
JS: Backport file picker as new module
2024-10-16 19:35:42 +01:00
Willy-JL
2f6faa1b7b
Merge remote-tracking branch 'ul/dev' into mntm-dev
2024-10-16 00:56:19 +01:00
Willy-JL
88dfe97a89
Merge remote-tracking branch 'ofw/dev' into mntm-dev
2024-10-15 23:43:33 +01:00
MX
004d8382d3
implement byte input, add missing args in text input
...
TODO: add missing filebrowser dialog
2024-10-16 00:57:44 +03:00
MX
8233534d6a
merge p3
2024-10-15 03:27:04 +03:00
MX
edc58c5a0e
merge p2
2024-10-15 03:16:21 +03:00
porta
8a95cb8d6b
[FL-3893] JS modules ( #3841 )
...
* feat: backport js_gpio from unleashed
* feat: backport js_keyboard, TextInputModel::minimum_length from unleashed
* fix: api version inconsistency
* style: js_gpio
* build: fix submodule ._ .
* refactor: js_gpio
* docs: type declarations for gpio
* feat: gpio interrupts
* fix: js_gpio freeing, resetting and minor stylistic changes
* style: js_gpio
* style: mlib array, fixme's
* feat: js_gpio adc
* feat: js_event_loop
* docs: js_event_loop
* feat: js_event_loop subscription cancellation
* feat: js_event_loop + js_gpio integration
* fix: js_event_loop memory leak
* feat: stop event loop on back button
* test: js: basic, math, event_loop
* feat: js_event_loop queue
* feat: js linkage to previously loaded plugins
* build: fix ci errors
* feat: js module ordered teardown
* feat: js_gui_defer_free
* feat: basic hourglass view
* style: JS ASS (Argument Schema for Scripts)
* fix: js_event_loop mem leaks and lifetime problems
* fix: crashing test and pvs false positives
* feat: mjs custom obj destructors, gui submenu view
* refactor: yank js_gui_defer_free (yuck)
* refactor: maybe_unsubscribe
* empty_screen, docs, typing fix-ups
* docs: navigation event & demo
* feat: submenu setHeader
* feat: text_input
* feat: text_box
* docs: text_box availability
* ci: silence irrelevant pvs low priority warning
* style: use furistring
* style: _get_at -> _safe_get
* fix: built-in module name assignment
* feat: js_dialog; refactor, optimize: js_gui
* docs: js_gui
* ci: silence pvs warning: Memory allocation is infallible
* style: fix storage spelling
* feat: foreign pointer signature checks
* feat: js_storage
* docs: js_storage
* fix: my unit test was breaking other tests ;_;
* ci: fix ci?
* Make doxygen happy
* docs: flipper, math, notification, global
* style: review suggestions
* style: review fixups
* fix: badusb demo script
* docs: badusb
* ci: add nofl
* ci: make linter happy
* Bump api version
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2024-10-14 19:42:11 +01:00
MX
e403860e61
js add storage module
...
(without virtual mount api calls)
by Willy-JL
2024-06-22 02:01:26 +03:00
WillyJL
0d456aa550
JS: Add textbox module ( #3597 )
...
* JS: Add textbox module
* Using view_holder instead of view_dispatcher, more checks in js_textbox_show
* API version sync
* Rename emptyText() to clearText()
* Keeping view_holder allocated for thread sefety
* Js: proper comparision with 0 in js_math_sign
* Js: add comments and fix condition race in textbox
Co-authored-by: あく <alleteam@gmail.com >
Co-authored-by: nminaylov <nm29719@gmail.com >
2024-05-17 18:43:52 +01:00
WillyJL
c673b53e21
JS: Add math module ( #3598 )
...
* JS: Add math module
* Double constants
* Error on argument type mismatch
* Fix missing returns
* Using sin, exp from c library
* asin, acos, pow, sqrt too
* Js: tests for math module and various fixes.
Co-authored-by: あく <alleteam@gmail.com >
Co-authored-by: nminaylov <nm29719@gmail.com >
2024-05-17 17:45:40 +01:00
WillyJL
63403bbae2
JS: Add submenu module ( #3601 )
...
* JS: Add submenu module
* Using view_holder instead of view_dispatcher
Co-authored-by: nminaylov <nm29719@gmail.com >
Co-authored-by: あく <alleteam@gmail.com >
2024-05-16 18:55:08 +01:00
MX
3269f751cd
js vgm module and widget fix
...
VGM js module by jamisonderek
Js fixes by jamisonderek
2024-04-23 12:24:07 +03:00
Willy-JL
a7a3ce8d4b
JS: Add VGM module by @jamisonderek
...
Co-authored-by: Derek Jamison <jamisonderek@users.noreply.github.com >
2024-04-22 06:10:00 +01:00
MX
ec4b8b8f5e
Various fixes
...
fixes by Willy-JL
nfc parser by zacharyweiss
js widget and path globals by jamisonderek
2024-04-05 01:25:03 +03:00
Willy-JL
9fd3f70636
Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into mntm-dev
2024-03-29 03:55:30 +00:00
Derek Jamison
a94a1a96ae
JS: Add widget module
2024-03-26 23:00:10 -05:00
MX
ae84992f25
Merge remote-tracking branch 'OFW/dev' into dev
2024-03-25 23:20:46 +03:00
Nikolay Minaylov
84beb9b23e
JS CLI command ( #3539 )
...
* js command
* made the js command exit when there's an error
* JS CLI: moved to js_app
* JS: abortable cli invocations
* JS: less debug logging in console logs, fix storage descriptor leak in cli
Co-authored-by: Milk-Cool <milan-pl@mail.ru >
Co-authored-by: hedger <hedger@users.noreply.github.com >
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2024-03-26 01:35:38 +09:00
MX
c323656037
js modules updates
...
by Willy-JL
2024-03-23 23:18:26 +03:00
Willy-JL
5b63952b12
JS: Add textbox module
2024-03-23 05:15:56 +00:00
MX
d573cc06da
js modules updates
...
by Willy-JL and Sil333033
2024-03-15 07:09:16 +03:00
Sil333033
d947fa749a
JS: added GPIO module
2024-03-11 20:58:14 +01:00
MX
c9434492b8
Various changes, in expansion, rgb, js
...
by Willy-JL , Spooks4576 , Sil333033 , HaxSam
2024-03-11 00:37:29 +03:00
Sil333033
6420e5b37e
Merge branch 'dev' of https://github.com/Next-Flip/Momentum-Firmware into dev
2024-03-07 22:17:03 +01:00
Sil333033
ab9d4620db
Add Subghz JS module
2024-03-07 22:15:14 +01:00
Willy-JL
86986278d3
Format
2024-03-07 04:56:53 +00:00
Spooks
2ff6dc8c1d
Keyboard WIP (Byte Input Doesn't Work)
2024-03-06 15:02:00 -07:00
Spooks
c43d9d3bdd
Math
2024-03-06 11:03:26 -07:00
Spooks
ab9c10c436
Added Ble Beacon
2024-03-05 23:59:06 -07:00
Spooks
ff4fcfc132
JS: Added Submenu support ( #13 )
2024-03-06 03:20:52 +00:00
Spooks
f92a94a78a
JS: Added Submenu support
2024-03-05 20:17:00 -07:00
Willy-JL
e2ab71e1d3
JS: Add basic storage module API
2024-02-22 03:12:59 +00:00
MX
113afc0d0f
usbdisk support in js
...
by Willy-JL
2024-02-21 00:40:29 +03:00
Willy-JL
ea30dbe2fb
Add JS UsbDisk support (like Mass Storage)
2024-02-16 05:22:10 +00:00
Willy-JL
f489f7204f
Merge branch 'dev' of https://github.com/flipperdevices/flipperzero-firmware into xfw-dev
2024-02-13 19:25:10 +00:00
Nikolay Minaylov
25a280c818
JS serial module renamed, uart channel selection ( #3445 )
2024-02-13 10:04:27 +07:00