node-opcua-address-space 2.181.0 → 2.182.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.
Files changed (136) 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_acknowledgeable_condition_impl.ts +4 -4
  109. package/impl/alarms_and_conditions/ua_alarm_condition_impl.ts +19 -9
  110. package/impl/alarms_and_conditions/ua_base_event_impl.ts +9 -9
  111. package/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +17 -0
  112. package/impl/alarms_and_conditions/ua_condition_impl.ts +18 -18
  113. package/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +2 -2
  114. package/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +1 -1
  115. package/impl/alarms_and_conditions/ua_limit_alarm_impl.ts +16 -16
  116. package/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +2 -2
  117. package/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +4 -4
  118. package/impl/alarms_and_conditions/ua_off_normal_alarm_impl.ts +1 -1
  119. package/impl/base_node_impl.ts +15 -0
  120. package/impl/base_node_private.ts +97 -146
  121. package/impl/data_access/ua_multistate_discrete_impl.ts +1 -1
  122. package/impl/data_access/ua_multistate_value_discrete_impl.ts +2 -2
  123. package/impl/data_access/ua_two_state_discrete_impl.ts +2 -2
  124. package/impl/nodeset_tools/construct_namespace_dependency.ts +5 -1
  125. package/impl/nodeset_tools/nodeset_to_records.ts +66 -16
  126. package/impl/nodeset_tools/nodeset_to_xml.ts +127 -160
  127. package/impl/state_machine/finite_state_machine.ts +3 -3
  128. package/impl/state_machine/ua_shelving_state_machine_ex.ts +20 -20
  129. package/impl/ua_data_type_impl.ts +42 -4
  130. package/impl/ua_method_impl.ts +1 -1
  131. package/impl/ua_object_type_impl.ts +16 -3
  132. package/impl/ua_variable_impl.ts +27 -10
  133. package/impl/ua_variable_impl_ext_obj.ts +20 -2
  134. package/impl/ua_variable_type_impl.ts +49 -3
  135. package/package.json +29 -27
  136. package/source_nodejs/generate_address_space.ts +7 -1
@@ -55,6 +55,10 @@ const nodeset_image_file_store_js_1 = require("./nodeset_image_file_store.js");
55
55
  // a 200 KB image, and in the thread pool, so that the XML hash runs alongside
56
56
  const gunzipAsync = (0, node_util_1.promisify)(node_zlib_1.gunzip);
57
57
  (0, index_js_1.setImageInflater)(async (image) => (await gunzipAsync(image)).toString("utf8"));
58
+ // and out through zlib at level 9: CompressionStream has no level to ask for, and an image is
59
+ // written once and read many times, so the extra work at build time is free at load time
60
+ const gzipAsync = (0, node_util_1.promisify)(node_zlib_1.gzip);
61
+ (0, index_js_1.setImageDeflater)(async (text) => new Uint8Array(await gzipAsync(Buffer.from(text, "utf8"), { level: 9 })));
58
62
  const _doDebug = (0, node_opcua_debug_1.checkDebugFlag)("generate_address_space");
59
63
  const debugLog = (0, node_opcua_debug_1.make_debugLog)("generate_address_space");
60
64
  const errorLog = (0, node_opcua_debug_1.make_errorLog)("generate_address_space");
@@ -1 +1 @@
1
- {"version":3,"file":"generate_address_space.js","sourceRoot":"","sources":["../source_nodejs/generate_address_space.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate_address_space.js","sourceRoot":"","sources":["../source_nodejs/generate_address_space.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import {
6
6
  CloneHelper,
7
7
  reconstructFunctionalGroupType,
8
8
  reconstructNonHierarchicalReferences,
9
+ reconstructSharedHierarchicalReferences,
9
10
  type UAMethod,
10
11
  type UAObject,
11
12
  type UAObjectType,
@@ -153,6 +154,8 @@ export function initialize_properties_and_components<
153
154
  reconstructFunctionalGroupType(extraInfo);
154
155
 
155
156
  reconstructNonHierarchicalReferences(extraInfo);
157
+
158
+ reconstructSharedHierarchicalReferences(extraInfo);
156
159
  }
157
160
 
158
161
  function instantiate_interface_children<B extends UAObject | UAVariable | UAMethod>(
@@ -46,10 +46,10 @@ export class UAAcknowledgeableConditionImplBase<
46
46
  * Installed as child nodes by the address space, not assigned here - hence `declare`.
47
47
  * The event and condition properties come from the base classes.
48
48
  */
49
- public declare readonly ackedState: UATwoStateVariableEx;
50
- public declare readonly confirmedState?: UATwoStateVariableEx;
51
- public declare readonly acknowledge: UAMethod;
52
- public declare readonly confirm?: UAMethod;
49
+ declare public readonly ackedState: UATwoStateVariableEx;
50
+ declare public readonly confirmedState?: UATwoStateVariableEx;
51
+ declare public readonly acknowledge: UAMethod;
52
+ declare public readonly confirm?: UAMethod;
53
53
 
54
54
  /**
55
55
  */
@@ -41,15 +41,15 @@ export class UAAlarmConditionImplBase extends UAAcknowledgeableConditionImplBase
41
41
  * Installed as child nodes by the address space, not assigned here - hence `declare`.
42
42
  * enabledState, ackedState and confirmedState come from the base classes.
43
43
  */
44
- public declare readonly activeState: UATwoStateVariableEx;
45
- public declare readonly inputNode: UAProperty<NodeId, DataType.NodeId>;
46
- public declare readonly suppressedOrShelved: UAProperty<boolean, DataType.Boolean>;
47
- public declare readonly suppressedState?: UATwoStateVariableEx;
48
- public declare readonly outOfServiceState?: UATwoStateVariableEx;
49
- public declare readonly shelvingState?: UAShelvedStateMachineEx;
50
- public declare readonly silenceState?: UATwoStateVariableEx;
51
- public declare readonly latchedState?: UATwoStateVariableEx;
52
- public declare readonly maxTimeShelved?: UAProperty<number, DataType.Double>;
44
+ declare public readonly activeState: UATwoStateVariableEx;
45
+ declare public readonly inputNode: UAProperty<NodeId, DataType.NodeId>;
46
+ declare public readonly suppressedOrShelved: UAProperty<boolean, DataType.Boolean>;
47
+ declare public readonly suppressedState?: UATwoStateVariableEx;
48
+ declare public readonly outOfServiceState?: UATwoStateVariableEx;
49
+ declare public readonly shelvingState?: UAShelvedStateMachineEx;
50
+ declare public readonly silenceState?: UATwoStateVariableEx;
51
+ declare public readonly latchedState?: UATwoStateVariableEx;
52
+ declare public readonly maxTimeShelved?: UAProperty<number, DataType.Double>;
53
53
 
54
54
  public static MaxDuration = 2 ** 31;
55
55
 
@@ -76,6 +76,16 @@ export class UAAlarmConditionImplBase extends UAAcknowledgeableConditionImplBase
76
76
  }
77
77
 
78
78
  options.optionals = options.optionals || [];
79
+ // ActiveState is a TwoStateVariable whose texts and transition times an alarm client
80
+ // expects, as UAConditionImpl requests them for EnabledState. A subtype that re-declares
81
+ // ActiveState with only Id (ExclusiveLimitAlarmType does) would otherwise get only Id.
82
+ options.optionals.push(
83
+ "ActiveState.TrueState",
84
+ "ActiveState.FalseState",
85
+ "ActiveState.TransitionTime",
86
+ "ActiveState.EffectiveTransitionTime",
87
+ "ActiveState.EffectiveDisplayName"
88
+ );
79
89
  if (Object.hasOwn(options, "maxTimeShelved")) {
80
90
  options.optionals.push("MaxTimeShelved");
81
91
  assert(Number.isFinite(options.maxTimeShelved));
@@ -24,15 +24,15 @@ export class UABaseEventImplBase<T extends UABaseEventEvents & ListenerSignature
24
24
  * assigned by this constructor - hence `declare`, which emits nothing. Subclasses inherit
25
25
  * these, so the condition and alarm implementations get them too.
26
26
  */
27
- public declare readonly eventId: UAProperty<Buffer, DataType.ByteString>;
28
- public declare readonly eventType: UAProperty<NodeId, DataType.NodeId>;
29
- public declare readonly sourceNode: UAProperty<NodeId, DataType.NodeId>;
30
- public declare readonly sourceName: UAProperty<UAString, DataType.String>;
31
- public declare readonly time: UAProperty<Date, DataType.DateTime>;
32
- public declare readonly receiveTime: UAProperty<Date, DataType.DateTime>;
33
- public declare readonly localTime?: UAProperty<DTTimeZone, DataType.ExtensionObject>;
34
- public declare readonly message: UAProperty<LocalizedText, DataType.LocalizedText>;
35
- public declare readonly severity: UAProperty<UInt16, DataType.UInt16>;
27
+ declare public readonly eventId: UAProperty<Buffer, DataType.ByteString>;
28
+ declare public readonly eventType: UAProperty<NodeId, DataType.NodeId>;
29
+ declare public readonly sourceNode: UAProperty<NodeId, DataType.NodeId>;
30
+ declare public readonly sourceName: UAProperty<UAString, DataType.String>;
31
+ declare public readonly time: UAProperty<Date, DataType.DateTime>;
32
+ declare public readonly receiveTime: UAProperty<Date, DataType.DateTime>;
33
+ declare public readonly localTime?: UAProperty<DTTimeZone, DataType.ExtensionObject>;
34
+ declare public readonly message: UAProperty<LocalizedText, DataType.LocalizedText>;
35
+ declare public readonly severity: UAProperty<UInt16, DataType.UInt16>;
36
36
 
37
37
  /**
38
38
  */
@@ -72,6 +72,23 @@ class UACertificateExpirationAlarmImplBase extends UASystemOffNormalAlarmImpl im
72
72
  }
73
73
 
74
74
  public updateAlarmState2(isActive: boolean, severity: number, message: string) {
75
+ // A Condition reports its state *changes* (Part 9 5.5.2). This alarm is re-evaluated on
76
+ // timers - its own every half hour, push certificate management every minute - and a
77
+ // re-evaluation that finds the same verdict must stay silent: it used to raise a new
78
+ // "certificate ... is OK!" event on the Server object at every check, an unsolicited
79
+ // event every minute on any server with push certificate management installed (FEAT-24:
80
+ // CTT Subscription Minimum 02 020 subscribes to the Server events and expects none while
81
+ // it only writes to plain variables).
82
+ const branch = this.currentBranch();
83
+ if (
84
+ branch &&
85
+ branch.getActiveState() === isActive &&
86
+ branch.getSeverity() === severity &&
87
+ (branch.getMessage()?.text || "") === message
88
+ ) {
89
+ return;
90
+ }
91
+
75
92
  isActive ? this.activateAlarm() : this.deactivateAlarm();
76
93
 
77
94
  this.raiseNewCondition({
@@ -85,24 +85,24 @@ export class UAConditionImplBase<T extends UAConditionEvents & ListenerSignature
85
85
  * The condition's own child nodes, on top of the ones UABaseEventImplBase declares.
86
86
  * Installed by the address space, not by this constructor - hence `declare`.
87
87
  */
88
- public declare readonly conditionClassId: UAProperty<NodeId, DataType.NodeId>;
89
- public declare readonly conditionClassName: UAProperty<LocalizedText, DataType.LocalizedText>;
90
- public declare readonly conditionSubClassId?: UAProperty<NodeId[], DataType.NodeId>;
91
- public declare readonly conditionSubClassName?: UAProperty<LocalizedText[], DataType.LocalizedText>;
92
- public declare readonly conditionName: UAProperty<UAString, DataType.String>;
93
- public declare readonly branchId: UAProperty<NodeId, DataType.NodeId>;
94
- public declare readonly retain: UAProperty<boolean, DataType.Boolean>;
95
- public declare readonly supportsFilteredRetain: UAProperty<boolean, DataType.Boolean>;
96
- public declare readonly enabledState: UATwoStateVariableEx;
97
- public declare readonly quality: UAConditionVariable<StatusCode, DataType.StatusCode>;
98
- public declare readonly lastSeverity: UAConditionVariable<UInt16, DataType.UInt16>;
99
- public declare readonly comment: UAConditionVariable<LocalizedText, DataType.LocalizedText>;
100
- public declare readonly clientUserId: UAProperty<UAString, DataType.String>;
101
- public declare readonly disable: UAMethod;
102
- public declare readonly enable: UAMethod;
103
- public declare readonly addComment: UAMethod;
104
- public declare readonly conditionRefresh: UAMethod;
105
- public declare readonly conditionRefresh2: UAMethod;
88
+ declare public readonly conditionClassId: UAProperty<NodeId, DataType.NodeId>;
89
+ declare public readonly conditionClassName: UAProperty<LocalizedText, DataType.LocalizedText>;
90
+ declare public readonly conditionSubClassId?: UAProperty<NodeId[], DataType.NodeId>;
91
+ declare public readonly conditionSubClassName?: UAProperty<LocalizedText[], DataType.LocalizedText>;
92
+ declare public readonly conditionName: UAProperty<UAString, DataType.String>;
93
+ declare public readonly branchId: UAProperty<NodeId, DataType.NodeId>;
94
+ declare public readonly retain: UAProperty<boolean, DataType.Boolean>;
95
+ declare public readonly supportsFilteredRetain: UAProperty<boolean, DataType.Boolean>;
96
+ declare public readonly enabledState: UATwoStateVariableEx;
97
+ declare public readonly quality: UAConditionVariable<StatusCode, DataType.StatusCode>;
98
+ declare public readonly lastSeverity: UAConditionVariable<UInt16, DataType.UInt16>;
99
+ declare public readonly comment: UAConditionVariable<LocalizedText, DataType.LocalizedText>;
100
+ declare public readonly clientUserId: UAProperty<UAString, DataType.String>;
101
+ declare public readonly disable: UAMethod;
102
+ declare public readonly enable: UAMethod;
103
+ declare public readonly addComment: UAMethod;
104
+ declare public readonly conditionRefresh: UAMethod;
105
+ declare public readonly conditionRefresh2: UAMethod;
106
106
 
107
107
  public static defaultSeverity = 250;
108
108
  public static typeDefinition = resolveNodeId("ConditionType");
@@ -28,8 +28,8 @@ import { UALimitAlarmImpl } from "./ua_limit_alarm_impl.js";
28
28
  /** @internal */
29
29
  export class UAExclusiveDeviationAlarmImplBase extends UAExclusiveLimitAlarmImplBase implements UAExclusiveDeviationAlarmEx {
30
30
  /** installed as child nodes by the address space, not assigned here - hence `declare` */
31
- public declare readonly setpointNode: UAVariableT<NodeId, DataType.NodeId>;
32
- public declare readonly setpointNodeNode?: UAVariableT<number, DataType.Double> | UAVariableT<number, DataType.Float>;
31
+ declare public readonly setpointNode: UAVariableT<NodeId, DataType.NodeId>;
32
+ declare public readonly setpointNodeNode?: UAVariableT<number, DataType.Double> | UAVariableT<number, DataType.Float>;
33
33
 
34
34
  public static instantiate(
35
35
  namespace: NamespacePrivate,
@@ -14,7 +14,7 @@ const validState = ["HighHigh", "High", "Low", "LowLow", null];
14
14
  /** @internal */
15
15
  export class UAExclusiveLimitAlarmImplBase extends UALimitAlarmImpl implements UAExclusiveLimitAlarmEx {
16
16
  /** installed as a child node by the address space, not assigned here - hence `declare` */
17
- public declare readonly limitState: UAExclusiveLimitStateMachineEx;
17
+ declare public readonly limitState: UAExclusiveLimitStateMachineEx;
18
18
 
19
19
  /***
20
20
  *
@@ -31,22 +31,22 @@ export class UALimitAlarmImplBase extends UAAlarmConditionImplBase implements UA
31
31
  * The limits, all optional: which ones exist depends on the alarm type instantiated.
32
32
  * Installed as child nodes by the address space, not assigned here - hence `declare`.
33
33
  */
34
- public declare readonly highHighLimit?: UAProperty<number, DataType.Double>;
35
- public declare readonly highLimit?: UAProperty<number, DataType.Double>;
36
- public declare readonly lowLimit?: UAProperty<number, DataType.Double>;
37
- public declare readonly lowLowLimit?: UAProperty<number, DataType.Double>;
38
- public declare readonly baseHighHighLimit?: UAProperty<number, DataType.Double>;
39
- public declare readonly baseHighLimit?: UAProperty<number, DataType.Double>;
40
- public declare readonly baseLowLimit?: UAProperty<number, DataType.Double>;
41
- public declare readonly baseLowLowLimit?: UAProperty<number, DataType.Double>;
42
- public declare readonly severityHighHigh?: UAProperty<UInt16, DataType.UInt16>;
43
- public declare readonly severityHigh?: UAProperty<UInt16, DataType.UInt16>;
44
- public declare readonly severityLow?: UAProperty<UInt16, DataType.UInt16>;
45
- public declare readonly severityLowLow?: UAProperty<UInt16, DataType.UInt16>;
46
- public declare readonly highHighDeadband?: UAProperty<number, DataType.Double>;
47
- public declare readonly highDeadband?: UAProperty<number, DataType.Double>;
48
- public declare readonly lowDeadband?: UAProperty<number, DataType.Double>;
49
- public declare readonly lowLowDeadband?: UAProperty<number, DataType.Double>;
34
+ declare public readonly highHighLimit?: UAProperty<number, DataType.Double>;
35
+ declare public readonly highLimit?: UAProperty<number, DataType.Double>;
36
+ declare public readonly lowLimit?: UAProperty<number, DataType.Double>;
37
+ declare public readonly lowLowLimit?: UAProperty<number, DataType.Double>;
38
+ declare public readonly baseHighHighLimit?: UAProperty<number, DataType.Double>;
39
+ declare public readonly baseHighLimit?: UAProperty<number, DataType.Double>;
40
+ declare public readonly baseLowLimit?: UAProperty<number, DataType.Double>;
41
+ declare public readonly baseLowLowLimit?: UAProperty<number, DataType.Double>;
42
+ declare public readonly severityHighHigh?: UAProperty<UInt16, DataType.UInt16>;
43
+ declare public readonly severityHigh?: UAProperty<UInt16, DataType.UInt16>;
44
+ declare public readonly severityLow?: UAProperty<UInt16, DataType.UInt16>;
45
+ declare public readonly severityLowLow?: UAProperty<UInt16, DataType.UInt16>;
46
+ declare public readonly highHighDeadband?: UAProperty<number, DataType.Double>;
47
+ declare public readonly highDeadband?: UAProperty<number, DataType.Double>;
48
+ declare public readonly lowDeadband?: UAProperty<number, DataType.Double>;
49
+ declare public readonly lowLowDeadband?: UAProperty<number, DataType.Double>;
50
50
 
51
51
  public static instantiate(
52
52
  namespace: NamespacePrivate,
@@ -26,9 +26,9 @@ export class UANonExclusiveDeviationAlarmImplBase
26
26
  implements UANonExclusiveDeviationAlarmEx
27
27
  {
28
28
  /** installed as child nodes by the address space, not assigned here - hence `declare` */
29
- public declare readonly setpointNode: UAVariableT<NodeId, DataType.NodeId>;
29
+ declare public readonly setpointNode: UAVariableT<NodeId, DataType.NodeId>;
30
30
  // required here, though SetPointSupport declares it optional
31
- public declare readonly setpointNodeNode: UAVariableT<number, DataType.Double> | UAVariableT<number, DataType.Float>;
31
+ declare public readonly setpointNodeNode: UAVariableT<number, DataType.Double> | UAVariableT<number, DataType.Float>;
32
32
 
33
33
  public static instantiate(
34
34
  namespace: NamespacePrivate,
@@ -30,10 +30,10 @@ export class UANonExclusiveLimitAlarmImplBase extends UALimitAlarmImpl implement
30
30
  * The four limit states, all optional: which ones exist depends on the limits configured.
31
31
  * Installed as child nodes by the address space, not assigned here - hence `declare`.
32
32
  */
33
- public declare readonly highHighState?: UATwoStateVariableEx;
34
- public declare readonly highState?: UATwoStateVariableEx;
35
- public declare readonly lowState?: UATwoStateVariableEx;
36
- public declare readonly lowLowState?: UATwoStateVariableEx;
33
+ declare public readonly highHighState?: UATwoStateVariableEx;
34
+ declare public readonly highState?: UATwoStateVariableEx;
35
+ declare public readonly lowState?: UATwoStateVariableEx;
36
+ declare public readonly lowLowState?: UATwoStateVariableEx;
37
37
 
38
38
  public static instantiate(
39
39
  namespace: NamespacePrivate,
@@ -47,7 +47,7 @@ export declare interface UAOffNormalAlarmEx
47
47
  */
48
48
  export class UAOffNormalAlarmImplBase extends UADiscreteAlarmImplBase implements UAOffNormalAlarmEx {
49
49
  /** installed as a child node by the address space, not assigned here - hence `declare` */
50
- public declare readonly normalState: UAProperty<NodeId, DataType.NodeId>;
50
+ declare public readonly normalState: UAProperty<NodeId, DataType.NodeId>;
51
51
 
52
52
  /**
53
53
  * When the value of inputNode doesn't match the normalState node value, then the alarm is raised.
@@ -176,6 +176,10 @@ export interface InternalBaseNodeOptions {
176
176
  */
177
177
  accessRestrictions?: AccessRestrictionsFlag;
178
178
  rolePermissions?: RolePermissionTypeOptions[];
179
+ /** "Draft" or "Deprecated" as the nodeset declared it; see BaseNode.releaseStatus */
180
+ releaseStatus?: "Draft" | "Deprecated";
181
+ /** the AccessRestrictions as declared, whatever this loader applies; see BaseNode */
182
+ declaredAccessRestrictions?: string;
179
183
  }
180
184
 
181
185
  function _is_valid_BrowseDirection(browseDirection: BrowseDirection) {
@@ -216,6 +220,11 @@ export abstract class BaseNodeImpl<T extends BaseNodeEvents & ListenerSignature<
216
220
  return makeAttributeEventName(attributeId);
217
221
  }
218
222
 
223
+ /** see BaseNode.releaseStatus; only set when the nodeset declared one, so that it costs
224
+ * nothing on the overwhelming majority of nodes, which are Released */
225
+ public releaseStatus?: "Draft" | "Deprecated";
226
+ /** see BaseNode.declaredAccessRestrictions */
227
+ public declaredAccessRestrictions?: string;
219
228
  private _accessRestrictions?: AccessRestrictionsFlag;
220
229
  private _rolePermissions?: RolePermissionType[];
221
230
 
@@ -431,6 +440,12 @@ export abstract class BaseNodeImpl<T extends BaseNodeEvents & ListenerSignature<
431
440
 
432
441
  this._accessRestrictions = options.accessRestrictions;
433
442
  this._rolePermissions = coerceRolePermissions(options.rolePermissions);
443
+ if (options.releaseStatus) {
444
+ this.releaseStatus = options.releaseStatus;
445
+ }
446
+ if (options.declaredAccessRestrictions !== undefined) {
447
+ this.declaredAccessRestrictions = options.declaredAccessRestrictions;
448
+ }
434
449
 
435
450
  // make `parent.<thisName>` resolve to this node: through a getter shared by every node when
436
451
  // a nodeset is loading (defined in one batch by the loader, see flushSharedChildAccessors),