node-opcua-address-space 2.179.0 → 2.181.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 (1085) hide show
  1. package/api/address_space_public.ts +63 -0
  2. package/api/address_space_ts.ts +129 -0
  3. package/api/continuation_points/continuation_point_manager.ts +271 -0
  4. package/api/helpers/argument_list.ts +310 -0
  5. package/api/helpers/call_helpers.ts +100 -0
  6. package/api/helpers/coerce_enum_value.ts +33 -0
  7. package/api/helpers/dump_tools.ts +90 -0
  8. package/api/helpers/ensure_secure_access.ts +78 -0
  9. package/api/helpers/multiform_func.ts +78 -0
  10. package/api/helpers/resolve_opaque_on_address_space.ts +26 -0
  11. package/api/index.ts +210 -0
  12. package/api/interfaces/alarms_and_conditions/condition_info_i.ts +60 -0
  13. package/api/interfaces/alarms_and_conditions/condition_snapshot.ts +236 -0
  14. package/api/interfaces/alarms_and_conditions/deviation_stuff.ts +16 -0
  15. package/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +8 -0
  16. package/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +6 -0
  17. package/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +6 -0
  18. package/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +13 -0
  19. package/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +6 -0
  20. package/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +6 -0
  21. package/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +21 -0
  22. package/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +28 -0
  23. package/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +72 -0
  24. package/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +36 -0
  25. package/api/interfaces/alarms_and_conditions/ua_condition_ex.ts +55 -0
  26. package/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +17 -0
  27. package/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +21 -0
  28. package/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +21 -0
  29. package/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +26 -0
  30. package/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +29 -0
  31. package/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +25 -0
  32. package/api/interfaces/data_access/ua_multistate_discrete_ex.ts +57 -0
  33. package/api/interfaces/data_access/ua_multistate_value_discrete_ex.ts +31 -0
  34. package/api/interfaces/data_access/ua_two_state_discrete_ex.ts +15 -0
  35. package/api/interfaces/nodeset_loader_options.ts +58 -0
  36. package/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +20 -0
  37. package/api/interfaces/state_machine/ua_finite_state_machine_type.ts +50 -0
  38. package/api/interfaces/state_machine/ua_program_state_machine_type.ts +14 -0
  39. package/api/interfaces/state_machine/ua_shelved_state_machine_ex.ts +35 -0
  40. package/api/interfaces/state_machine/ua_state_machine_type.ts +288 -0
  41. package/api/loader/decode_xml_extension_object.ts +80 -0
  42. package/api/loader/ensure_datatype_extracted.ts +122 -0
  43. package/api/loader/generateAddressSpaceRaw.ts +470 -0
  44. package/api/loader/load_nodeset2.ts +278 -0
  45. package/api/loader/make_xml_extension_object_parser.ts +518 -0
  46. package/api/loader/namespace_post_step.ts +68 -0
  47. package/api/loader/nodeset_image.ts +451 -0
  48. package/api/loader/nodeset_image_codec.ts +576 -0
  49. package/api/loader/nodeset_image_store.ts +78 -0
  50. package/api/loader/nodeset_record.ts +141 -0
  51. package/api/loader/nodeset_record_applier.ts +889 -0
  52. package/api/loader/nodeset_source.ts +367 -0
  53. package/api/loader/nodeset_source_helpers.ts +50 -0
  54. package/api/loader/nodeset_to_image.ts +29 -0
  55. package/api/loader/nodeset_xml_producer.ts +383 -0
  56. package/api/loader/parsers/extension_object_parser.ts +374 -0
  57. package/api/loader/parsers/variant_parser.ts +363 -0
  58. package/api/loader/register_node_promoter.ts +6 -0
  59. package/api/namespace.ts +25 -0
  60. package/api/namespace_alarm_and_condition.ts +78 -0
  61. package/api/namespace_data_access.ts +92 -0
  62. package/api/namespace_machine_state.ts +20 -0
  63. package/api/pseudo_session.ts +415 -0
  64. package/api/session_context.ts +729 -0
  65. package/api/ua_interface.ts +38 -0
  66. package/api/ua_two_state_variable_ex.ts +36 -0
  67. package/bin/opcua-nodeset-image.js +192 -0
  68. package/dist/api/address_space_public.d.ts +57 -0
  69. package/dist/api/address_space_public.js +19 -0
  70. package/dist/api/address_space_public.js.map +1 -0
  71. package/dist/api/address_space_ts.d.ts +79 -0
  72. package/dist/api/address_space_ts.js +13 -0
  73. package/dist/api/address_space_ts.js.map +1 -0
  74. package/dist/api/continuation_points/continuation_point_manager.js +230 -0
  75. package/dist/api/continuation_points/continuation_point_manager.js.map +1 -0
  76. package/dist/api/helpers/adjust_browse_direction.js.map +1 -0
  77. package/dist/api/helpers/argument_list.js +263 -0
  78. package/dist/api/helpers/argument_list.js.map +1 -0
  79. package/dist/api/helpers/call_helpers.js +80 -0
  80. package/dist/api/helpers/call_helpers.js.map +1 -0
  81. package/dist/api/helpers/coerce_enum_value.d.ts +6 -0
  82. package/dist/api/helpers/coerce_enum_value.js.map +1 -0
  83. package/dist/api/helpers/dump_tools.js +81 -0
  84. package/dist/api/helpers/dump_tools.js.map +1 -0
  85. package/dist/api/helpers/ensure_secure_access.d.ts +19 -0
  86. package/dist/api/helpers/ensure_secure_access.js +67 -0
  87. package/dist/api/helpers/ensure_secure_access.js.map +1 -0
  88. package/dist/api/helpers/make_optionals_map.js.map +1 -0
  89. package/dist/api/helpers/multiform_func.js +75 -0
  90. package/dist/api/helpers/multiform_func.js.map +1 -0
  91. package/dist/api/helpers/resolve_opaque_on_address_space.js +25 -0
  92. package/dist/api/helpers/resolve_opaque_on_address_space.js.map +1 -0
  93. package/dist/api/index.d.ts +113 -0
  94. package/dist/api/index.js +234 -0
  95. package/dist/api/index.js.map +1 -0
  96. package/dist/api/interfaces/alarms_and_conditions/condition_info_i.d.ts +54 -0
  97. package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js +28 -0
  98. package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js.map +1 -0
  99. package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.d.ts +151 -0
  100. package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.js.map +1 -0
  101. package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.d.ts +12 -0
  102. package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.js.map +1 -0
  103. package/dist/api/interfaces/alarms_and_conditions/install_setpoint_options.js.map +1 -0
  104. package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -0
  105. package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +1 -0
  106. package/dist/api/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +1 -0
  107. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +4 -0
  108. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +1 -0
  109. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -0
  110. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +1 -0
  111. package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +10 -0
  112. package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +1 -0
  113. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +4 -0
  114. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +1 -0
  115. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +4 -0
  116. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +1 -0
  117. package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +20 -0
  118. package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +1 -0
  119. package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +21 -0
  120. package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +1 -0
  121. package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +56 -0
  122. package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +1 -0
  123. package/dist/api/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +1 -0
  124. package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +19 -0
  125. package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +1 -0
  126. package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +44 -0
  127. package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.js.map +1 -0
  128. package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +4 -0
  129. package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +1 -0
  130. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -0
  131. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +1 -0
  132. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +19 -0
  133. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +1 -0
  134. package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +25 -0
  135. package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +1 -0
  136. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +8 -0
  137. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +1 -0
  138. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -0
  139. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +1 -0
  140. package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.d.ts +44 -0
  141. package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.js.map +1 -0
  142. package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +22 -0
  143. package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +1 -0
  144. package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.d.ts +13 -0
  145. package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.js.map +1 -0
  146. package/dist/api/interfaces/data_access/ua_y_array_item_ex.js.map +1 -0
  147. package/dist/api/interfaces/extension_object_constructor.js.map +1 -0
  148. package/dist/api/interfaces/i_condition_variable_type_setter_options.js.map +1 -0
  149. package/dist/api/interfaces/i_set_state_options.js.map +1 -0
  150. package/dist/api/interfaces/nodeset_loader_options.d.ts +56 -0
  151. package/dist/api/interfaces/nodeset_loader_options.js.map +1 -0
  152. package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -0
  153. package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +1 -0
  154. package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -0
  155. package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.js.map +1 -0
  156. package/dist/api/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -0
  157. package/dist/api/interfaces/state_machine/ua_program_state_machine_type.js.map +1 -0
  158. package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +29 -0
  159. package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +1 -0
  160. package/dist/api/interfaces/state_machine/ua_state_machine_type.d.ts +236 -0
  161. package/dist/api/interfaces/state_machine/ua_state_machine_type.js.map +1 -0
  162. package/dist/api/interfaces/state_machine/ua_transition_ex.js.map +1 -0
  163. package/dist/api/interfaces/ua_subscription_diagnostics_variable_ex.js.map +1 -0
  164. package/dist/api/loader/decode_xml_extension_object.d.ts +6 -0
  165. package/dist/api/loader/decode_xml_extension_object.js +69 -0
  166. package/dist/api/loader/decode_xml_extension_object.js.map +1 -0
  167. package/dist/api/loader/ensure_datatype_extracted.js +88 -0
  168. package/dist/api/loader/ensure_datatype_extracted.js.map +1 -0
  169. package/dist/api/loader/generateAddressSpaceRaw.d.ts +64 -0
  170. package/dist/api/loader/generateAddressSpaceRaw.js +379 -0
  171. package/dist/api/loader/generateAddressSpaceRaw.js.map +1 -0
  172. package/dist/api/loader/load_nodeset2.d.ts +38 -0
  173. package/dist/api/loader/load_nodeset2.js +245 -0
  174. package/dist/api/loader/load_nodeset2.js.map +1 -0
  175. package/dist/api/loader/make_semver_compatible.js.map +1 -0
  176. package/dist/api/loader/make_xml_extension_object_parser.js +417 -0
  177. package/dist/api/loader/make_xml_extension_object_parser.js.map +1 -0
  178. package/dist/api/loader/namespace_post_step.js +57 -0
  179. package/dist/api/loader/namespace_post_step.js.map +1 -0
  180. package/dist/api/loader/nodeset_image.d.ts +94 -0
  181. package/dist/api/loader/nodeset_image.js +406 -0
  182. package/dist/api/loader/nodeset_image.js.map +1 -0
  183. package/dist/api/loader/nodeset_image_codec.d.ts +104 -0
  184. package/dist/api/loader/nodeset_image_codec.js +489 -0
  185. package/dist/api/loader/nodeset_image_codec.js.map +1 -0
  186. package/dist/api/loader/nodeset_image_store.d.ts +27 -0
  187. package/dist/api/loader/nodeset_image_store.js +72 -0
  188. package/dist/api/loader/nodeset_image_store.js.map +1 -0
  189. package/dist/api/loader/nodeset_record.d.ts +125 -0
  190. package/dist/api/loader/nodeset_record.js +26 -0
  191. package/dist/api/loader/nodeset_record.js.map +1 -0
  192. package/dist/api/loader/nodeset_record_applier.d.ts +106 -0
  193. package/dist/api/loader/nodeset_record_applier.js +731 -0
  194. package/dist/api/loader/nodeset_record_applier.js.map +1 -0
  195. package/dist/api/loader/nodeset_source.d.ts +124 -0
  196. package/dist/api/loader/nodeset_source.js +307 -0
  197. package/dist/api/loader/nodeset_source.js.map +1 -0
  198. package/dist/api/loader/nodeset_source_helpers.d.ts +27 -0
  199. package/dist/api/loader/nodeset_source_helpers.js +30 -0
  200. package/dist/api/loader/nodeset_source_helpers.js.map +1 -0
  201. package/dist/api/loader/nodeset_to_image.d.ts +13 -0
  202. package/dist/api/loader/nodeset_to_image.js +30 -0
  203. package/dist/api/loader/nodeset_to_image.js.map +1 -0
  204. package/dist/api/loader/nodeset_xml_producer.d.ts +16 -0
  205. package/dist/api/loader/nodeset_xml_producer.js +349 -0
  206. package/dist/api/loader/nodeset_xml_producer.js.map +1 -0
  207. package/dist/api/loader/parsers/extension_object_parser.js +274 -0
  208. package/dist/api/loader/parsers/extension_object_parser.js.map +1 -0
  209. package/dist/api/loader/parsers/localized_text_parser.js.map +1 -0
  210. package/dist/api/loader/parsers/nodeid_parser.js.map +1 -0
  211. package/dist/api/loader/parsers/qualified_name_parser.js.map +1 -0
  212. package/dist/api/loader/parsers/variant_parser.d.ts +42 -0
  213. package/dist/api/loader/parsers/variant_parser.js +294 -0
  214. package/dist/api/loader/parsers/variant_parser.js.map +1 -0
  215. package/dist/api/loader/register_node_promoter.d.ts +2 -0
  216. package/dist/api/loader/register_node_promoter.js +9 -0
  217. package/dist/api/loader/register_node_promoter.js.map +1 -0
  218. package/dist/api/namespace.d.ts +18 -0
  219. package/dist/api/namespace.js.map +1 -0
  220. package/dist/api/namespace_alarm_and_condition.d.ts +33 -0
  221. package/dist/api/namespace_alarm_and_condition.js.map +1 -0
  222. package/dist/api/namespace_data_access.d.ts +67 -0
  223. package/dist/api/namespace_data_access.js.map +1 -0
  224. package/dist/api/namespace_machine_state.d.ts +8 -0
  225. package/dist/api/namespace_machine_state.js.map +1 -0
  226. package/dist/api/pseudo_session.d.ts +74 -0
  227. package/dist/api/pseudo_session.js +308 -0
  228. package/dist/api/pseudo_session.js.map +1 -0
  229. package/dist/api/session_context.d.ts +242 -0
  230. package/dist/api/session_context.js +524 -0
  231. package/dist/api/session_context.js.map +1 -0
  232. package/dist/api/set_namespace_meta_data.js.map +1 -0
  233. package/dist/api/ua_addin.js.map +1 -0
  234. package/dist/api/ua_interface.js +25 -0
  235. package/dist/api/ua_interface.js.map +1 -0
  236. package/dist/api/ua_root_folder.js.map +1 -0
  237. package/dist/api/ua_two_state_variable_ex.d.ts +24 -0
  238. package/dist/api/ua_two_state_variable_ex.js.map +1 -0
  239. package/dist/api/xml_writer.js.map +1 -0
  240. package/dist/impl/_instantiate_helpers.js +99 -0
  241. package/dist/impl/_instantiate_helpers.js.map +1 -0
  242. package/dist/impl/_mandatory_child_or_requested_optional_filter.js +82 -0
  243. package/dist/impl/_mandatory_child_or_requested_optional_filter.js.map +1 -0
  244. package/dist/impl/address_space.d.ts +379 -0
  245. package/dist/impl/address_space.js +1383 -0
  246. package/dist/impl/address_space.js.map +1 -0
  247. package/dist/impl/address_space_change_event_tools.d.ts +6 -0
  248. package/dist/impl/address_space_change_event_tools.js.map +1 -0
  249. package/dist/impl/address_space_private.d.ts +48 -0
  250. package/dist/impl/address_space_private.js.map +1 -0
  251. package/dist/impl/alarms_and_conditions/condition.js.map +1 -0
  252. package/dist/impl/alarms_and_conditions/condition_info_impl.d.ts +19 -0
  253. package/dist/impl/alarms_and_conditions/condition_info_impl.js +39 -0
  254. package/dist/impl/alarms_and_conditions/condition_info_impl.js.map +1 -0
  255. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.d.ts +271 -0
  256. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js +700 -0
  257. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js.map +1 -0
  258. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.d.ts +12 -0
  259. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js +66 -0
  260. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js.map +1 -0
  261. package/dist/impl/alarms_and_conditions/index.d.ts +16 -0
  262. package/dist/impl/alarms_and_conditions/index.js +33 -0
  263. package/dist/impl/alarms_and_conditions/index.js.map +1 -0
  264. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +54 -0
  265. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -0
  266. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -0
  267. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.d.ts +105 -0
  268. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js +428 -0
  269. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -0
  270. package/dist/impl/alarms_and_conditions/ua_base_event_impl.d.ts +36 -0
  271. package/dist/impl/alarms_and_conditions/ua_base_event_impl.js +32 -0
  272. package/dist/impl/alarms_and_conditions/ua_base_event_impl.js.map +1 -0
  273. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +47 -0
  274. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +204 -0
  275. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -0
  276. package/dist/impl/alarms_and_conditions/ua_condition_impl.d.ts +152 -0
  277. package/dist/impl/alarms_and_conditions/ua_condition_impl.js +1016 -0
  278. package/dist/impl/alarms_and_conditions/ua_condition_impl.js.map +1 -0
  279. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +22 -0
  280. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js +41 -0
  281. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -0
  282. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +30 -0
  283. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +54 -0
  284. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -0
  285. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +12 -0
  286. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +13 -0
  287. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -0
  288. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +28 -0
  289. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -0
  290. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -0
  291. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +10 -0
  292. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +8 -0
  293. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -0
  294. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.d.ts +49 -0
  295. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js +207 -0
  296. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -0
  297. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +28 -0
  298. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +54 -0
  299. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -0
  300. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +38 -0
  301. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +172 -0
  302. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -0
  303. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +44 -0
  304. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js +164 -0
  305. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -0
  306. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -0
  307. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +18 -0
  308. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -0
  309. package/dist/impl/apply_condition_refresh.d.ts +4 -0
  310. package/dist/impl/apply_condition_refresh.js +29 -0
  311. package/dist/impl/apply_condition_refresh.js.map +1 -0
  312. package/dist/impl/base_node_impl.d.ts +347 -0
  313. package/dist/impl/base_node_impl.js +1768 -0
  314. package/dist/impl/base_node_impl.js.map +1 -0
  315. package/dist/impl/base_node_private.d.ts +138 -0
  316. package/dist/impl/base_node_private.js +1028 -0
  317. package/dist/impl/base_node_private.js.map +1 -0
  318. package/dist/impl/check_value_rank_compatibility.js.map +1 -0
  319. package/dist/impl/child_accessors.d.ts +43 -0
  320. package/dist/impl/child_accessors.js +222 -0
  321. package/dist/impl/child_accessors.js.map +1 -0
  322. package/dist/impl/data_access/add_dataItem_stuff.js.map +1 -0
  323. package/dist/impl/data_access/adjust_datavalue_status_code.d.ts +7 -0
  324. package/dist/impl/data_access/adjust_datavalue_status_code.js.map +1 -0
  325. package/dist/impl/data_access/ua_multistate_discrete_impl.d.ts +38 -0
  326. package/dist/impl/data_access/ua_multistate_discrete_impl.js +143 -0
  327. package/dist/impl/data_access/ua_multistate_discrete_impl.js.map +1 -0
  328. package/dist/impl/data_access/ua_multistate_value_discrete_impl.d.ts +61 -0
  329. package/dist/impl/data_access/ua_multistate_value_discrete_impl.js +303 -0
  330. package/dist/impl/data_access/ua_multistate_value_discrete_impl.js.map +1 -0
  331. package/dist/impl/data_access/ua_two_state_discrete_impl.d.ts +30 -0
  332. package/dist/impl/data_access/ua_two_state_discrete_impl.js +164 -0
  333. package/dist/impl/data_access/ua_two_state_discrete_impl.js.map +1 -0
  334. package/dist/impl/event_data.d.ts +27 -0
  335. package/dist/impl/event_data.js +73 -0
  336. package/dist/impl/event_data.js.map +1 -0
  337. package/dist/impl/event_layout.d.ts +40 -0
  338. package/dist/impl/event_layout.js +103 -0
  339. package/dist/impl/event_layout.js.map +1 -0
  340. package/dist/impl/extension_object_array_node.d.ts +41 -0
  341. package/dist/impl/extension_object_array_node.js +274 -0
  342. package/dist/impl/extension_object_array_node.js.map +1 -0
  343. package/dist/impl/get_basic_datatype.js.map +1 -0
  344. package/dist/impl/handle_hierarchy_parent.d.ts +33 -0
  345. package/dist/impl/handle_hierarchy_parent.js +103 -0
  346. package/dist/impl/handle_hierarchy_parent.js.map +1 -0
  347. package/dist/impl/historical_access/address_space_historical_data_node.d.ts +21 -0
  348. package/dist/impl/historical_access/address_space_historical_data_node.js +658 -0
  349. package/dist/impl/historical_access/address_space_historical_data_node.js.map +1 -0
  350. package/dist/impl/historizer_factory.d.ts +18 -0
  351. package/dist/impl/historizer_factory.js +16 -0
  352. package/dist/impl/historizer_factory.js.map +1 -0
  353. package/dist/impl/idx_iterator.js.map +1 -0
  354. package/dist/impl/namespace_impl.d.ts +469 -0
  355. package/dist/impl/namespace_impl.js +1845 -0
  356. package/dist/impl/namespace_impl.js.map +1 -0
  357. package/dist/impl/namespace_private.d.ts +25 -0
  358. package/dist/impl/namespace_private.js.map +1 -0
  359. package/dist/impl/nodeid_manager.js +249 -0
  360. package/dist/impl/nodeid_manager.js.map +1 -0
  361. package/dist/impl/nodeset_tools/adjust_namespace_array.js.map +1 -0
  362. package/dist/impl/nodeset_tools/construct_namespace_dependency.d.ts +37 -0
  363. package/dist/impl/nodeset_tools/construct_namespace_dependency.js +352 -0
  364. package/dist/impl/nodeset_tools/construct_namespace_dependency.js.map +1 -0
  365. package/dist/impl/nodeset_tools/dump_to_bsd.d.ts +10 -0
  366. package/dist/impl/nodeset_tools/dump_to_bsd.js +176 -0
  367. package/dist/impl/nodeset_tools/dump_to_bsd.js.map +1 -0
  368. package/dist/impl/nodeset_tools/nodeset_to_records.d.ts +67 -0
  369. package/dist/impl/nodeset_tools/nodeset_to_records.js +773 -0
  370. package/dist/impl/nodeset_tools/nodeset_to_records.js.map +1 -0
  371. package/dist/impl/nodeset_tools/nodeset_to_xml.d.ts +28 -0
  372. package/dist/impl/nodeset_tools/nodeset_to_xml.js +1132 -0
  373. package/dist/impl/nodeset_tools/nodeset_to_xml.js.map +1 -0
  374. package/dist/impl/private_namespace.d.ts +5 -0
  375. package/dist/impl/private_namespace.js.map +1 -0
  376. package/dist/impl/reference_impl.d.ts +82 -0
  377. package/dist/impl/reference_impl.js +207 -0
  378. package/dist/impl/reference_impl.js.map +1 -0
  379. package/dist/impl/reference_type_version.d.ts +22 -0
  380. package/dist/impl/reference_type_version.js +22 -0
  381. package/dist/impl/reference_type_version.js.map +1 -0
  382. package/dist/impl/role_permissions.js.map +1 -0
  383. package/dist/impl/state_machine/finite_state_machine.d.ts +81 -0
  384. package/dist/impl/state_machine/finite_state_machine.js +573 -0
  385. package/dist/impl/state_machine/finite_state_machine.js.map +1 -0
  386. package/dist/impl/state_machine/ua_shelving_state_machine_ex.d.ts +64 -0
  387. package/dist/impl/state_machine/ua_shelving_state_machine_ex.js +249 -0
  388. package/dist/impl/state_machine/ua_shelving_state_machine_ex.js.map +1 -0
  389. package/dist/impl/state_machine/ua_two_state_variable.d.ts +55 -0
  390. package/dist/impl/state_machine/ua_two_state_variable.js +323 -0
  391. package/dist/impl/state_machine/ua_two_state_variable.js.map +1 -0
  392. package/dist/impl/tool_isSubtypeOf.d.ts +18 -0
  393. package/dist/impl/tool_isSubtypeOf.js +138 -0
  394. package/dist/impl/tool_isSubtypeOf.js.map +1 -0
  395. package/dist/impl/ua_condition_type.js.map +1 -0
  396. package/dist/impl/ua_data_type_impl.d.ts +87 -0
  397. package/dist/impl/ua_data_type_impl.js +391 -0
  398. package/dist/impl/ua_data_type_impl.js.map +1 -0
  399. package/dist/impl/ua_method_impl.d.ts +48 -0
  400. package/dist/impl/ua_method_impl.js +281 -0
  401. package/dist/impl/ua_method_impl.js.map +1 -0
  402. package/dist/impl/ua_object_impl.d.ts +38 -0
  403. package/dist/impl/ua_object_impl.js +214 -0
  404. package/dist/impl/ua_object_impl.js.map +1 -0
  405. package/dist/impl/ua_object_type_impl.d.ts +55 -0
  406. package/dist/impl/ua_object_type_impl.js +131 -0
  407. package/dist/impl/ua_object_type_impl.js.map +1 -0
  408. package/dist/impl/ua_reference_type_impl.d.ts +42 -0
  409. package/dist/impl/ua_reference_type_impl.js +157 -0
  410. package/dist/impl/ua_reference_type_impl.js.map +1 -0
  411. package/dist/impl/ua_variable_impl.d.ts +391 -0
  412. package/dist/impl/ua_variable_impl.js +2001 -0
  413. package/dist/impl/ua_variable_impl.js.map +1 -0
  414. package/dist/impl/ua_variable_impl_ext_obj.d.ts +23 -0
  415. package/dist/impl/ua_variable_impl_ext_obj.js +753 -0
  416. package/dist/impl/ua_variable_impl_ext_obj.js.map +1 -0
  417. package/dist/impl/ua_variable_type_impl.d.ts +79 -0
  418. package/dist/impl/ua_variable_type_impl.js +279 -0
  419. package/dist/impl/ua_variable_type_impl.js.map +1 -0
  420. package/dist/impl/ua_view_impl.d.ts +18 -0
  421. package/dist/impl/ua_view_impl.js +45 -0
  422. package/dist/impl/ua_view_impl.js.map +1 -0
  423. package/dist/impl/validate_data_type_correctness.d.ts +6 -0
  424. package/dist/impl/validate_data_type_correctness.js +123 -0
  425. package/dist/impl/validate_data_type_correctness.js.map +1 -0
  426. package/dist/tsconfig_base.tsbuildinfo +1 -1
  427. package/distHelpers/address_space_digest.d.ts +4 -0
  428. package/distHelpers/address_space_digest.js +9 -0
  429. package/distHelpers/address_space_digest.js.map +1 -0
  430. package/distHelpers/alarms_and_conditions_demo.d.ts +1 -1
  431. package/distHelpers/assertHasMatchingReference.d.ts +1 -1
  432. package/distHelpers/boiler_system.d.ts +1 -1
  433. package/distHelpers/boiler_system.js +3 -3
  434. package/distHelpers/boiler_system.js.map +1 -1
  435. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +1 -1
  436. package/distHelpers/get_address_space_fixture.js +38 -22
  437. package/distHelpers/get_address_space_fixture.js.map +1 -1
  438. package/distHelpers/get_mini_address_space.d.ts +1 -1
  439. package/distHelpers/get_mini_address_space.js +7 -7
  440. package/distHelpers/get_mini_address_space.js.map +1 -1
  441. package/distHelpers/index.d.ts +9 -9
  442. package/distHelpers/index.js +9 -9
  443. package/distHelpers/index.js.map +1 -1
  444. package/distHelpers/mock_session.d.ts +1 -1
  445. package/distHelpers/mock_session.js +2 -2
  446. package/distHelpers/mock_session.js.map +1 -1
  447. package/distNodeJS/address_space_digest.d.ts +13 -0
  448. package/distNodeJS/address_space_digest.js +31 -0
  449. package/distNodeJS/address_space_digest.js.map +1 -0
  450. package/distNodeJS/generate_address_space.d.ts +35 -2
  451. package/distNodeJS/generate_address_space.js +201 -7
  452. package/distNodeJS/generate_address_space.js.map +1 -1
  453. package/distNodeJS/index.d.ts +3 -1
  454. package/distNodeJS/index.js +3 -1
  455. package/distNodeJS/index.js.map +1 -1
  456. package/distNodeJS/nodeset_image_file_store.d.ts +29 -0
  457. package/distNodeJS/nodeset_image_file_store.js +120 -0
  458. package/distNodeJS/nodeset_image_file_store.js.map +1 -0
  459. package/impl/_instantiate_helpers.ts +197 -0
  460. package/impl/_mandatory_child_or_requested_optional_filter.ts +100 -0
  461. package/impl/address_space.ts +1572 -0
  462. package/impl/address_space_change_event_tools.ts +177 -0
  463. package/impl/address_space_private.ts +100 -0
  464. package/impl/alarms_and_conditions/condition_info_impl.ts +45 -0
  465. package/impl/alarms_and_conditions/condition_snapshot_impl.ts +793 -0
  466. package/impl/alarms_and_conditions/deviation_alarm_helper.ts +73 -0
  467. package/impl/alarms_and_conditions/index.ts +16 -0
  468. package/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +351 -0
  469. package/impl/alarms_and_conditions/ua_alarm_condition_impl.ts +515 -0
  470. package/impl/alarms_and_conditions/ua_base_event_impl.ts +61 -0
  471. package/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +246 -0
  472. package/impl/alarms_and_conditions/ua_condition_impl.ts +1286 -0
  473. package/impl/alarms_and_conditions/ua_discrete_alarm_impl.ts +60 -0
  474. package/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +95 -0
  475. package/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +21 -0
  476. package/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +112 -0
  477. package/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +25 -0
  478. package/impl/alarms_and_conditions/ua_limit_alarm_impl.ts +265 -0
  479. package/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +94 -0
  480. package/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +232 -0
  481. package/impl/alarms_and_conditions/ua_off_normal_alarm_impl.ts +216 -0
  482. package/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +26 -0
  483. package/impl/apply_condition_refresh.ts +56 -0
  484. package/impl/base_node_impl.ts +2165 -0
  485. package/impl/base_node_private.ts +1420 -0
  486. package/impl/child_accessors.ts +239 -0
  487. package/impl/data_access/adjust_datavalue_status_code.ts +36 -0
  488. package/impl/data_access/ua_multistate_discrete_impl.ts +198 -0
  489. package/impl/data_access/ua_multistate_value_discrete_impl.ts +384 -0
  490. package/impl/data_access/ua_two_state_discrete_impl.ts +195 -0
  491. package/impl/event_data.ts +80 -0
  492. package/impl/event_layout.ts +141 -0
  493. package/impl/extension_object_array_node.ts +343 -0
  494. package/impl/handle_hierarchy_parent.ts +133 -0
  495. package/impl/historical_access/address_space_historical_data_node.ts +849 -0
  496. package/impl/historizer_factory.ts +17 -0
  497. package/impl/namespace_impl.ts +2323 -0
  498. package/impl/namespace_private.ts +68 -0
  499. package/impl/nodeid_manager.ts +293 -0
  500. package/impl/nodeset_tools/construct_namespace_dependency.ts +381 -0
  501. package/impl/nodeset_tools/dump_to_bsd.ts +210 -0
  502. package/impl/nodeset_tools/nodeset_to_records.ts +846 -0
  503. package/impl/nodeset_tools/nodeset_to_xml.ts +1326 -0
  504. package/impl/private_namespace.ts +21 -0
  505. package/impl/reference_impl.ts +244 -0
  506. package/impl/reference_type_version.ts +19 -0
  507. package/impl/state_machine/finite_state_machine.ts +676 -0
  508. package/impl/state_machine/ua_shelving_state_machine_ex.ts +356 -0
  509. package/impl/state_machine/ua_two_state_variable.ts +421 -0
  510. package/impl/tool_isSubtypeOf.ts +168 -0
  511. package/impl/ua_data_type_impl.ts +486 -0
  512. package/impl/ua_method_impl.ts +364 -0
  513. package/impl/ua_object_impl.ts +278 -0
  514. package/impl/ua_object_type_impl.ts +179 -0
  515. package/impl/ua_reference_type_impl.ts +179 -0
  516. package/impl/ua_variable_impl.ts +2559 -0
  517. package/impl/ua_variable_impl_ext_obj.ts +904 -0
  518. package/impl/ua_variable_type_impl.ts +390 -0
  519. package/impl/ua_view_impl.ts +53 -0
  520. package/impl/validate_data_type_correctness.ts +142 -0
  521. package/package.json +49 -44
  522. package/source_nodejs/address_space_digest.ts +35 -0
  523. package/source_nodejs/generate_address_space.ts +181 -8
  524. package/source_nodejs/index.ts +3 -1
  525. package/source_nodejs/nodeset_image_file_store.ts +127 -0
  526. package/dist/source/address_space_ts.d.ts +0 -128
  527. package/dist/source/address_space_ts.js +0 -23
  528. package/dist/source/address_space_ts.js.map +0 -1
  529. package/dist/source/continuation_points/continuation_point_manager.js +0 -230
  530. package/dist/source/continuation_points/continuation_point_manager.js.map +0 -1
  531. package/dist/source/helpers/adjust_browse_direction.js.map +0 -1
  532. package/dist/source/helpers/argument_list.js +0 -263
  533. package/dist/source/helpers/argument_list.js.map +0 -1
  534. package/dist/source/helpers/call_helpers.js +0 -80
  535. package/dist/source/helpers/call_helpers.js.map +0 -1
  536. package/dist/source/helpers/coerce_enum_value.d.ts +0 -6
  537. package/dist/source/helpers/coerce_enum_value.js.map +0 -1
  538. package/dist/source/helpers/dump_tools.js +0 -81
  539. package/dist/source/helpers/dump_tools.js.map +0 -1
  540. package/dist/source/helpers/ensure_secure_access.d.ts +0 -9
  541. package/dist/source/helpers/ensure_secure_access.js +0 -58
  542. package/dist/source/helpers/ensure_secure_access.js.map +0 -1
  543. package/dist/source/helpers/make_optionals_map.js.map +0 -1
  544. package/dist/source/helpers/multiform_func.js +0 -75
  545. package/dist/source/helpers/multiform_func.js.map +0 -1
  546. package/dist/source/helpers/resolve_opaque_on_address_space.js +0 -25
  547. package/dist/source/helpers/resolve_opaque_on_address_space.js.map +0 -1
  548. package/dist/source/index.d.ts +0 -66
  549. package/dist/source/index.js +0 -97
  550. package/dist/source/index.js.map +0 -1
  551. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +0 -21
  552. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +0 -3
  553. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js.map +0 -1
  554. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +0 -150
  555. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js.map +0 -1
  556. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +0 -12
  557. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js.map +0 -1
  558. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js.map +0 -1
  559. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +0 -7
  560. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +0 -1
  561. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +0 -1
  562. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +0 -4
  563. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +0 -1
  564. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +0 -4
  565. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +0 -1
  566. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +0 -10
  567. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +0 -1
  568. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +0 -4
  569. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +0 -1
  570. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +0 -4
  571. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +0 -1
  572. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +0 -20
  573. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +0 -1
  574. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +0 -21
  575. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +0 -1
  576. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +0 -33
  577. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +0 -1
  578. package/dist/source/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +0 -1
  579. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +0 -19
  580. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +0 -1
  581. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +0 -44
  582. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js.map +0 -1
  583. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +0 -4
  584. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +0 -1
  585. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +0 -5
  586. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +0 -1
  587. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +0 -19
  588. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +0 -1
  589. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +0 -25
  590. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +0 -1
  591. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +0 -8
  592. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +0 -1
  593. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +0 -10
  594. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +0 -1
  595. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +0 -44
  596. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js.map +0 -1
  597. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +0 -22
  598. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +0 -1
  599. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +0 -13
  600. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js.map +0 -1
  601. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js.map +0 -1
  602. package/dist/source/interfaces/extension_object_constructor.js.map +0 -1
  603. package/dist/source/interfaces/i_condition_variable_type_setter_options.js.map +0 -1
  604. package/dist/source/interfaces/i_set_state_options.js.map +0 -1
  605. package/dist/source/interfaces/nodeset_loader_options.d.ts +0 -37
  606. package/dist/source/interfaces/nodeset_loader_options.js.map +0 -1
  607. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +0 -12
  608. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +0 -1
  609. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +0 -49
  610. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js.map +0 -1
  611. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +0 -11
  612. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js.map +0 -1
  613. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +0 -29
  614. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +0 -1
  615. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +0 -236
  616. package/dist/source/interfaces/state_machine/ua_state_machine_type.js.map +0 -1
  617. package/dist/source/interfaces/state_machine/ua_transition_ex.js.map +0 -1
  618. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js.map +0 -1
  619. package/dist/source/loader/decode_xml_extension_object.d.ts +0 -6
  620. package/dist/source/loader/decode_xml_extension_object.js +0 -69
  621. package/dist/source/loader/decode_xml_extension_object.js.map +0 -1
  622. package/dist/source/loader/ensure_datatype_extracted.js +0 -88
  623. package/dist/source/loader/ensure_datatype_extracted.js.map +0 -1
  624. package/dist/source/loader/generateAddressSpaceRaw.d.ts +0 -29
  625. package/dist/source/loader/generateAddressSpaceRaw.js +0 -188
  626. package/dist/source/loader/generateAddressSpaceRaw.js.map +0 -1
  627. package/dist/source/loader/load_nodeset2.d.ts +0 -15
  628. package/dist/source/loader/load_nodeset2.js +0 -1047
  629. package/dist/source/loader/load_nodeset2.js.map +0 -1
  630. package/dist/source/loader/make_semver_compatible.js.map +0 -1
  631. package/dist/source/loader/make_xml_extension_object_parser.js +0 -422
  632. package/dist/source/loader/make_xml_extension_object_parser.js.map +0 -1
  633. package/dist/source/loader/namespace_post_step.js +0 -57
  634. package/dist/source/loader/namespace_post_step.js.map +0 -1
  635. package/dist/source/loader/parsers/extension_object_parser.js +0 -274
  636. package/dist/source/loader/parsers/extension_object_parser.js.map +0 -1
  637. package/dist/source/loader/parsers/localized_text_parser.js.map +0 -1
  638. package/dist/source/loader/parsers/nodeid_parser.js.map +0 -1
  639. package/dist/source/loader/parsers/qualified_name_parser.js.map +0 -1
  640. package/dist/source/loader/parsers/variant_parser.d.ts +0 -35
  641. package/dist/source/loader/parsers/variant_parser.js +0 -331
  642. package/dist/source/loader/parsers/variant_parser.js.map +0 -1
  643. package/dist/source/loader/register_node_promoter.d.ts +0 -2
  644. package/dist/source/loader/register_node_promoter.js +0 -9
  645. package/dist/source/loader/register_node_promoter.js.map +0 -1
  646. package/dist/source/namespace.d.ts +0 -6
  647. package/dist/source/namespace.js.map +0 -1
  648. package/dist/source/namespace_alarm_and_condition.d.ts +0 -33
  649. package/dist/source/namespace_alarm_and_condition.js.map +0 -1
  650. package/dist/source/namespace_data_access.d.ts +0 -67
  651. package/dist/source/namespace_data_access.js.map +0 -1
  652. package/dist/source/namespace_machine_state.d.ts +0 -8
  653. package/dist/source/namespace_machine_state.js.map +0 -1
  654. package/dist/source/pseudo_session.d.ts +0 -74
  655. package/dist/source/pseudo_session.js +0 -308
  656. package/dist/source/pseudo_session.js.map +0 -1
  657. package/dist/source/session_context.d.ts +0 -241
  658. package/dist/source/session_context.js +0 -517
  659. package/dist/source/session_context.js.map +0 -1
  660. package/dist/source/set_namespace_meta_data.js.map +0 -1
  661. package/dist/source/ua_addin.js.map +0 -1
  662. package/dist/source/ua_interface.js +0 -25
  663. package/dist/source/ua_interface.js.map +0 -1
  664. package/dist/source/ua_root_folder.js.map +0 -1
  665. package/dist/source/ua_two_state_variable_ex.d.ts +0 -24
  666. package/dist/source/ua_two_state_variable_ex.js.map +0 -1
  667. package/dist/source/xml_writer.js.map +0 -1
  668. package/dist/src/_instantiate_helpers.js +0 -99
  669. package/dist/src/_instantiate_helpers.js.map +0 -1
  670. package/dist/src/_mandatory_child_or_requested_optional_filter.js +0 -82
  671. package/dist/src/_mandatory_child_or_requested_optional_filter.js.map +0 -1
  672. package/dist/src/address_space.d.ts +0 -369
  673. package/dist/src/address_space.js +0 -1416
  674. package/dist/src/address_space.js.map +0 -1
  675. package/dist/src/address_space_change_event_tools.d.ts +0 -6
  676. package/dist/src/address_space_change_event_tools.js.map +0 -1
  677. package/dist/src/address_space_private.d.ts +0 -45
  678. package/dist/src/address_space_private.js.map +0 -1
  679. package/dist/src/alarms_and_conditions/condition.js.map +0 -1
  680. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +0 -18
  681. package/dist/src/alarms_and_conditions/condition_info_impl.js +0 -38
  682. package/dist/src/alarms_and_conditions/condition_info_impl.js.map +0 -1
  683. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +0 -269
  684. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +0 -699
  685. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +0 -1
  686. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +0 -12
  687. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +0 -66
  688. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +0 -1
  689. package/dist/src/alarms_and_conditions/index.d.ts +0 -16
  690. package/dist/src/alarms_and_conditions/index.js +0 -33
  691. package/dist/src/alarms_and_conditions/index.js.map +0 -1
  692. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +0 -42
  693. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +0 -243
  694. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +0 -1
  695. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +0 -80
  696. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +0 -415
  697. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +0 -1
  698. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +0 -18
  699. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +0 -33
  700. package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +0 -1
  701. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +0 -44
  702. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +0 -203
  703. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +0 -1
  704. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +0 -104
  705. package/dist/src/alarms_and_conditions/ua_condition_impl.js +0 -1017
  706. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +0 -1
  707. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +0 -19
  708. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +0 -39
  709. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +0 -1
  710. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +0 -25
  711. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +0 -55
  712. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +0 -1
  713. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +0 -11
  714. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +0 -12
  715. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +0 -1
  716. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +0 -23
  717. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +0 -87
  718. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +0 -1
  719. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +0 -10
  720. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +0 -8
  721. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +0 -1
  722. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +0 -26
  723. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +0 -208
  724. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +0 -1
  725. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +0 -23
  726. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +0 -55
  727. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +0 -1
  728. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +0 -27
  729. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +0 -173
  730. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +0 -1
  731. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +0 -43
  732. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +0 -168
  733. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +0 -1
  734. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +0 -18
  735. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +0 -18
  736. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +0 -1
  737. package/dist/src/apply_condition_refresh.d.ts +0 -4
  738. package/dist/src/apply_condition_refresh.js +0 -27
  739. package/dist/src/apply_condition_refresh.js.map +0 -1
  740. package/dist/src/base_node_impl.d.ts +0 -287
  741. package/dist/src/base_node_impl.js +0 -1538
  742. package/dist/src/base_node_impl.js.map +0 -1
  743. package/dist/src/base_node_private.d.ts +0 -87
  744. package/dist/src/base_node_private.js +0 -925
  745. package/dist/src/base_node_private.js.map +0 -1
  746. package/dist/src/check_value_rank_compatibility.js.map +0 -1
  747. package/dist/src/data_access/add_dataItem_stuff.js.map +0 -1
  748. package/dist/src/data_access/adjust_datavalue_status_code.d.ts +0 -7
  749. package/dist/src/data_access/adjust_datavalue_status_code.js.map +0 -1
  750. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +0 -35
  751. package/dist/src/data_access/ua_multistate_discrete_impl.js +0 -142
  752. package/dist/src/data_access/ua_multistate_discrete_impl.js.map +0 -1
  753. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +0 -51
  754. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +0 -302
  755. package/dist/src/data_access/ua_multistate_value_discrete_impl.js.map +0 -1
  756. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +0 -20
  757. package/dist/src/data_access/ua_two_state_discrete_impl.js +0 -163
  758. package/dist/src/data_access/ua_two_state_discrete_impl.js.map +0 -1
  759. package/dist/src/event_data.d.ts +0 -18
  760. package/dist/src/event_data.js +0 -70
  761. package/dist/src/event_data.js.map +0 -1
  762. package/dist/src/extension_object_array_node.d.ts +0 -34
  763. package/dist/src/extension_object_array_node.js +0 -262
  764. package/dist/src/extension_object_array_node.js.map +0 -1
  765. package/dist/src/get_basic_datatype.js.map +0 -1
  766. package/dist/src/historical_access/address_space_historical_data_node.d.ts +0 -21
  767. package/dist/src/historical_access/address_space_historical_data_node.js +0 -654
  768. package/dist/src/historical_access/address_space_historical_data_node.js.map +0 -1
  769. package/dist/src/idx_iterator.js.map +0 -1
  770. package/dist/src/index_current.d.ts +0 -50
  771. package/dist/src/index_current.js +0 -82
  772. package/dist/src/index_current.js.map +0 -1
  773. package/dist/src/namespace_impl.d.ts +0 -450
  774. package/dist/src/namespace_impl.js +0 -1876
  775. package/dist/src/namespace_impl.js.map +0 -1
  776. package/dist/src/namespace_private.d.ts +0 -31
  777. package/dist/src/namespace_private.js.map +0 -1
  778. package/dist/src/nodeid_manager.js +0 -249
  779. package/dist/src/nodeid_manager.js.map +0 -1
  780. package/dist/src/nodeset_tools/adjust_namespace_array.js.map +0 -1
  781. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +0 -33
  782. package/dist/src/nodeset_tools/construct_namespace_dependency.js +0 -347
  783. package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +0 -1
  784. package/dist/src/nodeset_tools/dump_to_bsd.d.ts +0 -2
  785. package/dist/src/nodeset_tools/dump_to_bsd.js +0 -164
  786. package/dist/src/nodeset_tools/dump_to_bsd.js.map +0 -1
  787. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +0 -12
  788. package/dist/src/nodeset_tools/nodeset_to_xml.js +0 -1381
  789. package/dist/src/nodeset_tools/nodeset_to_xml.js.map +0 -1
  790. package/dist/src/private_namespace.d.ts +0 -5
  791. package/dist/src/private_namespace.js.map +0 -1
  792. package/dist/src/reference_impl.d.ts +0 -43
  793. package/dist/src/reference_impl.js +0 -152
  794. package/dist/src/reference_impl.js.map +0 -1
  795. package/dist/src/role_permissions.js.map +0 -1
  796. package/dist/src/state_machine/finite_state_machine.d.ts +0 -70
  797. package/dist/src/state_machine/finite_state_machine.js +0 -574
  798. package/dist/src/state_machine/finite_state_machine.js.map +0 -1
  799. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +0 -39
  800. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +0 -249
  801. package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +0 -1
  802. package/dist/src/state_machine/ua_two_state_variable.d.ts +0 -55
  803. package/dist/src/state_machine/ua_two_state_variable.js +0 -323
  804. package/dist/src/state_machine/ua_two_state_variable.js.map +0 -1
  805. package/dist/src/tool_isSubtypeOf.d.ts +0 -18
  806. package/dist/src/tool_isSubtypeOf.js +0 -130
  807. package/dist/src/tool_isSubtypeOf.js.map +0 -1
  808. package/dist/src/ua_condition_type.js.map +0 -1
  809. package/dist/src/ua_data_type_impl.d.ts +0 -87
  810. package/dist/src/ua_data_type_impl.js +0 -393
  811. package/dist/src/ua_data_type_impl.js.map +0 -1
  812. package/dist/src/ua_method_impl.d.ts +0 -48
  813. package/dist/src/ua_method_impl.js +0 -280
  814. package/dist/src/ua_method_impl.js.map +0 -1
  815. package/dist/src/ua_object_impl.d.ts +0 -38
  816. package/dist/src/ua_object_impl.js +0 -214
  817. package/dist/src/ua_object_impl.js.map +0 -1
  818. package/dist/src/ua_object_type_impl.d.ts +0 -55
  819. package/dist/src/ua_object_type_impl.js +0 -131
  820. package/dist/src/ua_object_type_impl.js.map +0 -1
  821. package/dist/src/ua_reference_type_impl.d.ts +0 -42
  822. package/dist/src/ua_reference_type_impl.js +0 -146
  823. package/dist/src/ua_reference_type_impl.js.map +0 -1
  824. package/dist/src/ua_variable_impl.d.ts +0 -379
  825. package/dist/src/ua_variable_impl.js +0 -1940
  826. package/dist/src/ua_variable_impl.js.map +0 -1
  827. package/dist/src/ua_variable_impl_ext_obj.d.ts +0 -23
  828. package/dist/src/ua_variable_impl_ext_obj.js +0 -752
  829. package/dist/src/ua_variable_impl_ext_obj.js.map +0 -1
  830. package/dist/src/ua_variable_type_impl.d.ts +0 -79
  831. package/dist/src/ua_variable_type_impl.js +0 -276
  832. package/dist/src/ua_variable_type_impl.js.map +0 -1
  833. package/dist/src/ua_view_impl.d.ts +0 -18
  834. package/dist/src/ua_view_impl.js +0 -45
  835. package/dist/src/ua_view_impl.js.map +0 -1
  836. package/dist/src/validate_data_type_correctness.d.ts +0 -6
  837. package/dist/src/validate_data_type_correctness.js +0 -106
  838. package/dist/src/validate_data_type_correctness.js.map +0 -1
  839. package/source/address_space_ts.ts +0 -220
  840. package/source/continuation_points/continuation_point_manager.ts +0 -271
  841. package/source/helpers/argument_list.ts +0 -310
  842. package/source/helpers/call_helpers.ts +0 -100
  843. package/source/helpers/coerce_enum_value.ts +0 -33
  844. package/source/helpers/dump_tools.ts +0 -90
  845. package/source/helpers/ensure_secure_access.ts +0 -57
  846. package/source/helpers/multiform_func.ts +0 -78
  847. package/source/helpers/resolve_opaque_on_address_space.ts +0 -26
  848. package/source/index.ts +0 -72
  849. package/source/interfaces/alarms_and_conditions/condition_info_i.ts +0 -24
  850. package/source/interfaces/alarms_and_conditions/condition_snapshot.ts +0 -235
  851. package/source/interfaces/alarms_and_conditions/deviation_stuff.ts +0 -16
  852. package/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +0 -8
  853. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +0 -6
  854. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +0 -6
  855. package/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +0 -13
  856. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +0 -6
  857. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +0 -6
  858. package/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +0 -21
  859. package/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +0 -28
  860. package/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +0 -43
  861. package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +0 -36
  862. package/source/interfaces/alarms_and_conditions/ua_condition_ex.ts +0 -55
  863. package/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +0 -17
  864. package/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +0 -21
  865. package/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +0 -21
  866. package/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +0 -26
  867. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +0 -29
  868. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +0 -25
  869. package/source/interfaces/data_access/ua_multistate_discrete_ex.ts +0 -57
  870. package/source/interfaces/data_access/ua_multistate_value_discrete_ex.ts +0 -31
  871. package/source/interfaces/data_access/ua_two_state_discrete_ex.ts +0 -15
  872. package/source/interfaces/nodeset_loader_options.ts +0 -38
  873. package/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +0 -20
  874. package/source/interfaces/state_machine/ua_finite_state_machine_type.ts +0 -50
  875. package/source/interfaces/state_machine/ua_program_state_machine_type.ts +0 -14
  876. package/source/interfaces/state_machine/ua_shelved_state_machine_ex.ts +0 -35
  877. package/source/interfaces/state_machine/ua_state_machine_type.ts +0 -288
  878. package/source/loader/decode_xml_extension_object.ts +0 -80
  879. package/source/loader/ensure_datatype_extracted.ts +0 -122
  880. package/source/loader/generateAddressSpaceRaw.ts +0 -219
  881. package/source/loader/load_nodeset2.ts +0 -1275
  882. package/source/loader/make_xml_extension_object_parser.ts +0 -524
  883. package/source/loader/namespace_post_step.ts +0 -68
  884. package/source/loader/parsers/extension_object_parser.ts +0 -374
  885. package/source/loader/parsers/variant_parser.ts +0 -433
  886. package/source/loader/register_node_promoter.ts +0 -6
  887. package/source/namespace.ts +0 -7
  888. package/source/namespace_alarm_and_condition.ts +0 -78
  889. package/source/namespace_data_access.ts +0 -92
  890. package/source/namespace_machine_state.ts +0 -20
  891. package/source/pseudo_session.ts +0 -415
  892. package/source/session_context.ts +0 -717
  893. package/source/ua_interface.ts +0 -38
  894. package/source/ua_two_state_variable_ex.ts +0 -36
  895. package/src/_instantiate_helpers.ts +0 -197
  896. package/src/_mandatory_child_or_requested_optional_filter.ts +0 -100
  897. package/src/address_space.ts +0 -1631
  898. package/src/address_space_change_event_tools.ts +0 -177
  899. package/src/address_space_private.ts +0 -96
  900. package/src/alarms_and_conditions/condition_info_impl.ts +0 -44
  901. package/src/alarms_and_conditions/condition_snapshot_impl.ts +0 -792
  902. package/src/alarms_and_conditions/deviation_alarm_helper.ts +0 -73
  903. package/src/alarms_and_conditions/index.ts +0 -16
  904. package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +0 -331
  905. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +0 -479
  906. package/src/alarms_and_conditions/ua_base_event_impl.ts +0 -42
  907. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +0 -244
  908. package/src/alarms_and_conditions/ua_condition_impl.ts +0 -1261
  909. package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +0 -57
  910. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +0 -94
  911. package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +0 -20
  912. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +0 -109
  913. package/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +0 -25
  914. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +0 -244
  915. package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +0 -88
  916. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +0 -223
  917. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +0 -218
  918. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +0 -26
  919. package/src/apply_condition_refresh.ts +0 -29
  920. package/src/base_node_impl.ts +0 -1907
  921. package/src/base_node_private.ts +0 -1287
  922. package/src/data_access/adjust_datavalue_status_code.ts +0 -36
  923. package/src/data_access/ua_multistate_discrete_impl.ts +0 -189
  924. package/src/data_access/ua_multistate_value_discrete_impl.ts +0 -369
  925. package/src/data_access/ua_two_state_discrete_impl.ts +0 -184
  926. package/src/event_data.ts +0 -83
  927. package/src/extension_object_array_node.ts +0 -331
  928. package/src/historical_access/address_space_historical_data_node.ts +0 -842
  929. package/src/index_current.ts +0 -51
  930. package/src/namespace_impl.ts +0 -2380
  931. package/src/namespace_private.ts +0 -77
  932. package/src/nodeid_manager.ts +0 -293
  933. package/src/nodeset_tools/construct_namespace_dependency.ts +0 -375
  934. package/src/nodeset_tools/dump_to_bsd.ts +0 -201
  935. package/src/nodeset_tools/nodeset_to_xml.ts +0 -1652
  936. package/src/private_namespace.ts +0 -21
  937. package/src/reference_impl.ts +0 -171
  938. package/src/state_machine/finite_state_machine.ts +0 -668
  939. package/src/state_machine/ua_shelving_state_machine_ex.ts +0 -330
  940. package/src/state_machine/ua_two_state_variable.ts +0 -421
  941. package/src/tool_isSubtypeOf.ts +0 -160
  942. package/src/ua_data_type_impl.ts +0 -483
  943. package/src/ua_method_impl.ts +0 -362
  944. package/src/ua_object_impl.ts +0 -278
  945. package/src/ua_object_type_impl.ts +0 -179
  946. package/src/ua_reference_type_impl.ts +0 -170
  947. package/src/ua_variable_impl.ts +0 -2489
  948. package/src/ua_variable_impl_ext_obj.ts +0 -903
  949. package/src/ua_variable_type_impl.ts +0 -385
  950. package/src/ua_view_impl.ts +0 -53
  951. package/src/validate_data_type_correctness.ts +0 -124
  952. /package/{source → api}/helpers/adjust_browse_direction.ts +0 -0
  953. /package/{source → api}/helpers/make_optionals_map.ts +0 -0
  954. /package/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.ts +0 -0
  955. /package/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.ts +0 -0
  956. /package/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.ts +0 -0
  957. /package/{source → api}/interfaces/data_access/ua_y_array_item_ex.ts +0 -0
  958. /package/{source → api}/interfaces/extension_object_constructor.ts +0 -0
  959. /package/{source → api}/interfaces/i_condition_variable_type_setter_options.ts +0 -0
  960. /package/{source → api}/interfaces/i_set_state_options.ts +0 -0
  961. /package/{source → api}/interfaces/state_machine/ua_transition_ex.ts +0 -0
  962. /package/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.ts +0 -0
  963. /package/{source → api}/loader/make_semver_compatible.ts +0 -0
  964. /package/{source → api}/loader/parsers/localized_text_parser.ts +0 -0
  965. /package/{source → api}/loader/parsers/nodeid_parser.ts +0 -0
  966. /package/{source → api}/loader/parsers/qualified_name_parser.ts +0 -0
  967. /package/{source → api}/set_namespace_meta_data.ts +0 -0
  968. /package/{source → api}/ua_addin.ts +0 -0
  969. /package/{source → api}/ua_root_folder.ts +0 -0
  970. /package/{source → api}/xml_writer.ts +0 -0
  971. /package/dist/{source → api}/continuation_points/continuation_point_manager.d.ts +0 -0
  972. /package/dist/{source → api}/helpers/adjust_browse_direction.d.ts +0 -0
  973. /package/dist/{source → api}/helpers/adjust_browse_direction.js +0 -0
  974. /package/dist/{source → api}/helpers/argument_list.d.ts +0 -0
  975. /package/dist/{source → api}/helpers/call_helpers.d.ts +0 -0
  976. /package/dist/{source → api}/helpers/coerce_enum_value.js +0 -0
  977. /package/dist/{source → api}/helpers/dump_tools.d.ts +0 -0
  978. /package/dist/{source → api}/helpers/make_optionals_map.d.ts +0 -0
  979. /package/dist/{source → api}/helpers/make_optionals_map.js +0 -0
  980. /package/dist/{source → api}/helpers/multiform_func.d.ts +0 -0
  981. /package/dist/{source → api}/helpers/resolve_opaque_on_address_space.d.ts +0 -0
  982. /package/dist/{source → api}/interfaces/alarms_and_conditions/condition_snapshot.js +0 -0
  983. /package/dist/{source → api}/interfaces/alarms_and_conditions/deviation_stuff.js +0 -0
  984. /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +0 -0
  985. /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.js +0 -0
  986. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +0 -0
  987. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +0 -0
  988. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.js +0 -0
  989. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +0 -0
  990. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +0 -0
  991. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +0 -0
  992. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +0 -0
  993. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +0 -0
  994. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +0 -0
  995. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +0 -0
  996. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +0 -0
  997. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.d.ts +0 -0
  998. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.js +0 -0
  999. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +0 -0
  1000. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_condition_ex.js +0 -0
  1001. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +0 -0
  1002. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +0 -0
  1003. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +0 -0
  1004. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +0 -0
  1005. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +0 -0
  1006. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +0 -0
  1007. /package/dist/{source → api}/interfaces/data_access/ua_multistate_discrete_ex.js +0 -0
  1008. /package/dist/{source → api}/interfaces/data_access/ua_multistate_value_discrete_ex.js +0 -0
  1009. /package/dist/{source → api}/interfaces/data_access/ua_two_state_discrete_ex.js +0 -0
  1010. /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.d.ts +0 -0
  1011. /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.js +0 -0
  1012. /package/dist/{source → api}/interfaces/extension_object_constructor.d.ts +0 -0
  1013. /package/dist/{source → api}/interfaces/extension_object_constructor.js +0 -0
  1014. /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.d.ts +0 -0
  1015. /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.js +0 -0
  1016. /package/dist/{source → api}/interfaces/i_set_state_options.d.ts +0 -0
  1017. /package/dist/{source → api}/interfaces/i_set_state_options.js +0 -0
  1018. /package/dist/{source → api}/interfaces/nodeset_loader_options.js +0 -0
  1019. /package/dist/{source → api}/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +0 -0
  1020. /package/dist/{source → api}/interfaces/state_machine/ua_finite_state_machine_type.js +0 -0
  1021. /package/dist/{source → api}/interfaces/state_machine/ua_program_state_machine_type.js +0 -0
  1022. /package/dist/{source → api}/interfaces/state_machine/ua_shelved_state_machine_ex.js +0 -0
  1023. /package/dist/{source → api}/interfaces/state_machine/ua_state_machine_type.js +0 -0
  1024. /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.d.ts +0 -0
  1025. /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.js +0 -0
  1026. /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +0 -0
  1027. /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.js +0 -0
  1028. /package/dist/{source → api}/loader/ensure_datatype_extracted.d.ts +0 -0
  1029. /package/dist/{source → api}/loader/make_semver_compatible.d.ts +0 -0
  1030. /package/dist/{source → api}/loader/make_semver_compatible.js +0 -0
  1031. /package/dist/{source → api}/loader/make_xml_extension_object_parser.d.ts +0 -0
  1032. /package/dist/{source → api}/loader/namespace_post_step.d.ts +0 -0
  1033. /package/dist/{source → api}/loader/parsers/extension_object_parser.d.ts +0 -0
  1034. /package/dist/{source → api}/loader/parsers/localized_text_parser.d.ts +0 -0
  1035. /package/dist/{source → api}/loader/parsers/localized_text_parser.js +0 -0
  1036. /package/dist/{source → api}/loader/parsers/nodeid_parser.d.ts +0 -0
  1037. /package/dist/{source → api}/loader/parsers/nodeid_parser.js +0 -0
  1038. /package/dist/{source → api}/loader/parsers/qualified_name_parser.d.ts +0 -0
  1039. /package/dist/{source → api}/loader/parsers/qualified_name_parser.js +0 -0
  1040. /package/dist/{source → api}/namespace.js +0 -0
  1041. /package/dist/{source → api}/namespace_alarm_and_condition.js +0 -0
  1042. /package/dist/{source → api}/namespace_data_access.js +0 -0
  1043. /package/dist/{source → api}/namespace_machine_state.js +0 -0
  1044. /package/dist/{source → api}/set_namespace_meta_data.d.ts +0 -0
  1045. /package/dist/{source → api}/set_namespace_meta_data.js +0 -0
  1046. /package/dist/{source → api}/ua_addin.d.ts +0 -0
  1047. /package/dist/{source → api}/ua_addin.js +0 -0
  1048. /package/dist/{source → api}/ua_interface.d.ts +0 -0
  1049. /package/dist/{source → api}/ua_root_folder.d.ts +0 -0
  1050. /package/dist/{source → api}/ua_root_folder.js +0 -0
  1051. /package/dist/{source → api}/ua_two_state_variable_ex.js +0 -0
  1052. /package/dist/{source → api}/xml_writer.d.ts +0 -0
  1053. /package/dist/{source → api}/xml_writer.js +0 -0
  1054. /package/dist/{src → impl}/_instantiate_helpers.d.ts +0 -0
  1055. /package/dist/{src → impl}/_mandatory_child_or_requested_optional_filter.d.ts +0 -0
  1056. /package/dist/{src → impl}/address_space_change_event_tools.js +0 -0
  1057. /package/dist/{src → impl}/address_space_private.js +0 -0
  1058. /package/dist/{src → impl}/alarms_and_conditions/condition.d.ts +0 -0
  1059. /package/dist/{src → impl}/alarms_and_conditions/condition.js +0 -0
  1060. /package/dist/{src → impl}/check_value_rank_compatibility.d.ts +0 -0
  1061. /package/dist/{src → impl}/check_value_rank_compatibility.js +0 -0
  1062. /package/dist/{src → impl}/data_access/add_dataItem_stuff.d.ts +0 -0
  1063. /package/dist/{src → impl}/data_access/add_dataItem_stuff.js +0 -0
  1064. /package/dist/{src → impl}/data_access/adjust_datavalue_status_code.js +0 -0
  1065. /package/dist/{src → impl}/get_basic_datatype.d.ts +0 -0
  1066. /package/dist/{src → impl}/get_basic_datatype.js +0 -0
  1067. /package/dist/{src → impl}/idx_iterator.d.ts +0 -0
  1068. /package/dist/{src → impl}/idx_iterator.js +0 -0
  1069. /package/dist/{src → impl}/namespace_private.js +0 -0
  1070. /package/dist/{src → impl}/nodeid_manager.d.ts +0 -0
  1071. /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.d.ts +0 -0
  1072. /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.js +0 -0
  1073. /package/dist/{src → impl}/private_namespace.js +0 -0
  1074. /package/dist/{src → impl}/role_permissions.d.ts +0 -0
  1075. /package/dist/{src → impl}/role_permissions.js +0 -0
  1076. /package/dist/{src → impl}/ua_condition_type.d.ts +0 -0
  1077. /package/dist/{src → impl}/ua_condition_type.js +0 -0
  1078. /package/{src → impl}/alarms_and_conditions/condition.ts +0 -0
  1079. /package/{src → impl}/check_value_rank_compatibility.ts +0 -0
  1080. /package/{src → impl}/data_access/add_dataItem_stuff.ts +0 -0
  1081. /package/{src → impl}/get_basic_datatype.ts +0 -0
  1082. /package/{src → impl}/idx_iterator.ts +0 -0
  1083. /package/{src → impl}/nodeset_tools/adjust_namespace_array.ts +0 -0
  1084. /package/{src → impl}/role_permissions.ts +0 -0
  1085. /package/{src → impl}/ua_condition_type.ts +0 -0
@@ -1,1275 +0,0 @@
1
- /**
2
- * @module node-opcua-address-space
3
- */
4
-
5
- import { types } from "node:util";
6
- import chalk from "chalk";
7
- import type {
8
- AddReferenceTypeOptions,
9
- BaseNode,
10
- CreateNodeOptions,
11
- IAddressSpace,
12
- INamespace,
13
- RequiredModel,
14
- UADataType,
15
- UAVariable,
16
- UAVariableType
17
- } from "node-opcua-address-space-base";
18
- import { assert } from "node-opcua-assert";
19
- import { coerceBoolean, coerceByte, coerceInt32, StatusCodes } from "node-opcua-basic-types";
20
- import { DataTypeIds } from "node-opcua-constants";
21
- import {
22
- type AccessLevelFlag,
23
- type AccessRestrictionsFlag,
24
- coerceLocalizedText,
25
- type LocalizedText,
26
- makeAccessLevelFlag,
27
- makeAccessRestrictionsFlag,
28
- NodeClass,
29
- type QualifiedName,
30
- stringToQualifiedName
31
- } from "node-opcua-data-model";
32
- import { checkDebugFlag, make_debugLog, make_errorLog } from "node-opcua-debug";
33
- import type { ExtensionObject } from "node-opcua-extension-object";
34
- import { getBuiltInType } from "node-opcua-factory";
35
- import { NodeId, resolveNodeId } from "node-opcua-nodeid";
36
- import type { EnumFieldOptions, RolePermissionTypeOptions } from "node-opcua-types";
37
- import { DataType, Variant, VariantArrayType, type VariantOptions } from "node-opcua-variant";
38
- import { _definitionParser, ReaderState, type ReaderStateParserLike, Xml2Json, type XmlAttributes } from "node-opcua-xml2json";
39
- import semver from "semver";
40
- import type { AddressSpacePrivate } from "../../src/address_space_private";
41
- import type { NamespacePrivate } from "../../src/namespace_private";
42
- import type { StructureFieldOptionsEx } from "../../src/ua_data_type_impl";
43
- import type { NodeSetLoaderOptions } from "../interfaces/nodeset_loader_options";
44
- import { ensureDatatypeExtracted } from "./ensure_datatype_extracted";
45
- import { makeSemverCompatible } from "./make_semver_compatible";
46
- import { promoteObjectsAndVariables } from "./namespace_post_step";
47
- import { makeVariantReader } from "./parsers/variant_parser";
48
-
49
- const doDebug = checkDebugFlag(__filename);
50
- const debugLog = make_debugLog(__filename);
51
- const errorLog = make_errorLog(__filename);
52
-
53
- function __make_back_references(namespace: INamespace) {
54
- const namespaceP = namespace as NamespacePrivate;
55
- for (const node of namespaceP.nodeIterator()) {
56
- node.propagate_back_references();
57
- }
58
- for (const node of namespaceP.nodeIterator()) {
59
- node.install_extra_properties();
60
- }
61
- }
62
-
63
- function make_back_references(addressSpace: IAddressSpace): void {
64
- const addressSpacePrivate = addressSpace as AddressSpacePrivate;
65
- addressSpacePrivate.suspendBackReference = false;
66
- addressSpace.getNamespaceArray().map(__make_back_references);
67
- }
68
-
69
- function stringToUInt32Array(str: string): number[] | null {
70
- const array = str ? str.split(",").map((value: string) => parseInt(value, 10)) : null;
71
- return array;
72
- }
73
-
74
- function convertAccessLevel(accessLevel?: string | null): AccessLevelFlag {
75
- const accessLevelN: number = parseInt(accessLevel || "1", 10); // CurrentRead if not specified
76
- return makeAccessLevelFlag(accessLevelN);
77
- }
78
-
79
- /**
80
- * the XSD gives UserAccessLevel a default of 1, but a nodeset that raises AccessLevel and stays
81
- * silent on UserAccessLevel means "the user may do whatever the node allows", not "read only".
82
- * Falling back on accessLevel is what every other stack does and what node-opcua has always done;
83
- * what changes here is that an *explicit* UserAccessLevel is no longer dropped.
84
- */
85
- function convertUserAccessLevel(userAccessLevel: string | null | undefined, accessLevel: AccessLevelFlag): AccessLevelFlag {
86
- if (userAccessLevel === undefined || userAccessLevel === null || userAccessLevel === "") {
87
- return accessLevel;
88
- }
89
- return convertAccessLevel(userAccessLevel);
90
- }
91
-
92
- function convertAccessRestrictions(accessRestrictions?: string | null): AccessRestrictionsFlag | undefined {
93
- if (accessRestrictions === undefined || accessRestrictions === null || accessRestrictions === "") {
94
- // undefined is not None: it means "inherit the namespace default"
95
- return undefined;
96
- }
97
- const value = parseInt(accessRestrictions, 10);
98
- if (Number.isNaN(value)) {
99
- errorLog("load_nodeset2: ignoring invalid AccessRestrictions attribute", accessRestrictions);
100
- return undefined;
101
- }
102
- return makeAccessRestrictionsFlag(value);
103
- }
104
-
105
- type Task = (addressSpace: IAddressSpace) => Promise<void>;
106
-
107
- function makeDefaultVariant(
108
- addressSpace: IAddressSpace,
109
- dataTypeNode: NodeId,
110
- valueRank: number,
111
- arrayDimensions?: number[] | null
112
- ): VariantOptions | undefined {
113
- let variant: VariantOptions = { dataType: DataType.Null };
114
-
115
- const nodeDataType = addressSpace.findNode(dataTypeNode) as UADataType;
116
- if (nodeDataType?.basicDataType) {
117
- const basicDataType = nodeDataType.basicDataType;
118
- if (basicDataType === DataType.Variant) {
119
- /// we don't now what is the variant
120
- return undefined;
121
- }
122
-
123
- if (basicDataType === DataType.ExtensionObject) {
124
- return { dataType: DataType.ExtensionObject, value: null };
125
- }
126
- const builtInType = getBuiltInType(DataType[basicDataType]);
127
- if (builtInType === undefined || builtInType === null) {
128
- errorLog("Cannot find builtInType for ", basicDataType);
129
- return { dataType: DataType.Null };
130
- }
131
- const dv = builtInType.defaultValue;
132
- const value = typeof dv === "function" ? dv() : dv;
133
-
134
- let arrayType: VariantArrayType;
135
- /*
136
- * * n > 1 : the Value is an array with the specified number of dimensions.
137
- * * OneDimension (1): The value is an array with one dimension.
138
- * * OneOrMoreDimensions (0): The value is an array with one or more dimensions.
139
- * * Scalar (-1): The value is not an array.
140
- * * Any (-2): The value can be a scalar or an array with any number of dimensions.
141
- * * ScalarOrOneDimension (-3): The value can be a scalar or a one dimensional array.
142
- */
143
- switch (valueRank) {
144
- case -3: // ScalarOrOneDimension (-3):
145
- case -2: // any
146
- case -1:
147
- arrayType = VariantArrayType.Scalar;
148
- variant = { dataType: basicDataType, value, arrayType };
149
- break;
150
- case 0: // one or more dimension
151
- case 1: // one dimension
152
- arrayType = VariantArrayType.Array;
153
- variant = { dataType: basicDataType, value: [], arrayType };
154
- break;
155
- default:
156
- arrayType = VariantArrayType.Matrix;
157
- variant = { dataType: basicDataType, value: [], arrayType, dimensions: arrayDimensions };
158
- break;
159
- }
160
- }
161
- return variant;
162
- }
163
-
164
- /**
165
- * a Matrix variant is "uninitialized" when it carries no element (value=[]) but declares
166
- * non-zero dimensions (e.g. ArrayDimensions="256,128"). Such a variant is internally inconsistent
167
- * (value.length !== product(dimensions)) and, if serialized, produces a spec-violating wire form.
168
- */
169
- function isUninitializedMatrix(value: VariantOptions): boolean {
170
- if (value.arrayType !== VariantArrayType.Matrix) {
171
- return false;
172
- }
173
- const length = Array.isArray(value.value) ? value.value.length : 0;
174
- if (length !== 0) {
175
- return false;
176
- }
177
- const dimensions = value.dimensions;
178
- if (!dimensions || dimensions.length === 0) {
179
- return false;
180
- }
181
- const product = dimensions.reduce((n, p) => n * p, 1);
182
- return product > 0;
183
- }
184
-
185
- export interface NodeSet2ParserEngine {
186
- addNodeSet: (xmlData: string) => Promise<void>;
187
- terminate: () => Promise<void>;
188
- }
189
-
190
- function makeNodeSetParserEngine(addressSpace: IAddressSpace, options: NodeSetLoaderOptions): NodeSet2ParserEngine {
191
- const addressSpace1 = addressSpace as AddressSpacePrivate;
192
- addressSpace1.suspendBackReference = true;
193
-
194
- options.loadDeprecatedNodes = options.loadDeprecatedNodes === undefined ? true : options.loadDeprecatedNodes;
195
- options.loadDraftNodes = options.loadDraftNodes || false;
196
-
197
- const postTasks: Task[] = [];
198
- const postTasks0_InitializeVariable: Task[] = [];
199
- const postTasks0_DecodePojoString: Task[] = [];
200
- const postTasks1_InitializeVariable: Task[] = [];
201
- const postTasks2_AssignedExtensionObjectToDataValue: Task[] = [];
202
-
203
- const aliasMap: Map<string, NodeId> = new Map();
204
-
205
- /**
206
- * @param aliasName
207
- */
208
- function addAlias(aliasName: string, nodeIdInXmlContext: string) {
209
- assert(typeof nodeIdInXmlContext === "string");
210
- const nodeId = _translateNodeId(nodeIdInXmlContext);
211
- assert(nodeId instanceof NodeId);
212
- aliasMap.set(aliasName, nodeId);
213
- addressSpace1.getNamespace(nodeId.namespace).addAlias(aliasName, nodeId);
214
- }
215
-
216
- const namespaceUriTranslationMap: Map<number, number> = new Map();
217
- let namespaceCounter = 0;
218
- const foundNamespaceMap: Map<string, NamespacePrivate> = new Map();
219
- let models: Model[] = [];
220
- let performedCalled = false;
221
-
222
- function _reset_namespace_translation() {
223
- // c8 ignore next
224
- doDebug && debugLog("_reset_namespace_translation");
225
- namespaceUriTranslationMap.clear();
226
- foundNamespaceMap.clear();
227
- namespaceCounter = 0;
228
- aliasMap.clear();
229
- models = [];
230
- performedCalled = false;
231
- }
232
-
233
- function _translateNamespaceIndex(innerIndex: number) {
234
- const namespaceIndex = namespaceUriTranslationMap.get(innerIndex);
235
-
236
- // c8 ignore next
237
- if (namespaceIndex === undefined) {
238
- errorLog("Error; namespace_uri_translation", namespaceUriTranslationMap.entries());
239
- throw new Error(`_translateNamespaceIndex() ! Cannot find namespace definition for index ${innerIndex}`);
240
- }
241
- return namespaceIndex;
242
- }
243
-
244
- function _internal_addReferenceType(params: AddReferenceTypeOptions) {
245
- // c8 ignore next
246
- if (!(params.nodeId instanceof NodeId)) {
247
- throw new Error("invalid param");
248
- } // already translated
249
-
250
- const namespace = addressSpace1.getNamespace(params.nodeId?.namespace);
251
- namespace.addReferenceType(params);
252
- }
253
-
254
- function _internal_createNode(params: CreateNodeOptions): BaseNode {
255
- // c8 ignore next
256
- if (!(params.nodeId instanceof NodeId)) {
257
- throw new Error("invalid param expecting a valid nodeId");
258
- } // already translated
259
-
260
- const namespace = addressSpace1.getNamespace(params.nodeId.namespace);
261
- return namespace.internalCreateNode(params) as BaseNode;
262
- }
263
-
264
- function _register_namespace_uri_in_translation_table(namespaceUri: string): void {
265
- if (foundNamespaceMap.has(namespaceUri)) {
266
- return;
267
- }
268
- const namespace = addressSpace1.getNamespace(namespaceUri);
269
-
270
- // c8 ignore next
271
- if (!namespace) {
272
- throw new Error(
273
- "cannot find namespace for " +
274
- namespaceUri +
275
- "\nplease make sure to initialize your address space with the corresponding nodeset files"
276
- );
277
- }
278
- foundNamespaceMap.set(namespaceUri, namespace);
279
-
280
- const index_in_xml = namespaceCounter;
281
- namespaceCounter++;
282
- namespaceUriTranslationMap.set(index_in_xml, namespace.index);
283
-
284
- doDebug &&
285
- debugLog(
286
- " _register_namespace_uri = ",
287
- namespaceUri,
288
- "index in Xml=",
289
- index_in_xml,
290
- " index in addressSpace",
291
- namespace.index
292
- );
293
- }
294
-
295
- function _add_namespace(model: Model) {
296
- if (model.requiredModels.length > 0) {
297
- // check that required models exist already in the address space
298
- for (const requiredModel of model.requiredModels) {
299
- const existingNamespace = addressSpace1.getNamespace(requiredModel.modelUri);
300
-
301
- // c8 ignore next
302
- if (!existingNamespace) {
303
- errorLog(
304
- "Please ensure that the required namespace",
305
- requiredModel.modelUri,
306
- "is loaded first when loading",
307
- model.modelUri
308
- );
309
- throw new Error(`LoadNodeSet : Cannot find namespace for ${requiredModel.modelUri}`);
310
- }
311
- /**
312
- * from https://reference.opcfoundation.org/Core/docs/Part6/F.2/
313
- * The version of the model defined in the UANodeSet.
314
- * This is a human-readable string and not intended for programmatic comparisons.
315
- */
316
- const isLowerVersion = (existingVersion: string, requiredVersion: string): boolean => {
317
- const existingSemver = makeSemverCompatible(existingVersion);
318
- const requiredSemver = makeSemverCompatible(requiredVersion);
319
- return semver.lt(existingSemver, requiredSemver);
320
- };
321
-
322
- if (isLowerVersion(existingNamespace.version, requiredModel.version)) {
323
- errorLog(
324
- "Expecting ",
325
- requiredModel.modelUri,
326
- " with version to be at least",
327
- requiredModel.version,
328
- " but namespace version is ",
329
- existingNamespace.version
330
- );
331
- }
332
- if (existingNamespace.publicationDate.getTime() < requiredModel.publicationDate.getTime()) {
333
- errorLog(
334
- "Expecting ",
335
- requiredModel.modelUri,
336
- " with publicationDate at least ",
337
- requiredModel.publicationDate.toUTCString(),
338
- " but namespace publicationDate is ",
339
- existingNamespace.publicationDate.toUTCString()
340
- );
341
- }
342
- }
343
- }
344
-
345
- let namespace: NamespacePrivate;
346
- // Model must not be already registered
347
- const existingNamespace = addressSpace1.getNamespace(model.modelUri);
348
- if (existingNamespace) {
349
- namespace = existingNamespace;
350
- } else {
351
- namespace = addressSpace1.registerNamespace(model.modelUri);
352
- namespace.setRequiredModels(model.requiredModels);
353
- }
354
-
355
- namespace.version = model.version;
356
- namespace.publicationDate = model.publicationDate || namespace.publicationDate;
357
- return namespace;
358
- }
359
-
360
- const reg = /ns=([0-9]+);(.*)/;
361
-
362
- function _translateNodeId(nodeId: string): NodeId {
363
- if (aliasMap.has(nodeId)) {
364
- // note alias are already translated to the right namespaces
365
- const aliasedNodeId = aliasMap.get(nodeId);
366
- if (aliasedNodeId) {
367
- return aliasedNodeId;
368
- }
369
- }
370
- const m = nodeId.match(reg);
371
- if (m) {
372
- const namespaceIndex = _translateNamespaceIndex(parseInt(m[1], 10));
373
- nodeId = `ns=${namespaceIndex};${m[2]}`;
374
- }
375
- return resolveNodeId(nodeId);
376
- }
377
-
378
- function _translateReferenceType(refType: string): NodeId {
379
- return _translateNodeId(refType);
380
- }
381
-
382
- /**
383
- * convert a nodeId
384
- *
385
- *
386
- * @example
387
- * convertToNodeId("String") => resolve alias
388
- * convertToNodeId("i=58") => resolve to nodeId in namespace 0
389
- * convertToNodeId("ns=1;i=100") => convert namespace from xml namespace
390
- * table to corresponding namespace in addressSpace
391
- */
392
- function convertToNodeId(nodeIdLike: string | null): NodeId | null {
393
- // treat alias
394
- if (!nodeIdLike) {
395
- return null;
396
- }
397
- const nodeId = _translateNodeId(nodeIdLike);
398
- return addressSpace1.resolveNodeId(nodeId);
399
- }
400
-
401
- function convertQualifiedName(qualifiedName: string): QualifiedName {
402
- const qn = stringToQualifiedName(qualifiedName);
403
- // Xx if (qn.namespaceIndex > 0) {
404
- qn.namespaceIndex = _translateNamespaceIndex(qn.namespaceIndex);
405
- // Xx }
406
- return qn;
407
- }
408
-
409
- const state_Alias = {
410
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
411
- finish(this: any) {
412
- addAlias(this.attrs.Alias, this.text);
413
- }
414
- };
415
-
416
- const references_parser = {
417
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
418
- init(this: any) {
419
- this.parent.obj.references = [];
420
- this.array = this.parent.obj.references;
421
- },
422
- parser: {
423
- Reference: {
424
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
425
- finish(this: any) {
426
- this.parent.array.push({
427
- isForward: this.attrs.IsForward === undefined ? true : this.attrs.IsForward !== "false",
428
- nodeId: convertToNodeId(this.text),
429
- referenceType: _translateReferenceType(this.attrs.ReferenceType)
430
- });
431
- }
432
- }
433
- }
434
- };
435
- // #region access policy (AccessRestrictions / HasNoPermissions / RolePermissions)
436
- // two independent switches: who may do what is a property of the model and applies by
437
- // default, whereas how the channel must be secured is a property of the deployment and
438
- // is opt-in. See NodeSetLoaderOptions.
439
- const applyRolePermissions = (options.permissions ?? "apply") === "apply";
440
- const applyAccessRestrictions = (options.accessRestrictions ?? "ignore") === "apply";
441
-
442
- interface INodePermissions {
443
- accessRestrictions?: AccessRestrictionsFlag;
444
- rolePermissions?: RolePermissionTypeOptions[];
445
- }
446
-
447
- /**
448
- * read the access policy carried by the attributes of any UANode.
449
- * The `<RolePermissions>` element is handled separately by `role_permissions_parser`.
450
- */
451
- function convertNodePermissions(attrs: XmlAttributes): INodePermissions {
452
- return {
453
- accessRestrictions: applyAccessRestrictions ? convertAccessRestrictions(attrs.AccessRestrictions) : undefined,
454
- // HasNoPermissions="true" is not the same as an absent <RolePermissions>: the former
455
- // grants nothing at all, the latter inherits the namespace default. An empty array
456
- // is how BaseNode distinguishes the two.
457
- rolePermissions: applyRolePermissions && coerceBoolean(attrs.HasNoPermissions) ? [] : undefined
458
- };
459
- }
460
-
461
- const role_permissions_parser = {
462
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
463
- init(this: any) {
464
- this.array = [] as RolePermissionTypeOptions[];
465
- if (applyRolePermissions) {
466
- this.parent.obj.rolePermissions = this.array;
467
- }
468
- },
469
- parser: {
470
- RolePermission: {
471
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
472
- finish(this: any) {
473
- this.parent.array.push({
474
- roleId: _translateNodeId(this.text.trim()),
475
- permissions: parseInt(this.attrs.Permissions || "0", 10)
476
- });
477
- }
478
- }
479
- }
480
- };
481
- // #endregion
482
- // #region UAObject
483
- const state_UAObject = {
484
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
485
- init(this: any, _name: string, attrs: XmlAttributes) {
486
- _perform();
487
-
488
- this.obj = {
489
- nodeClass: NodeClass.Object,
490
- isAbstract: coerceBoolean(attrs.IsAbstract),
491
- nodeId: convertToNodeId(attrs.NodeId) || null,
492
- browseName: convertQualifiedName(attrs.BrowseName),
493
- eventNotifier: coerceByte(attrs.EventNotifier) || 0,
494
- symbolicName: attrs.SymbolicName || null,
495
- ...convertNodePermissions(attrs)
496
- };
497
-
498
- this.isDraft = attrs.ReleaseStatus === "Draft";
499
- this.isDeprecated = attrs.ReleaseStatus === "Deprecated";
500
- },
501
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
502
- finish(this: any) {
503
- if (canIgnore({ isDraft: this.isDraft, isDeprecated: this.isDeprecated }, this.obj)) {
504
- return;
505
- }
506
- _internal_createNode(this.obj);
507
- },
508
- parser: {
509
- DisplayName: {
510
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
511
- finish(this: any) {
512
- this.parent.obj.displayName = this.text;
513
- }
514
- },
515
-
516
- Description: {
517
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
518
- finish(this: any) {
519
- this.parent.obj.description = this.text;
520
- }
521
- },
522
-
523
- References: references_parser,
524
- RolePermissions: role_permissions_parser
525
- }
526
- };
527
- // #endregion
528
- // #region UAObjectType
529
- const state_UAObjectType = {
530
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
531
- init(this: any, _name: string, attrs: XmlAttributes) {
532
- _perform();
533
-
534
- this.obj = {
535
- nodeClass: NodeClass.ObjectType,
536
- isAbstract: coerceBoolean(attrs.IsAbstract),
537
- nodeId: convertToNodeId(attrs.NodeId) || null,
538
- browseName: convertQualifiedName(attrs.BrowseName),
539
- eventNotifier: coerceByte(attrs.EventNotifier) || 0,
540
- ...convertNodePermissions(attrs)
541
- };
542
- },
543
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
544
- finish(this: any) {
545
- _internal_createNode(this.obj);
546
- },
547
- parser: {
548
- DisplayName: {
549
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
550
- finish(this: any) {
551
- this.parent.obj.displayName = this.text;
552
- }
553
- },
554
-
555
- Description: {
556
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
557
- finish(this: any) {
558
- this.parent.obj.description = this.text;
559
- }
560
- },
561
-
562
- References: references_parser,
563
- RolePermissions: role_permissions_parser
564
- }
565
- };
566
- // #endregion
567
- // #region UAReferenceType
568
- const state_UAReferenceType = {
569
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
570
- init(this: any, _name: string, attrs: XmlAttributes) {
571
- _perform();
572
-
573
- this.obj = {
574
- nodeClass: NodeClass.ReferenceType,
575
- isAbstract: coerceBoolean(attrs.IsAbstract),
576
- nodeId: convertToNodeId(attrs.NodeId) || null,
577
- browseName: convertQualifiedName(attrs.BrowseName),
578
- ...convertNodePermissions(attrs)
579
- };
580
- },
581
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
582
- finish(this: any) {
583
- _internal_addReferenceType(this.obj);
584
- },
585
- parser: {
586
- DisplayName: {
587
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
588
- finish(this: any) {
589
- this.parent.obj.displayName = this.text;
590
- }
591
- },
592
-
593
- Description: {
594
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
595
- finish(this: any) {
596
- this.parent.obj.description = this.text;
597
- }
598
- },
599
-
600
- InverseName: {
601
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
602
- finish(this: any) {
603
- this.parent.obj.inverseName = this.text;
604
- }
605
- },
606
- References: references_parser,
607
- RolePermissions: role_permissions_parser
608
- }
609
- };
610
-
611
- interface StateUADataType extends ReaderState {
612
- obj: Partial<CreateNodeOptions> & {
613
- browseName: QualifiedName;
614
- nodeClass: NodeClass.DataType;
615
- symbolicName: string | null;
616
- partialDefinition: StructureFieldOptionsEx[] | EnumFieldOptions[];
617
- };
618
- isDraft: boolean;
619
- isDeprecated: boolean;
620
- nodeId: NodeId;
621
- definitionFields: StructureFieldOptionsEx[] | EnumFieldOptions[];
622
- }
623
-
624
- // #endregion
625
- // #region UADataType
626
- const pendingSimpleTypeToRegister: { name: string; dataTypeNodeId: NodeId }[] = [];
627
- const state_UADataType = {
628
- init(this: StateUADataType, _name: string, attrs: XmlAttributes) {
629
- _perform();
630
-
631
- this.obj = {
632
- nodeClass: NodeClass.DataType,
633
- isAbstract: coerceBoolean(attrs.IsAbstract) || false,
634
- nodeId: convertToNodeId(attrs.NodeId) || undefined,
635
- browseName: convertQualifiedName(attrs.BrowseName),
636
- displayName: "",
637
- description: "",
638
- symbolicName: attrs.SymbolicName,
639
- partialDefinition: [],
640
- ...convertNodePermissions(attrs)
641
- };
642
-
643
- this.isDraft = attrs.ReleaseStatus === "Draft";
644
- this.isDeprecated = attrs.ReleaseStatus === "Deprecated";
645
-
646
- this.definitionFields = [];
647
- },
648
- finish(this: StateUADataType) {
649
- if (canIgnore({ isDraft: this.isDraft, isDeprecated: this.isDeprecated }, this.obj)) {
650
- return;
651
- }
652
-
653
- const definitionFields = this.definitionFields as StructureFieldOptionsEx[] | EnumFieldOptions[];
654
-
655
- // replace DataType with nodeId, and description to LocalizedText
656
- // biome-ignore lint/suspicious/noExplicitAny: fields transition from raw XML strings to typed objects
657
- for (const x of definitionFields as any[]) {
658
- if (x.description) {
659
- x.description = { text: x.description };
660
- }
661
- if (x.displayName) {
662
- x.displayName = { text: x.displayName };
663
- }
664
- if (x.dataType) {
665
- x.dataType = convertToNodeId(x.dataType);
666
- } else {
667
- x.dataType = resolveNodeId(DataTypeIds.BaseDataType);
668
- }
669
- if (x.allowSubTypes) {
670
- x.allowSubTypes = coerceBoolean(x.allowSubTypes);
671
- }
672
- }
673
-
674
- this.obj.partialDefinition = definitionFields;
675
-
676
- let capturedDataTypeNode: UADataType | undefined = _internal_createNode(this.obj) as UADataType;
677
- const processBasicDataType = async (_addressSpace2: IAddressSpace) => {
678
- if (!capturedDataTypeNode) return;
679
- const definitionName = capturedDataTypeNode.browseName.name || "";
680
- const isStructure = capturedDataTypeNode.isStructure();
681
- const isEnumeration = capturedDataTypeNode.isEnumeration();
682
- if (!isEnumeration && !isStructure && capturedDataTypeNode.nodeId.namespace !== 0) {
683
- // add a custom basic type that is not a structure nor a enumeration
684
- pendingSimpleTypeToRegister.push({ name: definitionName, dataTypeNodeId: capturedDataTypeNode.nodeId });
685
- }
686
- capturedDataTypeNode = undefined;
687
- };
688
- postTasks.push(processBasicDataType);
689
- },
690
- parser: {
691
- DisplayName: {
692
- finish(this: { parent: StateUADataType; text: string }) {
693
- this.parent.obj.displayName = this.text;
694
- }
695
- },
696
-
697
- Description: {
698
- finish(this: { parent: StateUADataType; text: string }) {
699
- this.parent.obj.description = this.text;
700
- }
701
- },
702
- References: references_parser,
703
- RolePermissions: role_permissions_parser,
704
-
705
- Definition: _definitionParser
706
- }
707
- };
708
- // #endregion
709
- const canIgnore = (
710
- { isDraft, isDeprecated }: { isDraft: boolean; isDeprecated: boolean },
711
- node: { browseName: QualifiedName; nodeClass: NodeClass }
712
- ) => {
713
- if (isDraft && !options.loadDraftNodes) {
714
- // c8 ignore next
715
- doDebug && debugLog("Ignoring Draft =", NodeClass[node.nodeClass], node.browseName.toString());
716
- return true;
717
- }
718
- if (isDeprecated && !options.loadDeprecatedNodes) {
719
- // c8 ignore next
720
- doDebug && debugLog("Ignoring Deprecate =", NodeClass[node.nodeClass], node.browseName.toString());
721
- return true;
722
- }
723
- return false;
724
- };
725
-
726
- function fixExtensionObjectAndArray(obj: { nodeId: NodeId }, deferred: () => ExtensionObject | ExtensionObject[] | null) {
727
- // let's create the mechanism that postpone the assignment of the extension object
728
- const capturedNode = obj;
729
- const task = async (addressSpace2: IAddressSpace) => {
730
- const extensionObjOrArray = deferred();
731
- const nodeId = capturedNode.nodeId;
732
- assert(nodeId, "expecting a nodeid");
733
- const node = addressSpace2.findNode(nodeId);
734
- if (!node) return;
735
-
736
- if (node.nodeClass === NodeClass.Variable) {
737
- const v = node as UAVariable;
738
- assert(v.getBasicDataType() === DataType.ExtensionObject, "expecting an extension object");
739
- if (extensionObjOrArray != null) {
740
- v.bindExtensionObject(extensionObjOrArray, { createMissingProp: false });
741
- }
742
- } else if (node.nodeClass === NodeClass.VariableType) {
743
- const v = node as UAVariableType;
744
- (v as unknown as { value: { value: unknown } }).value.value = extensionObjOrArray;
745
- }
746
- };
747
- postTasks2_AssignedExtensionObjectToDataValue.push(task);
748
- }
749
- // #region UAVariable
750
- interface IUAVariableProps {
751
- nodeId: NodeId | null;
752
- value?: VariantOptions;
753
- nodeClass: NodeClass;
754
- browseName: QualifiedName;
755
- displayName?: LocalizedText;
756
- description?: LocalizedText;
757
- parentNodeId: NodeId | null;
758
- dataType: NodeId | null;
759
- valueRank: number;
760
- arrayDimensions: number[] | null;
761
- minimumSamplingInterval: number;
762
- historizing: boolean;
763
- accessLevel: number;
764
- userAccessLevel: number;
765
- accessRestrictions?: AccessRestrictionsFlag;
766
- rolePermissions?: RolePermissionTypeOptions[];
767
- }
768
- type ReaderUAVariableL1 = ReaderStateParserLike & { obj: IUAVariableProps; isDraft: boolean; isDeprecated: boolean };
769
- type ReaderUAVariableL2 = ReaderStateParserLike & { parent: ReaderUAVariableL1; text: string };
770
-
771
- const state_UAVariable = {
772
- init(this: ReaderUAVariableL1, _name: string, attrs: XmlAttributes) {
773
- _perform();
774
-
775
- const valueRank = attrs.ValueRank === undefined ? -1 : coerceInt32(attrs.ValueRank);
776
- const accessLevel = convertAccessLevel(attrs.AccessLevel);
777
- const nodeId = convertToNodeId(attrs.NodeId);
778
- this.obj = {
779
- value: undefined, // { dataType: DataType.Null },
780
- nodeClass: NodeClass.Variable,
781
- browseName: convertQualifiedName(attrs.BrowseName),
782
- parentNodeId: convertToNodeId(attrs.ParentNodeId),
783
- dataType: convertToNodeId(attrs.DataType),
784
- //description: null,
785
- // displayName: coerceLocalizedText(attrs.BrowseName)!,
786
- valueRank,
787
- arrayDimensions: valueRank <= 0 ? null : stringToUInt32Array(attrs.ArrayDimensions),
788
- minimumSamplingInterval: attrs.MinimumSamplingInterval ? parseInt(attrs.MinimumSamplingInterval, 10) : 0,
789
- historizing: coerceBoolean(attrs.Historizing),
790
- nodeId,
791
- accessLevel: accessLevel,
792
- userAccessLevel: convertUserAccessLevel(attrs.UserAccessLevel, accessLevel),
793
- ...convertNodePermissions(attrs)
794
- };
795
- this.isDraft = attrs.ReleaseStatus === "Draft" || false;
796
- this.isDeprecated = attrs.ReleaseStatus === "Deprecated" || false;
797
- },
798
- finish(this: ReaderUAVariableL1) {
799
- if (canIgnore({ isDraft: this.isDraft, isDeprecated: this.isDeprecated }, this.obj)) {
800
- return;
801
- }
802
-
803
- /*
804
- // set default value based on obj data Type
805
- if (this.obj.value === undefined) {
806
- const dataTypeNode = this.obj.dataType;
807
- const valueRank = this.obj.valueRank;
808
- this.obj.value = makeDefaultVariant(addressSpace, dataTypeNode, valueRank);
809
- }
810
- */
811
- let capturedVariable: UAVariable | undefined;
812
- if (this.obj.value && this.obj.value.dataType !== DataType.Null) {
813
- let capturedValue: VariantOptions | undefined = this.obj.value;
814
- const task = async (_addressSpace2: IAddressSpace) => {
815
- if (!capturedVariable) return;
816
- const cv = capturedVariable;
817
- // biome-ignore lint/correctness/noConstantCondition: deliberate debug on/off toggle, not dead code
818
- if (false && doDebug) {
819
- // c8 ignore next
820
- doDebug && debugLog("1 setting value to ", cv.nodeId.toString(), new Variant(capturedValue).toString());
821
- }
822
- cv.setValueFromSource(capturedValue as VariantOptions);
823
- capturedValue = undefined;
824
- capturedVariable = undefined;
825
- };
826
- if (capturedValue.dataType !== DataType.ExtensionObject) {
827
- postTasks0_InitializeVariable.push(task);
828
- } else {
829
- // do them later when every thing is created
830
- postTasks1_InitializeVariable.push(task);
831
- }
832
- } else {
833
- const task = async (_addressSpace2: IAddressSpace) => {
834
- if (!capturedVariable) return;
835
- const cv = capturedVariable;
836
- const dataTypeNode = cv.dataType;
837
- const valueRank = cv.valueRank;
838
- const arrayDimensions = cv.arrayDimensions;
839
-
840
- const value = makeDefaultVariant(addressSpace, dataTypeNode, valueRank, arrayDimensions);
841
- if (value) {
842
- // biome-ignore lint/correctness/noConstantCondition: deliberate debug on/off toggle, not dead code
843
- if (false && doDebug) {
844
- // c8 ignore next
845
- doDebug && debugLog("2 setting value to ", cv.nodeId.toString(), value);
846
- }
847
- // a Matrix variable declared with fixed ArrayDimensions but no <Value> is built with
848
- // an empty value (value=[]) yet non-zero declared dimensions. This is an *uninitialized*
849
- // and internally inconsistent matrix (value.length !== product(dimensions)). Advertising
850
- // it as Good would put a spec-violating matrix on the wire (ArraySize 0 + non-empty
851
- // ArrayDimensions), so flag it as BadWaitingForInitialData like any other missing value.
852
- if (value.dataType === DataType.Null || isUninitializedMatrix(value)) {
853
- cv.setValueFromSource(value, StatusCodes.BadWaitingForInitialData);
854
- } else {
855
- cv.setValueFromSource(value, StatusCodes.Good);
856
- }
857
- }
858
- capturedVariable = undefined;
859
- };
860
- postTasks0_InitializeVariable.push(task);
861
- }
862
- this.obj.value = Object.create(null);
863
- capturedVariable = _internal_createNode(this.obj) as UAVariable;
864
- },
865
- parser: {
866
- DisplayName: {
867
- finish(this: ReaderUAVariableL2) {
868
- this.parent.obj.displayName = coerceLocalizedText(this.text) ?? undefined;
869
- }
870
- },
871
-
872
- Description: {
873
- finish(this: ReaderUAVariableL2) {
874
- this.parent.obj.description = coerceLocalizedText(this.text) ?? undefined;
875
- }
876
- },
877
- References: references_parser,
878
- RolePermissions: role_permissions_parser,
879
-
880
- Value: makeVariantReader<ReaderUAVariableL2>(
881
- (self: ReaderUAVariableL2, data: VariantOptions) => {
882
- self.parent.obj.value = data;
883
- },
884
- (self: ReaderUAVariableL2, data: VariantOptions, deferredTask) => {
885
- self.parent.obj.value = data;
886
- const capturedVariable = { nodeId: self.parent.obj.nodeId ?? NodeId.nullNodeId };
887
- fixExtensionObjectAndArray(capturedVariable, deferredTask);
888
- },
889
- (task) => {
890
- postTasks0_DecodePojoString.push(task);
891
- },
892
- _translateNodeId
893
- )
894
- }
895
- };
896
- // #endregion
897
- // #region UAVariableType
898
- interface IUAVariableTypeProps extends Omit<IUAVariableProps, "accessLevel" | "userAccessLevel"> {
899
- isAbstract: boolean;
900
- }
901
- type ReaderUAVariableTypeL1 = ReaderStateParserLike & { obj: IUAVariableTypeProps; isDraft: boolean; isDeprecated: boolean };
902
- type ReaderUAVariableTypeL2 = ReaderStateParserLike & { parent: ReaderUAVariableTypeL1; text: string };
903
- const state_UAVariableType = {
904
- init(this: ReaderUAVariableTypeL1, _name: string, attrs: XmlAttributes) {
905
- _perform();
906
- const valueRank = coerceInt32(attrs.ValueRank) || -1;
907
- this.obj = {
908
- value: undefined, // { dataType: DataType.Null },
909
- isAbstract: coerceBoolean(attrs.IsAbstract),
910
- nodeClass: NodeClass.VariableType,
911
- browseName: convertQualifiedName(attrs.BrowseName),
912
- parentNodeId: convertToNodeId(attrs.ParentNodeId) || null,
913
- dataType: convertToNodeId(attrs.DataType) || null,
914
- valueRank,
915
- arrayDimensions: valueRank <= 0 ? null : stringToUInt32Array(attrs.ArrayDimensions),
916
- minimumSamplingInterval: attrs.MinimumSamplingInterval ? parseInt(attrs.MinimumSamplingInterval, 10) : 0,
917
- // UAVariableType has no Historizing attribute in the XSD: keep it false
918
- historizing: false,
919
- nodeId: convertToNodeId(attrs.NodeId) || null,
920
- ...convertNodePermissions(attrs)
921
- };
922
- this.isDraft = attrs.ReleaseStatus === "Draft";
923
- this.isDeprecated = attrs.ReleaseStatus === "Deprecated";
924
- },
925
- finish(this: ReaderUAVariableTypeL1) {
926
- if (canIgnore({ isDraft: this.isDraft, isDeprecated: this.isDeprecated }, this.obj)) {
927
- return;
928
- }
929
- _internal_createNode(this.obj);
930
- },
931
- parser: {
932
- DisplayName: {
933
- finish(this: ReaderUAVariableTypeL2) {
934
- this.parent.obj.displayName = coerceLocalizedText(this.text || "") ?? undefined;
935
- }
936
- },
937
-
938
- Description: {
939
- finish(this: ReaderUAVariableTypeL2) {
940
- this.parent.obj.description = coerceLocalizedText(this.text || "") ?? undefined;
941
- }
942
- },
943
- References: references_parser,
944
- RolePermissions: role_permissions_parser,
945
- Value: makeVariantReader<ReaderUAVariableTypeL2>(
946
- (self: ReaderUAVariableTypeL2, data: VariantOptions) => {
947
- self.parent.obj.value = data;
948
- },
949
- (self: ReaderUAVariableTypeL2, data: VariantOptions, deferredTask) => {
950
- self.parent.obj.value = data;
951
- const capturedVariable = { nodeId: self.parent.obj.nodeId ?? NodeId.nullNodeId };
952
- fixExtensionObjectAndArray(capturedVariable, deferredTask);
953
- },
954
- (task) => {
955
- postTasks0_DecodePojoString.push(task);
956
- },
957
- _translateNodeId
958
- )
959
- }
960
- };
961
- // #endregion
962
- // #region UAMethod
963
- const state_UAMethod = {
964
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
965
- init(this: any, _name: string, attrs: XmlAttributes) {
966
- _perform();
967
-
968
- this.obj = {
969
- nodeClass: NodeClass.Method,
970
- // MethodDeclarationId
971
- // ParentNodeId
972
- browseName: convertQualifiedName(attrs.BrowseName),
973
- parentNodeId: attrs.ParentNodeId || null,
974
- nodeId: convertToNodeId(attrs.NodeId) || null,
975
- methodDeclarationId: attrs.MethodDeclarationId ? _translateNodeId(attrs.MethodDeclarationId) : null,
976
- ...convertNodePermissions(attrs)
977
- };
978
- this.isDraft = attrs.ReleaseStatus === "Draft";
979
- this.isDeprecated = attrs.ReleaseStatus === "Deprecated";
980
- },
981
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
982
- finish(this: any) {
983
- if (canIgnore({ isDraft: this.isDraft, isDeprecated: this.isDeprecated }, this.obj)) {
984
- return;
985
- }
986
- _internal_createNode(this.obj);
987
- },
988
- parser: {
989
- DisplayName: {
990
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
991
- finish(this: any) {
992
- this.parent.obj.displayName = this.text;
993
- }
994
- },
995
- References: references_parser,
996
- RolePermissions: role_permissions_parser
997
- }
998
- };
999
- // #endregion
1000
- // #region Model
1001
- interface Model {
1002
- modelUri: string;
1003
- version: string;
1004
- publicationDate?: Date;
1005
- requiredModels: RequiredModel[];
1006
- accessRestrictions?: string;
1007
- symbolicName?: string;
1008
- }
1009
-
1010
- const state_ModelTableEntry = new ReaderState({
1011
- // ModelTableEntry
1012
-
1013
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1014
- init(this: any) {
1015
- this._requiredModels = [] as RequiredModel[];
1016
- },
1017
- parser: {
1018
- RequiredModel: {
1019
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1020
- init(this: any, _name: string, attrs: XmlAttributes) {
1021
- const modelUri = attrs.ModelUri;
1022
- const version = attrs.Version;
1023
- const publicationDate = new Date(Date.parse(attrs.PublicationDate));
1024
-
1025
- this.parent._requiredModels.push({ modelUri, version, publicationDate });
1026
- },
1027
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1028
- finish(this: any) {
1029
- /** */
1030
- }
1031
- }
1032
- },
1033
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1034
- finish(this: any) {
1035
- const modelUri = this.attrs.ModelUri; // //"http://opcfoundation.org/UA/"
1036
- const version = this.attrs.Version; // 1.04
1037
- const publicationDate = this.attrs.PublicationDate ? new Date(Date.parse(this.attrs.PublicationDate)) : undefined; // "2018-05-15T00:00:00Z" "
1038
- // optional,
1039
- const symbolicName = this.attrs.SymbolicName;
1040
- const accessRestrictions = this.attrs.AccessRestrictions;
1041
-
1042
- const model = {
1043
- accessRestrictions,
1044
- modelUri,
1045
- publicationDate,
1046
- requiredModels: this._requiredModels,
1047
- symbolicName,
1048
- version
1049
- };
1050
- const _namespace = _add_namespace(model);
1051
- models.push(model);
1052
- }
1053
- });
1054
- // #endregion
1055
- function _updateTranslationTable() {
1056
- _register_namespace_uri_in_translation_table("http://opcfoundation.org/UA/");
1057
- for (const namespaceUri of _namespaceUris) {
1058
- _register_namespace_uri_in_translation_table(namespaceUri);
1059
- }
1060
- }
1061
-
1062
- function _perform() {
1063
- if (performedCalled) return;
1064
- performedCalled = true;
1065
-
1066
- /**special case for old nodeset file version 1.02 where no models exists */
1067
- if (models.length === 0) {
1068
- for (const namespaceuri of _namespaceUris) {
1069
- const existingNamespace = addressSpace1.getNamespace(namespaceuri);
1070
- if (existingNamespace) {
1071
- continue;
1072
- }
1073
-
1074
- _add_namespace({
1075
- modelUri: namespaceuri,
1076
- version: "1.0.0",
1077
- requiredModels: []
1078
- });
1079
- }
1080
- }
1081
- _updateTranslationTable();
1082
- }
1083
- // state_ModelTableEntry.parser["RequiredModel"] = state_ModelTableEntry;
1084
- let _namespaceUris: string[] = [];
1085
- const state_0: ReaderStateParserLike = {
1086
- parser: {
1087
- Aliases: {
1088
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1089
- init(this: any) {
1090
- _perform();
1091
- },
1092
- parser: { Alias: state_Alias }
1093
- },
1094
-
1095
- NamespaceUris: {
1096
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1097
- init(this: any) {
1098
- //
1099
- _namespaceUris = [];
1100
- },
1101
- parser: {
1102
- Uri: {
1103
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1104
- finish(this: any) {
1105
- _namespaceUris.push(this.text);
1106
- }
1107
- }
1108
- },
1109
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1110
- finish(this: any) {
1111
- // verify that requested namespaces are already loaded or abort with a message
1112
- }
1113
- },
1114
-
1115
- Models: {
1116
- // ModelTable
1117
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1118
- init(this: any, _name: string, _attrs: XmlAttributes) {
1119
- /* */
1120
- },
1121
- parser: {
1122
- Model: state_ModelTableEntry
1123
- },
1124
-
1125
- // biome-ignore lint/suspicious/noExplicitAny: xml2json parser callback with dynamic this binding
1126
- finish(this: any) {
1127
- /** */
1128
- }
1129
- },
1130
-
1131
- UADataType: state_UADataType,
1132
- UAMethod: state_UAMethod,
1133
- UAObject: state_UAObject,
1134
- UAObjectType: state_UAObjectType,
1135
- UAReferenceType: state_UAReferenceType,
1136
- UAVariable: state_UAVariable,
1137
- UAVariableType: state_UAVariableType
1138
- }
1139
- };
1140
-
1141
- const parser = new Xml2Json(state_0);
1142
-
1143
- async function terminate() {
1144
- make_back_references(addressSpace1);
1145
-
1146
- // setting up Server_NamespaceArray
1147
-
1148
- if (addressSpace1.rootFolder?.objects?.server?.namespaceArray) {
1149
- addressSpace1.rootFolder.objects.server.namespaceArray.setValueFromSource({
1150
- arrayType: VariantArrayType.Array,
1151
- dataType: DataType.String,
1152
- value: addressSpace1.getNamespaceArray().map((ns) => ns.namespaceUri)
1153
- });
1154
- // c8 ignore next
1155
- if (doDebug) {
1156
- debugLog(
1157
- "addressSpace NS = ",
1158
- addressSpace1.rootFolder.objects.server.namespaceArray.readValue().value.value.join(" ")
1159
- );
1160
- }
1161
- }
1162
- doDebug &&
1163
- debugLog(
1164
- chalk.bgGreenBright("Performing post loading tasks -------------------------------------------") +
1165
- chalk.green("DONE")
1166
- );
1167
-
1168
- /**
1169
- * run every queued post-loading task.
1170
- *
1171
- * A task that throws (typically: a `<Value>` in a third-party nodeset that does not
1172
- * match the declared DataType) is logged and skipped — it must NOT abort the remaining
1173
- * tasks nor the remaining stages of finalSteps(). Previously the failing task was
1174
- * re-run inside the catch block, the second throw escaped the loop, finalSteps() was
1175
- * abandoned and `ensureDatatypeExtracted` was never called: the address space was
1176
- * left half-initialised (no DataTypeManager) and any later use of a structured
1177
- * DataType failed with an opaque
1178
- * "Cannot read properties of undefined (reading 'getExtensionObjectConstructorFromDataType')".
1179
- */
1180
- async function performPostLoadingTasks(stage: string, tasks: Task[]): Promise<void> {
1181
- for (const task of tasks) {
1182
- try {
1183
- await task(addressSpace1);
1184
- } catch (err) {
1185
- // c8 ignore next
1186
- if (types.isNativeError(err)) {
1187
- errorLog(
1188
- `[NODE-OPCUA-W36] generateAddressSpace: post-loading task failed during "${stage}" and was skipped: ${err.message}`
1189
- );
1190
- doDebug && debugLog(err);
1191
- }
1192
- }
1193
- }
1194
- tasks.splice(0);
1195
- }
1196
- async function finalSteps(): Promise<void> {
1197
- /// ----------------------------------------------------------------------------------------
1198
- // perform post task
1199
- doDebug && debugLog(chalk.bgGreenBright("Performing post loading tasks -------------------------------------------"));
1200
- await performPostLoadingTasks("post tasks", postTasks);
1201
-
1202
- doDebug &&
1203
- debugLog(chalk.bgGreenBright("Performing post loading task: Initializing Simple Variables ---------------------"));
1204
- await performPostLoadingTasks("initializing simple variables", postTasks0_InitializeVariable);
1205
-
1206
- doDebug && debugLog(chalk.bgGreenBright("Performing DataType extraction -------------------------------------------"));
1207
- assert(!addressSpace1.suspendBackReference);
1208
- await ensureDatatypeExtracted(addressSpace);
1209
- const dataTypeManager = (addressSpace as AddressSpacePrivate).getDataTypeManager();
1210
-
1211
- /// ----------------------------------------------------------------------------------------
1212
- doDebug && debugLog(chalk.bgGreenBright("DataType extraction done ") + chalk.green("DONE"));
1213
-
1214
- for (const { name: _name, dataTypeNodeId } of pendingSimpleTypeToRegister) {
1215
- if (dataTypeNodeId.namespace === 0) {
1216
- continue;
1217
- }
1218
- dataTypeManager.getDataTypeFactoryForNamespace(dataTypeNodeId.namespace);
1219
- }
1220
- pendingSimpleTypeToRegister.splice(0);
1221
-
1222
- doDebug && debugLog(chalk.bgGreenBright("Performing post loading task: Decoding Pojo String (parsing XML objects) -"));
1223
- await performPostLoadingTasks("decoding XML extension objects", postTasks0_DecodePojoString);
1224
-
1225
- doDebug &&
1226
- debugLog(chalk.bgGreenBright("Performing post loading task: Initializing Complex Variables ---------------------"));
1227
- await performPostLoadingTasks("initializing complex variables", postTasks1_InitializeVariable);
1228
-
1229
- doDebug && debugLog(chalk.bgGreenBright("Performing post loading tasks: (assigning Extension Object to Variables) -"));
1230
- await performPostLoadingTasks(
1231
- "assigning extension objects to variables",
1232
- postTasks2_AssignedExtensionObjectToDataValue
1233
- );
1234
-
1235
- doDebug && debugLog(chalk.bgGreenBright("Performing post variable initialization ---------------------"));
1236
- promoteObjectsAndVariables(addressSpace);
1237
- }
1238
-
1239
- try {
1240
- await finalSteps();
1241
- } catch (err) {
1242
- // `renderError` was a no-op here, so a failure in the final steps (DataType extraction,
1243
- // promotion of objects/variables, ...) used to be silently swallowed and the caller was
1244
- // handed back a half-initialised address space. Surface it: log and re-throw so that
1245
- // generateAddressSpace() rejects.
1246
- const message = types.isNativeError(err) ? err.message : String(err);
1247
- errorLog(`[NODE-OPCUA-E30] generateAddressSpace: final post-loading steps failed: ${message}`);
1248
- throw err;
1249
- }
1250
- }
1251
- async function addNodeSet(xmlData: string): Promise<void> {
1252
- _reset_namespace_translation();
1253
- parser.parseString(xmlData);
1254
- }
1255
-
1256
- return {
1257
- addNodeSet,
1258
- terminate
1259
- };
1260
- }
1261
-
1262
- export class NodeSetLoader {
1263
- _s: NodeSet2ParserEngine;
1264
- constructor(addressSpace: IAddressSpace, options?: NodeSetLoaderOptions) {
1265
- this._s = makeNodeSetParserEngine(addressSpace, options || {});
1266
- }
1267
-
1268
- async addNodeSetAsync(xmlData: string): Promise<void> {
1269
- return await this._s.addNodeSet(xmlData);
1270
- }
1271
-
1272
- async terminate(): Promise<void> {
1273
- await this._s.terminate();
1274
- }
1275
- }