node-opcua-modeler 2.63.1 → 2.64.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.
Files changed (51) hide show
  1. package/MyModel.NodeSet2.xml +125 -0
  2. package/dist/addExtensionObjectDataType.d.ts +21 -21
  3. package/dist/addExtensionObjectDataType.js +130 -130
  4. package/dist/buildModel.d.ts +16 -0
  5. package/dist/buildModel.js +91 -0
  6. package/dist/buildModel.js.map +1 -0
  7. package/dist/build_model_inner.d.ts +17 -17
  8. package/dist/build_model_inner.js +40 -40
  9. package/dist/display.d.ts +2 -0
  10. package/dist/display.js +96 -0
  11. package/dist/display.js.map +1 -0
  12. package/dist/displayNodeElement.d.ts +5 -5
  13. package/dist/displayNodeElement.js +191 -156
  14. package/dist/displayNodeElement.js.map +1 -1
  15. package/dist/dump_state_machine_to_graphviz.d.ts +6 -0
  16. package/dist/dump_state_machine_to_graphviz.js +120 -0
  17. package/dist/dump_state_machine_to_graphviz.js.map +1 -0
  18. package/dist/generate_markdown_doc.d.ts +6 -6
  19. package/dist/generate_markdown_doc.js +266 -155
  20. package/dist/generate_markdown_doc.js.map +1 -1
  21. package/dist/index.d.ts +24 -24
  22. package/dist/index.js +48 -48
  23. package/dist/promoteToMandatory.d.ts +8 -8
  24. package/dist/promoteToMandatory.js +97 -97
  25. package/dist/setNamespaceMetaData.d.ts +1 -1
  26. package/dist/setNamespaceMetaData.js +5 -5
  27. package/dist/symbol.d.ts +1 -1
  28. package/dist/symbol.js +2 -2
  29. package/dist/tableHelper.d.ts +9 -9
  30. package/dist/tableHelper.js +60 -60
  31. package/dist/to_cvs.d.ts +2 -2
  32. package/dist/to_cvs.js +11 -11
  33. package/dist/to_graphivz.d.ts +14 -13
  34. package/dist/to_graphivz.js +294 -235
  35. package/dist/to_graphivz.js.map +1 -1
  36. package/dist/types.d.ts +1 -1
  37. package/dist/types.js +2 -2
  38. package/distNodeJS/build_documentation_to_file.d.ts +2 -2
  39. package/distNodeJS/build_documentation_to_file.js +26 -26
  40. package/distNodeJS/build_model.d.ts +7 -7
  41. package/distNodeJS/build_model.js +21 -21
  42. package/distNodeJS/index.d.ts +5 -5
  43. package/distNodeJS/index.js +19 -19
  44. package/distNodeJS/symbol_cvs.d.ts +3 -3
  45. package/distNodeJS/symbol_cvs.js +63 -63
  46. package/examples/make_model.ts +4 -3
  47. package/package.json +19 -19
  48. package/source/displayNodeElement.ts +165 -112
  49. package/source/dump_state_machine_to_graphviz.ts +164 -0
  50. package/source/generate_markdown_doc.ts +217 -82
  51. package/source/to_graphivz.ts +129 -48
@@ -1,41 +1,41 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.buildModelInner = void 0;
13
- const node_opcua_address_space_1 = require("node-opcua-address-space");
14
- const generate_markdown_doc_1 = require("./generate_markdown_doc");
15
- function buildModelInner(data) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- try {
18
- const addressSpace = node_opcua_address_space_1.AddressSpace.create();
19
- // create own namespace (before loading other xml files)
20
- const ns = addressSpace.registerNamespace(data.namespaceUri);
21
- const nodeIdManager = ns._nodeIdManager;
22
- if (data.presetSymbols) {
23
- nodeIdManager.setSymbols(data.presetSymbols);
24
- }
25
- yield (0, node_opcua_address_space_1.generateAddressSpaceRaw)(addressSpace, data.xmlFiles, data.xmlLoader);
26
- yield data.createModel(addressSpace);
27
- const xmlModel = ns.toNodeset2XML();
28
- const symbols = nodeIdManager.getSymbols();
29
- const doc = yield (0, generate_markdown_doc_1.buildDocumentationToString)(ns);
30
- addressSpace.dispose();
31
- return { xmlModel, symbols, markdown: doc };
32
- }
33
- catch (err) {
34
- // tslint:disable-next-line: no-console
35
- console.log("Error", err);
36
- throw err;
37
- }
38
- });
39
- }
40
- exports.buildModelInner = buildModelInner;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.buildModelInner = void 0;
13
+ const node_opcua_address_space_1 = require("node-opcua-address-space");
14
+ const generate_markdown_doc_1 = require("./generate_markdown_doc");
15
+ function buildModelInner(data) {
16
+ return __awaiter(this, void 0, void 0, function* () {
17
+ try {
18
+ const addressSpace = node_opcua_address_space_1.AddressSpace.create();
19
+ // create own namespace (before loading other xml files)
20
+ const ns = addressSpace.registerNamespace(data.namespaceUri);
21
+ const nodeIdManager = ns._nodeIdManager;
22
+ if (data.presetSymbols) {
23
+ nodeIdManager.setSymbols(data.presetSymbols);
24
+ }
25
+ yield (0, node_opcua_address_space_1.generateAddressSpaceRaw)(addressSpace, data.xmlFiles, data.xmlLoader);
26
+ yield data.createModel(addressSpace);
27
+ const xmlModel = ns.toNodeset2XML();
28
+ const symbols = nodeIdManager.getSymbols();
29
+ const doc = yield (0, generate_markdown_doc_1.buildDocumentationToString)(ns);
30
+ addressSpace.dispose();
31
+ return { xmlModel, symbols, markdown: doc };
32
+ }
33
+ catch (err) {
34
+ // tslint:disable-next-line: no-console
35
+ console.log("Error", err);
36
+ throw err;
37
+ }
38
+ });
39
+ }
40
+ exports.buildModelInner = buildModelInner;
41
41
  //# sourceMappingURL=build_model_inner.js.map
@@ -0,0 +1,2 @@
1
+ import { BaseNode } from "node-opcua-address-space";
2
+ export declare function displayNodeElement(node: BaseNode): void;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const node_opcua_variant_1 = require("node-opcua-variant");
4
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
5
+ const Table = require("cli-table");
6
+ const a = 'ⓂⓄⓋⓥⓇ❗⟵ ⟶⟷';
7
+ function symbol(nodeClass) {
8
+ switch (nodeClass) {
9
+ case node_opcua_data_model_1.NodeClass.DataType: return "Ⓓ";
10
+ case node_opcua_data_model_1.NodeClass.ObjectType: return "<Ⓞ>";
11
+ case node_opcua_data_model_1.NodeClass.VariableType: return "<Ⓥ>";
12
+ case node_opcua_data_model_1.NodeClass.Method: return "Ⓜ";
13
+ case node_opcua_data_model_1.NodeClass.Object: return "Ⓞ";
14
+ case node_opcua_data_model_1.NodeClass.Variable: return "Ⓥ";
15
+ case node_opcua_data_model_1.NodeClass.View: return "⦖";
16
+ default: return "?";
17
+ }
18
+ }
19
+ function displayNodeElement(node) {
20
+ // instantiate
21
+ var table = new Table({
22
+ head: [
23
+ 'ReferenceType', 'NodeId', 'BrowseName', 'ModellingRule', "TypeDefinition", "DataType", "Value"
24
+ ],
25
+ });
26
+ table.push([
27
+ "BrowseName: ",
28
+ { colSpan: 6, content: node.browseName.toString() },
29
+ ]);
30
+ if (node.description) {
31
+ table.push([
32
+ "Description: ",
33
+ node.description.toString(),
34
+ ]);
35
+ }
36
+ const alreadyDumped = {};
37
+ function dumpRefe(ref) {
38
+ if (!ref.isForward) {
39
+ return;
40
+ }
41
+ if (!ref.node) {
42
+ console.log(" Halt ", ref.toString());
43
+ return;
44
+ }
45
+ const dir = ref.isForward ? "⟶" : "⟵";
46
+ const refNode = ref.node;
47
+ const refType = ref._referenceType;
48
+ // xx const r = refNode.findReferencesAsObject("HasModellingRule", true);
49
+ const modelingRule = refNode.modellingRule || ""; // r[0] ? r[0].browseName.toString() : "/";
50
+ let value = "";
51
+ let dataType = "";
52
+ if (refNode.nodeClass === node_opcua_data_model_1.NodeClass.Variable) {
53
+ const v = refNode;
54
+ const val = v.readValue().value.value;
55
+ if (v.isEnumeration() && val !== null) {
56
+ const a = v.readEnumValue();
57
+ value = a.value + " (" + a.name + ")";
58
+ }
59
+ else {
60
+ value = val ? val.toString() : "null";
61
+ }
62
+ const actualDataType = node_opcua_variant_1.DataType[v.readValue().value.dataType];
63
+ dataType = v.dataTypeObj.browseName.toString();
64
+ //findBasicDataType(v.dataTypeObj);
65
+ }
66
+ table.push([
67
+ refType.browseName.toString() + dir + symbol(refNode.nodeClass),
68
+ refNode.nodeId.toString(),
69
+ refNode.browseName.toString(),
70
+ modelingRule,
71
+ refNode.typeDefinitionObj ? refNode.typeDefinitionObj.browseName.toString() : "",
72
+ dataType, value
73
+ ]);
74
+ alreadyDumped[refNode.browseName.toString()] = 1;
75
+ }
76
+ const references = node.allReferences();
77
+ for (const ref of references) {
78
+ dumpRefe(ref);
79
+ }
80
+ // add property from derived type
81
+ if (node.nodeClass === node_opcua_data_model_1.NodeClass.ObjectType || node.nodeClass === node_opcua_data_model_1.NodeClass.VariableType) {
82
+ const curNode = node;
83
+ let superType = curNode.subtypeOfObj;
84
+ while (superType) {
85
+ table.push([superType.browseName.toString() + ":", "--", "--", "--"]);
86
+ const references = superType.allReferences();
87
+ for (const ref of references) {
88
+ dumpRefe(ref);
89
+ }
90
+ superType = superType.subtypeOfObj;
91
+ }
92
+ }
93
+ console.log(table.toString());
94
+ }
95
+ exports.displayNodeElement = displayNodeElement;
96
+ //# sourceMappingURL=display.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display.js","sourceRoot":"","sources":["../source/display.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { BaseNode } from "node-opcua-address-space";
2
- export interface DisplayNodeOptions {
3
- format: "cli" | "markdown";
4
- }
5
- export declare function displayNodeElement(node: BaseNode, options?: DisplayNodeOptions): string;
1
+ import { BaseNode } from "node-opcua-address-space";
2
+ export interface DisplayNodeOptions {
3
+ format: "cli" | "markdown";
4
+ }
5
+ export declare function displayNodeElement(node: BaseNode, options?: DisplayNodeOptions): string;
@@ -1,157 +1,192 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.displayNodeElement = void 0;
4
- const node_opcua_address_space_1 = require("node-opcua-address-space");
5
- const node_opcua_data_model_1 = require("node-opcua-data-model");
6
- const node_opcua_nodeid_1 = require("node-opcua-nodeid");
7
- const node_opcua_variant_1 = require("node-opcua-variant");
8
- const tableHelper_1 = require("./tableHelper");
9
- const a = "ⓂⓄⓋⓥⓇ❗⟵ ⟶⟷";
10
- function symbol(nodeClass) {
11
- switch (nodeClass) {
12
- case node_opcua_data_model_1.NodeClass.DataType:
13
- return "Ⓓ";
14
- case node_opcua_data_model_1.NodeClass.ObjectType:
15
- return "ⓄT";
16
- case node_opcua_data_model_1.NodeClass.VariableType:
17
- return "ⓋT";
18
- case node_opcua_data_model_1.NodeClass.Method:
19
- return "Ⓜ";
20
- case node_opcua_data_model_1.NodeClass.Object:
21
- return "Ⓞ";
22
- case node_opcua_data_model_1.NodeClass.Variable:
23
- return "Ⓥ";
24
- case node_opcua_data_model_1.NodeClass.View:
25
- return "⦖";
26
- default:
27
- return "?";
28
- }
29
- }
30
- const hasSubtypeNodeId = (0, node_opcua_nodeid_1.resolveNodeId)("HasSubtype");
31
- function displayNodeElement(node, options) {
32
- const head = ["ReferenceType", "NodeId", "BrowseName", "ModellingRule", "TypeDefinition", "DataType", "Value"];
33
- const table = new tableHelper_1.TableHelper(head);
34
- table.push(["BrowseName: ", { colSpan: 6, content: node.browseName.toString() }]);
35
- const superType = node.subtypeOfObj;
36
- if (superType) {
37
- table.push(["Base", superType.browseName.toString(), { colSpan: 6, content: node.browseName.toString() }]);
38
- }
39
- if (node.description) {
40
- table.push(["Description", node.description.toString(), { colSpan: 6, content: node.browseName.toString() }]);
41
- }
42
- const alreadyDumped = {};
43
- const descriptions = [];
44
- function dumpReference(ref, filter) {
45
- (0, node_opcua_address_space_1.resolveReferenceNode)(node.addressSpace, ref);
46
- if (!ref.isForward) {
47
- return;
48
- }
49
- if (node_opcua_nodeid_1.NodeId.sameNodeId(ref.referenceType, hasSubtypeNodeId)) {
50
- return; // ignore forward HasSubtype
51
- }
52
- // ignore subtype references
53
- /* istanbul ignore next */
54
- if (!ref.node) {
55
- // tslint:disable-next-line: no-console
56
- console.log(" Halt ", ref.toString({ addressSpace: node.addressSpace }));
57
- return;
58
- }
59
- const dir = ref.isForward ? " " : " ";
60
- const refNode = ref.node;
61
- const refType = (0, node_opcua_address_space_1.resolveReferenceType)(node.addressSpace, ref);
62
- if (filter) {
63
- if (refType.browseName.toString() !== filter) {
64
- return;
65
- }
66
- }
67
- if (alreadyDumped[refNode.nodeId.toString()]) {
68
- return;
69
- }
70
- // xx const r = refNode.findReferencesAsObject("HasModellingRule", true);
71
- const modelingRule = refNode.modellingRule || ""; // r[0] ? r[0].browseName.toString() : "/";
72
- let value = "";
73
- let dataType = "";
74
- if (refNode.nodeClass === node_opcua_data_model_1.NodeClass.Variable) {
75
- const v = refNode;
76
- const val = v.readValue().value.value;
77
- if (v.isExtensionObject()) {
78
- // don't do anything
79
- }
80
- else if (v.isEnumeration() && val !== null) {
81
- const enumValue = v.readEnumValue();
82
- value = enumValue.value + " (" + enumValue.name + ")";
83
- }
84
- else if (val instanceof Date) {
85
- value = val ? val.toUTCString() : "";
86
- }
87
- else {
88
- value = val ? val.toString() : "null";
89
- }
90
- const actualDataType = node_opcua_variant_1.DataType[v.readValue().value.dataType];
91
- const basicDataType = node_opcua_variant_1.DataType[v.dataTypeObj.basicDataType];
92
- dataType = v.dataTypeObj.browseName.toString();
93
- if (basicDataType !== dataType) {
94
- dataType = dataType + "(" + basicDataType + ")";
95
- }
96
- // findBasicDataType(v.dataTypeObj);
97
- }
98
- const row = [
99
- refType.browseName.toString() + dir + symbol(refNode.nodeClass),
100
- refNode.nodeId.toString(),
101
- refNode.browseName.toString(),
102
- modelingRule,
103
- refNode.typeDefinitionObj ? refNode.typeDefinitionObj.browseName.toString() : "",
104
- dataType,
105
- value
106
- ];
107
- table.push(row);
108
- descriptions.push({
109
- description: refNode.description ? refNode.description.toString() : "",
110
- name: refNode.browseName.name,
111
- type: dataType
112
- });
113
- alreadyDumped[refNode.nodeId.toString()] = 1;
114
- }
115
- const references = node.allReferences();
116
- const m = {};
117
- function dumpReferences(_references) {
118
- // xx for (const ref of references) {
119
- // xx dumpReference(ref, "HasSubtype");
120
- // xx }
121
- for (const ref of _references) {
122
- dumpReference(ref, "HasTypeDefinition");
123
- }
124
- for (const ref of _references) {
125
- dumpReference(ref, "HasEncoding");
126
- }
127
- for (const ref of _references) {
128
- dumpReference(ref, "HasComponent");
129
- }
130
- for (const ref of _references) {
131
- dumpReference(ref, "HasProperty");
132
- }
133
- for (const ref of _references) {
134
- dumpReference(ref, "Organizes");
135
- }
136
- }
137
- dumpReferences(references);
138
- // add property from base object/variable type
139
- if (node.nodeClass === node_opcua_data_model_1.NodeClass.ObjectType || node.nodeClass === node_opcua_data_model_1.NodeClass.VariableType) {
140
- const curNode = node;
141
- let subtypeOf = curNode.subtypeOfObj;
142
- while (subtypeOf) {
143
- table.push([subtypeOf.browseName.toString() + ":", "--", "--", "--"]);
144
- const references2 = subtypeOf.allReferences();
145
- dumpReferences(references2);
146
- subtypeOf = subtypeOf.subtypeOfObj;
147
- }
148
- }
149
- if (options && options.format === "markdown") {
150
- return table.toMarkdownTable();
151
- }
152
- else {
153
- return table.toString();
154
- }
155
- }
156
- exports.displayNodeElement = displayNodeElement;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.displayNodeElement = void 0;
4
+ const node_opcua_address_space_1 = require("node-opcua-address-space");
5
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
6
+ const node_opcua_nodeid_1 = require("node-opcua-nodeid");
7
+ const node_opcua_variant_1 = require("node-opcua-variant");
8
+ const tableHelper_1 = require("./tableHelper");
9
+ const a = "ⓂⓄⓋⓥⓇ❗⟵ ⟶⟷";
10
+ function symbol(nodeClass) {
11
+ switch (nodeClass) {
12
+ case node_opcua_data_model_1.NodeClass.DataType:
13
+ return "Ⓓ";
14
+ case node_opcua_data_model_1.NodeClass.ObjectType:
15
+ return "ⓄT";
16
+ case node_opcua_data_model_1.NodeClass.VariableType:
17
+ return "ⓋT";
18
+ case node_opcua_data_model_1.NodeClass.Method:
19
+ return "Ⓜ";
20
+ case node_opcua_data_model_1.NodeClass.Object:
21
+ return "Ⓞ";
22
+ case node_opcua_data_model_1.NodeClass.Variable:
23
+ return "Ⓥ";
24
+ case node_opcua_data_model_1.NodeClass.View:
25
+ return "⦖";
26
+ default:
27
+ return "?";
28
+ }
29
+ }
30
+ const hasSubtypeNodeId = (0, node_opcua_nodeid_1.resolveNodeId)("HasSubtype");
31
+ function encodeXML(s) {
32
+ return s.replace("&", "&amp;").replace("<", "&lt;").replace(">", "&gt;");
33
+ }
34
+ function dumpReference(data, ref, filter) {
35
+ (0, node_opcua_address_space_1.resolveReferenceNode)(data.node.addressSpace, ref);
36
+ if (!ref.isForward) {
37
+ return;
38
+ }
39
+ if (node_opcua_nodeid_1.NodeId.sameNodeId(ref.referenceType, hasSubtypeNodeId)) {
40
+ return; // ignore forward HasSubtype
41
+ }
42
+ // ignore subtype references
43
+ /* istanbul ignore next */
44
+ if (!ref.node) {
45
+ // tslint:disable-next-line: no-console
46
+ console.log(" Halt ", ref.toString({ addressSpace: data.node.addressSpace }));
47
+ return;
48
+ }
49
+ const dir = ref.isForward ? " " : " ";
50
+ const refNode = ref.node;
51
+ const refType = (0, node_opcua_address_space_1.resolveReferenceType)(data.node.addressSpace, ref);
52
+ if (filter) {
53
+ if (refType.browseName.name !== filter) {
54
+ return;
55
+ }
56
+ }
57
+ const key = ref.nodeId.toString() + ref.referenceType.toString();
58
+ if (data.alreadyDumped[key]) {
59
+ return;
60
+ }
61
+ // xx const r = refNode.findReferencesAsObject("HasModellingRule", true);
62
+ const modelingRule = refNode.modellingRule || ""; // r[0] ? r[0].browseName.toString() : "/";
63
+ let value = "";
64
+ let dataType = "";
65
+ if (refNode.nodeClass === node_opcua_data_model_1.NodeClass.Variable) {
66
+ const v = refNode;
67
+ const val = v.readValue().value.value;
68
+ if (v.isExtensionObject()) {
69
+ // don't do anything
70
+ }
71
+ else if (v.isEnumeration() && val !== null) {
72
+ const enumValue = v.readEnumValue();
73
+ value = enumValue.value + " (" + enumValue.name + ")";
74
+ }
75
+ else if (val instanceof Date) {
76
+ value = val ? val.toUTCString() : "";
77
+ }
78
+ else {
79
+ value = val ? val.toString() : "null";
80
+ }
81
+ const actualDataType = node_opcua_variant_1.DataType[v.readValue().value.dataType];
82
+ const basicDataType = node_opcua_variant_1.DataType[v.dataTypeObj.basicDataType];
83
+ dataType = v.dataTypeObj.browseName.toString();
84
+ if (basicDataType !== dataType) {
85
+ dataType = dataType + "(" + basicDataType + ")";
86
+ }
87
+ // findBasicDataType(v.dataTypeObj);
88
+ }
89
+ const row = [
90
+ refType.browseName.toString() + dir + symbol(refNode.nodeClass),
91
+ refNode.nodeId.toString(),
92
+ encodeXML(refNode.browseName.toString()),
93
+ modelingRule,
94
+ refNode.typeDefinitionObj ? refNode.typeDefinitionObj.browseName.toString() : "",
95
+ dataType,
96
+ value
97
+ ];
98
+ data.table.push(row);
99
+ data.descriptions.push({
100
+ description: refNode.description ? refNode.description.text || "" : "",
101
+ name: refNode.browseName.name,
102
+ type: dataType
103
+ });
104
+ data.alreadyDumped[key] = 1;
105
+ }
106
+ function dumpReferences(data, _references) {
107
+ // xx for (const ref of references) {
108
+ // xx dumpReference(ref, "HasSubtype");
109
+ // xx }
110
+ for (const ref of _references) {
111
+ dumpReference(data, ref, "HasTypeDefinition");
112
+ }
113
+ for (const ref of _references) {
114
+ dumpReference(data, ref, "HasEncoding");
115
+ }
116
+ for (const ref of _references) {
117
+ dumpReference(data, ref, "HasComponent");
118
+ }
119
+ for (const ref of _references) {
120
+ dumpReference(data, ref, "HasProperty");
121
+ }
122
+ for (const ref of _references) {
123
+ dumpReference(data, ref, "Organizes");
124
+ }
125
+ for (const ref of _references) {
126
+ console.log(data.node.addressSpace.findReferenceType(ref.referenceType).toString());
127
+ dumpReference(data, ref, undefined);
128
+ }
129
+ }
130
+ function shortDescription(d) {
131
+ return d.split(/\.|\n/)[0];
132
+ }
133
+ function displayNodeElement(node, options) {
134
+ const head = ["ReferenceType", "NodeId", "BrowseName", "ModellingRule", "TypeDefinition", "DataType", "Value"];
135
+ function createTable() {
136
+ const table = new tableHelper_1.TableHelper(head);
137
+ table.push(["BrowseName: ", { colSpan: 6, content: node.browseName.toString() }]);
138
+ const superType = node.subtypeOfObj;
139
+ if (superType) {
140
+ table.push(["Base", superType.browseName.toString(), { colSpan: 6, content: node.browseName.toString() }]);
141
+ }
142
+ if (node.description) {
143
+ table.push(["Description", { colspan: 6, content: shortDescription(node.description.text || "") }]);
144
+ }
145
+ return table;
146
+ }
147
+ const table = createTable();
148
+ const alreadyDumped = {};
149
+ const descriptions = [];
150
+ const references = node.allReferences();
151
+ const m = {};
152
+ const data = { table, node, alreadyDumped, descriptions };
153
+ dumpReferences(data, references);
154
+ function toText(table) {
155
+ if (options && options.format === "markdown") {
156
+ return table.toMarkdownTable();
157
+ }
158
+ else {
159
+ return table.toString();
160
+ }
161
+ }
162
+ const str = [];
163
+ const tables = [];
164
+ tables.push(table);
165
+ if (node.description) {
166
+ str.push(node.description.text || "");
167
+ str.push("");
168
+ }
169
+ str.push(toText(table));
170
+ const str2 = [];
171
+ // add property from base object/variable type
172
+ if (node.nodeClass === node_opcua_data_model_1.NodeClass.ObjectType || node.nodeClass === node_opcua_data_model_1.NodeClass.VariableType) {
173
+ const curNode = node;
174
+ let subtypeOf = curNode.subtypeOfObj;
175
+ while (subtypeOf) {
176
+ data.table = createTable();
177
+ data.table.push([subtypeOf.browseName.toString() + ":", "--", "--", "--"]);
178
+ const references2 = subtypeOf.allReferences();
179
+ dumpReferences(data, references2);
180
+ str.push("<details>");
181
+ str.push("<summary>Base type: " + subtypeOf.browseName.toString() + "</summary>");
182
+ str.push("");
183
+ str.push(toText(data.table));
184
+ str.push("");
185
+ str2.push("</details>");
186
+ subtypeOf = subtypeOf.subtypeOfObj;
187
+ }
188
+ }
189
+ return str.join("\n") + str2.join("\n");
190
+ }
191
+ exports.displayNodeElement = displayNodeElement;
157
192
  //# sourceMappingURL=displayNodeElement.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"displayNodeElement.js","sourceRoot":"","sources":["../source/displayNodeElement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"displayNodeElement.js","sourceRoot":"","sources":["../source/displayNodeElement.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module node-opcua-address-space
3
+ */
4
+ import { UAStateMachineEx } from "node-opcua-address-space";
5
+ export declare function dumpStateMachineToPlantUML(stateMachineType: UAStateMachineEx): string;
6
+ export declare function dumpStateMachineToGraphViz(stateMachineType: UAStateMachineEx): string;