pxt-common-packages 11.1.4 → 11.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/built/common-sim.d.ts +98 -0
  2. package/built/common-sim.js +343 -0
  3. package/libs/azureiot/built/debug/binary.js +461 -461
  4. package/libs/browser-events/browserEvents.cpp +29 -0
  5. package/libs/browser-events/browserEvents.ts +167 -0
  6. package/libs/browser-events/keyboard.ts +481 -0
  7. package/libs/browser-events/pxt.json +14 -0
  8. package/libs/browser-events/shims.d.ts +13 -0
  9. package/libs/browser-events/sim/browserEvent.ts +21 -0
  10. package/libs/browser-events/sim/keyboard.ts +256 -0
  11. package/libs/browser-events/sim/mouseState.ts +81 -0
  12. package/libs/color/built/debug/binary.js +8 -8
  13. package/libs/color-sensor/built/debug/binary.js +8 -8
  14. package/libs/controller/built/debug/binary.js +7608 -7582
  15. package/libs/controller---none/built/debug/binary.js +7587 -7561
  16. package/libs/datalogger/built/debug/binary.js +63 -63
  17. package/libs/edge-connector/built/debug/binary.js +8 -8
  18. package/libs/esp32/built/debug/binary.js +462 -462
  19. package/libs/game/built/debug/binary.js +7500 -7474
  20. package/libs/game/camera.ts +2 -2
  21. package/libs/game/controller.ts +2 -2
  22. package/libs/game/docs/reference/animation/animation-frames.md +77 -0
  23. package/libs/game/docs/reference/images/image/equals.md +68 -0
  24. package/libs/game/docs/reference/images/image.md +65 -0
  25. package/libs/game/docs/reference/images/sprite-image.md +43 -0
  26. package/libs/game/docs/reference/info/change-countdown-by.md +26 -0
  27. package/libs/game/docs/reference/info/change-score-by.md +1 -1
  28. package/libs/game/docs/reference/info/countdown.md +52 -0
  29. package/libs/game/docs/reference/sprites/all-of-kind.md +71 -0
  30. package/libs/game/docs/reference/sprites/on-overlap.md +1 -1
  31. package/libs/game/game.ts +1 -1
  32. package/libs/game/info.ts +2 -2
  33. package/libs/game/spriteevents.ts +1 -1
  34. package/libs/game/sprites.ts +1 -1
  35. package/libs/lcd/built/debug/binary.js +8 -8
  36. package/libs/light-spectrum-sensor/built/debug/binary.js +8 -8
  37. package/libs/lora/built/debug/binary.js +8 -8
  38. package/libs/matrix-keypad/built/debug/binary.js +8 -8
  39. package/libs/mqtt/built/debug/binary.js +176 -176
  40. package/libs/net/built/debug/binary.js +176 -176
  41. package/libs/net-game/built/debug/binary.js +9348 -9322
  42. package/libs/palette/built/debug/binary.js +7499 -7473
  43. package/libs/pixel/built/debug/binary.js +8 -8
  44. package/libs/power/built/debug/binary.js +8 -8
  45. package/libs/proximity/built/debug/binary.js +8 -8
  46. package/libs/radio/built/debug/binary.js +8 -8
  47. package/libs/radio-broadcast/built/debug/binary.js +8 -8
  48. package/libs/rotary-encoder/built/debug/binary.js +8 -8
  49. package/libs/screen/built/debug/binary.js +50 -50
  50. package/libs/screen/fieldeditors.ts +2 -0
  51. package/libs/screen/image.d.ts +1 -0
  52. package/libs/servo/built/debug/binary.js +8 -8
  53. package/libs/sprite-scaling/built/debug/binary.js +7499 -7473
  54. package/libs/storyboard/built/debug/binary.js +7499 -7473
  55. package/package.json +1 -1
@@ -0,0 +1,29 @@
1
+ #include "pxt.h"
2
+
3
+ namespace browserEvents {
4
+
5
+ //%
6
+ int mouseX() {
7
+ return -1;
8
+ }
9
+
10
+ //%
11
+ int mouseY() {
12
+ return -1;
13
+ }
14
+
15
+ //%
16
+ int wheelDx() {
17
+ return -1;
18
+ }
19
+
20
+ //%
21
+ int wheelDy() {
22
+ return -1;
23
+ }
24
+
25
+ //%
26
+ int wheelDz() {
27
+ return -1;
28
+ }
29
+ }
@@ -0,0 +1,167 @@
1
+
2
+ //% icon="\uf245"
3
+ //% color="#9c1355"
4
+ //% block="Browser Events"
5
+ namespace browserEvents {
6
+ export enum Event {
7
+ PointerDown = 6857,
8
+ PointerUp = 6858,
9
+ PointerMove = 6859,
10
+ PointerLeave = 6860,
11
+ PointerEnter = 6861,
12
+ PointerCancel = 6862,
13
+ PointerOver = 6863,
14
+ PointerOut = 6864,
15
+ Wheel = 6865,
16
+ KeyDown = 6866,
17
+ KeyUp = 6867
18
+ }
19
+
20
+ export enum MouseButtonId {
21
+ Left = 1,
22
+ Right = 2,
23
+ Wheel = 3,
24
+ Back = 4,
25
+ Forward = 5
26
+ }
27
+
28
+ export enum MouseButtonEvent {
29
+ Pressed = Event.PointerDown,
30
+ Released = Event.PointerUp,
31
+ }
32
+
33
+ //% fixedInstances
34
+ export class MouseButton {
35
+ protected _pressed: boolean;
36
+ protected pressHandler: (x: number, y: number) => void;
37
+ protected pressListeners: ((x: number, y: number) => void)[];
38
+ protected releaseHandler: (x: number, y: number) => void;
39
+ protected releaseListeners: ((x: number, y: number) => void)[];
40
+
41
+ constructor(public id: number) {
42
+ control.internalOnEvent(Event.PointerDown, this.id, () => this.setPressed(false), 16);
43
+ control.internalOnEvent(Event.PointerUp, this.id, () => this.setPressed(true), 16);
44
+
45
+ this._pressed = false;
46
+ this.pressListeners = [];
47
+ this.releaseListeners = [];
48
+ }
49
+
50
+ setPressed(pressed: boolean) {
51
+ this._pressed = pressed;
52
+ if (pressed) {
53
+ if (this.pressHandler) {
54
+ this.pressHandler(mouseX(), mouseY());
55
+ }
56
+ for (const handler of this.pressListeners) {
57
+ handler(mouseX(), mouseY());
58
+ }
59
+ }
60
+ else {
61
+ if (this.releaseHandler) {
62
+ this.releaseHandler(mouseX(), mouseY());
63
+ }
64
+ for (const handler of this.releaseListeners) {
65
+ handler(mouseX(), mouseY());
66
+ }
67
+ }
68
+ }
69
+
70
+ //% blockId=browserEvents_mouseButton_onEvent
71
+ //% block="on $this mouse button $event $x $y"
72
+ //% draggableParameters="reporter"
73
+ //% group="Mouse"
74
+ //% weight=50
75
+ onEvent(event: MouseButtonEvent, handler: (x: number, y: number) => void) {
76
+ if (event === MouseButtonEvent.Pressed) {
77
+ this.pressHandler = handler;
78
+ }
79
+ else {
80
+ this.releaseHandler = handler;
81
+ }
82
+ }
83
+
84
+ //% blockId=browserEvents_mouseButton_isPressed
85
+ //% block="is $this mouse button is pressed"
86
+ //% group="Mouse"
87
+ //% weight=40
88
+ isPressed() {
89
+ return this._pressed;
90
+ }
91
+
92
+ //% blockId=browserEvents_mouseButton_pauseUntil
93
+ //% block="pause until $this mouse button is $event"
94
+ //% group="Mouse"
95
+ //% weight=30
96
+ pauseUntil(event: KeyEvent) {
97
+ control.waitForEvent(event, this.id)
98
+ }
99
+
100
+ addEventListener(event: KeyEvent, handler: (x: number, y: number) => void) {
101
+ if (event === KeyEvent.Pressed) {
102
+ this.pressListeners.push(handler);
103
+ }
104
+ else {
105
+ this.releaseListeners.push(handler);
106
+ }
107
+ }
108
+
109
+ removeEventListener(event: KeyEvent, handler: (x: number, y: number) => void) {
110
+ if (event === KeyEvent.Pressed) {
111
+ this.pressListeners = this.pressListeners.filter(p => p !== handler);
112
+ }
113
+ else {
114
+ this.releaseListeners = this.releaseListeners.filter(p => p !== handler);
115
+ }
116
+ }
117
+ }
118
+
119
+ //% blockId=browserEvents_onEvent
120
+ //% block="on browser event $event"
121
+ //% draggableParameters="reporter"
122
+ //% group="Mouse"
123
+ //% weight=10
124
+ export function onEvent(event: Event, handler: () => void) {
125
+ control.onEvent(event, 0, handler);
126
+ }
127
+
128
+ //% blockId=browserEvents_onMouseMove
129
+ //% block="on mouse move $x $y"
130
+ //% draggableParameters="reporter"
131
+ //% group="Mouse"
132
+ //% weight=100
133
+ export function onMouseMove(handler: (x: number, y: number) => void) {
134
+ control.onEvent(Event.PointerMove, 0, () => {
135
+ handler(mouseX(), mouseY());
136
+ });
137
+ }
138
+
139
+ //% blockId=browserEvents_onWheel
140
+ //% block="on mouse wheel $dx $dy $dz"
141
+ //% draggableParameters="reporter"
142
+ //% group="Mouse"
143
+ //% weight=20
144
+ export function onWheel(handler: (dx: number, dy: number, dz: number) => void) {
145
+ control.onEvent(Event.Wheel, 0, () => {
146
+ handler(wheelDx(), wheelDy(), wheelDz());
147
+ });
148
+ }
149
+
150
+ //% fixedInstance whenUsed block="left"
151
+ export const MouseLeft = new MouseButton(MouseButtonId.Left);
152
+
153
+ //% fixedInstance whenUsed block="right"
154
+ export const MouseRight = new MouseButton(MouseButtonId.Right);
155
+
156
+ //% fixedInstance whenUsed block="wheel"
157
+ export const MouseWheel = new MouseButton(MouseButtonId.Wheel);
158
+
159
+ //% fixedInstance whenUsed block="back"
160
+ export const MouseBack = new MouseButton(MouseButtonId.Back);
161
+
162
+ //% fixedInstance whenUsed block="forward"
163
+ export const MouseForward = new MouseButton(MouseButtonId.Forward);
164
+
165
+ //% fixedInstance whenUsed block="any"
166
+ export const MouseAny = new MouseButton(0);
167
+ }
@@ -0,0 +1,481 @@
1
+ namespace browserEvents {
2
+ export enum Key {
3
+ Zero = 48,
4
+ One = 49,
5
+ Two = 50,
6
+ Three = 51,
7
+ Four = 52,
8
+ Five = 53,
9
+ Six = 54,
10
+ Seven = 55,
11
+ Eight = 56,
12
+ Nine = 57,
13
+ BackTick = 192,
14
+ Hyphen = 189,
15
+ Equals = 187,
16
+ Q = 81,
17
+ W = 87,
18
+ E = 69,
19
+ R = 82,
20
+ T = 84,
21
+ Y = 89,
22
+ U = 85,
23
+ I = 73,
24
+ O = 79,
25
+ P = 80,
26
+ OpenBracket = 219,
27
+ CloseBracket = 221,
28
+ BackSlash = 220,
29
+ A = 65,
30
+ S = 83,
31
+ D = 68,
32
+ F = 70,
33
+ G = 71,
34
+ H = 72,
35
+ Space = 32,
36
+ PageUp = 33,
37
+ J = 74,
38
+ K = 75,
39
+ L = 76,
40
+ SemiColon = 186,
41
+ Apostrophe = 222,
42
+ Z = 90,
43
+ X = 88,
44
+ C = 67,
45
+ V = 86,
46
+ B = 66,
47
+ N = 78,
48
+ M = 77,
49
+ Comma = 188,
50
+ Period = 190,
51
+ ForwardSlash = 191,
52
+ Shift = 16,
53
+ Enter = 13,
54
+ CapsLock = 20,
55
+ Tab = 9,
56
+ Control = 17,
57
+ Meta = 91,
58
+ Alt = 18,
59
+ ArrowUp = 38,
60
+ ArrowDown = 40,
61
+ ArrowLeft = 37,
62
+ ArrowRight = 39,
63
+ PageDown = 34,
64
+ End = 35,
65
+ Home = 36
66
+ }
67
+
68
+ export enum KeyEvent {
69
+ Pressed,
70
+ Released
71
+ }
72
+
73
+ export function keyToString(key: Key) {
74
+ switch (key) {
75
+ case Key.Q:
76
+ return "Q";
77
+ case Key.W:
78
+ return "W";
79
+ case Key.E:
80
+ return "E";
81
+ case Key.R:
82
+ return "R";
83
+ case Key.T:
84
+ return "T";
85
+ case Key.Y:
86
+ return "Y";
87
+ case Key.U:
88
+ return "U";
89
+ case Key.I:
90
+ return "I";
91
+ case Key.O:
92
+ return "O";
93
+ case Key.P:
94
+ return "P";
95
+ case Key.OpenBracket:
96
+ return "[";
97
+ case Key.CloseBracket:
98
+ return "]";
99
+ case Key.BackSlash:
100
+ return "\\";
101
+ case Key.A:
102
+ return "A";
103
+ case Key.S:
104
+ return "S";
105
+ case Key.D:
106
+ return "D";
107
+ case Key.F:
108
+ return "F";
109
+ case Key.G:
110
+ return "G";
111
+ case Key.H:
112
+ return "H";
113
+ case Key.Space:
114
+ return " ";
115
+ case Key.PageUp:
116
+ return "PageUp";
117
+ case Key.J:
118
+ return "J";
119
+ case Key.K:
120
+ return "K";
121
+ case Key.L:
122
+ return "L";
123
+ case Key.SemiColon:
124
+ return ";";
125
+ case Key.Apostrophe:
126
+ return "'";
127
+ case Key.Z:
128
+ return "Z";
129
+ case Key.X:
130
+ return "X";
131
+ case Key.C:
132
+ return "C";
133
+ case Key.V:
134
+ return "V";
135
+ case Key.B:
136
+ return "B";
137
+ case Key.N:
138
+ return "N";
139
+ case Key.M:
140
+ return "M";
141
+ case Key.Comma:
142
+ return ",";
143
+ case Key.Period:
144
+ return ".";
145
+ case Key.ForwardSlash:
146
+ return "/";
147
+ case Key.Shift:
148
+ return "Shift";
149
+ case Key.Enter:
150
+ return "Enter";
151
+ case Key.CapsLock:
152
+ return "CapsLock";
153
+ case Key.Tab:
154
+ return "Tab";
155
+ case Key.Control:
156
+ return "Control";
157
+ case Key.Meta:
158
+ return "Meta";
159
+ case Key.Alt:
160
+ return "Alt";
161
+ case Key.ArrowUp:
162
+ return "ArrowUp";
163
+ case Key.ArrowDown:
164
+ return "ArrowDown";
165
+ case Key.ArrowLeft:
166
+ return "ArrowLeft";
167
+ case Key.ArrowRight:
168
+ return "ArrowRight";
169
+ case Key.PageDown:
170
+ return "PageDown";
171
+ case Key.End:
172
+ return "End";
173
+ case Key.Home:
174
+ return "Home";
175
+ case Key.Zero:
176
+ return "0";
177
+ case Key.One:
178
+ return "1";
179
+ case Key.Two:
180
+ return "2";
181
+ case Key.Three:
182
+ return "3";
183
+ case Key.Four:
184
+ return "4";
185
+ case Key.Five:
186
+ return "5";
187
+ case Key.Six:
188
+ return "6";
189
+ case Key.Seven:
190
+ return "7";
191
+ case Key.Eight:
192
+ return "8";
193
+ case Key.Nine:
194
+ return "9";
195
+ case Key.BackTick:
196
+ return "`";
197
+ case Key.Hyphen:
198
+ return "-";
199
+ case Key.Equals:
200
+ return "=";
201
+ }
202
+ }
203
+
204
+
205
+ //% fixedInstances
206
+ export class KeyButton {
207
+ protected _pressed: boolean;
208
+ protected pressHandler: () => void;
209
+ protected pressListeners: (() => void)[];
210
+ protected releaseHandler: () => void;
211
+ protected releaseListeners: (() => void)[];
212
+
213
+ constructor(public id: number) {
214
+ control.onEvent(Event.KeyUp, this.id, () => this.setPressed(false), 16);
215
+ control.onEvent(Event.KeyDown, this.id, () => this.setPressed(true), 16);
216
+
217
+ this._pressed = false;
218
+ this.pressListeners = [];
219
+ this.releaseListeners = [];
220
+ }
221
+
222
+ setPressed(pressed: boolean) {
223
+ this._pressed = pressed;
224
+ if (pressed) {
225
+ if (this.pressHandler) {
226
+ this.pressHandler();
227
+ }
228
+ for (const handler of this.pressListeners) {
229
+ handler();
230
+ }
231
+ }
232
+ else {
233
+ if (this.releaseHandler) {
234
+ this.releaseHandler();
235
+ }
236
+ for (const handler of this.releaseListeners) {
237
+ handler();
238
+ }
239
+ }
240
+ }
241
+
242
+ //% blockId=browserEvents_key_onEvent
243
+ //% block="on $this key $event"
244
+ //% group="Keyboard"
245
+ //% weight=100
246
+ onEvent(event: KeyEvent, handler: () => void) {
247
+ if (event === KeyEvent.Pressed) {
248
+ this.pressHandler = handler;
249
+ }
250
+ else {
251
+ this.releaseHandler = handler;
252
+ }
253
+ }
254
+
255
+ //% blockId=browserEvents_key_isPressed
256
+ //% block="is $this key is pressed"
257
+ //% group="Keyboard"
258
+ //% weight=90
259
+ isPressed() {
260
+ return this._pressed;
261
+ }
262
+
263
+ //% blockId=browserEvents_key_pauseUntil
264
+ //% block="pause until $this key is $event"
265
+ //% group="Keyboard"
266
+ //% weight=80
267
+ pauseUntil(event: KeyEvent) {
268
+ control.waitForEvent(event, this.id)
269
+ }
270
+
271
+ addEventListener(event: KeyEvent, handler: () => void) {
272
+ if (event === KeyEvent.Pressed) {
273
+ this.pressListeners.push(handler);
274
+ }
275
+ else {
276
+ this.releaseListeners.push(handler);
277
+ }
278
+ }
279
+
280
+ removeEventListener(event: KeyEvent, handler: () => void) {
281
+ if (event === KeyEvent.Pressed) {
282
+ this.pressListeners = this.pressListeners.filter(p => p !== handler);
283
+ }
284
+ else {
285
+ this.releaseListeners = this.releaseListeners.filter(p => p !== handler);
286
+ }
287
+ }
288
+ }
289
+
290
+ //% fixedInstance whenUsed
291
+ export const A = new KeyButton(Key.A);
292
+
293
+ //% fixedInstance whenUsed
294
+ export const B = new KeyButton(Key.B);
295
+
296
+ //% fixedInstance whenUsed
297
+ export const C = new KeyButton(Key.C);
298
+
299
+ //% fixedInstance whenUsed
300
+ export const D = new KeyButton(Key.D);
301
+
302
+ //% fixedInstance whenUsed
303
+ export const E = new KeyButton(Key.E);
304
+
305
+ //% fixedInstance whenUsed
306
+ export const F = new KeyButton(Key.F);
307
+
308
+ //% fixedInstance whenUsed
309
+ export const G = new KeyButton(Key.G);
310
+
311
+ //% fixedInstance whenUsed
312
+ export const H = new KeyButton(Key.H);
313
+
314
+ //% fixedInstance whenUsed
315
+ export const I = new KeyButton(Key.I);
316
+
317
+ //% fixedInstance whenUsed
318
+ export const J = new KeyButton(Key.J);
319
+
320
+ //% fixedInstance whenUsed
321
+ export const K = new KeyButton(Key.K);
322
+
323
+ //% fixedInstance whenUsed
324
+ export const L = new KeyButton(Key.L);
325
+
326
+ //% fixedInstance whenUsed
327
+ export const M = new KeyButton(Key.M);
328
+
329
+ //% fixedInstance whenUsed
330
+ export const N = new KeyButton(Key.N);
331
+
332
+ //% fixedInstance whenUsed
333
+ export const O = new KeyButton(Key.O);
334
+
335
+ //% fixedInstance whenUsed
336
+ export const P = new KeyButton(Key.P);
337
+
338
+ //% fixedInstance whenUsed
339
+ export const Q = new KeyButton(Key.Q);
340
+
341
+ //% fixedInstance whenUsed
342
+ export const R = new KeyButton(Key.R);
343
+
344
+ //% fixedInstance whenUsed
345
+ export const S = new KeyButton(Key.S);
346
+
347
+ //% fixedInstance whenUsed
348
+ export const T = new KeyButton(Key.T);
349
+
350
+ //% fixedInstance whenUsed
351
+ export const U = new KeyButton(Key.U);
352
+
353
+ //% fixedInstance whenUsed
354
+ export const V = new KeyButton(Key.V);
355
+
356
+ //% fixedInstance whenUsed
357
+ export const W = new KeyButton(Key.W);
358
+
359
+ //% fixedInstance whenUsed
360
+ export const X = new KeyButton(Key.X);
361
+
362
+ //% fixedInstance whenUsed
363
+ export const Y = new KeyButton(Key.Y);
364
+
365
+ //% fixedInstance whenUsed
366
+ export const Z = new KeyButton(Key.Z);
367
+
368
+ //% fixedInstance whenUsed
369
+ export const Zero = new KeyButton(Key.Zero);
370
+
371
+ //% fixedInstance whenUsed
372
+ export const One = new KeyButton(Key.One);
373
+
374
+ //% fixedInstance whenUsed
375
+ export const Two = new KeyButton(Key.Two);
376
+
377
+ //% fixedInstance whenUsed
378
+ export const Three = new KeyButton(Key.Three);
379
+
380
+ //% fixedInstance whenUsed
381
+ export const Four = new KeyButton(Key.Four);
382
+
383
+ //% fixedInstance whenUsed
384
+ export const Five = new KeyButton(Key.Five);
385
+
386
+ //% fixedInstance whenUsed
387
+ export const Six = new KeyButton(Key.Six);
388
+
389
+ //% fixedInstance whenUsed
390
+ export const Seven = new KeyButton(Key.Seven);
391
+
392
+ //% fixedInstance whenUsed
393
+ export const Eight = new KeyButton(Key.Eight);
394
+
395
+ //% fixedInstance whenUsed
396
+ export const Nine = new KeyButton(Key.Nine);
397
+
398
+ //% fixedInstance whenUsed
399
+ export const Shift = new KeyButton(Key.Shift);
400
+
401
+ //% fixedInstance whenUsed
402
+ export const Enter = new KeyButton(Key.Enter);
403
+
404
+ //% fixedInstance whenUsed
405
+ export const CapsLock = new KeyButton(Key.CapsLock);
406
+
407
+ //% fixedInstance whenUsed
408
+ export const Tab = new KeyButton(Key.Tab);
409
+
410
+ //% fixedInstance whenUsed
411
+ export const Control = new KeyButton(Key.Control);
412
+
413
+ //% fixedInstance whenUsed
414
+ export const Meta = new KeyButton(Key.Meta);
415
+
416
+ //% fixedInstance whenUsed
417
+ export const Alt = new KeyButton(Key.Alt);
418
+
419
+ //% fixedInstance whenUsed
420
+ export const ArrowUp = new KeyButton(Key.ArrowUp);
421
+
422
+ //% fixedInstance whenUsed
423
+ export const ArrowDown = new KeyButton(Key.ArrowDown);
424
+
425
+ //% fixedInstance whenUsed
426
+ export const ArrowLeft = new KeyButton(Key.ArrowLeft);
427
+
428
+ //% fixedInstance whenUsed
429
+ export const ArrowRight = new KeyButton(Key.ArrowRight);
430
+
431
+ //% fixedInstance whenUsed
432
+ export const BackTick = new KeyButton(Key.BackTick);
433
+
434
+ //% fixedInstance whenUsed
435
+ export const Hyphen = new KeyButton(Key.Hyphen);
436
+
437
+ //% fixedInstance whenUsed
438
+ export const Equals = new KeyButton(Key.Equals);
439
+
440
+ //% fixedInstance whenUsed
441
+ export const OpenBracket = new KeyButton(Key.OpenBracket);
442
+
443
+ //% fixedInstance whenUsed
444
+ export const CloseBracket = new KeyButton(Key.CloseBracket);
445
+
446
+ //% fixedInstance whenUsed
447
+ export const BackSlash = new KeyButton(Key.BackSlash);
448
+
449
+ //% fixedInstance whenUsed
450
+ export const Space = new KeyButton(Key.Space);
451
+
452
+ //% fixedInstance whenUsed
453
+ export const PageUp = new KeyButton(Key.PageUp);
454
+
455
+ //% fixedInstance whenUsed
456
+ export const SemiColon = new KeyButton(Key.SemiColon);
457
+
458
+ //% fixedInstance whenUsed
459
+ export const Apostrophe = new KeyButton(Key.Apostrophe);
460
+
461
+ //% fixedInstance whenUsed
462
+ export const Comma = new KeyButton(Key.Comma);
463
+
464
+ //% fixedInstance whenUsed
465
+ export const Period = new KeyButton(Key.Period);
466
+
467
+ //% fixedInstance whenUsed
468
+ export const ForwardSlash = new KeyButton(Key.ForwardSlash);
469
+
470
+ //% fixedInstance whenUsed
471
+ export const PageDown = new KeyButton(Key.PageDown);
472
+
473
+ //% fixedInstance whenUsed
474
+ export const End = new KeyButton(Key.End);
475
+
476
+ //% fixedInstance whenUsed
477
+ export const Home = new KeyButton(Key.Home);
478
+
479
+ //% fixedInstance whenUsed
480
+ export const Any = new KeyButton(0);
481
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "browser-events",
3
+ "description": "A package for interacting with browser-only functionality like keyboard and mouse events",
4
+ "files": [
5
+ "browserEvents.cpp",
6
+ "browserEvents.ts",
7
+ "keyboard.ts",
8
+ "shims.d.ts"
9
+ ],
10
+ "public": true,
11
+ "dependencies": {
12
+ "core": "file:../core"
13
+ }
14
+ }
@@ -0,0 +1,13 @@
1
+ declare namespace browserEvents {
2
+ //% shim=browserEvents::mouseX
3
+ function mouseX(): number;
4
+ //% shim=browserEvents::mouseY
5
+ function mouseY(): number;
6
+ //% shim=browserEvents::wheelDx
7
+ function wheelDx(): number;
8
+ //% shim=browserEvents::wheelDy
9
+ function wheelDy(): number;
10
+ //% shim=browserEvents::wheelDz
11
+ function wheelDz(): number;
12
+
13
+ }