node-opcua-basic-types 2.69.0 → 2.72.1

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.
package/dist/integers.js CHANGED
@@ -160,6 +160,10 @@ function decodeUInt64(stream, value) {
160
160
  }
161
161
  exports.decodeUInt64 = decodeUInt64;
162
162
  function constructInt64(high, low) {
163
+ if (high === 0 && low < 0) {
164
+ high = 0xffffffff;
165
+ low = 0xffffffff + low + 1;
166
+ }
163
167
  (0, node_opcua_assert_1.assert)(low >= 0 && low <= 0xffffffff);
164
168
  (0, node_opcua_assert_1.assert)(high >= 0 && high <= 0xffffffff);
165
169
  return [high, low];
@@ -179,8 +183,20 @@ function coerceUInt64(value) {
179
183
  }
180
184
  if (typeof value === "string") {
181
185
  v = value.split(",");
182
- high = parseInt(v[0], 10);
183
- low = parseInt(v[1], 10);
186
+ if (v.length === 1) {
187
+ // was a single string, good news ! BigInt can be used with nodejs >=12
188
+ let a = BigInt(value);
189
+ if (a < BigInt(0)) {
190
+ const mask = BigInt("0xFFFFFFFFFFFFFFFF");
191
+ a = (mask + a + BigInt(1)) & mask;
192
+ }
193
+ high = Number(a >> BigInt(32));
194
+ low = Number(a & BigInt(0xffffffff));
195
+ }
196
+ else {
197
+ high = parseInt(v[0], 10);
198
+ low = parseInt(v[1], 10);
199
+ }
184
200
  return constructInt64(high, low);
185
201
  }
186
202
  if (value > 0xffffffff) {
@@ -1 +1 @@
1
- {"version":3,"file":"integers.js","sourceRoot":"","sources":["../source/integers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integers.js","sourceRoot":"","sources":["../source/integers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-opcua-basic-types",
3
- "version": "2.69.0",
3
+ "version": "2.72.1",
4
4
  "description": "pure nodejs OPCUA SDK - module -basic-types",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -12,19 +12,19 @@
12
12
  },
13
13
  "dependencies": {
14
14
  "node-opcua-assert": "2.66.0",
15
- "node-opcua-binary-stream": "2.69.0",
16
- "node-opcua-buffer-utils": "2.69.0",
17
- "node-opcua-date-time": "2.69.0",
18
- "node-opcua-enum": "2.69.0",
15
+ "node-opcua-binary-stream": "2.71.0",
16
+ "node-opcua-buffer-utils": "2.71.0",
17
+ "node-opcua-date-time": "2.71.0",
18
+ "node-opcua-enum": "2.71.0",
19
19
  "node-opcua-guid": "2.66.0",
20
- "node-opcua-nodeid": "2.69.0",
21
- "node-opcua-status-code": "2.69.0",
22
- "node-opcua-utils": "2.69.0"
20
+ "node-opcua-nodeid": "2.71.0",
21
+ "node-opcua-status-code": "2.71.0",
22
+ "node-opcua-utils": "2.71.0"
23
23
  },
24
24
  "devDependencies": {
25
- "@types/node": "17.0.36",
26
- "node-opcua-benchmarker": "2.69.0",
27
- "node-opcua-debug": "2.69.0",
25
+ "@types/node": "18.0.0",
26
+ "node-opcua-benchmarker": "2.71.0",
27
+ "node-opcua-debug": "2.71.0",
28
28
  "should": "^13.2.3"
29
29
  },
30
30
  "author": "Etienne Rossignon",
@@ -42,5 +42,5 @@
42
42
  "internet of things"
43
43
  ],
44
44
  "homepage": "http://node-opcua.github.io/",
45
- "gitHead": "6c88d05e8c82ce4bc9c8af9f0a8eb6136f31d2ce"
45
+ "gitHead": "ba98dd91a9eada9815268c66c98ca5391bc884e7"
46
46
  }
@@ -155,7 +155,7 @@ export function randomUInt64(): UInt64 {
155
155
  return [getRandomInt(0, 0xffffffff), getRandomInt(0, 0xffffffff)];
156
156
  }
157
157
 
158
- export function encodeUInt64(value: UInt64 | number, stream: OutputBinaryStream): void {
158
+ export function encodeUInt64(value: UInt64 | number, stream: OutputBinaryStream): void {
159
159
  if (typeof value === "number") {
160
160
  const arr = coerceUInt64(value);
161
161
  stream.writeUInt32(arr[1]);
@@ -173,6 +173,10 @@ export function decodeUInt64(stream: BinaryStream, value?: UInt64): UInt64 {
173
173
  }
174
174
 
175
175
  export function constructInt64(high: UInt32, low: UInt32): Int64 {
176
+ if (high === 0 && low < 0) {
177
+ high = 0xffffffff;
178
+ low = 0xffffffff + low + 1;
179
+ }
176
180
  assert(low >= 0 && low <= 0xffffffff);
177
181
  assert(high >= 0 && high <= 0xffffffff);
178
182
  return [high, low];
@@ -192,14 +196,24 @@ export function coerceUInt64(value: number | UInt64 | Int32 | string | null): UI
192
196
  }
193
197
  if (typeof value === "string") {
194
198
  v = value.split(",");
195
- high = parseInt(v[0], 10);
196
- low = parseInt(v[1], 10);
199
+ if (v.length === 1) {
200
+ // was a single string, good news ! BigInt can be used with nodejs >=12
201
+ let a = BigInt(value);
202
+ if (a < BigInt(0)) {
203
+ const mask = BigInt("0xFFFFFFFFFFFFFFFF");
204
+ a = (mask + a + BigInt(1)) & mask;
205
+ }
206
+ high = Number(a >> BigInt(32));
207
+ low = Number(a & BigInt(0xffffffff));
208
+ } else {
209
+ high = parseInt(v[0], 10);
210
+ low = parseInt(v[1], 10);
211
+ }
197
212
  return constructInt64(high, low);
198
213
  }
199
214
  if (value > 0xffffffff) {
200
215
  // beware : as per javascript, value is a double here !
201
216
  // our conversion will suffer from some inaccuracy
202
-
203
217
  high = Math.floor(value / 0x100000000);
204
218
  low = value - high * 0x100000000;
205
219
  return constructInt64(high, low);