node-opcua-address-space 2.181.1 → 2.182.2

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 (121) hide show
  1. package/api/helpers/ensure_secure_access.ts +53 -2
  2. package/api/index.ts +30 -1
  3. package/api/loader/generateAddressSpaceRaw.ts +44 -139
  4. package/api/loader/load_nodeset2.ts +5 -0
  5. package/api/loader/narrow_instance_datatypes.ts +264 -0
  6. package/api/loader/nodeset_builtin_formats.ts +143 -0
  7. package/api/loader/nodeset_format.ts +153 -0
  8. package/api/loader/nodeset_image.ts +37 -4
  9. package/api/loader/nodeset_image_codec.ts +153 -34
  10. package/api/loader/nodeset_record.ts +26 -2
  11. package/api/loader/nodeset_record_applier.ts +54 -3
  12. package/api/loader/nodeset_records_to_xml.ts +620 -0
  13. package/api/loader/nodeset_source.ts +185 -26
  14. package/api/loader/nodeset_to_image.ts +16 -5
  15. package/api/loader/nodeset_xml_header.ts +119 -0
  16. package/api/loader/nodeset_xml_primitives.ts +209 -0
  17. package/api/loader/nodeset_xml_producer.ts +61 -2
  18. package/api/loader/parsers/variant_parser.ts +9 -0
  19. package/bin/nodeset_equivalence.js +750 -0
  20. package/bin/nodeset_tool_common.js +72 -0
  21. package/bin/opcua-nodeset-image.js +93 -103
  22. package/bin/opcua-nodeset-live.js +139 -0
  23. package/dist/api/helpers/ensure_secure_access.d.ts +20 -0
  24. package/dist/api/helpers/ensure_secure_access.js +39 -0
  25. package/dist/api/helpers/ensure_secure_access.js.map +1 -1
  26. package/dist/api/index.d.ts +7 -2
  27. package/dist/api/index.js +21 -1
  28. package/dist/api/index.js.map +1 -1
  29. package/dist/api/loader/generateAddressSpaceRaw.d.ts +1 -7
  30. package/dist/api/loader/generateAddressSpaceRaw.js +32 -125
  31. package/dist/api/loader/generateAddressSpaceRaw.js.map +1 -1
  32. package/dist/api/loader/load_nodeset2.js +4 -0
  33. package/dist/api/loader/load_nodeset2.js.map +1 -1
  34. package/dist/api/loader/narrow_instance_datatypes.d.ts +30 -0
  35. package/dist/api/loader/narrow_instance_datatypes.js +217 -0
  36. package/dist/api/loader/narrow_instance_datatypes.js.map +1 -0
  37. package/dist/api/loader/nodeset_builtin_formats.d.ts +27 -0
  38. package/dist/api/loader/nodeset_builtin_formats.js +133 -0
  39. package/dist/api/loader/nodeset_builtin_formats.js.map +1 -0
  40. package/dist/api/loader/nodeset_format.d.ts +123 -0
  41. package/dist/api/loader/nodeset_format.js +63 -0
  42. package/dist/api/loader/nodeset_format.js.map +1 -0
  43. package/dist/api/loader/nodeset_image.d.ts +17 -1
  44. package/dist/api/loader/nodeset_image.js +32 -4
  45. package/dist/api/loader/nodeset_image.js.map +1 -1
  46. package/dist/api/loader/nodeset_image_codec.d.ts +4 -0
  47. package/dist/api/loader/nodeset_image_codec.js +142 -53
  48. package/dist/api/loader/nodeset_image_codec.js.map +1 -1
  49. package/dist/api/loader/nodeset_record.d.ts +26 -2
  50. package/dist/api/loader/nodeset_record.js +11 -2
  51. package/dist/api/loader/nodeset_record.js.map +1 -1
  52. package/dist/api/loader/nodeset_record_applier.js +52 -3
  53. package/dist/api/loader/nodeset_record_applier.js.map +1 -1
  54. package/dist/api/loader/nodeset_records_to_xml.d.ts +16 -0
  55. package/dist/api/loader/nodeset_records_to_xml.js +536 -0
  56. package/dist/api/loader/nodeset_records_to_xml.js.map +1 -0
  57. package/dist/api/loader/nodeset_source.d.ts +68 -7
  58. package/dist/api/loader/nodeset_source.js +157 -20
  59. package/dist/api/loader/nodeset_source.js.map +1 -1
  60. package/dist/api/loader/nodeset_to_image.d.ts +4 -4
  61. package/dist/api/loader/nodeset_to_image.js +14 -4
  62. package/dist/api/loader/nodeset_to_image.js.map +1 -1
  63. package/dist/api/loader/nodeset_xml_header.d.ts +22 -0
  64. package/dist/api/loader/nodeset_xml_header.js +113 -0
  65. package/dist/api/loader/nodeset_xml_header.js.map +1 -0
  66. package/dist/api/loader/nodeset_xml_primitives.d.ts +37 -0
  67. package/dist/api/loader/nodeset_xml_primitives.js +196 -0
  68. package/dist/api/loader/nodeset_xml_primitives.js.map +1 -0
  69. package/dist/api/loader/nodeset_xml_producer.js +56 -1
  70. package/dist/api/loader/nodeset_xml_producer.js.map +1 -1
  71. package/dist/api/loader/parsers/variant_parser.js +7 -0
  72. package/dist/api/loader/parsers/variant_parser.js.map +1 -1
  73. package/dist/impl/_instantiate_helpers.js +1 -0
  74. package/dist/impl/_instantiate_helpers.js.map +1 -1
  75. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js +4 -0
  76. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
  77. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +14 -0
  78. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -1
  79. package/dist/impl/base_node_impl.d.ts +9 -0
  80. package/dist/impl/base_node_impl.js +11 -0
  81. package/dist/impl/base_node_impl.js.map +1 -1
  82. package/dist/impl/base_node_private.js +67 -97
  83. package/dist/impl/base_node_private.js.map +1 -1
  84. package/dist/impl/nodeset_tools/construct_namespace_dependency.js +5 -1
  85. package/dist/impl/nodeset_tools/construct_namespace_dependency.js.map +1 -1
  86. package/dist/impl/nodeset_tools/nodeset_to_records.js +61 -15
  87. package/dist/impl/nodeset_tools/nodeset_to_records.js.map +1 -1
  88. package/dist/impl/nodeset_tools/nodeset_to_xml.d.ts +1 -8
  89. package/dist/impl/nodeset_tools/nodeset_to_xml.js +174 -190
  90. package/dist/impl/nodeset_tools/nodeset_to_xml.js.map +1 -1
  91. package/dist/impl/ua_data_type_impl.d.ts +21 -0
  92. package/dist/impl/ua_data_type_impl.js +27 -2
  93. package/dist/impl/ua_data_type_impl.js.map +1 -1
  94. package/dist/impl/ua_object_type_impl.d.ts +9 -0
  95. package/dist/impl/ua_object_type_impl.js +12 -1
  96. package/dist/impl/ua_object_type_impl.js.map +1 -1
  97. package/dist/impl/ua_variable_impl.js +27 -10
  98. package/dist/impl/ua_variable_impl.js.map +1 -1
  99. package/dist/impl/ua_variable_impl_ext_obj.js +19 -2
  100. package/dist/impl/ua_variable_impl_ext_obj.js.map +1 -1
  101. package/dist/impl/ua_variable_type_impl.d.ts +8 -1
  102. package/dist/impl/ua_variable_type_impl.js +39 -2
  103. package/dist/impl/ua_variable_type_impl.js.map +1 -1
  104. package/dist/tsconfig_base.tsbuildinfo +1 -1
  105. package/distNodeJS/generate_address_space.js +4 -0
  106. package/distNodeJS/generate_address_space.js.map +1 -1
  107. package/impl/_instantiate_helpers.ts +3 -0
  108. package/impl/alarms_and_conditions/ua_alarm_condition_impl.ts +10 -0
  109. package/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +17 -0
  110. package/impl/base_node_impl.ts +15 -0
  111. package/impl/base_node_private.ts +97 -146
  112. package/impl/nodeset_tools/construct_namespace_dependency.ts +5 -1
  113. package/impl/nodeset_tools/nodeset_to_records.ts +66 -16
  114. package/impl/nodeset_tools/nodeset_to_xml.ts +127 -160
  115. package/impl/ua_data_type_impl.ts +40 -2
  116. package/impl/ua_object_type_impl.ts +16 -3
  117. package/impl/ua_variable_impl.ts +27 -10
  118. package/impl/ua_variable_impl_ext_obj.ts +20 -2
  119. package/impl/ua_variable_type_impl.ts +48 -2
  120. package/package.json +29 -27
  121. package/source_nodejs/generate_address_space.ts +7 -1
@@ -9,7 +9,9 @@
9
9
  */
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
11
  exports.NodesetImageWriter = exports.NodesetImageError = void 0;
12
+ exports.isGzip = isGzip;
12
13
  exports.isNodesetImage = isNodesetImage;
14
+ exports.setImageDeflater = setImageDeflater;
13
15
  exports.releaseInflatedImageLines = releaseInflatedImageLines;
14
16
  exports.hasInflatedImageLines = hasInflatedImageLines;
15
17
  exports.setImageInflater = setImageInflater;
@@ -22,9 +24,22 @@ const nodeset_image_codec_js_1 = require("./nodeset_image_codec.js");
22
24
  const nodeset_record_js_1 = require("./nodeset_record.js");
23
25
  var nodeset_image_codec_js_2 = require("./nodeset_image_codec.js");
24
26
  Object.defineProperty(exports, "NodesetImageError", { enumerable: true, get: function () { return nodeset_image_codec_js_2.NodesetImageError; } });
25
- /** the two bytes every gzip stream starts with: how an image is told from XML */
27
+ const GZIP_MAGIC_0 = 0x1f;
28
+ const GZIP_MAGIC_1 = 0x8b;
29
+ /** `{`: the first byte of a document whose header record was not compressed */
30
+ const OPEN_BRACE = 0x7b;
31
+ /** whether these bytes are gzip, and so need inflating before they are text */
32
+ function isGzip(firstBytes) {
33
+ return firstBytes.length >= 2 && firstBytes[0] === GZIP_MAGIC_0 && firstBytes[1] === GZIP_MAGIC_1;
34
+ }
35
+ /**
36
+ * a NodeSet-NDJSON document, compressed or not, told from NodeSet2 XML by its first byte: a gzip
37
+ * stream starts `1f 8b`, an XML document `<`, and an uncompressed document `{`. Compression is a
38
+ * property of how a document was stored, never of what it says, so a reader that took only the
39
+ * compressed form would be refusing the same document written plainly.
40
+ */
26
41
  function isNodesetImage(firstBytes) {
27
- return firstBytes.length >= 2 && firstBytes[0] === 0x1f && firstBytes[1] === 0x8b;
42
+ return isGzip(firstBytes) || (firstBytes.length >= 1 && firstBytes[0] === OPEN_BRACE);
28
43
  }
29
44
  async function toReadableStream(source) {
30
45
  if (source instanceof Uint8Array) {
@@ -48,11 +63,23 @@ async function toReadableStream(source) {
48
63
  }
49
64
  });
50
65
  }
51
- async function gzip(text) {
66
+ const deflateWithCompressionStream = async (text) => {
52
67
  const compressed = new Blob([text])
53
68
  .stream()
54
69
  .pipeThrough(new CompressionStream("gzip"));
55
70
  return new Uint8Array(await new Response(compressed).arrayBuffer());
71
+ };
72
+ let gzip = deflateWithCompressionStream;
73
+ /**
74
+ * how an image is compressed: CompressionStream everywhere by default, which offers no way to ask
75
+ * for a compression level and so writes at the default one; the Node.js entry point installs zlib
76
+ * at level 9, four percent smaller on the published nodesets for no change to the reader -- every
77
+ * gzip stream inflates the same whatever level wrote it. Returns the deflater installed before.
78
+ */
79
+ function setImageDeflater(deflater) {
80
+ const previous = gzip;
81
+ gzip = deflater;
82
+ return previous;
56
83
  }
57
84
  /**
58
85
  * the lines of an image given whole, inflated once and kept for the load: the sibling check, the
@@ -94,7 +121,8 @@ function inflatedImageLines(image) {
94
121
  lines = (async () => {
95
122
  let text;
96
123
  try {
97
- text = await inflateImage(image);
124
+ // an uncompressed document is already its own text; only gzip needs inflating
125
+ text = isGzip(image) ? await inflateImage(image) : new TextDecoder("utf-8").decode(image);
98
126
  }
99
127
  catch (err) {
100
128
  throw new nodeset_image_codec_js_1.NodesetImageError(`the image cannot be inflated: ${err.message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"nodeset_image.js","sourceRoot":"","sources":["../../../api/loader/nodeset_image.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodeset_image.js","sourceRoot":"","sources":["../../../api/loader/nodeset_image.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ export interface NodesetImageHeader {
47
47
  accessRestrictions?: string;
48
48
  }>;
49
49
  aliases: Record<string, JsonNodeId>;
50
+ extensions?: string[];
50
51
  }
51
52
  export interface NodesetImageTrailer {
52
53
  kind: "trailer";
@@ -69,6 +70,8 @@ export interface NodesetImageNode {
69
70
  browseName: JsonQualifiedName;
70
71
  displayName?: string;
71
72
  description?: string;
73
+ category?: string[];
74
+ documentation?: string;
72
75
  references: JsonReference[];
73
76
  releaseStatus?: "Draft" | "Deprecated";
74
77
  symbolicName?: string;
@@ -96,6 +99,7 @@ export interface NodesetImageNode {
96
99
  definition?: {
97
100
  name?: string;
98
101
  isUnion?: boolean;
102
+ isOptionSet?: boolean;
99
103
  fields: JsonField[];
100
104
  };
101
105
  }
@@ -11,30 +11,6 @@ exports.encodeHeader = encodeHeader;
11
11
  exports.decodeHeader = decodeHeader;
12
12
  exports.encodeNode = encodeNode;
13
13
  exports.decodeNode = decodeNode;
14
- /**
15
- * @module node-opcua-address-space
16
- *
17
- * The JSON form of a {@link NodesetRecord}: one object per line of a precompiled image. JSON has
18
- * no Date, Buffer, 64-bit integer or NodeId, so every value type has one written rule here,
19
- * versioned by {@link NODESET_RECORD_SCHEMA}:
20
- *
21
- * - NodeId: the number alone when numeric in namespace 0, `[namespaceIndex, value]` when numeric
22
- * elsewhere, `[namespaceIndex, "i" | "s" | "g" | "b", value]` otherwise, the index being the
23
- * file's own table; an ExpandedNodeId adds `namespaceUri` and `serverIndex` around it
24
- * - a reference: `[isForward ? 1 : 0, referenceType, target]`, with a fourth element `0` when the
25
- * target's record does not declare the inverse (the loader adds a back reference for those)
26
- * - QualifiedName: `[namespaceIndex, name]`; LocalizedText: `{ locale, text }`
27
- * - DateTime: ISO-8601 string, or `{ iso, picoseconds }` when sub-millisecond precision is carried
28
- * - ByteString: base64; Guid, String, XmlElement: the string
29
- * - Int64 and UInt64: `[high, low]`; Float and Double: JSON numbers, `NaN`, `Infinity` and
30
- * `-Infinity` as strings; StatusCode: the numeric code
31
- * - the extension objects the XML reader decodes itself (Argument, EUInformation, Range,
32
- * EnumValueType): `{ "$class": name, ...fields }` with the rules above; every other extension
33
- * object is the XML fragment the reader captured: `{ "$xml": [typeId, body] }`
34
- *
35
- * A value is `{ dataType, arrayType?, dimensions?, value }`; `arrayType` is omitted for a scalar.
36
- */
37
- const node_opcua_basic_types_1 = require("node-opcua-basic-types");
38
14
  const node_opcua_data_access_1 = require("node-opcua-data-access");
39
15
  const node_opcua_data_model_1 = require("node-opcua-data-model");
40
16
  const node_opcua_nodeid_1 = require("node-opcua-nodeid");
@@ -42,6 +18,7 @@ const node_opcua_status_code_1 = require("node-opcua-status-code");
42
18
  const node_opcua_types_1 = require("node-opcua-types");
43
19
  const node_opcua_variant_1 = require("node-opcua-variant");
44
20
  const nodeset_record_js_1 = require("./nodeset_record.js");
21
+ const nodeset_xml_primitives_js_1 = require("./nodeset_xml_primitives.js");
45
22
  /** what a corrupt or foreign image raises; the loader discards such an image and rebuilds it */
46
23
  class NodesetImageError extends Error {
47
24
  }
@@ -128,39 +105,109 @@ function decodeFloat(json) {
128
105
  return Number(json);
129
106
  return json;
130
107
  }
108
+ // #region defaults
109
+ /**
110
+ * what a key of a node record means when the image leaves it out: the value the reader would have
111
+ * produced anyway. A writer omits a key whose encoded value is its default here; a reader that
112
+ * does not find a key applies the default. The XML reader synthesizes every one of these from an
113
+ * absent attribute (see `nodeset_xml_producer`) and the address space export already omitted most
114
+ * of them, so this table is also what makes the two record producers agree.
115
+ *
116
+ * `displayName` is not in the table: its default is the node's own browse name rather than a
117
+ * constant, and it is the only key a reader must put back rather than infer, since a consumer
118
+ * reads it directly. It is also the only omission worth much once gzipped -- a constant repeated
119
+ * verbatim on every line costs a couple of bits, a browse name repeated does not.
120
+ */
121
+ const NODE_DEFAULTS = {
122
+ valueRank: -1,
123
+ arrayDimensions: null,
124
+ minimumSamplingInterval: 0,
125
+ historizing: false,
126
+ isAbstract: false,
127
+ symmetric: false,
128
+ containsNoLoops: false,
129
+ hasNoPermissions: false,
130
+ eventNotifier: 0,
131
+ parentNodeId: null,
132
+ dataType: null,
133
+ methodDeclarationId: null
134
+ };
135
+ /** the same, for one field of a DataType definition; an absent DataType attribute is BaseDataType */
136
+ const FIELD_DEFAULT_VALUE_RANK = -1;
137
+ const FIELD_DEFAULT_ALLOW_SUBTYPES = false;
138
+ const FIELD_DEFAULT_DATA_TYPE = 24; // i=24, BaseDataType
139
+ /** an absent ValueRank on an Argument, as on any other node */
140
+ const ARGUMENT_DEFAULT_VALUE_RANK = -1;
141
+ /** drop from `out` every key whose value is the one a reader would assume anyway */
142
+ function omitDefaults(out) {
143
+ for (const [key, fallback] of Object.entries(NODE_DEFAULTS)) {
144
+ if (key in out && out[key] === fallback) {
145
+ delete out[key];
146
+ }
147
+ }
148
+ }
149
+ /** whether a localized text carries nothing: the reader's `{}` for an absent Description */
150
+ const isEmptyText = (text) => text === null || text === undefined || (text.locale === undefined && text.text === undefined);
151
+ // #endregion
152
+ // #region 64-bit integers
153
+ //
154
+ // on the wire a 64-bit integer is a decimal string, the spelling Part 6 uses and the only one that
155
+ // says what it means. In memory it stays node-opcua's `[high, low]` pair, whose halves are
156
+ // unsigned: Int64 -1 and UInt64 18446744073709551615 are the *same* pair, so the pair cannot be
157
+ // read without knowing the signedness from somewhere else, and Int64 min has two equally defensible
158
+ // spellings ([2147483648,0] and [-2147483648,0]) which would give one value two documents.
159
+ const TWO_64 = 1n << 64n;
160
+ const encodeInt64 = nodeset_xml_primitives_js_1.int64ToDecimalString;
161
+ function decodeInt64(json) {
162
+ let unsigned = BigInt(json);
163
+ if (unsigned < 0n)
164
+ unsigned += TWO_64;
165
+ return [Number(unsigned >> 32n), Number(unsigned & 0xffffffffn)];
166
+ }
167
+ // #endregion
131
168
  function encodeExtensionObject(value) {
132
169
  if (value instanceof nodeset_record_js_1.XmlExtensionObjectFragment) {
133
170
  return { $xml: [encodeNodeId(value.typeId), value.bodyXML] };
134
171
  }
135
172
  if (value instanceof node_opcua_types_1.Argument) {
136
- return {
137
- $class: "Argument",
138
- name: value.name,
139
- dataType: encodeNodeId(value.dataType),
140
- valueRank: value.valueRank,
141
- arrayDimensions: value.arrayDimensions,
142
- description: encodeLocalizedText(value.description)
143
- };
173
+ const out = { $class: "Argument", name: value.name, dataType: encodeNodeId(value.dataType) };
174
+ if (value.valueRank !== ARGUMENT_DEFAULT_VALUE_RANK)
175
+ out.valueRank = value.valueRank;
176
+ // an empty arrayDimensions is what a scalar argument carries and is left out; a `null` one
177
+ // is not the same thing to the reader that put it there, and is written
178
+ if (value.arrayDimensions === null || value.arrayDimensions.length > 0)
179
+ out.arrayDimensions = value.arrayDimensions;
180
+ const description = encodeLocalizedText(value.description);
181
+ if (!isEmptyText(description))
182
+ out.description = description;
183
+ return out;
144
184
  }
145
185
  if (value instanceof node_opcua_types_1.EUInformation) {
146
- return {
186
+ const out = {
147
187
  $class: "EUInformation",
148
188
  namespaceUri: value.namespaceUri,
149
- unitId: value.unitId,
150
- displayName: encodeLocalizedText(value.displayName),
151
- description: encodeLocalizedText(value.description)
189
+ unitId: value.unitId
152
190
  };
191
+ const displayName = encodeLocalizedText(value.displayName);
192
+ const description = encodeLocalizedText(value.description);
193
+ if (!isEmptyText(displayName))
194
+ out.displayName = displayName;
195
+ if (!isEmptyText(description))
196
+ out.description = description;
197
+ return out;
153
198
  }
154
199
  if (value instanceof node_opcua_data_access_1.Range) {
155
200
  return { $class: "Range", low: encodeFloat(value.low), high: encodeFloat(value.high) };
156
201
  }
157
202
  if (value instanceof node_opcua_types_1.EnumValueType) {
158
- return {
159
- $class: "EnumValueType",
160
- value: value.value,
161
- displayName: encodeLocalizedText(value.displayName),
162
- description: encodeLocalizedText(value.description)
163
- };
203
+ const out = { $class: "EnumValueType", value: encodeInt64(value.value, true) };
204
+ const displayName = encodeLocalizedText(value.displayName);
205
+ const description = encodeLocalizedText(value.description);
206
+ if (!isEmptyText(displayName))
207
+ out.displayName = displayName;
208
+ if (!isEmptyText(description))
209
+ out.description = description;
210
+ return out;
164
211
  }
165
212
  const name = value.constructor?.name ?? typeof value;
166
213
  throw new NodesetImageError(`an image cannot carry a decoded ${name}: only the XML reader's fragments and its four decoded types`);
@@ -177,8 +224,10 @@ function decodeExtensionObject(json) {
177
224
  const argument = new node_opcua_types_1.Argument({});
178
225
  argument.name = j.name;
179
226
  argument.dataType = decodeNodeId(j.dataType);
180
- argument.valueRank = j.valueRank;
181
- argument.arrayDimensions = j.arrayDimensions ?? null;
227
+ argument.valueRank = j.valueRank ?? ARGUMENT_DEFAULT_VALUE_RANK;
228
+ // an absent arrayDimensions is the empty one the reader leaves on a scalar argument;
229
+ // an explicit `null` is the one the address space export writes, and is kept apart
230
+ argument.arrayDimensions = j.arrayDimensions === undefined ? [] : j.arrayDimensions;
182
231
  argument.description = decodeLocalizedText(j.description);
183
232
  return argument;
184
233
  }
@@ -197,7 +246,7 @@ function decodeExtensionObject(json) {
197
246
  }
198
247
  case "EnumValueType":
199
248
  return new node_opcua_types_1.EnumValueType({
200
- value: (0, node_opcua_basic_types_1.coerceInt64)(j.value),
249
+ value: decodeInt64(j.value),
201
250
  displayName: decodeLocalizedText(j.displayName),
202
251
  description: decodeLocalizedText(j.description)
203
252
  });
@@ -239,8 +288,12 @@ function encodeElement(dataType, value) {
239
288
  case node_opcua_variant_1.DataType.DataValue:
240
289
  case node_opcua_variant_1.DataType.DiagnosticInfo:
241
290
  throw new NodesetImageError(`an image cannot carry a ${node_opcua_variant_1.DataType[dataType]} value`);
291
+ case node_opcua_variant_1.DataType.Int64:
292
+ return encodeInt64(value, true);
293
+ case node_opcua_variant_1.DataType.UInt64:
294
+ return encodeInt64(value, false);
242
295
  default:
243
- // Boolean, the integer families (Int64 and UInt64 are already [high, low]), String, Guid, XmlElement
296
+ // Boolean, the 32-bit-and-under integer families, String, Guid, XmlElement
244
297
  return value;
245
298
  }
246
299
  }
@@ -275,9 +328,8 @@ function decodeElement(dataType, json) {
275
328
  case node_opcua_variant_1.DataType.Variant:
276
329
  return new node_opcua_variant_1.Variant(decodeValue(json));
277
330
  case node_opcua_variant_1.DataType.Int64:
278
- return (0, node_opcua_basic_types_1.coerceInt64)(json);
279
331
  case node_opcua_variant_1.DataType.UInt64:
280
- return (0, node_opcua_basic_types_1.coerceUInt64)(json);
332
+ return decodeInt64(json);
281
333
  default:
282
334
  return json;
283
335
  }
@@ -350,6 +402,8 @@ function encodeHeader(record, options = {}) {
350
402
  }),
351
403
  aliases
352
404
  };
405
+ if (record.extensions?.length)
406
+ header.extensions = record.extensions;
353
407
  if (options.sourceLength !== undefined)
354
408
  header.sourceLength = options.sourceLength;
355
409
  return header;
@@ -382,11 +436,16 @@ function decodeHeader(json) {
382
436
  model.accessRestrictions = m.accessRestrictions;
383
437
  return model;
384
438
  });
385
- return { kind: "header", namespaceUris: json.namespaceUris || [], models, aliases };
439
+ const header = { kind: "header", namespaceUris: json.namespaceUris || [], models, aliases };
440
+ if (json.extensions?.length)
441
+ header.extensions = json.extensions;
442
+ return header;
386
443
  }
387
444
  const OPTIONAL_PLAIN = [
388
445
  "displayName",
389
446
  "description",
447
+ "category",
448
+ "documentation",
390
449
  "releaseStatus",
391
450
  "symbolicName",
392
451
  "accessRestrictions",
@@ -430,16 +489,40 @@ function encodeNode(record) {
430
489
  if (record.value !== undefined)
431
490
  out.value = encodeValue(record.value);
432
491
  if (record.definition) {
433
- out.definition = {
434
- fields: record.definition.fields.map((f) => ({ ...f, dataType: encodeNodeIdOrNull(f.dataType) }))
435
- };
492
+ out.definition = { fields: record.definition.fields.map(encodeDefinitionField) };
436
493
  if (record.definition.name !== undefined)
437
494
  out.definition.name = record.definition.name;
438
495
  if (record.definition.isUnion !== undefined)
439
496
  out.definition.isUnion = record.definition.isUnion;
497
+ if (record.definition.isOptionSet !== undefined)
498
+ out.definition.isOptionSet = record.definition.isOptionSet;
440
499
  }
500
+ if (out.displayName !== undefined && out.displayName === out.browseName[1]) {
501
+ // the browse name over again on nearly every node of a published nodeset; a reader puts it back
502
+ delete out.displayName;
503
+ }
504
+ omitDefaults(out);
505
+ return out;
506
+ }
507
+ function encodeDefinitionField(field) {
508
+ const out = { ...field, dataType: encodeNodeIdOrNull(field.dataType) };
509
+ if (out.valueRank === FIELD_DEFAULT_VALUE_RANK)
510
+ delete out.valueRank;
511
+ if (out.allowSubTypes === FIELD_DEFAULT_ALLOW_SUBTYPES)
512
+ delete out.allowSubTypes;
513
+ if (out.dataType === FIELD_DEFAULT_DATA_TYPE)
514
+ delete out.dataType;
441
515
  return out;
442
516
  }
517
+ function decodeDefinitionField(json) {
518
+ const field = {
519
+ ...json,
520
+ valueRank: json.valueRank ?? FIELD_DEFAULT_VALUE_RANK,
521
+ allowSubTypes: json.allowSubTypes ?? FIELD_DEFAULT_ALLOW_SUBTYPES,
522
+ dataType: decodeNodeIdOrNull(json.dataType ?? FIELD_DEFAULT_DATA_TYPE)
523
+ };
524
+ return field;
525
+ }
443
526
  function decodeNode(json) {
444
527
  if (typeof json.nodeClass !== "number" || !(json.nodeClass in node_opcua_data_model_1.NodeClass)) {
445
528
  throw new NodesetImageError(`not a node record: ${JSON.stringify(json).slice(0, 80)}`);
@@ -462,6 +545,10 @@ function decodeNode(json) {
462
545
  record[key] = v;
463
546
  }
464
547
  }
548
+ // an absent displayName is the browse name: what the writer left out because it was the same
549
+ if (record.displayName === undefined) {
550
+ record.displayName = record.browseName.name ?? "";
551
+ }
465
552
  if (json.rolePermissions) {
466
553
  record.rolePermissions = json.rolePermissions.map((p) => ({ roleId: decodeNodeId(p.roleId), permissions: p.permissions }));
467
554
  }
@@ -475,12 +562,14 @@ function decodeNode(json) {
475
562
  record.value = decodeValue(json.value);
476
563
  if (json.definition) {
477
564
  const definition = {
478
- fields: json.definition.fields.map((f) => ({ ...f, dataType: decodeNodeIdOrNull(f.dataType) }))
565
+ fields: json.definition.fields.map(decodeDefinitionField)
479
566
  };
480
567
  if (json.definition.name !== undefined)
481
568
  definition.name = json.definition.name;
482
569
  if (json.definition.isUnion !== undefined)
483
570
  definition.isUnion = json.definition.isUnion;
571
+ if (json.definition.isOptionSet !== undefined)
572
+ definition.isOptionSet = json.definition.isOptionSet;
484
573
  record.definition = definition;
485
574
  }
486
575
  return record;
@@ -1 +1 @@
1
- {"version":3,"file":"nodeset_image_codec.js","sourceRoot":"","sources":["../../../api/loader/nodeset_image_codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodeset_image_codec.js","sourceRoot":"","sources":["../../../api/loader/nodeset_image_codec.ts"],"names":[],"mappings":"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"}
@@ -18,8 +18,17 @@ import type { NodeClass, QualifiedName } from "node-opcua-data-model";
18
18
  import type { NodeId } from "node-opcua-nodeid";
19
19
  import type { VariantOptions } from "node-opcua-variant";
20
20
  import type { EnumFieldOptions, StructureFieldOptions } from "node-opcua-xml2json";
21
- /** bumped whenever the record shape changes; the precompiled image carries it */
22
- export declare const NODESET_RECORD_SCHEMA = 2;
21
+ /**
22
+ * bumped whenever the record shape changes; the precompiled image carries it, and it is part of
23
+ * the key an image is cached under, so a bump invalidates every stored image.
24
+ *
25
+ * It is bumped for a change in what the records *contain* as well as for a change in their shape:
26
+ * when the reader learns to read something it used to drop -- a DateTime value, say -- every image
27
+ * built before is still valid schema-N and still parses, but it is less faithful than the file it
28
+ * was built from, and nothing else would ever invalidate it. The source digest cannot: the source
29
+ * did not change. This number is the only lever.
30
+ */
31
+ export declare const NODESET_RECORD_SCHEMA = 3;
23
32
  export interface NodesetModelRecord {
24
33
  modelUri: string;
25
34
  version: string;
@@ -35,6 +44,12 @@ export interface NodesetHeaderRecord {
35
44
  models: NodesetModelRecord[];
36
45
  /** alias name to the id it stands for, file-local; no record refers to an alias by name */
37
46
  aliases: Record<string, NodeId>;
47
+ /**
48
+ * the `<Extension>` elements of the document's own `<Extensions>`, each as the XML it is.
49
+ * Their content is foreign to this schema by design -- a tool stamps whatever it likes there,
50
+ * such as UaModeler's `ModelInfo` -- so there is nothing to model and only the bytes to keep.
51
+ */
52
+ extensions?: string[];
38
53
  }
39
54
  export interface NodesetReferenceRecord {
40
55
  isForward: boolean;
@@ -59,6 +74,11 @@ export type NodesetDefinitionField = Omit<StructureFieldOptions, "dataType"> & E
59
74
  export interface NodesetDataTypeDefinitionRecord {
60
75
  name?: string;
61
76
  isUnion?: boolean;
77
+ /**
78
+ * the DataType is a bit mask: its fields are bit positions, not enumeration values. An
79
+ * OptionSet whose flag is lost is indistinguishable from an ordinary enumeration.
80
+ */
81
+ isOptionSet?: boolean;
62
82
  fields: NodesetDefinitionField[];
63
83
  }
64
84
  /**
@@ -81,6 +101,10 @@ export interface NodesetNodeRecord {
81
101
  browseName: QualifiedName;
82
102
  displayName?: string;
83
103
  description?: string;
104
+ /** the `<Category>` elements, in order; a node may declare several */
105
+ category?: string[];
106
+ /** the `<Documentation>` element: a URL into the specification text, at most one */
107
+ documentation?: string;
84
108
  references: NodesetReferenceRecord[];
85
109
  releaseStatus?: "Draft" | "Deprecated";
86
110
  symbolicName?: string;
@@ -1,8 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.recordBytes = exports.XmlExtensionObjectFragment = exports.NODESET_RECORD_SCHEMA = void 0;
4
- /** bumped whenever the record shape changes; the precompiled image carries it */
5
- exports.NODESET_RECORD_SCHEMA = 2;
4
+ /**
5
+ * bumped whenever the record shape changes; the precompiled image carries it, and it is part of
6
+ * the key an image is cached under, so a bump invalidates every stored image.
7
+ *
8
+ * It is bumped for a change in what the records *contain* as well as for a change in their shape:
9
+ * when the reader learns to read something it used to drop -- a DateTime value, say -- every image
10
+ * built before is still valid schema-N and still parses, but it is less faithful than the file it
11
+ * was built from, and nothing else would ever invalidate it. The source digest cannot: the source
12
+ * did not change. This number is the only lever.
13
+ */
14
+ exports.NODESET_RECORD_SCHEMA = 3;
6
15
  /**
7
16
  * an extension object the reader could not decode on the spot: its XML body waits in the value
8
17
  * until the data types are known, then a consumer decodes it
@@ -1 +1 @@
1
- {"version":3,"file":"nodeset_record.js","sourceRoot":"","sources":["../../../api/loader/nodeset_record.ts"],"names":[],"mappings":";;;AAqBA,iFAAiF;AACpE,QAAA,qBAAqB,GAAG,CAAC,CAAC;AA+CvC;;;GAGG;AACH,MAAa,0BAA0B;IAGf;IACA;IAHpB;IACI,4DAA4D;IAC5C,MAAc,EACd,OAAe;QADf,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAQ;IAChC,CAAC;CACP;AAND,gEAMC;AAiDD;;;GAGG;AACU,QAAA,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"nodeset_record.js","sourceRoot":"","sources":["../../../api/loader/nodeset_record.ts"],"names":[],"mappings":";;;AAqBA;;;;;;;;;GASG;AACU,QAAA,qBAAqB,GAAG,CAAC,CAAC;AA0DvC;;;GAGG;AACH,MAAa,0BAA0B;IAGf;IACA;IAHpB;IACI,4DAA4D;IAC5C,MAAc,EACd,OAAe;QADf,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAQ;IAChC,CAAC;CACP;AAND,gEAMC;AAqDD;;;GAGG;AACU,QAAA,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC"}