Erik Mejer Hansen
ceaa3c7857
Add support extensions to define custom field types.
...
This is done by adding a new element "customFieldTypes" to the extension info structure. Ex:
```
customFieldTypes: {
angleField: {
implementation: { fromJson: options => new AngleField(options) },
output: 'number',
outputShape: 2,
}
}
```
Field types are defined by an implementation that has to match what is expected by ScratchBlocks.Field.register and its output and shape.
src/engine/runtime.js has been updated to handle the new "customFieldTypes"-field:
- Existing (global) field types cannot be overridden
- New fields are "namespaced" to the extension in the same way as opcodes are.
Once the custom field type has been picked up by scratch-vm a "EXTENSION_FIELD_ADDED" event is emitted.
It is then up to the hosting app to call ScratchBlocks.Field.register to register the field type with ScratchBlocks. Ex:
```
vm.addListener('EXTENSION_FIELD_ADDED', fieldInfo => {
this.ScratchBlocks.Field.register(fieldInfo.name, fieldInfo.implementation);
});
```
2019-01-20 21:24:32 +01:00
Eric Rosenbaum
9d4442444f
Merge pull request #1914 from bocoup/sensor-error
...
Prevent console errors when disconnecting/reconnect to Vernier extension
2019-01-18 17:09:38 -05:00
Eric Rosenbaum
0b251adace
Merge pull request #1763 from evhan55/extensions/disconnect-errors
...
Various fixes to extension disconnect errors
2019-01-18 16:58:45 -05:00
Evelyn Eastmond
4b9488cf66
Restoring package-lock.json
2019-01-16 20:38:45 -05:00
Evelyn Eastmond
7831256044
Change event names to be more descriptive. Fix some typos.
2019-01-16 20:17:19 -05:00
Evelyn Eastmond
6f9a4864e9
Fix typo.
2019-01-16 19:59:51 -05:00
Evelyn Eastmond
802f752ded
Prevent setting onCharactericChanged callback to null.
2019-01-16 19:50:32 -05:00
Evelyn Eastmond
6e290ea937
Calling microbit timeout error in an arrow function.
2019-01-16 16:23:06 -05:00
Evelyn Eastmond
e1e8e57403
Adding TODOs.
2019-01-16 16:08:15 -05:00
Evelyn Eastmond
5c885911e7
Replacing a timeout clear.
2019-01-16 16:06:44 -05:00
Evelyn Eastmond
28a54d6e83
Adding back in the disconnect branch to be fixed later in another PR.
2019-01-16 16:05:13 -05:00
Evelyn Eastmond
2761209631
Changing JSDoc slightly, again.
2019-01-16 16:00:25 -05:00
Evelyn Eastmond
c30807a678
Finetuning a JSDOC.
2019-01-16 15:56:58 -05:00
Evelyn Eastmond
7ec9494804
Making corrections based on discussion with ericr.
2019-01-16 15:54:38 -05:00
Evelyn Eastmond
bd8f129022
Adding a TODO for an optional read param.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
e4b82aeaef
Adding callback back to battery read to fix clearing the characteristicChanged callback by accident.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
d7b6cfae97
Move micro:bit data stopped error string to constant. Added another jsdoc.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
f030afbdc5
Removing extra params from a BLE read in WeDo2.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
156b1bc21a
Adding new runtime event for intentional peripheral disconnects.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
7518a9c149
Changing error to be more accurate.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
2d9531a15c
Removing console logs.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
fdda1e53e3
Change microbit extension to send BLE socket error on data lost, instead of calling disconnect directly.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
fab292889f
Adding disconnect callback to BT/BLE error system.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
a177b4eeb7
Adding interval to check for battery level.
2019-01-16 15:22:58 -05:00
Evelyn Eastmond
ae95df553d
Merge pull request #1924 from evhan55/extensions/vernier-withresponse-fix
...
Removing withResponse flag in GDX-FOR extension write method
2019-01-16 15:14:35 -05:00
Karishma Chadha
0fa5e9181a
Merge pull request #1839 from mzgoddard/fix-missing-no-param
...
fix: initialize stack frame params for all procedures
2019-01-16 14:06:38 -05:00
Karishma Chadha
325372233d
Improve the performance of the timer utilitiy so that it does not garbage collect multiple times per frame.
2019-01-16 10:09:19 -05:00
Paul Kaplan
4b777d94e4
Merge pull request #1925 from ericrosenbaum/bugfix/dont-load-vernier-yet
...
Do not load Vernier extension yet
2019-01-15 15:29:15 -05:00
Eric Rosenbaum
5d329663aa
do not load vernier extension yet
2019-01-15 15:20:05 -05:00
Evelyn Eastmond
a6c05d8f61
Removing withResponse flag since it is not needed and was causing a crash on Windows.
2019-01-15 11:43:08 -05:00
Karishma Chadha
d5c2991a25
Merge pull request #1923 from ktbee/missing-block-early-exit
...
Add early exit for non-existent block
2019-01-15 11:29:40 -05:00
Karishma Chadha
fefb032f17
add comment before using util.initParams
...
Co-Authored-By: mzgoddard <mzgoddard@gmail.com>
2019-01-15 11:24:47 -05:00
Katie Broida
8256b3d5c5
Add early exit for non-existent block
2019-01-15 11:15:23 -05:00
Eric Rosenbaum
b57b6c0a84
Merge pull request #1916 from ericrosenbaum/bugfix/vernier-dont-keep-data
...
Prevent excess event emitting in Vernier extension
2019-01-15 11:07:35 -05:00
Eric Rosenbaum
e414e1b246
Add todo comment about keepValues flag
2019-01-15 10:46:22 -05:00
Eric Rosenbaum
2856b32dd5
Merge branch 'develop' into sensor-error
2019-01-15 10:38:51 -05:00
Eric Rosenbaum
8b2f326469
Merge pull request #1920 from evhan55/extensions/vernier-peripheral-list
...
Properly disconnect BLE socket in GDX-FOR scan/disconnect
2019-01-15 10:31:48 -05:00
Evelyn Eastmond
308bb7095a
Properly disconnect BLE socket.
2019-01-14 20:17:18 -05:00
Eric Rosenbaum
7111513169
Merge pull request #1909 from ericrosenbaum/feature/vernier-block-icon
...
Add Vernier extension block icon
2019-01-14 18:26:12 -05:00
Karishma Chadha
43fd733b15
Merge pull request #1912 from kchadha/executable-targets-fix
...
Populate executable targets when runtime.targets is populated
2019-01-14 14:57:29 -05:00
Eric Rosenbaum
8f0e025261
Use flag to not keep data, and remove listener hack
2019-01-14 14:01:43 -05:00
Karishma Chadha
59a865ef47
Create a new addTarget
function on the runtime which populates the targets list as well as the executable targets list.
2019-01-14 11:48:11 -05:00
Kevin Andersen
0557fc8e09
Motor position reporter kinda working. LED commands working. Added mode information to generateOutputCommand-function. Removed value-format switch-case in favor of hard-coded value-interpretation, but put in a TODO that we perhaps should consider doing it in the future.
2019-01-13 21:10:20 +01:00
Valerie Young
daccdb0a71
Satisfy linter
2019-01-11 16:53:47 -05:00
Valerie Young
f2f4af2590
Don't send disconnect to a closed device
2019-01-11 16:47:42 -05:00
Valerie Young
328e4480f6
Prevent reading non-existing sensors
2019-01-11 16:43:08 -05:00
Karishma Chadha
fbee37e915
Populate executable targets when runtime.targets is populated so that scripts don't run before they are supposed to (e.g. before targets are done getting installed).
2019-01-11 14:52:34 -05:00
Eric Rosenbaum
730ec44e5d
Update block icon
2019-01-11 12:07:16 -05:00
Eric Rosenbaum
f6a9dd95b0
Merge pull request #1907 from bocoup/boolean-blocks
...
Add blocks to GDX-FOR extension
2019-01-11 11:42:19 -05:00
Valerie Young
9e612acb27
Forgotten parens
2019-01-11 11:00:08 -05:00