jooby-codec 1.1.0 → 1.3.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 (113) hide show
  1. package/dist/Command.d.ts +1 -1
  2. package/dist/Command.js +3 -4
  3. package/dist/Command.js.map +1 -1
  4. package/dist/CommandBinaryBuffer.d.ts +37 -0
  5. package/dist/CommandBinaryBuffer.js +51 -2
  6. package/dist/CommandBinaryBuffer.js.map +1 -1
  7. package/dist/UnknownCommand.d.ts +20 -0
  8. package/dist/UnknownCommand.js +22 -0
  9. package/dist/UnknownCommand.js.map +1 -0
  10. package/dist/commands/downlink/CorrectTime2000.d.ts +5 -5
  11. package/dist/commands/downlink/CorrectTime2000.js +6 -5
  12. package/dist/commands/downlink/CorrectTime2000.js.map +1 -1
  13. package/dist/commands/downlink/ExAbsArchiveDaysMul.d.ts +47 -0
  14. package/dist/commands/downlink/ExAbsArchiveDaysMul.js +65 -0
  15. package/dist/commands/downlink/ExAbsArchiveDaysMul.js.map +1 -0
  16. package/dist/commands/downlink/ExAbsArchiveHoursMul.d.ts +47 -0
  17. package/dist/commands/downlink/ExAbsArchiveHoursMul.js +67 -0
  18. package/dist/commands/downlink/ExAbsArchiveHoursMul.js.map +1 -0
  19. package/dist/commands/downlink/GetArchiveDaysMul.d.ts +47 -0
  20. package/dist/commands/downlink/GetArchiveDaysMul.js +64 -0
  21. package/dist/commands/downlink/GetArchiveDaysMul.js.map +1 -0
  22. package/dist/commands/downlink/GetArchiveHoursMul.d.ts +47 -0
  23. package/dist/commands/downlink/GetArchiveHoursMul.js +66 -0
  24. package/dist/commands/downlink/GetArchiveHoursMul.js.map +1 -0
  25. package/dist/commands/downlink/NewStatus.d.ts +1 -1
  26. package/dist/commands/downlink/NewStatus.js +2 -1
  27. package/dist/commands/downlink/NewStatus.js.map +1 -1
  28. package/dist/commands/downlink/SetParameter.d.ts +73 -0
  29. package/dist/commands/downlink/SetParameter.js +136 -0
  30. package/dist/commands/downlink/SetParameter.js.map +1 -0
  31. package/dist/commands/downlink/SetTime2000.d.ts +5 -5
  32. package/dist/commands/downlink/SetTime2000.js +6 -5
  33. package/dist/commands/downlink/SetTime2000.js.map +1 -1
  34. package/dist/commands/downlink/SoftRestart.d.ts +1 -1
  35. package/dist/commands/downlink/SoftRestart.js +2 -1
  36. package/dist/commands/downlink/SoftRestart.js.map +1 -1
  37. package/dist/commands/downlink/index.d.ts +5 -0
  38. package/dist/commands/downlink/index.js +5 -0
  39. package/dist/commands/downlink/index.js.map +1 -1
  40. package/dist/commands/uplink/CorrectTime2000.d.ts +1 -1
  41. package/dist/commands/uplink/CorrectTime2000.js +2 -1
  42. package/dist/commands/uplink/CorrectTime2000.js.map +1 -1
  43. package/dist/commands/uplink/DataDayMul.d.ts +2 -2
  44. package/dist/commands/uplink/DataDayMul.js +6 -5
  45. package/dist/commands/uplink/DataDayMul.js.map +1 -1
  46. package/dist/commands/uplink/DataHourMul.d.ts +1 -1
  47. package/dist/commands/uplink/DataHourMul.js +9 -9
  48. package/dist/commands/uplink/DataHourMul.js.map +1 -1
  49. package/dist/commands/uplink/ExAbsArchiveDaysMul.d.ts +46 -0
  50. package/dist/commands/uplink/ExAbsArchiveDaysMul.js +72 -0
  51. package/dist/commands/uplink/ExAbsArchiveDaysMul.js.map +1 -0
  52. package/dist/commands/uplink/ExAbsArchiveHoursMul.d.ts +11 -0
  53. package/dist/commands/uplink/ExAbsArchiveHoursMul.js +93 -0
  54. package/dist/commands/uplink/ExAbsArchiveHoursMul.js.map +1 -0
  55. package/dist/commands/uplink/ExAbsDayMul.d.ts +1 -1
  56. package/dist/commands/uplink/ExAbsDayMul.js +5 -5
  57. package/dist/commands/uplink/ExAbsDayMul.js.map +1 -1
  58. package/dist/commands/uplink/ExAbsHourMul.d.ts +1 -1
  59. package/dist/commands/uplink/ExAbsHourMul.js +7 -7
  60. package/dist/commands/uplink/ExAbsHourMul.js.map +1 -1
  61. package/dist/commands/uplink/GetArchiveDaysMul.d.ts +73 -0
  62. package/dist/commands/uplink/GetArchiveDaysMul.js +97 -0
  63. package/dist/commands/uplink/GetArchiveDaysMul.js.map +1 -0
  64. package/dist/commands/uplink/GetArchiveHoursMul.d.ts +28 -0
  65. package/dist/commands/uplink/GetArchiveHoursMul.js +51 -0
  66. package/dist/commands/uplink/GetArchiveHoursMul.js.map +1 -0
  67. package/dist/commands/uplink/GetCurrentMul.d.ts +1 -1
  68. package/dist/commands/uplink/GetCurrentMul.js +2 -1
  69. package/dist/commands/uplink/GetCurrentMul.js.map +1 -1
  70. package/dist/commands/uplink/LastEvent.d.ts +116 -0
  71. package/dist/commands/uplink/LastEvent.js +164 -0
  72. package/dist/commands/uplink/LastEvent.js.map +1 -0
  73. package/dist/commands/uplink/NewEvent.d.ts +3 -3
  74. package/dist/commands/uplink/NewEvent.js +8 -7
  75. package/dist/commands/uplink/NewEvent.js.map +1 -1
  76. package/dist/commands/uplink/NewStatus.d.ts +1 -1
  77. package/dist/commands/uplink/NewStatus.js +3 -2
  78. package/dist/commands/uplink/NewStatus.js.map +1 -1
  79. package/dist/commands/uplink/SetTime2000.d.ts +1 -1
  80. package/dist/commands/uplink/SetTime2000.js +2 -1
  81. package/dist/commands/uplink/SetTime2000.js.map +1 -1
  82. package/dist/commands/uplink/SoftRestart.d.ts +1 -1
  83. package/dist/commands/uplink/SoftRestart.js +2 -1
  84. package/dist/commands/uplink/SoftRestart.js.map +1 -1
  85. package/dist/commands/uplink/Time2000.d.ts +5 -5
  86. package/dist/commands/uplink/Time2000.js +6 -5
  87. package/dist/commands/uplink/Time2000.js.map +1 -1
  88. package/dist/commands/uplink/index.d.ts +5 -0
  89. package/dist/commands/uplink/index.js +5 -0
  90. package/dist/commands/uplink/index.js.map +1 -1
  91. package/dist/constants/deviceParameters.d.ts +15 -0
  92. package/dist/constants/deviceParameters.js +16 -0
  93. package/dist/constants/deviceParameters.js.map +1 -0
  94. package/dist/constants/directionTypes.d.ts +3 -0
  95. package/dist/constants/directionTypes.js +4 -0
  96. package/dist/constants/directionTypes.js.map +1 -0
  97. package/dist/constants/hardwareTypes.d.ts +56 -0
  98. package/dist/constants/hardwareTypes.js +56 -14
  99. package/dist/constants/hardwareTypes.js.map +1 -1
  100. package/dist/constants/index.d.ts +2 -0
  101. package/dist/constants/index.js +2 -0
  102. package/dist/constants/index.js.map +1 -1
  103. package/dist/utils/bitSet.d.ts +40 -0
  104. package/dist/utils/bitSet.js +53 -0
  105. package/dist/utils/bitSet.js.map +1 -0
  106. package/dist/utils/message.d.ts +2 -5
  107. package/dist/utils/message.js +30 -30
  108. package/dist/utils/message.js.map +1 -1
  109. package/dist/utils/time.d.ts +2 -2
  110. package/dist/utils/time.js +2 -2
  111. package/dist/utils/time.js.map +1 -1
  112. package/package.json +2 -2
  113. package/readme.md +3 -3
@@ -1,12 +1,15 @@
1
+ /* eslint-disable @typescript-eslint/no-unnecessary-condition */
2
+ import UnknownCommand from '../UnknownCommand.js';
1
3
  import * as downlinkCommands from '../commands/downlink/index.js';
2
4
  import * as uplinkCommands from '../commands/uplink/index.js';
5
+ import * as directionTypes from '../constants/directionTypes.js';
6
+ import { AUTO, DOWNLINK, UPLINK } from '../constants/directionTypes.js';
3
7
  import * as header from './header.js';
4
8
  import getBytesFromHex from './getBytesFromHex.js';
5
9
  import getHexFromBytes from './getHexFromBytes.js';
6
- export const TYPE_AUTO = 0;
7
- export const TYPE_DOWNLINK = 1;
8
- export const TYPE_UPLINK = 2;
9
10
  const HEADER_MAX_SIZE = 3;
11
+ // all allowed types
12
+ const directionTypeIds = new Set(Object.values(directionTypes));
10
13
  // convert export namespace to dictionary {commandId: commandConstructor}
11
14
  const downlinkCommandsById = Object.fromEntries(Object.values(downlinkCommands).map(item => [item.id, item]));
12
15
  const uplinkCommandsById = Object.fromEntries(Object.values(uplinkCommands).map(item => [item.id, item]));
@@ -24,37 +27,34 @@ const calculateLrc = (data, initialLrc = 0x55) => {
24
27
  });
25
28
  return lrc;
26
29
  };
27
- const getCommand = (id, data, direction = TYPE_AUTO) => {
28
- // given direction
29
- if (direction === TYPE_DOWNLINK || direction === TYPE_UPLINK) {
30
- const commandsById = direction === TYPE_DOWNLINK ? downlinkCommandsById : uplinkCommandsById;
31
- const command = commandsById[id];
32
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
33
- if (!command) {
34
- throw new Error(`Unsupported command with id: ${id}.`);
35
- }
36
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
37
- return command.fromBytes(data);
30
+ const getCommand = (id, data, direction = AUTO, hardwareType) => {
31
+ if (!directionTypeIds.has(direction)) {
32
+ throw new Error('wrong direction type');
38
33
  }
39
- // auto direction
40
- // try downlink
34
+ const downlinkCommand = downlinkCommandsById[id];
35
+ const uplinkCommand = uplinkCommandsById[id];
36
+ // check command availability
37
+ if ((!downlinkCommand && !uplinkCommand)
38
+ || (direction === DOWNLINK && !downlinkCommand)
39
+ || (direction === UPLINK && !uplinkCommand)) {
40
+ // missing command implementation
41
+ return new UnknownCommand({ id, data });
42
+ }
43
+ // ths specific direction
44
+ if (direction === DOWNLINK || direction === UPLINK) {
45
+ const command = direction === UPLINK ? uplinkCommand : downlinkCommand;
46
+ return command.fromBytes(data, hardwareType);
47
+ }
48
+ // direction autodetect
41
49
  try {
42
- const command = downlinkCommandsById[id];
43
- // console.log('command downlink:', command);
44
- // console.log('downlinkCommandsById:', downlinkCommandsById);
45
- // console.log('id:', id);
46
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
47
- return command.fromBytes(data);
50
+ // uplink should be more often
51
+ return uplinkCommand.fromBytes(data, hardwareType);
48
52
  }
49
53
  catch {
50
- // try uplink
51
- const command = uplinkCommandsById[id];
52
- //console.log('command uplink:', command);
53
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
54
- return command.fromBytes(data);
54
+ return downlinkCommand.fromBytes(data);
55
55
  }
56
56
  };
57
- export const fromBytes = (data, direction = TYPE_AUTO) => {
57
+ export const fromBytes = (data, direction = AUTO, hardwareType) => {
58
58
  const commandsData = data.slice(0, -1);
59
59
  const expectedLrc = data.at(-1) ?? 0;
60
60
  const actualLrc = calculateLrc(commandsData);
@@ -71,7 +71,7 @@ export const fromBytes = (data, direction = TYPE_AUTO) => {
71
71
  const bodyData = commandsData.slice(position + headerInfo.headerSize, position + headerInfo.headerSize + headerInfo.commandSize);
72
72
  commands.push({
73
73
  data: { header: headerData, body: bodyData },
74
- command: getCommand(headerInfo.commandId, bodyData, direction)
74
+ command: getCommand(headerInfo.commandId, bodyData, direction, hardwareType)
75
75
  });
76
76
  // shift
77
77
  position = position + headerInfo.headerSize + headerInfo.commandSize;
@@ -81,7 +81,7 @@ export const fromBytes = (data, direction = TYPE_AUTO) => {
81
81
  result.isValid = expectedLrc === actualLrc;
82
82
  return result;
83
83
  };
84
- export const fromHex = (data, direction = TYPE_AUTO) => fromBytes(getBytesFromHex(data), direction);
84
+ export const fromHex = (data, direction = AUTO, hardwareType) => (fromBytes(getBytesFromHex(data), direction, hardwareType));
85
85
  export const toBytes = (commands) => {
86
86
  const arrays = commands.map(command => command.toBytes());
87
87
  const totalLength = arrays.reduce((accumulator, item) => (accumulator + item.length), 0);
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/utils/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/utils/message.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Get date object from UTC seconds since 2000 year.
3
3
  *
4
- * @param time - seconds since 2000 year
4
+ * @param seconds - seconds since 2000 year
5
5
  * @returns Date object instance
6
6
  */
7
- export declare const getDateFromSeconds: (time: number) => Date;
7
+ export declare const getDateFromSeconds: (seconds: number) => Date;
8
8
  /**
9
9
  * Get UTC seconds since 2000 year from Date object.
10
10
  *
@@ -3,10 +3,10 @@ const MILLISECONDS_IN_SECONDS = 1000;
3
3
  /**
4
4
  * Get date object from UTC seconds since 2000 year.
5
5
  *
6
- * @param time - seconds since 2000 year
6
+ * @param seconds - seconds since 2000 year
7
7
  * @returns Date object instance
8
8
  */
9
- export const getDateFromSeconds = (time) => new Date(INITIAL_YEAR_TIMESTAMP + (time * MILLISECONDS_IN_SECONDS));
9
+ export const getDateFromSeconds = (seconds) => new Date(INITIAL_YEAR_TIMESTAMP + (seconds * MILLISECONDS_IN_SECONDS));
10
10
  /**
11
11
  * Get UTC seconds since 2000 year from Date object.
12
12
  *
@@ -1 +1 @@
1
- {"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/utils/time.ts"],"names":[],"mappings":"AAAA,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAC5C,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAGrC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAE,IAAY,EAAS,EAAE,CAAC,IAAI,IAAI,CAAC,sBAAsB,GAAG,CAAC,IAAI,GAAG,uBAAuB,CAAC,CAAC,CAAC;AAEhI;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAE,IAAU,EAAW,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,sBAAsB,CAAC,GAAG,uBAAuB,CAAC"}
1
+ {"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/utils/time.ts"],"names":[],"mappings":"AAAA,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAC5C,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAGrC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAE,OAAe,EAAS,EAAE,CAAC,IAAI,IAAI,CAAC,sBAAsB,GAAG,CAAC,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC;AAEtI;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAE,IAAU,EAAW,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,sBAAsB,CAAC,GAAG,uBAAuB,CAAC"}
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "jooby-codec",
3
- "version": "1.1.0",
3
+ "version": "1.3.0",
4
4
  "description": "Jooby message encoders/decoders",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "exports": {
8
8
  ".": "./dist/index.js",
9
- "./ts": "./src/index.js",
10
9
  "./commands": "./dist/commands/index.js",
11
10
  "./commands/downlink": "./dist/commands/downlink/index.js",
12
11
  "./commands/downlink/*": "./dist/commands/downlink/*.js",
13
12
  "./commands/uplink": "./dist/commands/uplink/index.js",
14
13
  "./commands/uplink/*": "./dist/commands/uplink/*.js",
14
+ "./constants/*": "./dist/constants/*.js",
15
15
  "./utils/*": "./dist/utils/*.js"
16
16
  },
17
17
  "types": "./dist/index.d.ts",
package/readme.md CHANGED
@@ -106,7 +106,7 @@ Prepare command and get encoded data:
106
106
  ```js
107
107
  import SetTime2000 from 'jooby-codec/commands/downlink/SetTime2000';
108
108
 
109
- const command = new SetTime2000({sequenceNumber: 5, time: 9462957});
109
+ const command = new SetTime2000({sequenceNumber: 5, seconds: 9462957});
110
110
 
111
111
  // output command binary in hex representation
112
112
  // 02 05 05 00 90 64 ad
@@ -119,7 +119,7 @@ Combine a message from commands:
119
119
 
120
120
  ```js
121
121
  const messageBytes = message.toBytes([
122
- new SetTime2000({sequenceNumber: 78, time: 123456}),
122
+ new SetTime2000({sequenceNumber: 78, seconds: 123456}),
123
123
  new GetCurrent()
124
124
  ]);
125
125
  ```
@@ -136,7 +136,7 @@ const commandInstancesArray = [
136
136
  {value: 10, index: 2},
137
137
  {value: 12, index: 3}
138
138
  ],
139
- time: 75660480
139
+ seconds: 75660480
140
140
  })
141
141
  ];
142
142