node-opcua-schemas 2.97.0 → 2.98.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.
@@ -1,155 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getOrCreateStructuredTypeSchema = void 0;
4
- /* eslint-disable max-depth */
5
- /* eslint-disable max-statements */
6
- const node_opcua_debug_1 = require("node-opcua-debug");
7
- const node_opcua_factory_1 = require("node-opcua-factory");
8
- const node_opcua_nodeid_1 = require("node-opcua-nodeid");
9
- const dynamic_extension_object_1 = require("./dynamic_extension_object");
10
- const errorLog = (0, node_opcua_debug_1.make_errorLog)(__filename);
11
- function _removeNamespacePart(str) {
12
- if (!str) {
13
- return str || "";
14
- }
15
- const data = str.split(":");
16
- return data.length > 1 ? data[1] : str;
17
- }
18
- function _getNamespacePart(str) {
19
- return str.split(":")[0];
20
- }
21
- function _adjustFieldTypeName(fieldTypeName) {
22
- // special cases
23
- if (fieldTypeName === "UAString" || fieldTypeName === "CharArray") {
24
- fieldTypeName = "String";
25
- }
26
- if (fieldTypeName === "UABoolean") {
27
- fieldTypeName = "Boolean";
28
- }
29
- return fieldTypeName;
30
- }
31
- function getOrCreateStructuredTypeSchema(name, typeDictionary, dataTypeFactory, idProvider) {
32
- function _getOrCreateStructuredTypeSchema(_name) {
33
- if (dataTypeFactory.hasStructureByTypeName(_name)) {
34
- return dataTypeFactory.getStructuredTypeSchema(_name);
35
- }
36
- if (dataTypeFactory.hasEnumeration(_name)) {
37
- return dataTypeFactory.getEnumeration(_name);
38
- }
39
- if (dataTypeFactory.hasBuiltInType(_name)) {
40
- return dataTypeFactory.getBuiltInType(_name);
41
- }
42
- // construct it !
43
- const structuredType = typeDictionary.getStructuredTypesRawByName(_name);
44
- if (!structuredType) {
45
- throw new Error("Cannot find structuredType " + _name);
46
- }
47
- structuredType.baseType = _removeNamespacePart(structuredType.baseType);
48
- structuredType.baseType = structuredType.baseType ? structuredType.baseType : "ExtensionObject";
49
- const baseSchema = typeDictionary.getStructuredTypesRawByName(structuredType.baseType);
50
- // remove redundant fields
51
- // Note :some file do no thave SourceType property and may be replicated here ..
52
- // but they belongs to the base class and shall be remove/
53
- // For instance DataTypeSchemaHeader => UABinaryFileDataType
54
- if (baseSchema && baseSchema.fields && baseSchema.name !== "ExtensionObject") {
55
- structuredType.fields = structuredType.fields.filter((field) => {
56
- const name = field.name;
57
- const index = baseSchema.fields.findIndex((f) => f.name === name);
58
- // istanbul ignore next
59
- if (index >= 0) {
60
- errorLog("Warning : find duplicated field from base structure : field name ", name, "baseSchema = ", baseSchema.name, "schema =", structuredType.name);
61
- }
62
- return index < 0;
63
- });
64
- }
65
- applyOnFields();
66
- const schema = new node_opcua_factory_1.StructuredTypeSchema(Object.assign(Object.assign({}, structuredType), { dataTypeFactory }));
67
- const ids = idProvider.getDataTypeAndEncodingId(schema.name);
68
- if (!ids) {
69
- // this may happen if the type is abstract or if the type referes to a internal ExtnsionObject
70
- // that can only exists inside an other extension object.this Type of extension object cannot
71
- // instantiated as standalone object and do not have encoding nodeIds...
72
- const Constructor = (0, dynamic_extension_object_1.createDynamicObjectConstructor)(schema, dataTypeFactory);
73
- return schema;
74
- }
75
- schema.dataTypeNodeId = ids.dataTypeNodeId;
76
- if (schema.dataTypeNodeId.namespace === 0 && schema.dataTypeNodeId.value === 0) {
77
- return schema;
78
- }
79
- schema.encodingDefaultXml = node_opcua_nodeid_1.ExpandedNodeId.fromNodeId(ids.xmlEncodingNodeId);
80
- schema.encodingDefaultJson = node_opcua_nodeid_1.ExpandedNodeId.fromNodeId(ids.jsonEncodingNodeId);
81
- schema.encodingDefaultBinary = node_opcua_nodeid_1.ExpandedNodeId.fromNodeId(ids.binaryEncodingNodeId);
82
- const Constructor = (0, dynamic_extension_object_1.createDynamicObjectConstructor)(schema, dataTypeFactory);
83
- Constructor.encodingDefaultBinary = schema.encodingDefaultBinary;
84
- Constructor.encodingDefaultXml = schema.encodingDefaultXml;
85
- Constructor.encodingDefaultJson = schema.encodingDefaultJson;
86
- return schema;
87
- function applyOnFields() {
88
- for (const field of structuredType.fields) {
89
- const fieldType = field.fieldType;
90
- if (!field.schema) {
91
- const prefix = _getNamespacePart(fieldType);
92
- const fieldTypeName = _adjustFieldTypeName(_removeNamespacePart(fieldType));
93
- switch (prefix) {
94
- case "ua":
95
- field.fieldType = fieldTypeName;
96
- if ((0, node_opcua_factory_1.hasBuiltInType)(fieldTypeName)) {
97
- field.category = node_opcua_factory_1.FieldCategory.basic;
98
- field.schema = (0, node_opcua_factory_1.getBuiltInType)(fieldTypeName);
99
- }
100
- else if (dataTypeFactory.hasStructureByTypeName(fieldTypeName)) {
101
- field.category = node_opcua_factory_1.FieldCategory.complex;
102
- field.schema = dataTypeFactory.getStructuredTypeSchema(fieldTypeName);
103
- }
104
- else {
105
- field.category = node_opcua_factory_1.FieldCategory.basic;
106
- // try in this
107
- field.schema = _getOrCreateStructuredTypeSchema(fieldTypeName);
108
- // istanbul ignore next
109
- if (!field.schema) {
110
- errorLog("What should I do ??", fieldTypeName, " ", dataTypeFactory.hasStructureByTypeName(fieldTypeName));
111
- }
112
- else {
113
- if ((0, node_opcua_factory_1.hasBuiltInType)(fieldTypeName)) {
114
- field.category = node_opcua_factory_1.FieldCategory.basic;
115
- }
116
- else {
117
- field.category = node_opcua_factory_1.FieldCategory.complex;
118
- }
119
- }
120
- }
121
- break;
122
- case "opc":
123
- if ((fieldTypeName === "UAString" || fieldTypeName === "String") && field.name === "IndexRange") {
124
- field.fieldType = "NumericRange";
125
- }
126
- else {
127
- field.fieldType = fieldTypeName;
128
- }
129
- if (!(0, node_opcua_factory_1.hasBuiltInType)(fieldTypeName)) {
130
- throw new Error("Unknown basic type " + fieldTypeName);
131
- }
132
- field.category = node_opcua_factory_1.FieldCategory.basic;
133
- break;
134
- default:
135
- field.fieldType = fieldTypeName;
136
- if (dataTypeFactory.hasEnumeration(fieldTypeName)) {
137
- field.category = node_opcua_factory_1.FieldCategory.enumeration;
138
- const enumeratedType = dataTypeFactory.getEnumeration(fieldTypeName);
139
- field.schema = enumeratedType;
140
- }
141
- else if (dataTypeFactory.hasStructureByTypeName(fieldTypeName)) {
142
- field.category = node_opcua_factory_1.FieldCategory.complex;
143
- const schema1 = dataTypeFactory.getStructuredTypeSchema(fieldTypeName);
144
- field.schema = schema1;
145
- }
146
- break;
147
- }
148
- }
149
- }
150
- }
151
- }
152
- return _getOrCreateStructuredTypeSchema(name);
153
- }
154
- exports.getOrCreateStructuredTypeSchema = getOrCreateStructuredTypeSchema;
155
- //# sourceMappingURL=tools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../source/tools.ts"],"names":[],"mappings":"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"}