node-opcua-modeler 2.84.0 → 2.85.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.
@@ -48,10 +48,11 @@ function addExtensionObjectDataType(namespace, options) {
48
48
  }
49
49
  const baseSuperType = "Structure";
50
50
  const subtypeOf = addressSpace.findDataType(options.subtypeOf ? options.subtypeOf : baseSuperType);
51
+ if (!subtypeOf) {
52
+ throw new Error("Cannot find base DataType ");
53
+ }
51
54
  const structureDefinition = options.structureDefinition;
52
- structureDefinition.baseDataType = structureDefinition.baseDataType
53
- ? (0, node_opcua_nodeid_1.resolveNodeId)(structureDefinition.baseDataType)
54
- : (0, node_opcua_nodeid_1.resolveNodeId)("Structure");
55
+ structureDefinition.baseDataType = (0, node_opcua_nodeid_1.resolveNodeId)(structureDefinition.baseDataType || "Structure");
55
56
  const isAbstract = options.isAbstract || false;
56
57
  const dataType = namespace.createDataType({
57
58
  browseName: options.browseName,
@@ -1 +1 @@
1
- {"version":3,"file":"addExtensionObjectDataType.js","sourceRoot":"","sources":["../source/addExtensionObjectDataType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addExtensionObjectDataType.js","sourceRoot":"","sources":["../source/addExtensionObjectDataType.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-opcua-modeler",
3
- "version": "2.84.0",
3
+ "version": "2.85.0",
4
4
  "description": "pure nodejs OPCUA SDK - module - model",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -14,26 +14,26 @@
14
14
  "dependencies": {
15
15
  "cli-table3": "^0.6.3",
16
16
  "csv-parse": "5.3.2",
17
- "node-opcua-address-space": "2.84.0",
17
+ "node-opcua-address-space": "2.85.0",
18
18
  "node-opcua-assert": "2.77.0",
19
- "node-opcua-basic-types": "2.83.0",
20
- "node-opcua-client-dynamic-extension-object": "2.84.0",
19
+ "node-opcua-basic-types": "2.85.0",
20
+ "node-opcua-client-dynamic-extension-object": "2.85.0",
21
21
  "node-opcua-constants": "2.77.0",
22
- "node-opcua-data-model": "2.83.0",
23
- "node-opcua-debug": "2.83.0",
24
- "node-opcua-factory": "2.83.0",
25
- "node-opcua-nodeid": "2.83.0",
22
+ "node-opcua-data-model": "2.85.0",
23
+ "node-opcua-debug": "2.85.0",
24
+ "node-opcua-factory": "2.85.0",
25
+ "node-opcua-nodeid": "2.85.0",
26
26
  "node-opcua-nodesets": "2.77.0",
27
- "node-opcua-numeric-range": "2.83.0",
28
- "node-opcua-schemas": "2.84.0",
29
- "node-opcua-service-translate-browse-path": "2.84.0",
30
- "node-opcua-status-code": "2.83.0",
31
- "node-opcua-types": "2.84.0",
32
- "node-opcua-variant": "2.84.0",
27
+ "node-opcua-numeric-range": "2.85.0",
28
+ "node-opcua-schemas": "2.85.0",
29
+ "node-opcua-service-translate-browse-path": "2.85.0",
30
+ "node-opcua-status-code": "2.85.0",
31
+ "node-opcua-types": "2.85.0",
32
+ "node-opcua-variant": "2.85.0",
33
33
  "yargs": "15.4.1"
34
34
  },
35
35
  "devDependencies": {
36
- "node-opcua-leak-detector": "2.83.0",
36
+ "node-opcua-leak-detector": "2.85.0",
37
37
  "should": "^13.2.3",
38
38
  "sinon": "^14.0.2"
39
39
  },
@@ -50,5 +50,5 @@
50
50
  "internet of things"
51
51
  ],
52
52
  "homepage": "http://node-opcua.github.io/",
53
- "gitHead": "47af3803b75cecd9da509053e89c023b981a34de"
53
+ "gitHead": "68498fcf7b20ea9f7bd66e8529c546221daf5d52"
54
54
  }
@@ -1,9 +1,4 @@
1
- import {
2
- Namespace as INamespace,
3
- PseudoSession,
4
- UADataType,
5
- UAObject,
6
- UAVariableType} from "node-opcua-address-space";
1
+ import { Namespace as INamespace, PseudoSession, UADataType, UAObject, UAVariableType } from "node-opcua-address-space";
7
2
  import assert from "node-opcua-assert";
8
3
  import { convertDataTypeDefinitionToStructureTypeSchema, ExtraDataTypeManager } from "node-opcua-client-dynamic-extension-object";
9
4
  import { coerceQualifiedName, LocalizedTextLike, QualifiedNameLike } from "node-opcua-data-model";
@@ -59,11 +54,11 @@ export async function addExtensionObjectDataType(namespace: INamespace, options:
59
54
 
60
55
  const baseSuperType = "Structure";
61
56
  const subtypeOf = addressSpace.findDataType(options.subtypeOf ? options.subtypeOf : baseSuperType)!;
62
-
57
+ if (!subtypeOf) {
58
+ throw new Error("Cannot find base DataType ");
59
+ }
63
60
  const structureDefinition = options.structureDefinition;
64
- structureDefinition.baseDataType = structureDefinition.baseDataType
65
- ? resolveNodeId(structureDefinition.baseDataType)
66
- : resolveNodeId("Structure");
61
+ structureDefinition.baseDataType = resolveNodeId(structureDefinition.baseDataType || "Structure");
67
62
 
68
63
  const isAbstract = options.isAbstract || false;
69
64