pxt-common-packages 12.3.4 → 12.3.9

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 (41) hide show
  1. package/built/common-sim.d.ts +12 -2
  2. package/built/common-sim.js +45 -4
  3. package/libs/azureiot/built/debug/binary.js +461 -461
  4. package/libs/base/pxtbase.h +4 -0
  5. package/libs/browser-events/browserEvents.cpp +4 -0
  6. package/libs/browser-events/browserEvents.ts +115 -36
  7. package/libs/browser-events/keyboard.ts +147 -41
  8. package/libs/browser-events/shims.d.ts +2 -0
  9. package/libs/browser-events/sim/keyboard.ts +36 -3
  10. package/libs/browser-events/sim/mouseState.ts +15 -1
  11. package/libs/color/built/debug/binary.js +8 -8
  12. package/libs/color-sensor/built/debug/binary.js +8 -8
  13. package/libs/controller/built/debug/binary.js +8560 -8315
  14. package/libs/controller---none/built/debug/binary.js +8539 -8294
  15. package/libs/datalogger/built/debug/binary.js +63 -63
  16. package/libs/edge-connector/built/debug/binary.js +8 -8
  17. package/libs/esp32/built/debug/binary.js +462 -462
  18. package/libs/game/built/debug/binary.js +8452 -8207
  19. package/libs/game/game.ts +5 -2
  20. package/libs/lcd/built/debug/binary.js +8 -8
  21. package/libs/light-spectrum-sensor/built/debug/binary.js +8 -8
  22. package/libs/lora/built/debug/binary.js +8 -8
  23. package/libs/matrix-keypad/built/debug/binary.js +8 -8
  24. package/libs/mixer/playable.ts +6 -2
  25. package/libs/mixer/soundEffect.ts +2 -2
  26. package/libs/mqtt/built/debug/binary.js +176 -176
  27. package/libs/net/built/debug/binary.js +176 -176
  28. package/libs/net-game/built/debug/binary.js +10394 -10149
  29. package/libs/palette/built/debug/binary.js +8451 -8206
  30. package/libs/pixel/built/debug/binary.js +8 -8
  31. package/libs/power/built/debug/binary.js +8 -8
  32. package/libs/proximity/built/debug/binary.js +8 -8
  33. package/libs/radio/built/debug/binary.js +8 -8
  34. package/libs/radio-broadcast/built/debug/binary.js +8 -8
  35. package/libs/rotary-encoder/built/debug/binary.js +8 -8
  36. package/libs/screen/built/debug/binary.js +50 -50
  37. package/libs/screen---st7735/screen.cpp +2 -2
  38. package/libs/servo/built/debug/binary.js +8 -8
  39. package/libs/sprite-scaling/built/debug/binary.js +8451 -8206
  40. package/libs/storyboard/built/debug/binary.js +8451 -8206
  41. package/package.json +2 -2
@@ -341,15 +341,25 @@ declare namespace pxsim.browserEvents {
341
341
  ArrowRight = 39,
342
342
  PageDown = 34,
343
343
  End = 35,
344
- Home = 36
344
+ Home = 36,
345
+ LeftShift = 1016,
346
+ RightShift = 1017,
347
+ LeftControl = 1018,
348
+ RightControl = 1019,
349
+ Backspace = 8,
350
+ Delete = 46
345
351
  }
346
352
  function onKeyboardEvent(event: KeyboardEvent, pressed: boolean): void;
347
- function getValueForKey(event: KeyboardEvent): 0 | Key;
353
+ function getValueForKey(event: KeyboardEvent): 0 | Key.Zero | Key.One | Key.Two | Key.Three | Key.Four | Key.Five | Key.Six | Key.Seven | Key.Eight | Key.Nine | Key.BackTick | Key.Hyphen | Key.Equals | Key.Q | Key.W | Key.E | Key.R | Key.T | Key.Y | Key.U | Key.I | Key.O | Key.P | Key.OpenBracket | Key.CloseBracket | Key.BackSlash | Key.A | Key.S | Key.D | Key.F | Key.G | Key.H | Key.Space | Key.PageUp | Key.J | Key.K | Key.L | Key.SemiColon | Key.Apostrophe | Key.Z | Key.X | Key.C | Key.V | Key.B | Key.N | Key.M | Key.Comma | Key.Period | Key.ForwardSlash | Key.Shift | Key.Enter | Key.CapsLock | Key.Tab | Key.Control | Key.Meta | Key.Alt | Key.ArrowUp | Key.ArrowDown | Key.ArrowLeft | Key.ArrowRight | Key.PageDown | Key.End | Key.Home | Key.Backspace | Key.Delete;
348
354
  }
349
355
  declare namespace pxsim.browserEvents {
350
356
  interface BrowserEventsBoard extends CommonBoard {
351
357
  mouseState: MouseState;
352
358
  }
359
+ const INTERNAL_KEY_DOWN = 6870;
360
+ const INTERNAL_KEY_UP = 6871;
361
+ const INTERNAL_POINTER_DOWN = 6868;
362
+ const INTERNAL_POINTER_UP = 6869;
353
363
  type MouseEvent = "pointerdown" | "pointerup" | "pointermove" | "pointerleave" | "pointerenter" | "pointercancel" | "pointerover" | "pointerout";
354
364
  class MouseState {
355
365
  protected x: number;
@@ -813,16 +813,42 @@ var pxsim;
813
813
  Key[Key["PageDown"] = 34] = "PageDown";
814
814
  Key[Key["End"] = 35] = "End";
815
815
  Key[Key["Home"] = 36] = "Home";
816
+ Key[Key["LeftShift"] = 1016] = "LeftShift";
817
+ Key[Key["RightShift"] = 1017] = "RightShift";
818
+ Key[Key["LeftControl"] = 1018] = "LeftControl";
819
+ Key[Key["RightControl"] = 1019] = "RightControl";
820
+ Key[Key["Backspace"] = 8] = "Backspace";
821
+ Key[Key["Delete"] = 46] = "Delete";
816
822
  })(Key = browserEvents.Key || (browserEvents.Key = {}));
817
823
  function onKeyboardEvent(event, pressed) {
824
+ const eventValue = getValueForKey(event);
825
+ fireEvent(eventValue, pressed);
826
+ if (eventValue === Key.Shift) {
827
+ if (event.location === event.DOM_KEY_LOCATION_LEFT) {
828
+ fireEvent(Key.LeftShift, pressed);
829
+ }
830
+ else if (event.location === event.DOM_KEY_LOCATION_RIGHT) {
831
+ fireEvent(Key.RightShift, pressed);
832
+ }
833
+ }
834
+ if (eventValue === Key.Control) {
835
+ if (event.location === event.DOM_KEY_LOCATION_LEFT) {
836
+ fireEvent(Key.LeftControl, pressed);
837
+ }
838
+ else if (event.location === event.DOM_KEY_LOCATION_RIGHT) {
839
+ fireEvent(Key.RightControl, pressed);
840
+ }
841
+ }
842
+ }
843
+ browserEvents.onKeyboardEvent = onKeyboardEvent;
844
+ function fireEvent(key, pressed) {
818
845
  if (pressed) {
819
- pxsim.board().bus.queue(6866, getValueForKey(event));
846
+ pxsim.board().bus.queue(browserEvents.INTERNAL_KEY_DOWN, key);
820
847
  }
821
848
  else {
822
- pxsim.board().bus.queue(6867, getValueForKey(event));
849
+ pxsim.board().bus.queue(browserEvents.INTERNAL_KEY_UP, key);
823
850
  }
824
851
  }
825
- browserEvents.onKeyboardEvent = onKeyboardEvent;
826
852
  function getValueForKey(event) {
827
853
  switch (event.key) {
828
854
  case "0":
@@ -998,6 +1024,10 @@ var pxsim;
998
1024
  return Key.End;
999
1025
  case "Home":
1000
1026
  return Key.Home;
1027
+ case "Delete":
1028
+ return Key.Delete;
1029
+ case "Backspace":
1030
+ return Key.Backspace;
1001
1031
  default:
1002
1032
  return 0;
1003
1033
  }
@@ -1010,6 +1040,10 @@ var pxsim;
1010
1040
  var browserEvents;
1011
1041
  (function (browserEvents) {
1012
1042
  const THROTTLE_INTERVAL = 50;
1043
+ browserEvents.INTERNAL_KEY_DOWN = 6870;
1044
+ browserEvents.INTERNAL_KEY_UP = 6871;
1045
+ browserEvents.INTERNAL_POINTER_DOWN = 6868;
1046
+ browserEvents.INTERNAL_POINTER_UP = 6869;
1013
1047
  class MouseState {
1014
1048
  constructor() {
1015
1049
  this.onMove = pxsim.U.throttle(() => {
@@ -1032,9 +1066,16 @@ var pxsim;
1032
1066
  "pointerover",
1033
1067
  "pointerout",
1034
1068
  ];
1069
+ let eventId = 6857 + events.indexOf(event.type);
1070
+ if (event.type === "pointerdown") {
1071
+ eventId = browserEvents.INTERNAL_POINTER_DOWN;
1072
+ }
1073
+ else if (event.type === "pointerup") {
1074
+ eventId = browserEvents.INTERNAL_POINTER_UP;
1075
+ }
1035
1076
  // We add 1 to the button here because the left button is 0 and
1036
1077
  // that's used as a wildcard in our event bus
1037
- pxsim.board().bus.queue(6857 + events.indexOf(event.type), (event.button || 0) + 1);
1078
+ pxsim.board().bus.queue(eventId, (event.button || 0) + 1);
1038
1079
  }
1039
1080
  onWheelEvent(dx, dy, dz) {
1040
1081
  this.dx = dx;