@robotical/raftjs 2.1.0 → 2.1.3

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 (172) hide show
  1. package/devdocs/devbin-backwards-compatibility.md +105 -0
  2. package/devdocs/pseudocode-to-js-transpiler.md +563 -0
  3. package/dist/react-native/PseudocodeTranspiler.d.ts +6 -0
  4. package/dist/react-native/PseudocodeTranspiler.js +115 -0
  5. package/dist/react-native/PseudocodeTranspiler.js.map +1 -0
  6. package/dist/react-native/RaftAttributeHandler.d.ts +1 -1
  7. package/dist/react-native/RaftAttributeHandler.js +108 -32
  8. package/dist/react-native/RaftAttributeHandler.js.map +1 -1
  9. package/dist/react-native/RaftChannelBLE.web.d.ts +4 -0
  10. package/dist/react-native/RaftChannelBLE.web.js +59 -21
  11. package/dist/react-native/RaftChannelBLE.web.js.map +1 -1
  12. package/dist/react-native/RaftChannelSimulated.d.ts +1 -0
  13. package/dist/react-native/RaftChannelSimulated.js +9 -5
  14. package/dist/react-native/RaftChannelSimulated.js.map +1 -1
  15. package/dist/react-native/RaftChannelWebSocket.js +16 -1
  16. package/dist/react-native/RaftChannelWebSocket.js.map +1 -1
  17. package/dist/react-native/RaftConnector.d.ts +29 -1
  18. package/dist/react-native/RaftConnector.js +177 -11
  19. package/dist/react-native/RaftConnector.js.map +1 -1
  20. package/dist/react-native/RaftCustomAttrHandler.d.ts +2 -2
  21. package/dist/react-native/RaftCustomAttrHandler.js +32 -44
  22. package/dist/react-native/RaftCustomAttrHandler.js.map +1 -1
  23. package/dist/react-native/RaftDeviceInfo.d.ts +18 -0
  24. package/dist/react-native/RaftDeviceInfo.js +8 -0
  25. package/dist/react-native/RaftDeviceInfo.js.map +1 -1
  26. package/dist/react-native/RaftDeviceManager.d.ts +30 -3
  27. package/dist/react-native/RaftDeviceManager.js +618 -107
  28. package/dist/react-native/RaftDeviceManager.js.map +1 -1
  29. package/dist/react-native/RaftDeviceMgrIF.d.ts +11 -2
  30. package/dist/react-native/RaftDeviceStates.d.ts +27 -3
  31. package/dist/react-native/RaftDeviceStates.js +31 -6
  32. package/dist/react-native/RaftDeviceStates.js.map +1 -1
  33. package/dist/react-native/RaftFileHandler.d.ts +1 -1
  34. package/dist/react-native/RaftFileHandler.js +101 -34
  35. package/dist/react-native/RaftFileHandler.js.map +1 -1
  36. package/dist/react-native/RaftMicroPythonConsoleClient.d.ts +38 -0
  37. package/dist/react-native/RaftMicroPythonConsoleClient.js +45 -0
  38. package/dist/react-native/RaftMicroPythonConsoleClient.js.map +1 -0
  39. package/dist/react-native/RaftMsgHandler.d.ts +1 -1
  40. package/dist/react-native/RaftMsgHandler.js +6 -3
  41. package/dist/react-native/RaftMsgHandler.js.map +1 -1
  42. package/dist/react-native/RaftPublish.d.ts +2 -0
  43. package/dist/react-native/RaftPublish.js +81 -0
  44. package/dist/react-native/RaftPublish.js.map +1 -0
  45. package/dist/react-native/RaftStreamHandler.d.ts +11 -0
  46. package/dist/react-native/RaftStreamHandler.js +66 -0
  47. package/dist/react-native/RaftStreamHandler.js.map +1 -1
  48. package/dist/react-native/RaftStruct.d.ts +2 -2
  49. package/dist/react-native/RaftStruct.js +97 -26
  50. package/dist/react-native/RaftStruct.js.map +1 -1
  51. package/dist/react-native/RaftSystemType.d.ts +1 -0
  52. package/dist/react-native/RaftSystemUtils.d.ts +17 -1
  53. package/dist/react-native/RaftSystemUtils.js +51 -0
  54. package/dist/react-native/RaftSystemUtils.js.map +1 -1
  55. package/dist/react-native/RaftTimezone.d.ts +16 -0
  56. package/dist/react-native/RaftTimezone.js +153 -0
  57. package/dist/react-native/RaftTimezone.js.map +1 -0
  58. package/dist/react-native/RaftTypes.d.ts +46 -1
  59. package/dist/react-native/RaftTypes.js.map +1 -1
  60. package/dist/react-native/RaftUpdateManager.js +1 -1
  61. package/dist/react-native/RaftUpdateManager.js.map +1 -1
  62. package/dist/react-native/main.d.ts +3 -0
  63. package/dist/react-native/main.js +8 -1
  64. package/dist/react-native/main.js.map +1 -1
  65. package/dist/web/PseudocodeTranspiler.d.ts +6 -0
  66. package/dist/web/PseudocodeTranspiler.js +115 -0
  67. package/dist/web/PseudocodeTranspiler.js.map +1 -0
  68. package/dist/web/RaftAttributeHandler.d.ts +1 -1
  69. package/dist/web/RaftAttributeHandler.js +108 -32
  70. package/dist/web/RaftAttributeHandler.js.map +1 -1
  71. package/dist/web/RaftChannelBLE.web.d.ts +4 -0
  72. package/dist/web/RaftChannelBLE.web.js +59 -21
  73. package/dist/web/RaftChannelBLE.web.js.map +1 -1
  74. package/dist/web/RaftChannelSimulated.d.ts +1 -0
  75. package/dist/web/RaftChannelSimulated.js +9 -5
  76. package/dist/web/RaftChannelSimulated.js.map +1 -1
  77. package/dist/web/RaftChannelWebSocket.js +16 -1
  78. package/dist/web/RaftChannelWebSocket.js.map +1 -1
  79. package/dist/web/RaftConnector.d.ts +29 -1
  80. package/dist/web/RaftConnector.js +177 -11
  81. package/dist/web/RaftConnector.js.map +1 -1
  82. package/dist/web/RaftCustomAttrHandler.d.ts +2 -2
  83. package/dist/web/RaftCustomAttrHandler.js +32 -44
  84. package/dist/web/RaftCustomAttrHandler.js.map +1 -1
  85. package/dist/web/RaftDeviceInfo.d.ts +18 -0
  86. package/dist/web/RaftDeviceInfo.js +8 -0
  87. package/dist/web/RaftDeviceInfo.js.map +1 -1
  88. package/dist/web/RaftDeviceManager.d.ts +30 -3
  89. package/dist/web/RaftDeviceManager.js +618 -107
  90. package/dist/web/RaftDeviceManager.js.map +1 -1
  91. package/dist/web/RaftDeviceMgrIF.d.ts +11 -2
  92. package/dist/web/RaftDeviceStates.d.ts +27 -3
  93. package/dist/web/RaftDeviceStates.js +31 -6
  94. package/dist/web/RaftDeviceStates.js.map +1 -1
  95. package/dist/web/RaftFileHandler.d.ts +1 -1
  96. package/dist/web/RaftFileHandler.js +101 -34
  97. package/dist/web/RaftFileHandler.js.map +1 -1
  98. package/dist/web/RaftMicroPythonConsoleClient.d.ts +38 -0
  99. package/dist/web/RaftMicroPythonConsoleClient.js +45 -0
  100. package/dist/web/RaftMicroPythonConsoleClient.js.map +1 -0
  101. package/dist/web/RaftMsgHandler.d.ts +1 -1
  102. package/dist/web/RaftMsgHandler.js +6 -3
  103. package/dist/web/RaftMsgHandler.js.map +1 -1
  104. package/dist/web/RaftPublish.d.ts +2 -0
  105. package/dist/web/RaftPublish.js +81 -0
  106. package/dist/web/RaftPublish.js.map +1 -0
  107. package/dist/web/RaftStreamHandler.d.ts +11 -0
  108. package/dist/web/RaftStreamHandler.js +66 -0
  109. package/dist/web/RaftStreamHandler.js.map +1 -1
  110. package/dist/web/RaftStruct.d.ts +2 -2
  111. package/dist/web/RaftStruct.js +97 -26
  112. package/dist/web/RaftStruct.js.map +1 -1
  113. package/dist/web/RaftSystemType.d.ts +1 -0
  114. package/dist/web/RaftSystemUtils.d.ts +17 -1
  115. package/dist/web/RaftSystemUtils.js +51 -0
  116. package/dist/web/RaftSystemUtils.js.map +1 -1
  117. package/dist/web/RaftTimezone.d.ts +16 -0
  118. package/dist/web/RaftTimezone.js +153 -0
  119. package/dist/web/RaftTimezone.js.map +1 -0
  120. package/dist/web/RaftTypes.d.ts +46 -1
  121. package/dist/web/RaftTypes.js.map +1 -1
  122. package/dist/web/RaftUpdateManager.js +1 -1
  123. package/dist/web/RaftUpdateManager.js.map +1 -1
  124. package/dist/web/main.d.ts +3 -0
  125. package/dist/web/main.js +8 -1
  126. package/dist/web/main.js.map +1 -1
  127. package/examples/dashboard/package.json +2 -2
  128. package/examples/dashboard/src/DeviceActionsForm.tsx +177 -17
  129. package/examples/dashboard/src/DeviceLineChart.tsx +16 -3
  130. package/examples/dashboard/src/DevicePanel.tsx +92 -11
  131. package/examples/dashboard/src/DeviceSelectDialog.tsx +224 -0
  132. package/examples/dashboard/src/DeviceStatsPanel.tsx +76 -0
  133. package/examples/dashboard/src/DevicesPanel.tsx +11 -0
  134. package/examples/dashboard/src/LogConfigPanel.tsx +357 -0
  135. package/examples/dashboard/src/LogFilesPanel.tsx +200 -0
  136. package/examples/dashboard/src/LoggingPanel.tsx +264 -0
  137. package/examples/dashboard/src/Main.tsx +12 -2
  138. package/examples/dashboard/src/SettingsScreen.tsx +9 -4
  139. package/examples/dashboard/src/SystemTypeCog/CogStateInfo.ts +10 -3
  140. package/examples/dashboard/src/SystemTypeCog/SystemTypeCog.ts +37 -3
  141. package/examples/dashboard/src/SystemTypeGeneric/StateInfoGeneric.ts +10 -2
  142. package/examples/dashboard/src/SystemTypeGeneric/SystemTypeGeneric.ts +41 -7
  143. package/examples/dashboard/src/SystemTypeMarty/RICStateInfo.ts +34 -3
  144. package/examples/dashboard/src/styles.css +766 -1
  145. package/notes/web-ble-reconnect-retry.md +69 -0
  146. package/package.json +10 -7
  147. package/src/PseudocodeTranspiler.test.ts +372 -0
  148. package/src/PseudocodeTranspiler.ts +127 -0
  149. package/src/RaftAttributeHandler.ts +152 -76
  150. package/src/RaftChannelBLE.web.ts +62 -20
  151. package/src/RaftChannelSimulated.ts +10 -5
  152. package/src/RaftChannelWebSocket.ts +16 -2
  153. package/src/RaftConnector.ts +204 -17
  154. package/src/RaftCustomAttrHandler.ts +35 -45
  155. package/src/RaftDeviceInfo.ts +27 -0
  156. package/src/RaftDeviceManager.test.ts +164 -0
  157. package/src/RaftDeviceManager.ts +705 -127
  158. package/src/RaftDeviceMgrIF.ts +13 -2
  159. package/src/RaftDeviceStates.ts +49 -8
  160. package/src/RaftFileHandler.ts +112 -39
  161. package/src/RaftMicroPythonConsoleClient.ts +78 -0
  162. package/src/RaftMsgHandler.ts +8 -4
  163. package/src/RaftPublish.ts +92 -0
  164. package/src/RaftStreamHandler.ts +84 -1
  165. package/src/RaftStruct.test.ts +229 -0
  166. package/src/RaftStruct.ts +101 -37
  167. package/src/RaftSystemType.ts +1 -0
  168. package/src/RaftSystemUtils.ts +59 -0
  169. package/src/RaftTimezone.ts +151 -0
  170. package/src/RaftTypes.ts +57 -1
  171. package/src/RaftUpdateManager.ts +1 -1
  172. package/src/main.ts +3 -0
@@ -1 +1 @@
1
- {"version":3,"file":"RaftTypes.js","sourceRoot":"","sources":["../../src/RaftTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RaftTypes.js","sourceRoot":"","sources":["../../src/RaftTypes.ts"],"names":[],"mappings":"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"}
@@ -329,7 +329,7 @@ class RICUpdateManager {
329
329
  RaftLog_1.default.debug(`Beginning file system update. Reformatting FS.`);
330
330
  await this._msgHandler.sendRICRESTURL("reformatfs", undefined, 15000);
331
331
  // trigger and wait for reboot
332
- RaftLog_1.default.debug(`Restarting RIC`);
332
+ RaftLog_1.default.debug(`Restarting device`);
333
333
  try {
334
334
  await this._msgHandler.sendRICRESTURL("reset");
335
335
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RaftUpdateManager.js","sourceRoot":"","sources":["../../src/RaftUpdateManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RaftUpdateManager.js","sourceRoot":"","sources":["../../src/RaftUpdateManager.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export { default as RaftFileHandler } from './RaftFileHandler';
9
9
  export { default as RaftLog } from './RaftLog';
10
10
  export { default as RaftMiniHDLC } from './RaftMiniHDLC';
11
11
  export { default as RaftMsgHandler } from './RaftMsgHandler';
12
+ export { default as RaftMicroPythonConsoleClient } from './RaftMicroPythonConsoleClient';
12
13
  export { default as RaftStreamHandler } from './RaftStreamHandler';
13
14
  export { default as RaftSystemUtils } from './RaftSystemUtils';
14
15
  export { default as RaftUtils } from './RaftUtils';
@@ -16,6 +17,7 @@ export { default as RaftSysTypeManager } from './RaftSysTypeManager';
16
17
  export { default as RaftDeviceMgrIF } from './RaftDeviceMgrIF';
17
18
  export { DeviceManager as RaftDeviceManager } from './RaftDeviceManager';
18
19
  export type { DeviceDecodedData } from './RaftDeviceManager';
20
+ export * from './RaftPublish';
19
21
  export * from './RaftTypes';
20
22
  export * from './RaftSystemType';
21
23
  export * from './RaftWifiTypes';
@@ -24,3 +26,4 @@ export * from './RaftUpdateEvents';
24
26
  export * from "./RaftProtocolDefs";
25
27
  export * from "./RaftDeviceStates";
26
28
  export * from "./RaftDeviceInfo";
29
+ export { getHostTimezone, getHostPosixTZ, ianaToPosixTZ } from './RaftTimezone';
@@ -9,7 +9,7 @@
9
9
  //
10
10
  /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.RaftDeviceManager = exports.RaftSysTypeManager = exports.RaftUtils = exports.RaftSystemUtils = exports.RaftStreamHandler = exports.RaftMsgHandler = exports.RaftMiniHDLC = exports.RaftLog = exports.RaftFileHandler = exports.RaftChannelSimulated = exports.RaftChannelWebSocket = exports.RaftConnector = exports.RaftCommsStats = exports.RaftChannelBLE = void 0;
12
+ exports.ianaToPosixTZ = exports.getHostPosixTZ = exports.getHostTimezone = exports.RaftDeviceManager = exports.RaftSysTypeManager = exports.RaftUtils = exports.RaftSystemUtils = exports.RaftStreamHandler = exports.RaftMicroPythonConsoleClient = exports.RaftMsgHandler = exports.RaftMiniHDLC = exports.RaftLog = exports.RaftFileHandler = exports.RaftChannelSimulated = exports.RaftChannelWebSocket = exports.RaftConnector = exports.RaftCommsStats = exports.RaftChannelBLE = void 0;
13
13
  const tslib_1 = require("tslib");
14
14
  const RaftChannelBLEFactory_1 = require("./RaftChannelBLEFactory");
15
15
  const raftChannel = (0, RaftChannelBLEFactory_1.createBLEChannel)();
@@ -30,6 +30,8 @@ var RaftMiniHDLC_1 = require("./RaftMiniHDLC");
30
30
  Object.defineProperty(exports, "RaftMiniHDLC", { enumerable: true, get: function () { return tslib_1.__importDefault(RaftMiniHDLC_1).default; } });
31
31
  var RaftMsgHandler_1 = require("./RaftMsgHandler");
32
32
  Object.defineProperty(exports, "RaftMsgHandler", { enumerable: true, get: function () { return tslib_1.__importDefault(RaftMsgHandler_1).default; } });
33
+ var RaftMicroPythonConsoleClient_1 = require("./RaftMicroPythonConsoleClient");
34
+ Object.defineProperty(exports, "RaftMicroPythonConsoleClient", { enumerable: true, get: function () { return tslib_1.__importDefault(RaftMicroPythonConsoleClient_1).default; } });
33
35
  var RaftStreamHandler_1 = require("./RaftStreamHandler");
34
36
  Object.defineProperty(exports, "RaftStreamHandler", { enumerable: true, get: function () { return tslib_1.__importDefault(RaftStreamHandler_1).default; } });
35
37
  var RaftSystemUtils_1 = require("./RaftSystemUtils");
@@ -40,6 +42,7 @@ var RaftSysTypeManager_1 = require("./RaftSysTypeManager");
40
42
  Object.defineProperty(exports, "RaftSysTypeManager", { enumerable: true, get: function () { return tslib_1.__importDefault(RaftSysTypeManager_1).default; } });
41
43
  var RaftDeviceManager_1 = require("./RaftDeviceManager");
42
44
  Object.defineProperty(exports, "RaftDeviceManager", { enumerable: true, get: function () { return RaftDeviceManager_1.DeviceManager; } });
45
+ tslib_1.__exportStar(require("./RaftPublish"), exports);
43
46
  tslib_1.__exportStar(require("./RaftTypes"), exports);
44
47
  tslib_1.__exportStar(require("./RaftSystemType"), exports);
45
48
  tslib_1.__exportStar(require("./RaftWifiTypes"), exports);
@@ -48,4 +51,8 @@ tslib_1.__exportStar(require("./RaftUpdateEvents"), exports);
48
51
  tslib_1.__exportStar(require("./RaftProtocolDefs"), exports);
49
52
  tslib_1.__exportStar(require("./RaftDeviceStates"), exports);
50
53
  tslib_1.__exportStar(require("./RaftDeviceInfo"), exports);
54
+ var RaftTimezone_1 = require("./RaftTimezone");
55
+ Object.defineProperty(exports, "getHostTimezone", { enumerable: true, get: function () { return RaftTimezone_1.getHostTimezone; } });
56
+ Object.defineProperty(exports, "getHostPosixTZ", { enumerable: true, get: function () { return RaftTimezone_1.getHostPosixTZ; } });
57
+ Object.defineProperty(exports, "ianaToPosixTZ", { enumerable: true, get: function () { return RaftTimezone_1.ianaToPosixTZ; } });
51
58
  //# sourceMappingURL=main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AAAA,iHAAiH;AACjH,EAAE;AACF,SAAS;AACT,gGAAgG;AAChG,EAAE;AACF,wCAAwC;AACxC,oCAAoC;AACpC,EAAE;AACF,iHAAiH;;;;AAEjH,mEAA2D;AAC3D,MAAM,WAAW,GAAG,IAAA,wCAAgB,GAAE,CAAC;AACf,qCAAc;AAEtC,mDAA6D;AAApD,yIAAA,OAAO,OAAkB;AAClC,iDAA2D;AAAlD,uIAAA,OAAO,OAAiB;AAEjC,+DAAyE;AAAhE,qJAAA,OAAO,OAAwB;AACxC,+DAAyE;AAAhE,qJAAA,OAAO,OAAwB;AACxC,qDAA+D;AAAtD,2IAAA,OAAO,OAAmB;AACnC,qCAA+C;AAAtC,2HAAA,OAAO,OAAW;AAC3B,+CAAyD;AAAhD,qIAAA,OAAO,OAAgB;AAChC,mDAA4D;AAAnD,yIAAA,OAAO,OAAkB;AAClC,yDAAmE;AAA1D,+IAAA,OAAO,OAAqB;AACrC,qDAA+D;AAAtD,2IAAA,OAAO,OAAmB;AACnC,yCAAmD;AAA1C,+HAAA,OAAO,OAAa;AAC7B,2DAAqE;AAA5D,iJAAA,OAAO,OAAsB;AAEtC,yDAAyE;AAAhE,sHAAA,aAAa,OAAqB;AAG3C,sDAA4B;AAC5B,2DAAiC;AACjC,0DAAgC;AAChC,2DAAiC;AACjC,6DAAmC;AACnC,6DAAmC;AACnC,6DAAmC;AACnC,2DAAiC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AAAA,iHAAiH;AACjH,EAAE;AACF,SAAS;AACT,gGAAgG;AAChG,EAAE;AACF,wCAAwC;AACxC,oCAAoC;AACpC,EAAE;AACF,iHAAiH;;;;AAEjH,mEAA2D;AAC3D,MAAM,WAAW,GAAG,IAAA,wCAAgB,GAAE,CAAC;AACf,qCAAc;AAEtC,mDAA6D;AAApD,yIAAA,OAAO,OAAkB;AAClC,iDAA2D;AAAlD,uIAAA,OAAO,OAAiB;AAEjC,+DAAyE;AAAhE,qJAAA,OAAO,OAAwB;AACxC,+DAAyE;AAAhE,qJAAA,OAAO,OAAwB;AACxC,qDAA+D;AAAtD,2IAAA,OAAO,OAAmB;AACnC,qCAA+C;AAAtC,2HAAA,OAAO,OAAW;AAC3B,+CAAyD;AAAhD,qIAAA,OAAO,OAAgB;AAChC,mDAA4D;AAAnD,yIAAA,OAAO,OAAkB;AAClC,+EAAyF;AAAhF,qKAAA,OAAO,OAAgC;AAChD,yDAAmE;AAA1D,+IAAA,OAAO,OAAqB;AACrC,qDAA+D;AAAtD,2IAAA,OAAO,OAAmB;AACnC,yCAAmD;AAA1C,+HAAA,OAAO,OAAa;AAC7B,2DAAqE;AAA5D,iJAAA,OAAO,OAAsB;AAEtC,yDAAyE;AAAhE,sHAAA,aAAa,OAAqB;AAG3C,wDAA8B;AAC9B,sDAA4B;AAC5B,2DAAiC;AACjC,0DAAgC;AAChC,2DAAiC;AACjC,6DAAmC;AACnC,6DAAmC;AACnC,6DAAmC;AACnC,2DAAiC;AACjC,+CAAgF;AAAvE,+GAAA,eAAe,OAAA;AAAE,8GAAA,cAAc,OAAA;AAAE,6GAAA,aAAa,OAAA"}
@@ -0,0 +1,6 @@
1
+ export interface Token {
2
+ type: string;
3
+ value: string;
4
+ }
5
+ export declare function tokenize(code: string): Token[];
6
+ export declare function transpilePseudocodeToJs(pseudocode: string): string;
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3
+ //
4
+ // PseudocodeTranspiler
5
+ // Transpiles Raft device pseudocode (from devInfoJson resp.c.c) to JavaScript function bodies
6
+ //
7
+ // Rob Dobson (C) 2024
8
+ //
9
+ /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.tokenize = tokenize;
12
+ exports.transpilePseudocodeToJs = transpilePseudocodeToJs;
13
+ const TOKEN_SPEC = [
14
+ ['FLOAT_KW', /float\b/],
15
+ ['INT_KW', /int\b/],
16
+ ['RETURN', /return\b/],
17
+ ['WHILE', /while\b/],
18
+ ['NEXT', /next\b/],
19
+ ['HEX_NUM', /0x[0-9A-Fa-f]+/],
20
+ ['NUM_FLOAT', /\d+\.\d*/],
21
+ ['NUM_INT', /\d+/],
22
+ ['ID', /[a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*)*/],
23
+ ['LSHIFT', /<</],
24
+ ['RSHIFT', />>/],
25
+ ['LOGICAL_AND', /&&/],
26
+ ['LOGICAL_OR', /\|\|/],
27
+ ['REL_OP', /==|!=|<=|>=|<|>/],
28
+ ['INC_OP', /\+\+/],
29
+ ['DEC_OP', /--/],
30
+ ['ASSIGN', /=/],
31
+ ['ADD_OP', /\+/],
32
+ ['SUB_OP', /-/],
33
+ ['MUL_OP', /\*/],
34
+ ['DIV_OP', /\//],
35
+ ['MOD_OP', /%/],
36
+ ['BITWISE_AND', /&/],
37
+ ['BITWISE_OR', /\|/],
38
+ ['BITWISE_XOR', /\^/],
39
+ ['BITWISE_NOT', /~/],
40
+ ['LOGICAL_NOT', /!/],
41
+ ['SEMI', /;/],
42
+ ['COMMA', /,/],
43
+ ['LPAREN', /\(/],
44
+ ['RPAREN', /\)/],
45
+ ['LBRACE', /\{/],
46
+ ['RBRACE', /\}/],
47
+ ['LBRACK', /\[/],
48
+ ['RBRACK', /\]/],
49
+ ['WS', /[ \t\n]+/],
50
+ ];
51
+ // Build the combined regex once at module load
52
+ const COMBINED_RE = new RegExp(TOKEN_SPEC.map(([name, re]) => `(?<${name}>${re.source})`).join('|'), 'g');
53
+ function tokenize(code) {
54
+ // Reset lastIndex since we reuse the global regex
55
+ COMBINED_RE.lastIndex = 0;
56
+ const tokens = [];
57
+ let match;
58
+ while ((match = COMBINED_RE.exec(code)) !== null) {
59
+ for (const [name] of TOKEN_SPEC) {
60
+ if (match.groups[name] !== undefined) {
61
+ if (name !== 'WS') {
62
+ tokens.push({ type: name, value: match[0] });
63
+ }
64
+ break;
65
+ }
66
+ }
67
+ }
68
+ return tokens;
69
+ }
70
+ const PREAMBLE = 'const out = new Proxy({}, { set(_, p, v) { if (attrValues[p]) attrValues[p].push(v); return true; } });\n' +
71
+ 'function toInt16(lo, hi) { const u = (hi << 8) | lo; return u & 0x8000 ? u - 0x10000 : u; }\n' +
72
+ 'function toInt32(b0, b1, b2, b3) { return (b3 << 24) | (b2 << 16) | (b1 << 8) | b0; }\n';
73
+ function transpilePseudocodeToJs(pseudocode) {
74
+ const tokens = tokenize(pseudocode);
75
+ let js = PREAMBLE;
76
+ // Track int declarations so we can wrap the init expression in Math.trunc()
77
+ // to emulate C integer division semantics
78
+ let afterIntKw = false;
79
+ let wrappedInTrunc = false;
80
+ for (const token of tokens) {
81
+ switch (token.type) {
82
+ case 'INT_KW':
83
+ js += 'let ';
84
+ afterIntKw = true;
85
+ break;
86
+ case 'FLOAT_KW':
87
+ js += 'let ';
88
+ afterIntKw = false;
89
+ break;
90
+ case 'ASSIGN':
91
+ js += '=';
92
+ if (afterIntKw) {
93
+ js += 'Math.trunc(';
94
+ wrappedInTrunc = true;
95
+ }
96
+ break;
97
+ case 'SEMI':
98
+ if (wrappedInTrunc) {
99
+ js += ')';
100
+ wrappedInTrunc = false;
101
+ }
102
+ js += ';';
103
+ afterIntKw = false;
104
+ break;
105
+ case 'NEXT':
106
+ // no-op in JS — samples are pushed to arrays via the out Proxy
107
+ break;
108
+ default:
109
+ js += token.value;
110
+ break;
111
+ }
112
+ }
113
+ return js;
114
+ }
115
+ //# sourceMappingURL=PseudocodeTranspiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PseudocodeTranspiler.js","sourceRoot":"","sources":["../../src/PseudocodeTranspiler.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ export default class AttributeHandler {
5
5
  private POLL_RESULT_TIMESTAMP_SIZE;
6
6
  private POLL_RESULT_WRAP_VALUE;
7
7
  private POLL_RESULT_RESOLUTION_US;
8
- processMsgAttrGroup(msgBuffer: Uint8Array, msgBufIdx: number, deviceTimeline: DeviceTimeline, pollRespMetadata: DeviceTypePollRespMetadata, devAttrsState: DeviceAttributesState, maxDataPoints: number): number;
8
+ processMsgAttrGroup(msgBuffer: Uint8Array, msgBufIdx: number, deviceTimeline: DeviceTimeline, pollRespMetadata: DeviceTypePollRespMetadata, devAttrsState: DeviceAttributesState, maxDataPoints: number, msgEndIdx?: number): number;
9
9
  private validateAttributes;
10
10
  private processMsgAttribute;
11
11
  private signExtend;
@@ -19,12 +19,13 @@ class AttributeHandler {
19
19
  // Message timestamp size
20
20
  this.POLL_RESULT_TIMESTAMP_SIZE = 2;
21
21
  this.POLL_RESULT_WRAP_VALUE = this.POLL_RESULT_TIMESTAMP_SIZE === 2 ? 65536 : 4294967296;
22
- this.POLL_RESULT_RESOLUTION_US = 1000;
22
+ this.POLL_RESULT_RESOLUTION_US = 100;
23
23
  }
24
- processMsgAttrGroup(msgBuffer, msgBufIdx, deviceTimeline, pollRespMetadata, devAttrsState, maxDataPoints) {
24
+ processMsgAttrGroup(msgBuffer, msgBufIdx, deviceTimeline, pollRespMetadata, devAttrsState, maxDataPoints, msgEndIdx = msgBuffer.length) {
25
25
  // console.log(`processMsgAttrGroup msg ${msgHexStr} timestamp ${timestamp} origTimestamp ${origTimestamp} msgBufIdx ${msgBufIdx}`)
26
+ const boundedMsgEndIdx = Math.min(Math.max(msgEndIdx, msgBufIdx), msgBuffer.length);
26
27
  // Extract msg timestamp
27
- const { newBufIdx, timestampUs } = this.extractTimestampAndAdvanceIdx(msgBuffer, msgBufIdx, deviceTimeline);
28
+ const { newBufIdx, timestampUs } = this.extractTimestampAndAdvanceIdx(msgBuffer, msgBufIdx, deviceTimeline, boundedMsgEndIdx);
28
29
  if (newBufIdx < 0)
29
30
  return -1;
30
31
  msgBufIdx = newBufIdx;
@@ -34,7 +35,32 @@ class AttributeHandler {
34
35
  let newAttrValues = [];
35
36
  if ("c" in pollRespMetadata) {
36
37
  // Extract attribute values using custom handler
37
- newAttrValues = this._customAttrHandler.handleAttr(pollRespMetadata, msgBuffer, msgBufIdx);
38
+ newAttrValues = this._customAttrHandler.handleAttr(pollRespMetadata, msgBuffer, msgBufIdx, boundedMsgEndIdx);
39
+ // Apply per-attribute transforms that the custom handler doesn't handle
40
+ for (let attrIdx = 0; attrIdx < pollRespMetadata.a.length && attrIdx < newAttrValues.length; attrIdx++) {
41
+ const attrDef = pollRespMetadata.a[attrIdx];
42
+ if (newAttrValues[attrIdx].length === 0)
43
+ continue;
44
+ // Sign-extend values for signed types — the pseudocode produces unsigned
45
+ // values from bitwise operations, but the attribute type declares signedness
46
+ if (attrDef.t && (0, RaftDeviceInfo_1.isAttrTypeSigned)(attrDef.t)) {
47
+ const byteWidth = (0, RaftStruct_1.structSizeOf)(attrDef.t);
48
+ const signBit = 1 << (byteWidth * 8 - 1);
49
+ const range = signBit * 2;
50
+ newAttrValues[attrIdx] = newAttrValues[attrIdx].map(v => {
51
+ const n = v;
52
+ return (n & signBit) ? n - range : n;
53
+ });
54
+ }
55
+ if ("d" in attrDef && attrDef.d) {
56
+ const divisor = attrDef.d;
57
+ newAttrValues[attrIdx] = newAttrValues[attrIdx].map(v => v / divisor);
58
+ }
59
+ if ("a" in attrDef && attrDef.a !== undefined) {
60
+ const addend = attrDef.a;
61
+ newAttrValues[attrIdx] = newAttrValues[attrIdx].map(v => v + addend);
62
+ }
63
+ }
38
64
  }
39
65
  else {
40
66
  // console.log(`RaftAttrHdlr.processMsgAttrGroup ${JSON.stringify(pollRespMetadata)} msgBufIdx ${msgBufIdx} timestampUs ${timestampUs}`);
@@ -49,10 +75,9 @@ class AttributeHandler {
49
75
  }
50
76
  // console.log(`RaftAttrHdlr.processMsgAttrGroup attr ${attrDef.n} msgBufIdx ${msgBufIdx} timestampUs ${timestampUs} attrDef ${JSON.stringify(attrDef)}`);
51
77
  // Process the attribute
52
- const { values, newMsgBufIdx } = this.processMsgAttribute(attrDef, msgBuffer, msgBufIdx, msgDataStartIdx);
78
+ const { values, newMsgBufIdx } = this.processMsgAttribute(attrDef, msgBuffer, msgBufIdx, msgDataStartIdx, boundedMsgEndIdx);
53
79
  if (newMsgBufIdx < 0) {
54
- newAttrValues.push([]);
55
- continue;
80
+ return -1;
56
81
  }
57
82
  msgBufIdx = newMsgBufIdx;
58
83
  newAttrValues.push(values);
@@ -66,7 +91,7 @@ class AttributeHandler {
66
91
  // Check if any attributes were added (in addition to timestamp)
67
92
  if (newAttrValues.length === 0) {
68
93
  console.warn(`DeviceManager msg attrGroup ${JSON.stringify(pollRespMetadata)} newAttrValues ${newAttrValues} is empty`);
69
- return msgDataStartIdx + pollRespSizeBytes;
94
+ return -1;
70
95
  }
71
96
  // All attributes must have the same number of new values
72
97
  const numNewDataPoints = newAttrValues[0].length;
@@ -109,11 +134,55 @@ class AttributeHandler {
109
134
  devAttrsState[attrDef.n].newData = newAttrValues[attrIdx].length > 0;
110
135
  devAttrsState[attrDef.n].numNewValues = newAttrValues[attrIdx].length;
111
136
  }
112
- // Handle the timestamps with increments if specified
137
+ // --- Piecewise EMA timestamp reconstruction ---
138
+ // Track the last assigned sample timestamp and step forward by emaIntervalUs
139
+ // per sample. No T0 recomputation — avoids amplified batch-boundary jitter.
113
140
  const timeIncUs = pollRespMetadata.us ? pollRespMetadata.us : 1000;
141
+ if (!deviceTimeline.emaCalibrated) {
142
+ // Cold start: anchor so that sample 0 gets the poll timestamp
143
+ deviceTimeline.emaIntervalUs = timeIncUs;
144
+ deviceTimeline.emaLastSampleTimeUs = timestampUs - deviceTimeline.emaIntervalUs;
145
+ deviceTimeline.emaPrevPollTimeUs = timestampUs;
146
+ deviceTimeline.emaCalibrated = true;
147
+ deviceTimeline.emaCalibrationPolls = 1;
148
+ }
149
+ else {
150
+ // EMA interval update from poll-to-poll gap
151
+ if (numNewDataPoints > 1) {
152
+ const instantIntervalUs = (timestampUs - deviceTimeline.emaPrevPollTimeUs) / numNewDataPoints;
153
+ const alpha = deviceTimeline.emaCalibrationPolls < 20 ? 0.3 : 0.05;
154
+ deviceTimeline.emaIntervalUs = alpha * instantIntervalUs
155
+ + (1.0 - alpha) * deviceTimeline.emaIntervalUs;
156
+ }
157
+ else if (numNewDataPoints === 1) {
158
+ const instantIntervalUs = timestampUs - deviceTimeline.emaPrevPollTimeUs;
159
+ if (Number.isFinite(instantIntervalUs) && instantIntervalUs > 0) {
160
+ deviceTimeline.emaIntervalUs = instantIntervalUs;
161
+ }
162
+ }
163
+ deviceTimeline.emaPrevPollTimeUs = timestampUs;
164
+ deviceTimeline.emaCalibrationPolls++;
165
+ }
166
+ // Assign timestamps: each sample steps forward by emaIntervalUs
114
167
  const timestampsUs = Array(numNewDataPoints).fill(0);
168
+ const lastTimeUs = deviceTimeline.timestampsUs.length > 0
169
+ ? deviceTimeline.timestampsUs[deviceTimeline.timestampsUs.length - 1]
170
+ : -Infinity;
115
171
  for (let i = 0; i < numNewDataPoints; i++) {
116
- timestampsUs[i] = timestampUs + i * timeIncUs;
172
+ timestampsUs[i] = numNewDataPoints === 1
173
+ ? timestampUs
174
+ : deviceTimeline.emaLastSampleTimeUs + (i + 1) * deviceTimeline.emaIntervalUs;
175
+ // Ensure monotonically increasing timestamps
176
+ if (i === 0 && timestampsUs[0] <= lastTimeUs) {
177
+ timestampsUs[0] = lastTimeUs + 1;
178
+ }
179
+ else if (i > 0 && timestampsUs[i] <= timestampsUs[i - 1]) {
180
+ timestampsUs[i] = timestampsUs[i - 1] + 1;
181
+ }
182
+ }
183
+ // Advance the piecewise model cursor past all samples in this batch
184
+ if (deviceTimeline.emaCalibrated && numNewDataPoints > 0) {
185
+ deviceTimeline.emaLastSampleTimeUs = timestampsUs[timestampsUs.length - 1];
117
186
  }
118
187
  // Check if timeline points need to be discarded
119
188
  const discardCount = Math.max(0, deviceTimeline.timestampsUs.length + timestampsUs.length - maxDataPoints);
@@ -122,6 +191,7 @@ class AttributeHandler {
122
191
  }
123
192
  // Add the new timestamps
124
193
  deviceTimeline.timestampsUs.push(...timestampsUs);
194
+ deviceTimeline.totalSamplesAdded += numNewDataPoints;
125
195
  // Validate attributes based on the vft field
126
196
  this.validateAttributes(pollRespMetadata, devAttrsState, numNewDataPoints);
127
197
  // Return the next message buffer index
@@ -168,29 +238,34 @@ class AttributeHandler {
168
238
  }
169
239
  }
170
240
  }
171
- processMsgAttribute(attrDef, msgBuffer, msgBufIdx, msgDataStartIdx) {
241
+ processMsgAttribute(attrDef, msgBuffer, msgBufIdx, msgDataStartIdx, msgEndIdx) {
172
242
  // Current field message string index
173
243
  let curFieldBufIdx = msgBufIdx;
174
244
  let attrUsesAbsPos = false;
245
+ const boundedMsgEndIdx = Math.min(Math.max(msgEndIdx, msgDataStartIdx), msgBuffer.length);
246
+ const attrTypesOnly = attrDef.t;
247
+ const numBytesConsumed = (0, RaftStruct_1.structSizeOf)(attrTypesOnly);
175
248
  // Check for "at" field which means absolute position in the buffer
176
249
  if (attrDef.at !== undefined) {
177
250
  // Handle both single value and array of byte positions
178
251
  if (Array.isArray(attrDef.at)) {
179
252
  // Create a new buffer for non-contiguous data extraction
180
- const elemSize = (0, RaftStruct_1.structSizeOf)(attrDef.t);
253
+ const elemSize = numBytesConsumed;
181
254
  const bytesForType = new Uint8Array(elemSize);
182
255
  // Zero out the buffer
183
256
  bytesForType.fill(0);
184
257
  // Copy bytes from the specified positions
185
258
  for (let i = 0; i < attrDef.at.length && i < elemSize; i++) {
186
259
  const sourceIdx = msgDataStartIdx + attrDef.at[i];
187
- if (sourceIdx < msgBuffer.length) {
188
- bytesForType[i] = msgBuffer[sourceIdx];
260
+ if (sourceIdx >= boundedMsgEndIdx) {
261
+ return { values: [], newMsgBufIdx: -1 };
189
262
  }
263
+ bytesForType[i] = msgBuffer[sourceIdx];
190
264
  }
191
265
  // Use this buffer for attribute extraction
192
266
  msgBuffer = bytesForType;
193
267
  curFieldBufIdx = 0;
268
+ msgEndIdx = bytesForType.length;
194
269
  }
195
270
  else {
196
271
  // Standard absolute position in the buffer
@@ -199,21 +274,21 @@ class AttributeHandler {
199
274
  attrUsesAbsPos = true;
200
275
  }
201
276
  // Check if outside bounds of message
202
- if (curFieldBufIdx >= msgBuffer.length) {
277
+ const attrEndIdx = curFieldBufIdx + numBytesConsumed;
278
+ const effectiveMsgEndIdx = Math.min(Math.max(msgEndIdx, curFieldBufIdx), msgBuffer.length);
279
+ if (curFieldBufIdx >= effectiveMsgEndIdx || attrEndIdx > effectiveMsgEndIdx) {
203
280
  // console.warn(`DeviceManager msg outside bounds msgBuffer ${msgBuffer} attrName ${attrDef.n}`);
204
281
  return { values: [], newMsgBufIdx: -1 };
205
282
  }
206
- // Attribute type
207
- const attrTypesOnly = attrDef.t;
208
283
  // Slice into buffer
209
- const attrBuf = msgBuffer.slice(curFieldBufIdx);
284
+ const attrBuf = msgBuffer.slice(curFieldBufIdx, effectiveMsgEndIdx);
210
285
  // Check if a mask is used and the value is signed
211
286
  const maskOnSignedValue = "m" in attrDef && (0, RaftDeviceInfo_1.isAttrTypeSigned)(attrTypesOnly);
212
287
  // Extract the value using python-struct
213
288
  const unpackValues = (0, RaftStruct_1.structUnpack)(maskOnSignedValue ? attrTypesOnly.toUpperCase() : attrTypesOnly, attrBuf);
214
289
  let attrValues = unpackValues;
215
- // Get number of bytes consumed
216
- const numBytesConsumed = (0, RaftStruct_1.structSizeOf)(attrTypesOnly);
290
+ // Check if any values are strings (from 's' format) — skip numeric transforms for those
291
+ const hasStringValues = attrValues.some(v => typeof v === 'string');
217
292
  // // Check if sign extendable mask specified on signed value
218
293
  // if (mmSpecifiedOnSignedValue) {
219
294
  // const signBitMask = 1 << (signExtendableMaskSignPos - 1);
@@ -225,17 +300,17 @@ class AttributeHandler {
225
300
  // }
226
301
  // }
227
302
  // Check for XOR mask
228
- if ("x" in attrDef) {
303
+ if (!hasStringValues && "x" in attrDef) {
229
304
  const mask = typeof attrDef.x === "string" ? parseInt(attrDef.x, 16) : attrDef.x;
230
305
  attrValues = attrValues.map((value) => (value >>> 0) ^ mask);
231
306
  }
232
307
  // Check for AND mask
233
- if ("m" in attrDef) {
308
+ if (!hasStringValues && "m" in attrDef) {
234
309
  const mask = typeof attrDef.m === "string" ? parseInt(attrDef.m, 16) : attrDef.m;
235
310
  attrValues = attrValues.map((value) => (maskOnSignedValue ? this.signExtend(value, mask) : (value >>> 0) & mask));
236
311
  }
237
312
  // Check for a sign-bit
238
- if ("sb" in attrDef) {
313
+ if (!hasStringValues && "sb" in attrDef) {
239
314
  const signBitPos = attrDef.sb;
240
315
  const signBitMask = 1 << signBitPos;
241
316
  if ("ss" in attrDef) {
@@ -247,7 +322,7 @@ class AttributeHandler {
247
322
  }
248
323
  }
249
324
  // Check for bit shift required
250
- if ("s" in attrDef && attrDef.s) {
325
+ if (!hasStringValues && "s" in attrDef && attrDef.s) {
251
326
  const bitshift = attrDef.s;
252
327
  if (bitshift > 0) {
253
328
  attrValues = attrValues.map((value) => (value >>> 0) >>> bitshift);
@@ -257,17 +332,17 @@ class AttributeHandler {
257
332
  }
258
333
  }
259
334
  // Check for divisor
260
- if ("d" in attrDef && attrDef.d) {
335
+ if (!hasStringValues && "d" in attrDef && attrDef.d) {
261
336
  const divisor = attrDef.d;
262
- attrValues = attrValues.map((value) => (value) / divisor);
337
+ attrValues = attrValues.map((value) => value / divisor);
263
338
  }
264
339
  // Check for value to add
265
- if ("a" in attrDef && attrDef.a !== undefined) {
340
+ if (!hasStringValues && "a" in attrDef && attrDef.a !== undefined) {
266
341
  const addValue = attrDef.a;
267
- attrValues = attrValues.map((value) => (value) + addValue);
342
+ attrValues = attrValues.map((value) => value + addValue);
268
343
  }
269
344
  // Apply lookup table if defined
270
- if ("lut" in attrDef && attrDef.lut !== undefined) {
345
+ if (!hasStringValues && "lut" in attrDef && attrDef.lut !== undefined) {
271
346
  attrValues = attrValues.map((value) => {
272
347
  // Skip NaN values
273
348
  if (isNaN(value)) {
@@ -313,9 +388,10 @@ class AttributeHandler {
313
388
  }
314
389
  return value;
315
390
  }
316
- extractTimestampAndAdvanceIdx(msgBuffer, msgBufIdx, timestampWrapHandler) {
391
+ extractTimestampAndAdvanceIdx(msgBuffer, msgBufIdx, timestampWrapHandler, msgEndIdx = msgBuffer.length) {
392
+ const boundedMsgEndIdx = Math.min(Math.max(msgEndIdx, msgBufIdx), msgBuffer.length);
317
393
  // Check there are enough bytes for the timestamp
318
- if (msgBufIdx + this.POLL_RESULT_TIMESTAMP_SIZE > msgBuffer.length) {
394
+ if (msgBufIdx + this.POLL_RESULT_TIMESTAMP_SIZE > boundedMsgEndIdx) {
319
395
  return { newBufIdx: -1, timestampUs: 0 };
320
396
  }
321
397
  // Use struct to extract the timestamp
@@ -328,7 +404,7 @@ class AttributeHandler {
328
404
  timestampUs = (0, RaftStruct_1.structUnpack)(">I", tsBuffer)[0] * this.POLL_RESULT_RESOLUTION_US;
329
405
  }
330
406
  // Check if time is before lastReportTimeMs by more than 100ms - in which case a wrap around occurred to add on the max value
331
- if (timestampUs + 100000 < timestampWrapHandler.lastReportTimestampUs) {
407
+ if (timestampUs + 10000 < timestampWrapHandler.lastReportTimestampUs) {
332
408
  timestampWrapHandler.reportTimestampOffsetUs += this.POLL_RESULT_WRAP_VALUE * this.POLL_RESULT_RESOLUTION_US;
333
409
  }
334
410
  timestampWrapHandler.lastReportTimestampUs = timestampUs;