@rydr/game-sdk 8.1.0 → 8.2.0

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 (63) hide show
  1. package/dist/client/PlatformClient.d.ts.map +1 -1
  2. package/dist/client/PlatformClient.js +3 -5
  3. package/dist/client/PlatformClient.js.map +1 -1
  4. package/dist/protocol/buttons.d.ts +17 -0
  5. package/dist/protocol/buttons.d.ts.map +1 -1
  6. package/dist/protocol/buttons.js +24 -0
  7. package/dist/protocol/buttons.js.map +1 -1
  8. package/dist/protocol/version.d.ts +1 -1
  9. package/dist/protocol/version.js +1 -1
  10. package/dist/ui/README.md +59 -4
  11. package/dist/ui/controller/combo-demo.d.ts +13 -4
  12. package/dist/ui/controller/combo-demo.d.ts.map +1 -1
  13. package/dist/ui/controller/combo-demo.js +55 -21
  14. package/dist/ui/controller/combo-demo.js.map +1 -1
  15. package/dist/ui/controller/control-spotlight.d.ts +188 -0
  16. package/dist/ui/controller/control-spotlight.d.ts.map +1 -0
  17. package/dist/ui/controller/control-spotlight.js +563 -0
  18. package/dist/ui/controller/control-spotlight.js.map +1 -0
  19. package/dist/ui/controller/control-trainer.d.ts.map +1 -1
  20. package/dist/ui/controller/control-trainer.js +6 -22
  21. package/dist/ui/controller/control-trainer.js.map +1 -1
  22. package/dist/ui/controller/controller-map.d.ts +20 -0
  23. package/dist/ui/controller/controller-map.d.ts.map +1 -1
  24. package/dist/ui/controller/controller-map.js +115 -56
  25. package/dist/ui/controller/controller-map.js.map +1 -1
  26. package/dist/ui/controller/controller-pad.d.ts +9 -3
  27. package/dist/ui/controller/controller-pad.d.ts.map +1 -1
  28. package/dist/ui/controller/controller-pad.js +7 -7
  29. package/dist/ui/controller/controller-pad.js.map +1 -1
  30. package/dist/ui/controller/index.d.ts +2 -0
  31. package/dist/ui/controller/index.d.ts.map +1 -1
  32. package/dist/ui/controller/index.js +2 -0
  33. package/dist/ui/controller/index.js.map +1 -1
  34. package/dist/ui/controller/live-presses.d.ts +68 -0
  35. package/dist/ui/controller/live-presses.d.ts.map +1 -0
  36. package/dist/ui/controller/live-presses.js +71 -0
  37. package/dist/ui/controller/live-presses.js.map +1 -0
  38. package/dist/ui/controller/pad-svg.d.ts +23 -3
  39. package/dist/ui/controller/pad-svg.d.ts.map +1 -1
  40. package/dist/ui/controller/pad-svg.js +28 -4
  41. package/dist/ui/controller/pad-svg.js.map +1 -1
  42. package/dist/ui/controller/parts-map.d.ts +51 -3
  43. package/dist/ui/controller/parts-map.d.ts.map +1 -1
  44. package/dist/ui/controller/parts-map.js +76 -4
  45. package/dist/ui/controller/parts-map.js.map +1 -1
  46. package/dist/ui/controller/styles.js +113 -8
  47. package/dist/ui/controller/styles.js.map +1 -1
  48. package/dist/ui/keycap.d.ts +7 -1
  49. package/dist/ui/keycap.d.ts.map +1 -1
  50. package/dist/ui/keycap.js.map +1 -1
  51. package/dist/ui/option-menu.d.ts +3 -2
  52. package/dist/ui/option-menu.d.ts.map +1 -1
  53. package/dist/ui/option-menu.js +5 -0
  54. package/dist/ui/option-menu.js.map +1 -1
  55. package/dist/ui/showcase/gallery.d.ts +12 -3
  56. package/dist/ui/showcase/gallery.d.ts.map +1 -1
  57. package/dist/ui/showcase/gallery.js +16 -7
  58. package/dist/ui/showcase/gallery.js.map +1 -1
  59. package/dist/ui/showcase/index.d.ts +4 -3
  60. package/dist/ui/showcase/index.d.ts.map +1 -1
  61. package/dist/ui/showcase/index.js +175 -13
  62. package/dist/ui/showcase/index.js.map +1 -1
  63. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformClient.d.ts","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformClient.d.ts","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  */
9
9
  import { RYDR_PROTOCOL_VERSION, RYDR_SDK_VERSION } from "../protocol/version.js";
10
10
  import { ALL_CAPABILITIES } from "../protocol/capabilities.js";
11
- import { KEY_TO_BUTTON, NUMPAD_CODE_TO_BUTTON } from "../protocol/buttons.js";
11
+ import { AXIS_NAMES, KEY_TO_BUTTON, NUMPAD_CODE_TO_BUTTON, keyboardAxis } from "../protocol/buttons.js";
12
12
  import { buttonLabel } from "../protocol/glyphs.js";
13
13
  import { setPlatformMaster } from "../sounds/platform-master.js";
14
14
  import { decodeReplay, encodeReplay } from "./replayCodec.js";
@@ -443,10 +443,8 @@ export function connectToPlatform(options) {
443
443
  // aiming, and the keyboard is the reference implementation of the documented contract ("LSTICK" reads
444
444
  // LX/LY). A game wanting one merged scheme can OR the two sticks itself; the reverse isn't possible.
445
445
  const syncKeyboardAxes = () => {
446
- axisValues.set("LX", (kbDown.has("RIGHT") ? 1 : 0) - (kbDown.has("LEFT") ? 1 : 0));
447
- axisValues.set("LY", (kbDown.has("UP") ? 1 : 0) - (kbDown.has("DOWN") ? 1 : 0));
448
- axisValues.set("RX", (kbDown.has("RRIGHT") ? 1 : 0) - (kbDown.has("RLEFT") ? 1 : 0));
449
- axisValues.set("RY", (kbDown.has("RUP") ? 1 : 0) - (kbDown.has("RDOWN") ? 1 : 0));
446
+ for (const name of AXIS_NAMES)
447
+ axisValues.set(name, keyboardAxis(name, kbDown));
450
448
  };
451
449
  // A game canvas has no text fields, but admin editors mounted as guests (the song and
452
450
  // voice-over editors) do. When a keystroke is destined for a focused editable element, it
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAmB,MAAM,6BAA6B,CAAC;AAGhF,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAajE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAmB9D,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC/E,0FAA0F;AAC1F,6FAA6F;AAC7F,4FAA4F;AAC5F,+CAA+C;AAC/C,OAAO,qBAAqB,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAwC,MAAM,WAAW,CAAC;AA0hBtG,SAAS,IAAI,CAAI,GAAe,EAAE,KAAQ;IACxC,KAAK,MAAM,EAAE,IAAI,GAAG;QAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,GAAuC;IACrD,CAAC,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,CAAC;IAC9H,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;CAC/D,CAAC;AACF,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAKtE;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAuB;IACvD,MAAM,EACJ,MAAM,EACN,YAAY,GAAG,CAAC,GAAG,gBAAgB,CAAC,EACpC,cAAc,GAAG,GAAG,EACpB,MAAM,GAAG,MAAM,CAAC,MAAM,EACtB,kBAAkB,GAAG,MAAM,EAC3B,cAAc,GACf,GAAG,OAAO,CAAC;IAEZ,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,cAAc,IAAI,mBAAmB,CAAC,CAAC;IAC1E,8FAA8F;IAC9F,8EAA8E;IAC9E,MAAM,eAAe,GAAG,IAAI,GAAG,EAAsD,CAAC;IACtF;;;;;OAKG;IACH,MAAM,UAAU,GAAiC,EAAE,CAAC;IACpD,MAAM,cAAc,GAAG,CAAC,CAAc,EAAQ,EAAE;QAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/C,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,CAAC,CAAC,CAAC;YACR,OAAO;QACT,CAAC;QACD,KAAK,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,eAAe,EAAE,CAAC;YAC9C,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO;gBAAE,SAAS,CAAC,uCAAuC;YAChG,EAAE,CAAC,CAAC,CAAC,CAAC;QACR,CAAC;IACH,CAAC,CAAC;IACF;2GACuG;IACvG,MAAM,oBAAoB,GAAG,CAAC,CAAc,EAAQ,EAAE;QACpD,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,eAAe;YAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC;IACF,0EAA0E;IAC1E,4EAA4E;IAC5E,yDAAyD;IACzD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAc,CAAC;IAC1C,8FAA8F;IAC9F,gGAAgG;IAChG,yCAAyC;IACzC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC/C,4FAA4F;IAC5F,qFAAqF;IACrF,wFAAwF;IACxF,4FAA4F;IAC5F,0FAA0F;IAC1F,qFAAqF;IACrF,kGAAkG;IAClG,oGAAoG;IACpG,qBAAqB;IACrB,MAAM,WAAW,GAAiB,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,CAAC,IAAgB,EAAQ,EAAE;QAC9C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,WAAW,CAAC,MAAM,GAAG,gBAAgB;YAAE,WAAW,CAAC,KAAK,EAAE,CAAC;QAC/D,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC7C,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACvB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,IAAgB,EAAE,MAAM,GAAG,KAAK,EAAQ,EAAE;QAC/E,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtB,IAAI,OAAO,IAAI,CAAC,MAAM;gBAAE,OAAO,CAAC,oDAAoD;YACpF,IAAI,CAAC,MAAM;gBAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,kDAAkD;QACrF,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO;YACnC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACzC,CAAC,CAAC;IACF,MAAM,cAAc,GAAkB,IAAI,GAAG,EAAE,CAAC;IAChD,MAAM,eAAe,GAAkB,IAAI,GAAG,EAAE,CAAC;IACjD,MAAM,iBAAiB,GAA4B,IAAI,GAAG,EAAE,CAAC;IAE7D,6EAA6E;IAC7E,4EAA4E;IAC5E,oEAAoE;IACpE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoC,CAAC;IAC5D,mGAAmG;IACnG,MAAM,KAAK,GAAG,IAAI,GAAG,EAA2C,CAAC;IACjE,oGAAoG;IACpG,MAAM,OAAO,GAAG,IAAI,GAAG,EAAe,CAAC;IACvC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,MAAM,kBAAkB,GAAG,MAAM,CAAC;IAClC,iGAAiG;IACjG,kGAAkG;IAClG,2EAA2E;IAC3E,MAAM,oBAAoB,GAAG,OAAO,CAAC;IACrC,MAAM,OAAO,GAAG,CAAI,IAA6B,EAAE,YAAoB,kBAAkB,EAAc,EAAE;QACvG,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,OAAO,CAAI,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtB,SAAS,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;YACrD,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC3B,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtB,UAAU,CAAC,KAAU,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,OAA8B,EAAQ,EAAE;QACpD,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEF,wFAAwF;IACxF,2DAA2D;IAC3D,MAAM,YAAY,GAAG,CAAC,CAAwB,EAAyB,EAAE;QACvE,IAAI,CAAC,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,UAAkB,EAAE,EAAU,EAA2B,EAAE,CACpG,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAC9E,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,CAAC,KAAoB,EAAE,UAAkB,EAAsB,EAAE,CACpF,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAC3E,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAEjD,4EAA4E;IAC5E,MAAM,SAAS,GAAG,CAAC,KAAa,EAA6D,EAAE,CAC7F,OAAO,CAAsB,CAAC,KAAK,EAAE,EAAE,CACrC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAC5D,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACX,IAAI,CAAC,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,CAAC,CAAC,CAAC;IAEL,gGAAgG;IAChG,4FAA4F;IAC5F,4FAA4F;IAC5F,MAAM,MAAM,GAAG,CAAC,WAAmB,EAAE,IAAuB,EAAU,EAAE;QACtE,MAAM,GAAG,GAA2B;YAClC,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM;YAC7D,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM;SACzC,CAAC;QACF,OAAO,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,EAAE,KAAwC,EAAiB,EAAE;QAC/E,IAAI,KAAK,YAAY,IAAI;YAAE,OAAO,KAAK,CAAC;QACxC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,sBAAsB;QACzF,oBAAoB;QACpB,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAc,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,EACrB,MAAyC,EACzC,IAAuB,EACvB,KAAc,EACd,UAAmB,EACF,EAAE;QACnB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;QACtE,MAAM,MAAM,GAAG,MAAM,OAAO,CAA8B,CAAC,KAAK,EAAE,EAAE,CAClE,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CACvF,CAAC;QACF,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;QAClF,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACnH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QACxF,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACxG,OAAO,MAAM,CAAC,GAAG,CAAC;IACpB,CAAC,CAAC;IAEF,OAAO,IAAI,OAAO,CAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,QAAQ,GAA0B,IAAI,CAAC;QAC3C,IAAI,mBAAmB,GAA0B,EAAE,CAAC;QACpD,IAAI,WAA+B,CAAC;QACpC,IAAI,MAAM,GAA+B,EAAE,CAAC;QAC5C,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,QAAQ,GAAG,EAAE,CAAC;QAElB,MAAM,UAAU,GAAG,CAAC,OAAe,EAAW,EAAE;YAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,EAAE;gBAAE,OAAO,CAAC,IAAI,CAAC,+BAA+B,OAAO,uCAAuC,CAAC,CAAC;YACrG,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,CAAC,KAAmB,EAAQ,EAAE;YAC9C,IAAI,cAAc,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc;gBAAE,OAAO;YACtE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC;YACvB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,4FAA4F;gBAC5F,6FAA6F;gBAC7F,2FAA2F;gBAC3F,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvB,OAAO,CAAC,IAAI,CACV,2DAA4D,GAAyB,CAAC,IAAI,MAAM;wBAC9F,4FAA4F,CAC/F,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YAED,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;gBACjB,KAAK,cAAc,CAAC,CAAC,CAAC;oBACpB,IAAI,OAAO;wBAAE,OAAO;oBACpB,OAAO,GAAG,IAAI,CAAC;oBACf,aAAa,CAAC,UAAU,CAAC,CAAC;oBAC1B,YAAY,CAAC,YAAY,CAAC,CAAC;oBAC3B,MAAM,OAAO,GAAG,GAAqB,CAAC;oBACtC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAC5B,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;oBAClD,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;oBAClC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;oBAC9B,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC5B,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;oBAClC,sEAAsE;oBACtE,IAAI,OAAO,CAAC,cAAc,IAAI,IAAI;wBAAE,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;oBACtF,0FAA0F;oBAC1F,0FAA0F;oBAC1F,IAAI,OAAO,CAAC,QAAQ;wBAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACtE,OAAO,CAAC,OAAO,CAAC,CAAC;oBACjB,MAAM;gBACR,CAAC;gBACD,KAAK,aAAa,CAAC,CAAC,CAAC;oBACnB,IAAI,OAAO;wBAAE,OAAO;oBACpB,OAAO,GAAG,IAAI,CAAC;oBACf,aAAa,CAAC,UAAU,CAAC,CAAC;oBAC1B,YAAY,CAAC,YAAY,CAAC,CAAC;oBAC3B,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;oBACjD,gBAAgB,EAAE,CAAC;oBACnB,MAAM,CAAC,IAAI,KAAK,CAAC,gCAAgC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAChE,MAAM;gBACR,CAAC;gBACD,KAAK,eAAe;oBAClB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;oBACxD,MAAM;gBACR,KAAK,iBAAiB;oBACpB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;oBACxD,MAAM;gBACR,KAAK,mBAAmB;oBACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1D,MAAM;gBACR,KAAK,eAAe;oBAClB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACR,KAAK,qBAAqB,CAAC,CAAC,CAAC;oBAC3B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBACjD,IAAI,IAAI;wBAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBACvH,MAAM;gBACR,CAAC;gBACD,KAAK,mBAAmB;oBACtB,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC;oBACrD,MAAM;gBACR,KAAK,iBAAiB;oBACpB,0FAA0F;oBAC1F,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;oBACpC,MAAM;gBACR,KAAK,sBAAsB;oBACzB,kFAAkF;oBAClF,iFAAiF;oBACjF,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,sBAAsB;oBACzB,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;oBACxB,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACtC,MAAM;gBACR,KAAK,qBAAqB;oBACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;oBACrF,MAAM;gBACR,KAAK,mBAAmB;oBACtB,0FAA0F;oBAC1F,+EAA+E;oBAC/E,QAAQ,CAAC,MAAM,CAAC;wBACd,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;wBAC5C,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACpD,CAAC,CAAC;oBACH,MAAM;gBACR,KAAK,sBAAsB;oBACzB,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;oBAChC,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;oBACjC,MAAM;gBACR,KAAK,WAAW;oBACd,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC1D,MAAM;gBACR,KAAK,8BAA8B;oBACjC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAqB,CAAC,CAAC;oBACpF,MAAM;gBACR,KAAK,kCAAkC;oBACrC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC/D,MAAM;gBACR,KAAK,0BAA0B;oBAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,sBAAsB;oBACzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,4BAA4B;oBAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,+BAA+B;oBAClC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,4BAA4B;oBAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,oBAAoB;oBACvB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,iBAAiB;oBACpB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,sBAAsB;oBACzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,qBAAqB;oBACxB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,sBAAsB;oBACzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,2BAA2B;oBAC9B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,0BAA0B;oBAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,oBAAoB;oBACvB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC9B,MAAM;gBACR,KAAK,kBAAkB;oBACrB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACR,KAAK,kBAAkB;oBACrB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBACtD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACzB,MAAM;gBACR,KAAK,oBAAoB;oBACvB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC9E,MAAM;gBACR,KAAK,iBAAiB;oBACpB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBACvE,MAAM;gBACR,KAAK,mBAAmB;oBACtB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;oBACvF,MAAM;gBACR,KAAK,qBAAqB;oBACxB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBACtB,IAAI,EAAE,qBAAqB;wBAC3B,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,KAAK,EAAE,GAAG,CAAC,KAAK;wBAChB,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,CAAC,EAAE,GAAG,CAAC,CAAC;qBACT,CAAC,CAAC;oBACH,MAAM;gBACR,KAAK,iBAAiB;oBACpB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBACtB,IAAI,EAAE,iBAAiB;wBACvB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,EAAE,EAAE,GAAG,CAAC,EAAE;wBACV,IAAI,EAAE,GAAG,CAAC,IAAI;qBACf,CAAC,CAAC;oBACH,MAAM;YACV,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAE9C,8FAA8F;QAC9F,6FAA6F;QAC7F,+FAA+F;QAC/F,6FAA6F;QAC7F,iGAAiG;QACjG,8FAA8F;QAC9F,8FAA8F;QAC9F,wFAAwF;QACxF,wCAAwC;QACxC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAc,CAAC;QACrC,wFAAwF;QACxF,6FAA6F;QAC7F,gGAAgG;QAChG,2FAA2F;QAC3F,kGAAkG;QAClG,8FAA8F;QAC9F,iEAAiE;QACjE,+FAA+F;QAC/F,6DAA6D;QAC7D,EAAE;QACF,mGAAmG;QACnG,sGAAsG;QACtG,qGAAqG;QACrG,MAAM,gBAAgB,GAAG,GAAS,EAAE;YAClC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnF,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrF,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC,CAAC;QACF,sFAAsF;QACtF,0FAA0F;QAC1F,6FAA6F;QAC7F,8FAA8F;QAC9F,gGAAgG;QAChG,+FAA+F;QAC/F,8FAA8F;QAC9F,gGAAgG;QAChG,sFAAsF;QACtF,MAAM,gBAAgB,GAAG,CAAC,CAAqB,EAAW,EAAE;YAC1D,MAAM,EAAE,GAAG,CAAuB,CAAC;YACnC,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,CAAC,OAAO,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YACxD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;YACvB,OAAO,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,QAAQ,IAAI,EAAE,CAAC,iBAAiB,KAAK,IAAI,CAAC;QACpG,CAAC,CAAC;QACF,MAAM,SAAS,GAAG,CAAC,CAAgB,EAAQ,EAAE;YAC3C,IAAI,gBAAgB,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;gBAAE,OAAO,CAAC,qCAAqC;YACpG,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,CAAC,kDAAkD;YACxE,uFAAuF;YACvF,iGAAiG;YACjG,0FAA0F;YAC1F,6FAA6F;YAC7F,iGAAiG;YACjG,6FAA6F;YAC7F,mCAAmC;YACnC,EAAE;YACF,gGAAgG;YAChG,gGAAgG;YAChG,0FAA0F;YAC1F,EAAE;YACF,+FAA+F;YAC/F,wFAAwF;YACxF,2FAA2F;YAC3F,mFAAmF;YACnF,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;YACnD,iDAAiD;YACjD,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7C,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,+BAA+B,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC3E,OAAO;YACT,CAAC;YACD,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7C,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,+BAA+B,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC1E,OAAO;YACT,CAAC;YACD,8FAA8F;YAC9F,6FAA6F;YAC7F,6FAA6F;YAC7F,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7C,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClE,OAAO;YACT,CAAC;YACD,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7C,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;gBACjE,OAAO;YACT,CAAC;YACD,oEAAoE;YACpE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC7C,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YACD,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO;YACrD,gGAAgG;YAChG,iFAAiF;YACjF,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI;gBAAE,OAAO;YAClB,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,2CAA2C;YAC/D,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACjB,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC1B,gBAAgB,EAAE,CAAC;QACrB,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,CAAgB,EAAQ,EAAE;YACzC,4FAA4F;YAC5F,8FAA8F;YAC9F,2FAA2F;YAC3F,oEAAoE;YACpE,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO;YACrD,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI;gBAAE,OAAO;YAClB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACpB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACxB,gBAAgB,EAAE,CAAC;QACrB,CAAC,CAAC;QACF,4FAA4F;QAC5F,2FAA2F;QAC3F,4FAA4F;QAC5F,MAAM,aAAa,GAAG,GAAS,EAAE;YAC/B,KAAK,MAAM,IAAI,IAAI,MAAM;gBAAE,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnD,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,gBAAgB,EAAE,CAAC;QACrB,CAAC,CAAC;QACF,MAAM,YAAY,GAAG,GAAS,EAAE;YAC9B,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ;gBAAE,aAAa,EAAE,CAAC;QAC7D,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC9C,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC/C,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;QAC5D,MAAM,gBAAgB,GAAG,GAAS,EAAE;YAClC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACjD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAClD,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;YAC/D,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,GAAS,EAAE;YAC3B,IAAI,CAAC;gBACH,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,YAAY;gBAClB,MAAM;gBACN,UAAU,EAAE,gBAAgB;gBAC5B,eAAe,EAAE,qBAAqB;gBACtC,YAAY;aACb,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,mFAAmF;QACnF,SAAS,EAAE,CAAC;QACZ,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,aAAa,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACjD,gBAAgB,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACpD,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAEvB,MAAM,OAAO,GAAoB;YAC/B,IAAI,QAAQ;gBACV,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBAC1D,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,mBAAmB;gBACrB,OAAO,mBAAmB,CAAC;YAC7B,CAAC;YACD,IAAI,WAAW;gBACb,OAAO,WAAW,CAAC;YACrB,CAAC;YACD,IAAI,MAAM;gBACR,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,IAAI,KAAK;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,QAAQ;gBACV,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,QAAQ;YACR,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;YACrD,kBAAkB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,CAAC;YAC3F,aAAa,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,4BAA4B,EAAE,YAAY,EAAE,CAAC;YACvG,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,6BAA6B,EAAE,KAAK,EAAE,CAAC;YAC3F,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,CAAC;YACvF,eAAe,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC;YAC1E,cAAc,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;gBAChC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACpB,OAAO,OAAO,CAAkB,CAAC,KAAK,EAAE,EAAE,CACxC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CACzG,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;gBACzB,UAAU,CAAC,OAAO,CAAC,CAAC;gBACpB,OAAO,OAAO,CAAkC,CAAC,KAAK,EAAE,EAAE,CACxD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,4BAA4B,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAC3G,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CACvB,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAChE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChE,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,kFAAkF;gBACnG,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;YACpD,CAAC,CAAC;YACJ,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBAChB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE;oBAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACzD,OAAO,OAAO,CAAuB,CAAC,KAAK,EAAE,EAAE,CAC7C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CACnG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,IAAI,CAAC,CAAC,KAAK;wBAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC/D,OAAO,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;gBACzB,CAAC,CAAC,CAAC;YACL,CAAC;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAChB,OAAO,CAAsB,CAAC,KAAK,EAAE,EAAE,CACrC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CACzD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9D,OAAO,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC;YAC7B,CAAC,CAAC;YACJ,KAAK,EAAE;gBACL,MAAM,EAAE;oBACN,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;wBAC3B,UAAU,CAAC,OAAO,CAAC,CAAC;wBACpB,OAAO,OAAO,CAA2B,CAAC,KAAK,EAAE,EAAE,CACjD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CACvF,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;4BACX,IAAI,CAAC,CAAC,KAAK;gCAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;4BACxE,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;wBACnC,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;wBAC9B,UAAU,CAAC,OAAO,CAAC,CAAC;wBACpB,OAAO,OAAO,CAA2B,CAAC,KAAK,EAAE,EAAE,CACjD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAC1F,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;4BACX,IAAI,CAAC,CAAC,KAAK;gCAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;4BACzE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;wBACtB,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,UAAU,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;wBAC3B,UAAU,CAAC,OAAO,CAAC,CAAC;wBACpB,OAAO,OAAO,CAA2B,CAAC,KAAK,EAAE,EAAE,CACjD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CACvF,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;4BACX,IAAI,CAAC,CAAC,KAAK;gCAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;wBACjF,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,WAAW,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;wBACtC,UAAU,CAAC,OAAO,CAAC,CAAC;wBACpB,OAAO,OAAO,CAA2B,CAAC,KAAK,EAAE,EAAE,CACjD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAClG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;4BACX,IAAI,CAAC,CAAC,KAAK;gCAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;wBAClF,CAAC,CAAC,CAAC;oBACL,CAAC;iBACF;aACF;YACD,UAAU,EAAE,GAAG,EAAE,CACf,OAAO,CAAyB,CAAC,KAAK,EAAE,EAAE,CACxC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CACrD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAClE,OAAO,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;YACxB,CAAC,CAAC;YACJ,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CACf,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACxD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChE,OAAO,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC;YACzB,CAAC,CAAC;YACJ,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CACzB,OAAO,CAA6B,CAAC,KAAK,EAAE,EAAE,CAC5C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CACrF,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBACtE,OAAO,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;YAC5B,CAAC,CAAC;YACJ,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,CACnB,OAAO,CAA4B,CAAC,KAAK,EAAE,EAAE,CAC3C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAC5D,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBACpE,OAAO,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC;YAC7B,CAAC,CAAC;YACJ,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CACb,OAAO,CAAsB,CAAC,KAAK,EAAE,EAAE,CACrC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACtD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9D,OAAO,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC;YACvB,CAAC,CAAC;YACJ,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBACxC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC;gBACtE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAsB,CAAC,KAAK,EAAE,EAAE,CACrD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CACzE,CAAC;gBACF,IAAI,CAAC,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACpE,CAAC;YACD,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACzB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,CAAC,MAAM;oBAAE,OAAO,IAAI,CAAC;gBACzB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC7C,IAAI,CAAC,IAAI;oBAAE,OAAO,IAAI,CAAC;gBACvB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACrC,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAClC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACpB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAkB,CAAC,KAAK,EAAE,EAAE,CACpD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,CAC7G,CAAC;gBACF,oFAAoF;gBACpF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAqC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACxF,OAAO,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAsB,EAAE;oBACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,OAAO;wBACL,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI;wBAC1B,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI;qBAC3B,CAAC;gBACJ,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YACD,UAAU,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,CAAC;YACrE,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC;YAC/D,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,IAAI,QAAQ,EAAE,UAAU,EAAE,EAAE,CAAC;YACvF,QAAQ,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,IAAI,QAAQ,EAAE,UAAU,CAAC;YACjF,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CACxC,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CACrH,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC5C,UAAU,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CACnC,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAC1G,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC5C,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CACrC,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CACtG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC5C,aAAa,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,CAChC,OAAO,CAAwB,CAAC,KAAK,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAC3F,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC5C,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CACrB,OAAO,CAA8B,CAAC,KAAK,EAAE,EAAE,CAC7C,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAC/I,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,GAAG;oBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC;gBAC1G,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;YAChD,CAAC,CAAC;YACJ,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC3B,OAAO,CAAiC,CAAC,KAAK,EAAE,EAAE,CAChD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,EACpK,oBAAoB,CACrB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI;oBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC;gBAC1G,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YACjE,CAAC,CAAC;YACJ,aAAa,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC;YACtE,WAAW,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC;YACtF,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;gBACnB,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;gBAC/E,wFAAwF;gBACxF,IAAI,CAAC,QAAQ;oBAAE,OAAO,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAClF,gFAAgF;gBAChF,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACnC,IAAI,QAAQ;oBAAE,OAAO,CAAC,IAAI,CAAC,wBAAwB,MAAM,8BAA8B,CAAC,CAAC;gBACzF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC;oBAC3C,MAAM;oBACN,IAAI;oBACJ,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;iBACpC,CAAC,CAAC;gBACH,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC5B,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;YAC1E,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrB,iEAAiE;gBACjE,MAAM,IAAI,GAAG,GAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;gBAC9E,mFAAmF;gBACnF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAQ,EAAE;oBACtC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvD,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC,CAAC;gBACF,MAAM,KAAK,GAAG,GAAS,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3C,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,MAAM,MAAM,GAAgB;oBAC1B,KAAK,EAAE,GAAG,EAAE;wBACV,IAAI,OAAO;4BAAE,OAAO;wBACpB,OAAO,GAAG,IAAI,CAAC;wBACf,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;wBAC3C,yFAAyF;wBACzF,2FAA2F;wBAC3F,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;wBACrE,IAAI,IAAI,KAAK,IAAI,EAAE;4BAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;wBAChE,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACjB,CAAC;oBACD,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;wBACd,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;wBACzC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;wBACpB,mFAAmF;wBACnF,gFAAgF;wBAChF,IAAI,CAAC,EAAE,OAAO,IAAI,CAAC,KAAK,IAAI,EAAE;4BAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;;4BAC/D,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;wBACtC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBACd,CAAC;oBACD,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,GAAG,EAAE;wBACZ,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;wBAC9C,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBACvB,OAAO,GAAG,KAAK,CAAC;oBAClB,CAAC;iBACF,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACpB,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,CAAC;YACpF,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC;YAC9E,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;YACjE,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC;YACtF,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;YAC3E,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE;gBACrB,MAAM,KAAK,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,KAAK,EAAE,CAAC;gBACtD,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC3B,OAAO,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7C,CAAC;YACD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;gBACrB,+FAA+F;gBAC/F,8FAA8F;gBAC9F,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,WAAW,CAAC;oBAAE,oBAAoB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC/F,WAAW,CAAC,KAAK,EAAE,CAAC;gBACpB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,OAAO,GAAG,EAAE;oBACV,IAAI,QAAQ;wBAAE,OAAO;oBACrB,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;oBAC1C,IAAI,CAAC,IAAI,CAAC;wBAAE,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtC,CAAC,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;YAClE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;YAC9D,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;gBACpB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAyB,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC7F,IAAI,UAAU,CAAC,MAAM;oBAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,CAAC;gBACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACtC,yFAAyF;gBACzF,4FAA4F;gBAC5F,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,KAAK,CAAC;oBAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBAClF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzD,MAAM,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,yDAAyD;gBACxF,OAAO,EAAE,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;YAChG,CAAC;YACD,+FAA+F;YAC/F,+EAA+E;YAC/E,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;YACnE,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,CAAC;YAC/E,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE;gBACd,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvB,OAAO,GAAG,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE;gBACf,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxB,OAAO,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;YACD,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE;gBACvB,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1B,OAAO,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,aAAa,CAAC,UAAU,CAAC,CAAC;gBAC1B,YAAY,CAAC,YAAY,CAAC,CAAC;gBAC3B,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACjD,gBAAgB,EAAE,CAAC;gBACnB,eAAe,CAAC,KAAK,EAAE,CAAC;gBACxB,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;gBACtB,WAAW,CAAC,KAAK,EAAE,CAAC;gBACpB,UAAU,CAAC,KAAK,EAAE,CAAC;gBACnB,cAAc,CAAC,KAAK,EAAE,CAAC;gBACvB,eAAe,CAAC,KAAK,EAAE,CAAC;gBACxB,iBAAiB,CAAC,KAAK,EAAE,CAAC;gBAC1B,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;oBAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YAC5C,CAAC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"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"}
@@ -146,6 +146,23 @@ export type StickName = "LSTICK" | "RSTICK";
146
146
  * control in protocol 30) — so `T` and `G` are ordinary free letters here.
147
147
  */
148
148
  export declare const KEY_TO_BUTTON: Readonly<Record<string, ButtonName>>;
149
+ /**
150
+ * The analog value an axis has when the KEYBOARD is what's holding it — the digital directions read back
151
+ * as a stick, `-1`, `0` or `+1`.
152
+ *
153
+ * Arrows drive `LX`/`LY` (they are the left stick as much as the d-pad, see {@link KEY_TO_BUTTON}) and the
154
+ * keypad drives `RX`/`RY` (see {@link NUMPAD_CODE_TO_BUTTON}), so `session.stick()` and any drawing that
155
+ * reads axes work on a laptop with no controller attached.
156
+ *
157
+ * Lives here with the key maps for the same reason they do: the SDK client isn't the only thing that turns
158
+ * keystrokes into a controller — the shell's own dev tooling does too — and two hand-rolled copies of
159
+ * "which axis is `ArrowLeft`" drift the moment one of the maps changes.
160
+ *
161
+ * axisValues.set("LX", keyboardAxis("LX", heldButtons));
162
+ */
163
+ export declare function keyboardAxis(name: AxisName, held: ReadonlySet<ButtonName>): number;
164
+ /** Every axis, for a caller that has to refresh them all (`keyboardAxis` per name). */
165
+ export declare const AXIS_NAMES: readonly AxisName[];
149
166
  /**
150
167
  * Numpad → canonical button map for the RIGHT stick and both stick-click buttons.
151
168
  *
@@ -1 +1 @@
1
- {"version":3,"file":"buttons.d.ts","sourceRoot":"","sources":["../../src/protocol/buttons.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,MAAM,MAAM,UAAU,GAElB,IAAI,GACJ,MAAM,GACN,MAAM,GACN,OAAO,GAGP,KAAK,GACL,OAAO,GACP,OAAO,GACP,QAAQ,GAIR,YAAY,GACZ,cAAc,GACd,cAAc,GACd,eAAe,GAEf,IAAI,GACJ,IAAI,GAEJ,cAAc,GACd,cAAc,GAGd,SAAS,CAAC;AAEd,uEAAuE;AACvE,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,MAAM,QAAQ,GAEhB,IAAI,GACJ,IAAI,GAEJ,IAAI,GACJ,IAAI,CAAC;AAET;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CA4B9D,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAOtE,CAAC"}
1
+ {"version":3,"file":"buttons.d.ts","sourceRoot":"","sources":["../../src/protocol/buttons.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,MAAM,MAAM,UAAU,GAElB,IAAI,GACJ,MAAM,GACN,MAAM,GACN,OAAO,GAGP,KAAK,GACL,OAAO,GACP,OAAO,GACP,QAAQ,GAIR,YAAY,GACZ,cAAc,GACd,cAAc,GACd,eAAe,GAEf,IAAI,GACJ,IAAI,GAEJ,cAAc,GACd,cAAc,GAGd,SAAS,CAAC;AAEd,uEAAuE;AACvE,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,MAAM,QAAQ,GAEhB,IAAI,GACJ,IAAI,GAEJ,IAAI,GACJ,IAAI,CAAC;AAET;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CA4B9D,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,MAAM,CAOlF;AAED,uFAAuF;AACvF,eAAO,MAAM,UAAU,EAAE,SAAS,QAAQ,EAA6B,CAAC;AAExE;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAOtE,CAAC"}
@@ -58,6 +58,30 @@ export const KEY_TO_BUTTON = {
58
58
  o: "OPTIONS",
59
59
  O: "OPTIONS",
60
60
  };
61
+ /**
62
+ * The analog value an axis has when the KEYBOARD is what's holding it — the digital directions read back
63
+ * as a stick, `-1`, `0` or `+1`.
64
+ *
65
+ * Arrows drive `LX`/`LY` (they are the left stick as much as the d-pad, see {@link KEY_TO_BUTTON}) and the
66
+ * keypad drives `RX`/`RY` (see {@link NUMPAD_CODE_TO_BUTTON}), so `session.stick()` and any drawing that
67
+ * reads axes work on a laptop with no controller attached.
68
+ *
69
+ * Lives here with the key maps for the same reason they do: the SDK client isn't the only thing that turns
70
+ * keystrokes into a controller — the shell's own dev tooling does too — and two hand-rolled copies of
71
+ * "which axis is `ArrowLeft`" drift the moment one of the maps changes.
72
+ *
73
+ * axisValues.set("LX", keyboardAxis("LX", heldButtons));
74
+ */
75
+ export function keyboardAxis(name, held) {
76
+ switch (name) {
77
+ case "LX": return (held.has("RIGHT") ? 1 : 0) - (held.has("LEFT") ? 1 : 0);
78
+ case "LY": return (held.has("UP") ? 1 : 0) - (held.has("DOWN") ? 1 : 0);
79
+ case "RX": return (held.has("RRIGHT") ? 1 : 0) - (held.has("RLEFT") ? 1 : 0);
80
+ case "RY": return (held.has("RUP") ? 1 : 0) - (held.has("RDOWN") ? 1 : 0);
81
+ }
82
+ }
83
+ /** Every axis, for a caller that has to refresh them all (`keyboardAxis` per name). */
84
+ export const AXIS_NAMES = ["LX", "LY", "RX", "RY"];
61
85
  /**
62
86
  * Numpad → canonical button map for the RIGHT stick and both stick-click buttons.
63
87
  *
@@ -1 +1 @@
1
- {"version":3,"file":"buttons.js","sourceRoot":"","sources":["../../src/protocol/buttons.ts"],"names":[],"mappings":"AAyJA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,MAAM,aAAa,GAAyC;IACjE,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,OAAO;IACnB,oEAAoE;IACpE,GAAG,EAAE,cAAc;IACnB,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,eAAe;IACvB,SAAS,EAAE,eAAe;IAC1B,qFAAqF;IACrF,gCAAgC;IAChC,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,eAAe;IAClB,CAAC,EAAE,eAAe;IAClB,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,cAAc;IACjB,6DAA6D;IAC7D,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,0FAA0F;IAC1F,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,SAAS;CACb,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAyC;IACzE,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;CACxB,CAAC"}
1
+ {"version":3,"file":"buttons.js","sourceRoot":"","sources":["../../src/protocol/buttons.ts"],"names":[],"mappings":"AAyJA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,MAAM,aAAa,GAAyC;IACjE,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,OAAO;IACnB,oEAAoE;IACpE,GAAG,EAAE,cAAc;IACnB,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,eAAe;IACvB,SAAS,EAAE,eAAe;IAC1B,qFAAqF;IACrF,gCAAgC;IAChC,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,eAAe;IAClB,CAAC,EAAE,eAAe;IAClB,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,cAAc;IACjB,6DAA6D;IAC7D,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,0FAA0F;IAC1F,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,SAAS;CACb,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,YAAY,CAAC,IAAc,EAAE,IAA6B;IACxE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC;AACH,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,UAAU,GAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAExE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAyC;IACzE,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;CACxB,CAAC"}
@@ -9,5 +9,5 @@
9
9
  export declare const RYDR_PROTOCOL_VERSION: 30;
10
10
  /** Semver of this SDK build. Sent in the handshake for telemetry/debugging.
11
11
  * (Bumped to 2.0.0 by `npm version major` on release — see CHANGELOG [Unreleased].) */
12
- export declare const RYDR_SDK_VERSION = "8.1.0";
12
+ export declare const RYDR_SDK_VERSION = "8.2.0";
13
13
  //# sourceMappingURL=version.d.ts.map
@@ -176,5 +176,5 @@
176
176
  export const RYDR_PROTOCOL_VERSION = 30;
177
177
  /** Semver of this SDK build. Sent in the handshake for telemetry/debugging.
178
178
  * (Bumped to 2.0.0 by `npm version major` on release — see CHANGELOG [Unreleased].) */
179
- export const RYDR_SDK_VERSION = "8.1.0";
179
+ export const RYDR_SDK_VERSION = "8.2.0";
180
180
  //# sourceMappingURL=version.js.map
package/dist/ui/README.md CHANGED
@@ -54,8 +54,9 @@ feed its `{x, y, onScreen}` into `setScreenPos`/`setVisible` — don't compute p
54
54
  | `createButtonKeycap(button, opts)` | fn | A keycap for the buttons that are neither a face letter nor a direction, drawn as the pad draws them: `OPTIONS` → a round pip with the pad's ICON (`☰` on Xbox/DualSense, `+` on Switch); `LT`/`RT` and the stick clicks → a text pill ("LT"/"L2"/"LS"), since those are printed with a word. |
55
55
  | `mountOptionMenu(host, opts)` | fn | **The in-game menu**, opened by the game's own `OPTIONS` button: game name big in YOUR font, a free `Resume` row + your own rows, each able to advertise its in-game `shortcut`. Takes the controller over while up; leaves the trainer alone. See below. |
56
56
  | `mountControllerPad(host, opts)` | fn | **The rider's controller, drawn live** — buttons light while held, stick caps follow the real axes. Pass `press: session`. |
57
- | `mountControllerMap(host, opts)` | fn | **The controls screen** — that pad flanked by action callouts, each joined by a line to its button. Takes a declarative `ControlAction[]`. |
57
+ | `mountControllerMap(host, opts)` | fn | **The controls screen** — that pad flanked by action callouts, each joined by a line to every button its combination names. The card prints the ACTION only; the line says which control. Takes a declarative `ControlAction[]`. |
58
58
  | `mountComboDemo(host, opts)` | fn | **"Do this" animation** — loops the combination one action requires: buttons sink in, the stick swings, release, repeat. |
59
+ | `mountControlSpotlight(host, opts)` | fn | **Caption ON the button** — N controls, one at a time, each lit with its text pinned to the control itself, on a per-step clock. Or `mode: "still"` for no clock at all: one control lit and captioned indefinitely (a stick still sweeps — "still" is about the timeline, not the artwork). With `watch`, a real press paints green and stands the loop down. |
59
60
  | `mountControlTrainer(host, opts)` | fn | **Guided lesson** — a title, one panel per step side by side, one shared controller below. Watches the rider: white "do this" → blue "doing it" → green ✓. Fires `onComplete` when every step is done. |
60
61
  | `createComboStrip(action, opts)` | fn | Just the chip row for one action (`[L2] + [✕]`), for embedding in your own layout. |
61
62
  | `createInputChip(token, opts)` | fn | One control's pictogram, for embedding in your own layout. Delegates to `createKeycap` / `createDpadKeycap` / `createButtonKeycap` for the buttons, and draws its own stick pictograms. The atom the two views are built from. |
@@ -175,9 +176,10 @@ Notes worth knowing:
175
176
  the whole point of the positional vocabulary. The views also **re-letter themselves** if the rider
176
177
  swaps pads mid-screen (pass `press: session`), so you never rebuild them.
177
178
  - **`LT`/`RT` are your shoulder buttons**, and they letter as `LT` / `L2` / `ZL`. The upper `L1`/`R1`
178
- bumpers are the shell's resistance − / +, and `View`/`Guide` are the shell's too — all of them are
179
- drawn faint and can never light, so a rider can tell "this game doesn't use that" from "that isn't
180
- the game's to use".
179
+ bumpers are the shell's resistance − / +, and `View`/`Guide` are the shell's too — none of them can
180
+ ever light for a game. `View`/`Guide` are also drawn faint, since they're genuinely not your screen's
181
+ business; the **bumpers are drawn at full strength**, because the rider can always reach for their
182
+ resistance, on every screen, and dimming them read as "disabled".
181
183
  - **Devices differ.** A Zwift Play has no joysticks and no triggers, so they aren't drawn at all. A
182
184
  phone exposes only the confirm/back pair — the protocol can't tell us which buttons a device has, so
183
185
  pass `available: [...]` if your game knows, and don't gate a required flow behind a rare control.
@@ -191,6 +193,59 @@ Notes worth knowing:
191
193
  - Tuned for up to **5 callouts per side**; past that it warns rather than dropping one.
192
194
  - Live catalog: `npm run showcase` in the SDK repo, or the platform's `/game-ui` route.
193
195
 
196
+ ### Which of the five do I want?
197
+
198
+ They all take the same `ControlAction` vocabulary (`{ label, combo }`), so this is purely about how the
199
+ answer is presented:
200
+
201
+ | You want to say | Use |
202
+ | --- | --- |
203
+ | "here is the whole control scheme" | `mountControllerMap` — callouts in columns, lines to buttons |
204
+
205
+ > **The map does not print the button in the card.** A callout is the action's name and nothing else;
206
+ > the leader line is what identifies the control, one line per button in the combination. Keycap chips
207
+ > appear only where a line is impossible — a layout that doesn't draw that part (a Zwift pod has no
208
+ > sticks), or a control on the far side of the pad. Pass `chips: "always"` to get them back everywhere.
209
+
210
+ | "here is the one combination for THIS action" | `mountComboDemo` — animates it on a loop |
211
+ | "this button, and here's what it does" — the words ON the control | `mountControlSpotlight` |
212
+ | "…and it stays up" (a HUD hint, a pre-race legend) | `mountControlSpotlight` with `mode: "still"` — the control still animates if its engaged state is a motion |
213
+ | "do this, and I'll wait until you have" | `mountControlTrainer` — gates on the rider |
214
+ | just the drawing, reflecting real input | `mountControllerPad` |
215
+
216
+ Reach for the **spotlight** over the map when the caption has to land on the control rather than in a
217
+ list beside it — a rider on a bike, reading from a few feet away, can't be asked to trace a line from a
218
+ legend back to a button. It's also the only one of the five that gives each control its own dwell.
219
+
220
+ ```ts
221
+ import { mountControlSpotlight } from "@rydr/game-sdk/ui";
222
+
223
+ // A tour, watching the rider: blue is the demo, green is you.
224
+ mountControlSpotlight(host, {
225
+ press: session,
226
+ watch: true,
227
+ steps: [
228
+ { label: "Freiner", combo: ["LT"] },
229
+ { label: "Sauter", combo: ["DIAMOND_DOWN"], holdMs: 1400 },
230
+ ],
231
+ });
232
+
233
+ // No clock: one control lit and captioned, for as long as it's on screen.
234
+ mountControlSpotlight(hud, {
235
+ press: session,
236
+ mode: "still",
237
+ steps: [{ label: "Se déplacer", combo: ["LSTICK"] }],
238
+ });
239
+ ```
240
+
241
+ A caption is **one line: the action's name.** `hint` is typed out of `ControlSpotlightStep` — the bubble
242
+ floats over the rider's controller for a couple of seconds while they pedal, and a quieter second line
243
+ under the first means neither gets read. (`hint` still works in `mountControllerMap` / `mountComboDemo`,
244
+ where the caption sits in a card — but write it for what the combination *can't* show, "Maintenir" or
245
+ "Verrouillé", never to spell out a button's name.) Captions are also **text only** for now — a step naming several
246
+ controls lights all of them, but the bubble draws no chips; use `mountComboDemo` or `mountControllerMap`
247
+ to spell a combination out.
248
+
194
249
  ### Teaching a control — `mountControlTrainer`
195
250
 
196
251
  For a lesson the rider has to *perform*, not just watch. Built for paired controls: one concept, two
@@ -33,17 +33,26 @@
33
33
  import type { GlyphSet } from "../../protocol/glyphs.js";
34
34
  import { type ControllerPad, type PadInputSource } from "./controller-pad.js";
35
35
  import type { StickPictogramStyle } from "./input-chip.js";
36
- import { type ControlAction } from "./tokens.js";
36
+ import type { ControlAction } from "./tokens.js";
37
37
  import type { PadBrandKey } from "./types.js";
38
38
  export interface ComboDemoOptions {
39
39
  /** The single action to demonstrate. */
40
40
  action: ControlAction;
41
41
  /**
42
- * A session, used ONLY to learn the rider's lettering and to follow pad swaps — the demo deliberately
43
- * does not wire it to input. The animation is the sole writer of the drawing's state; letting real
44
- * presses write it too would make the two fight for the same classes every frame.
42
+ * A session, used for the rider's lettering, to follow pad swaps, and only with {@link watch} — to
43
+ * reflect their own presses. The animation remains the sole *writer* of the drawing either way: the
44
+ * live pass runs after it, through the same driver, rather than a second subscriber racing it.
45
45
  */
46
46
  press?: PadInputSource;
47
+ /**
48
+ * Watch the rider: any control they hold paints GREEN over the animation, whether or not this
49
+ * combination names it (see `live-presses.ts`). Default false — a bare attract loop wants no second
50
+ * hand on the drawing.
51
+ *
52
+ * The animation stays in the accent underneath, which is the whole reason the rider's own press is
53
+ * green: on a drawing already showing a press in blue, blue can't also mean "and that one was yours".
54
+ */
55
+ watch?: boolean;
47
56
  brand?: PadBrandKey;
48
57
  glyphSet?: GlyphSet;
49
58
  /** Draw the controller. Default true; `false` gives a compact chips-only cue. */
@@ -1 +1 @@
1
- {"version":3,"file":"combo-demo.d.ts","sourceRoot":"","sources":["../../../src/ui/controller/combo-demo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAsB,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,OAAO,EAAgC,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAW,MAAM,YAAY,CAAC;AAEvD,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,MAAM,EAAE,aAAa,CAAC;IACtB;;;;OAIG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,iFAAiF;IACjF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iEAAiE;IACjE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oGAAoG;IACpG,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IACvC,IAAI,IAAI,IAAI,CAAC;IACb,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,OAAO,IAAI,IAAI,CAAC;CACjB;AA4CD,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,GAAG,SAAS,CA4OnF"}
1
+ {"version":3,"file":"combo-demo.d.ts","sourceRoot":"","sources":["../../../src/ui/controller/combo-demo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAsB,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAI3D,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,MAAM,EAAE,aAAa,CAAC;IACtB;;;;OAIG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,iFAAiF;IACjF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iEAAiE;IACjE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oGAAoG;IACpG,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IACvC,IAAI,IAAI,IAAI,CAAC;IACb,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,OAAO,IAAI,IAAI,CAAC;CACjB;AAqBD,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,GAAG,SAAS,CA2RnF"}
@@ -32,9 +32,9 @@
32
32
  */
33
33
  import { createComboStrip } from "./combo-strip.js";
34
34
  import { mountControllerPad } from "./controller-pad.js";
35
- import { litPartOfControl } from "./parts-map.js";
35
+ import { createLivePresses } from "./live-presses.js";
36
+ import { channelsOf, triggerSideOfPart } from "./parts-map.js";
36
37
  import { injectPadCss } from "./styles.js";
37
- import { parseToken, STICK_DIR_VECTOR } from "./tokens.js";
38
38
  // Timings in seconds. Tuned to read at a glance from a few feet away, not to be brisk.
39
39
  const HOLD_IDLE = 0.4;
40
40
  const HOLD_STAGGER = 0.2;
@@ -52,21 +52,6 @@ const smoothstep = (t) => {
52
52
  const c = Math.max(0, Math.min(1, t));
53
53
  return c * c * (3 - 2 * c);
54
54
  };
55
- function channelsOf(action) {
56
- return action.combo.map((token, index) => {
57
- const t = parseToken(token);
58
- if (t.kind === "stick") {
59
- return {
60
- index,
61
- stick: {
62
- side: t.stick === "LSTICK" ? "l" : "r",
63
- vec: t.dir ? STICK_DIR_VECTOR[t.dir] : null, // null = undirected → sweep
64
- },
65
- };
66
- }
67
- return { index, part: litPartOfControl(t.name) };
68
- });
69
- }
70
55
  export function mountComboDemo(host, opts) {
71
56
  injectPadCss();
72
57
  const root = document.createElement("div");
@@ -128,6 +113,48 @@ export function mountComboDemo(host, opts) {
128
113
  }
129
114
  buildStrip();
130
115
  syncLabel();
116
+ // ── the rider's own presses ─────────────────────────────────────────────────────────────────────
117
+ const watch = opts.watch === true && opts.press != null;
118
+ /** What the rider is holding. Kept even for controls this combination never mentions — see below. */
119
+ const held = new Set();
120
+ /**
121
+ * Green over the animation for whatever the rider holds.
122
+ *
123
+ * A part one of the channels owns needs no restoring: `renderAt` rewrites every channel every frame, so
124
+ * the animation takes its own part back on the very next one. A part it doesn't own is this pass's to
125
+ * clear — nothing else would ever touch it again.
126
+ */
127
+ const paintLivePresses = createLivePresses({
128
+ state: "done",
129
+ axis: opts.press?.axis?.bind(opts.press),
130
+ shellOwned: false, // a combination is game vocabulary; the shoulders are drawn faint here
131
+ light: (part, state) => {
132
+ const driver = pad?.driver();
133
+ driver?.setPartState(part, state);
134
+ const meter = triggerSideOfPart(part);
135
+ if (meter)
136
+ driver?.setMeter(meter, 1);
137
+ },
138
+ setStick: (side, x, y, state) => pad?.driver().setStick(side, x, y, state === "done" ? "done" : "on"),
139
+ release: (part) => {
140
+ if (channels.some((ch) => ch.part === part))
141
+ return; // the animation repaints it next frame
142
+ const driver = pad?.driver();
143
+ driver?.setPartState(part, "off");
144
+ const meter = triggerSideOfPart(part);
145
+ if (meter)
146
+ driver?.setMeter(meter, 0);
147
+ },
148
+ });
149
+ const offButton = watch
150
+ ? opts.press?.onButton(({ name, edge }) => {
151
+ edge === "down" ? held.add(name) : held.delete(name);
152
+ // Reduced motion has no loop running, so the edge itself has to repaint: the still frame first
153
+ // (it owns the animation's parts) and then the rider's own on top.
154
+ if (reduceMotion)
155
+ renderStill();
156
+ })
157
+ : undefined;
131
158
  /** Total cycle length, in seconds at speed 1. */
132
159
  function cycleLength() {
133
160
  const n = Math.max(1, action.combo.length);
@@ -142,6 +169,11 @@ export function mountComboDemo(host, opts) {
142
169
  * decides what "engaged" looks like.
143
170
  */
144
171
  function renderAt(t) {
172
+ drawCombo(t);
173
+ if (watch)
174
+ paintLivePresses(held); // last, so the rider's own hand wins any part the animation shares
175
+ }
176
+ function drawCombo(t) {
145
177
  const driver = pad?.driver();
146
178
  if (action.sequence) {
147
179
  let completed = 0;
@@ -195,10 +227,9 @@ export function mountComboDemo(host, opts) {
195
227
  strip.setPressedAt(ch.index, on);
196
228
  if (ch.part && driver) {
197
229
  driver.setPart(ch.part, on);
198
- if (ch.part === "lt")
199
- driver.setMeter("l", on ? 1 : 0);
200
- if (ch.part === "rt")
201
- driver.setMeter("r", on ? 1 : 0);
230
+ const meter = triggerSideOfPart(ch.part);
231
+ if (meter)
232
+ driver.setMeter(meter, on ? 1 : 0);
202
233
  }
203
234
  }
204
235
  /** The still frame for reduced motion: everything engaged, sticks at full deflection. */
@@ -207,6 +238,8 @@ export function mountComboDemo(host, opts) {
207
238
  for (const ch of channels)
208
239
  applyChannel(ch, true, 1, 0, driver);
209
240
  strip.setStep(action.combo.length);
241
+ if (watch)
242
+ paintLivePresses(held);
210
243
  }
211
244
  // ── the loop ────────────────────────────────────────────────────────────────────────────────────
212
245
  const reduceMotion = typeof matchMedia === "function" && matchMedia("(prefers-reduced-motion: reduce)").matches;
@@ -285,6 +318,7 @@ export function mountComboDemo(host, opts) {
285
318
  dispose() {
286
319
  stop();
287
320
  document.removeEventListener("visibilitychange", onVisibility);
321
+ offButton?.();
288
322
  offRebuild?.();
289
323
  strip.dispose();
290
324
  pad?.dispose();