node-opcua-service-call
Advanced tools
Comparing version
@@ -17,32 +17,27 @@ "use strict"; | ||
Object.defineProperty(exports, "CallResponse", { enumerable: true, get: function () { return node_opcua_types_2.CallResponse; } }); | ||
/// | ||
function constructHookArgument(options) { | ||
options = options || { dataType: node_opcua_variant_1.DataType.Null }; | ||
let dataType = options.dataType; | ||
if (dataType) { | ||
if (typeof dataType === "string") { | ||
dataType = (0, node_opcua_nodeid_1.resolveNodeId)(dataType); | ||
} | ||
else if (dataType instanceof node_opcua_nodeid_1.NodeId) { | ||
// nothing | ||
} | ||
else if (dataType.value) { | ||
(0, node_opcua_assert_1.assert)(Object.prototype.hasOwnProperty.call(dataType, "namespace")); | ||
dataType = (0, node_opcua_nodeid_1.coerceNodeId)(dataType.value, dataType.namespace); | ||
} | ||
else { | ||
(0, node_opcua_assert_1.assert)(typeof dataType === "number"); | ||
} | ||
options.dataType = dataType; | ||
function _coerceToNodeId(n) { | ||
const dataType = n; | ||
if (!dataType) { | ||
return new node_opcua_nodeid_1.NodeId(); | ||
} | ||
if (options.valueRank === undefined) { | ||
options.valueRank = -1; | ||
if (typeof dataType === "string") { | ||
return (0, node_opcua_nodeid_1.resolveNodeId)(dataType); | ||
} | ||
// fix missing ArrayDimension (The value is an array with one dimension.) | ||
if (options.valueRank !== 1 || !options.arrayDimensions) { | ||
options.arrayDimensions = [0]; | ||
if (dataType instanceof node_opcua_nodeid_1.NodeId) { | ||
return dataType; | ||
} | ||
return options; | ||
if (Object.prototype.hasOwnProperty.call(dataType, "value")) { | ||
const a = dataType; | ||
return (0, node_opcua_nodeid_1.coerceNodeId)(a.value, a.namespace); | ||
} | ||
(0, node_opcua_assert_1.assert)(typeof dataType === "number"); | ||
return (0, node_opcua_nodeid_1.coerceNodeId)(dataType); | ||
} | ||
function constructHookArgument(_options) { | ||
const options = _options || { valueRank: -1, dataType: node_opcua_variant_1.DataType.Null }; | ||
const dataType = _coerceToNodeId(options.dataType || node_opcua_variant_1.DataType.Null); | ||
(0, node_opcua_variant_1.verifyRankAndDimensions)(options); | ||
return Object.assign(Object.assign({}, options), { dataType }); | ||
} | ||
node_opcua_types_1.Argument.schema.constructHook = constructHookArgument; | ||
//# sourceMappingURL=imports.js.map |
{ | ||
"name": "node-opcua-service-call", | ||
"version": "2.59.0", | ||
"version": "2.60.0", | ||
"description": "pure nodejs OPCUA SDK - module -service-call", | ||
@@ -16,12 +16,12 @@ "scripts": { | ||
"node-opcua-assert": "2.55.0", | ||
"node-opcua-basic-types": "2.57.0", | ||
"node-opcua-basic-types": "2.60.0", | ||
"node-opcua-binary-stream": "2.55.0", | ||
"node-opcua-factory": "2.57.0", | ||
"node-opcua-nodeid": "2.55.0", | ||
"node-opcua-service-secure-channel": "2.59.0", | ||
"node-opcua-types": "2.59.0", | ||
"node-opcua-variant": "2.59.0" | ||
"node-opcua-factory": "2.60.0", | ||
"node-opcua-nodeid": "2.60.0", | ||
"node-opcua-service-secure-channel": "2.60.0", | ||
"node-opcua-types": "2.60.0", | ||
"node-opcua-variant": "2.60.0" | ||
}, | ||
"devDependencies": { | ||
"node-opcua-packet-analyzer": "2.57.0", | ||
"node-opcua-packet-analyzer": "2.60.0", | ||
"node-opcua-status-code": "2.56.0", | ||
@@ -45,3 +45,3 @@ "should": "^13.2.3" | ||
"homepage": "http://node-opcua.github.io/", | ||
"gitHead": "ea10265745d3d4b8af249a4e13288ad71232706f" | ||
"gitHead": "56dc8584b9118ee2f3bfb0b2e9d456b609ccbac8" | ||
} |
@@ -5,5 +5,5 @@ /** | ||
import { assert } from "node-opcua-assert"; | ||
import { coerceNodeId, NodeId, resolveNodeId } from "node-opcua-nodeid"; | ||
import { coerceNodeId, NodeId, NodeIdLike, resolveNodeId } from "node-opcua-nodeid"; | ||
import { Argument } from "node-opcua-types"; | ||
import { DataType } from "node-opcua-variant"; | ||
import { DataType, verifyRankAndDimensions } from "node-opcua-variant"; | ||
@@ -23,30 +23,39 @@ export { | ||
/// | ||
function constructHookArgument(options?: { dataType: any; valueRank?: number; arrayDimensions?: any }): any { | ||
options = options || { dataType: DataType.Null }; | ||
interface constructHookArgumentOptions { | ||
dataType: DataType | NodeIdLike | string; | ||
valueRank?: number; | ||
arrayDimensions?: number[]; | ||
} | ||
interface constructHookArgumentOptions2 { | ||
dataType: NodeId; | ||
valueRank?: number; | ||
arrayDimensions?: number[]; | ||
} | ||
function _coerceToNodeId(n: NodeId | string | DataType): NodeId { | ||
const dataType: NodeId | string | DataType = n; | ||
let dataType = options.dataType; | ||
if (dataType) { | ||
if (typeof dataType === "string") { | ||
dataType = resolveNodeId(dataType); | ||
} else if (dataType instanceof NodeId) { | ||
// nothing | ||
} else if (dataType.value) { | ||
assert(Object.prototype.hasOwnProperty.call(dataType, "namespace")); | ||
dataType = coerceNodeId(dataType.value, dataType.namespace); | ||
} else { | ||
assert(typeof dataType === "number"); | ||
} | ||
options.dataType = dataType; | ||
if (!dataType) { | ||
return new NodeId(); | ||
} | ||
if (options.valueRank === undefined) { | ||
options.valueRank = -1; | ||
if (typeof dataType === "string") { | ||
return resolveNodeId(dataType); | ||
} | ||
// fix missing ArrayDimension (The value is an array with one dimension.) | ||
if (options.valueRank !== 1 || !options.arrayDimensions) { | ||
options.arrayDimensions = [0]; | ||
if (dataType instanceof NodeId) { | ||
return dataType; | ||
} | ||
if (Object.prototype.hasOwnProperty.call(dataType, "value")) { | ||
const a = dataType as unknown as { value: unknown; namespace?: number }; | ||
return coerceNodeId(a.value, a.namespace); | ||
} | ||
assert(typeof dataType === "number"); | ||
return coerceNodeId(dataType); | ||
} | ||
function constructHookArgument(_options?: constructHookArgumentOptions): constructHookArgumentOptions2 { | ||
const options = _options || { valueRank: -1, dataType: DataType.Null }; | ||
return options; | ||
const dataType = _coerceToNodeId(options.dataType || DataType.Null); | ||
verifyRankAndDimensions(options); | ||
return { ...options, dataType }; | ||
} | ||
Argument.schema.constructHook = constructHookArgument; |
Sorry, the diff of this file is not supported yet
13318
2.76%12
9.09%203
2.01%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
Updated
Updated
Updated
Updated