node-opcua-address-space 2.180.0 → 2.181.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1084) 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.map +1 -0
  231. package/dist/api/set_namespace_meta_data.js.map +1 -0
  232. package/dist/api/ua_addin.js.map +1 -0
  233. package/dist/api/ua_interface.js +25 -0
  234. package/dist/api/ua_interface.js.map +1 -0
  235. package/dist/api/ua_root_folder.js.map +1 -0
  236. package/dist/api/ua_two_state_variable_ex.d.ts +24 -0
  237. package/dist/api/ua_two_state_variable_ex.js.map +1 -0
  238. package/dist/api/xml_writer.js.map +1 -0
  239. package/dist/impl/_instantiate_helpers.js +99 -0
  240. package/dist/impl/_instantiate_helpers.js.map +1 -0
  241. package/dist/impl/_mandatory_child_or_requested_optional_filter.js +82 -0
  242. package/dist/impl/_mandatory_child_or_requested_optional_filter.js.map +1 -0
  243. package/dist/impl/address_space.d.ts +379 -0
  244. package/dist/impl/address_space.js +1383 -0
  245. package/dist/impl/address_space.js.map +1 -0
  246. package/dist/impl/address_space_change_event_tools.d.ts +6 -0
  247. package/dist/impl/address_space_change_event_tools.js.map +1 -0
  248. package/dist/impl/address_space_private.d.ts +48 -0
  249. package/dist/impl/address_space_private.js.map +1 -0
  250. package/dist/impl/alarms_and_conditions/condition.js.map +1 -0
  251. package/dist/impl/alarms_and_conditions/condition_info_impl.d.ts +19 -0
  252. package/dist/impl/alarms_and_conditions/condition_info_impl.js +39 -0
  253. package/dist/impl/alarms_and_conditions/condition_info_impl.js.map +1 -0
  254. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.d.ts +271 -0
  255. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js +700 -0
  256. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js.map +1 -0
  257. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.d.ts +12 -0
  258. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js +66 -0
  259. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js.map +1 -0
  260. package/dist/impl/alarms_and_conditions/index.d.ts +16 -0
  261. package/dist/impl/alarms_and_conditions/index.js +33 -0
  262. package/dist/impl/alarms_and_conditions/index.js.map +1 -0
  263. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +54 -0
  264. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -0
  265. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -0
  266. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.d.ts +105 -0
  267. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js +428 -0
  268. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -0
  269. package/dist/impl/alarms_and_conditions/ua_base_event_impl.d.ts +36 -0
  270. package/dist/impl/alarms_and_conditions/ua_base_event_impl.js +32 -0
  271. package/dist/impl/alarms_and_conditions/ua_base_event_impl.js.map +1 -0
  272. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +47 -0
  273. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +204 -0
  274. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -0
  275. package/dist/impl/alarms_and_conditions/ua_condition_impl.d.ts +152 -0
  276. package/dist/impl/alarms_and_conditions/ua_condition_impl.js +1016 -0
  277. package/dist/impl/alarms_and_conditions/ua_condition_impl.js.map +1 -0
  278. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +22 -0
  279. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js +41 -0
  280. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -0
  281. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +30 -0
  282. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +54 -0
  283. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -0
  284. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +12 -0
  285. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +13 -0
  286. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -0
  287. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +28 -0
  288. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -0
  289. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -0
  290. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +10 -0
  291. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +8 -0
  292. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -0
  293. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.d.ts +49 -0
  294. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js +207 -0
  295. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -0
  296. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +28 -0
  297. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +54 -0
  298. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -0
  299. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +38 -0
  300. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +172 -0
  301. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -0
  302. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +44 -0
  303. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js +164 -0
  304. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -0
  305. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -0
  306. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +18 -0
  307. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -0
  308. package/dist/impl/apply_condition_refresh.d.ts +4 -0
  309. package/dist/impl/apply_condition_refresh.js +29 -0
  310. package/dist/impl/apply_condition_refresh.js.map +1 -0
  311. package/dist/impl/base_node_impl.d.ts +347 -0
  312. package/dist/impl/base_node_impl.js +1768 -0
  313. package/dist/impl/base_node_impl.js.map +1 -0
  314. package/dist/impl/base_node_private.d.ts +138 -0
  315. package/dist/impl/base_node_private.js +1028 -0
  316. package/dist/impl/base_node_private.js.map +1 -0
  317. package/dist/impl/check_value_rank_compatibility.js.map +1 -0
  318. package/dist/impl/child_accessors.d.ts +43 -0
  319. package/dist/impl/child_accessors.js +222 -0
  320. package/dist/impl/child_accessors.js.map +1 -0
  321. package/dist/impl/data_access/add_dataItem_stuff.js.map +1 -0
  322. package/dist/impl/data_access/adjust_datavalue_status_code.d.ts +7 -0
  323. package/dist/impl/data_access/adjust_datavalue_status_code.js.map +1 -0
  324. package/dist/impl/data_access/ua_multistate_discrete_impl.d.ts +38 -0
  325. package/dist/impl/data_access/ua_multistate_discrete_impl.js +143 -0
  326. package/dist/impl/data_access/ua_multistate_discrete_impl.js.map +1 -0
  327. package/dist/impl/data_access/ua_multistate_value_discrete_impl.d.ts +61 -0
  328. package/dist/impl/data_access/ua_multistate_value_discrete_impl.js +303 -0
  329. package/dist/impl/data_access/ua_multistate_value_discrete_impl.js.map +1 -0
  330. package/dist/impl/data_access/ua_two_state_discrete_impl.d.ts +30 -0
  331. package/dist/impl/data_access/ua_two_state_discrete_impl.js +164 -0
  332. package/dist/impl/data_access/ua_two_state_discrete_impl.js.map +1 -0
  333. package/dist/impl/event_data.d.ts +27 -0
  334. package/dist/impl/event_data.js +73 -0
  335. package/dist/impl/event_data.js.map +1 -0
  336. package/dist/impl/event_layout.d.ts +40 -0
  337. package/dist/impl/event_layout.js +103 -0
  338. package/dist/impl/event_layout.js.map +1 -0
  339. package/dist/impl/extension_object_array_node.d.ts +41 -0
  340. package/dist/impl/extension_object_array_node.js +274 -0
  341. package/dist/impl/extension_object_array_node.js.map +1 -0
  342. package/dist/impl/get_basic_datatype.js.map +1 -0
  343. package/dist/impl/handle_hierarchy_parent.d.ts +33 -0
  344. package/dist/impl/handle_hierarchy_parent.js +103 -0
  345. package/dist/impl/handle_hierarchy_parent.js.map +1 -0
  346. package/dist/impl/historical_access/address_space_historical_data_node.d.ts +21 -0
  347. package/dist/impl/historical_access/address_space_historical_data_node.js +658 -0
  348. package/dist/impl/historical_access/address_space_historical_data_node.js.map +1 -0
  349. package/dist/impl/historizer_factory.d.ts +18 -0
  350. package/dist/impl/historizer_factory.js +16 -0
  351. package/dist/impl/historizer_factory.js.map +1 -0
  352. package/dist/impl/idx_iterator.js.map +1 -0
  353. package/dist/impl/namespace_impl.d.ts +469 -0
  354. package/dist/impl/namespace_impl.js +1845 -0
  355. package/dist/impl/namespace_impl.js.map +1 -0
  356. package/dist/impl/namespace_private.d.ts +25 -0
  357. package/dist/impl/namespace_private.js.map +1 -0
  358. package/dist/impl/nodeid_manager.js +249 -0
  359. package/dist/impl/nodeid_manager.js.map +1 -0
  360. package/dist/impl/nodeset_tools/adjust_namespace_array.js.map +1 -0
  361. package/dist/impl/nodeset_tools/construct_namespace_dependency.d.ts +37 -0
  362. package/dist/impl/nodeset_tools/construct_namespace_dependency.js +352 -0
  363. package/dist/impl/nodeset_tools/construct_namespace_dependency.js.map +1 -0
  364. package/dist/impl/nodeset_tools/dump_to_bsd.d.ts +10 -0
  365. package/dist/impl/nodeset_tools/dump_to_bsd.js +176 -0
  366. package/dist/impl/nodeset_tools/dump_to_bsd.js.map +1 -0
  367. package/dist/impl/nodeset_tools/nodeset_to_records.d.ts +67 -0
  368. package/dist/impl/nodeset_tools/nodeset_to_records.js +773 -0
  369. package/dist/impl/nodeset_tools/nodeset_to_records.js.map +1 -0
  370. package/dist/impl/nodeset_tools/nodeset_to_xml.d.ts +28 -0
  371. package/dist/impl/nodeset_tools/nodeset_to_xml.js +1132 -0
  372. package/dist/impl/nodeset_tools/nodeset_to_xml.js.map +1 -0
  373. package/dist/impl/private_namespace.d.ts +5 -0
  374. package/dist/impl/private_namespace.js.map +1 -0
  375. package/dist/impl/reference_impl.d.ts +82 -0
  376. package/dist/impl/reference_impl.js +207 -0
  377. package/dist/impl/reference_impl.js.map +1 -0
  378. package/dist/impl/reference_type_version.d.ts +22 -0
  379. package/dist/impl/reference_type_version.js +22 -0
  380. package/dist/impl/reference_type_version.js.map +1 -0
  381. package/dist/impl/role_permissions.js.map +1 -0
  382. package/dist/impl/state_machine/finite_state_machine.d.ts +81 -0
  383. package/dist/impl/state_machine/finite_state_machine.js +573 -0
  384. package/dist/impl/state_machine/finite_state_machine.js.map +1 -0
  385. package/dist/impl/state_machine/ua_shelving_state_machine_ex.d.ts +64 -0
  386. package/dist/impl/state_machine/ua_shelving_state_machine_ex.js +249 -0
  387. package/dist/impl/state_machine/ua_shelving_state_machine_ex.js.map +1 -0
  388. package/dist/impl/state_machine/ua_two_state_variable.d.ts +55 -0
  389. package/dist/impl/state_machine/ua_two_state_variable.js +323 -0
  390. package/dist/impl/state_machine/ua_two_state_variable.js.map +1 -0
  391. package/dist/impl/tool_isSubtypeOf.d.ts +18 -0
  392. package/dist/impl/tool_isSubtypeOf.js +138 -0
  393. package/dist/impl/tool_isSubtypeOf.js.map +1 -0
  394. package/dist/impl/ua_condition_type.js.map +1 -0
  395. package/dist/impl/ua_data_type_impl.d.ts +87 -0
  396. package/dist/impl/ua_data_type_impl.js +391 -0
  397. package/dist/impl/ua_data_type_impl.js.map +1 -0
  398. package/dist/impl/ua_method_impl.d.ts +48 -0
  399. package/dist/impl/ua_method_impl.js +281 -0
  400. package/dist/impl/ua_method_impl.js.map +1 -0
  401. package/dist/impl/ua_object_impl.d.ts +38 -0
  402. package/dist/impl/ua_object_impl.js +214 -0
  403. package/dist/impl/ua_object_impl.js.map +1 -0
  404. package/dist/impl/ua_object_type_impl.d.ts +55 -0
  405. package/dist/impl/ua_object_type_impl.js +131 -0
  406. package/dist/impl/ua_object_type_impl.js.map +1 -0
  407. package/dist/impl/ua_reference_type_impl.d.ts +42 -0
  408. package/dist/impl/ua_reference_type_impl.js +157 -0
  409. package/dist/impl/ua_reference_type_impl.js.map +1 -0
  410. package/dist/impl/ua_variable_impl.d.ts +391 -0
  411. package/dist/impl/ua_variable_impl.js +2001 -0
  412. package/dist/impl/ua_variable_impl.js.map +1 -0
  413. package/dist/impl/ua_variable_impl_ext_obj.d.ts +23 -0
  414. package/dist/impl/ua_variable_impl_ext_obj.js +753 -0
  415. package/dist/impl/ua_variable_impl_ext_obj.js.map +1 -0
  416. package/dist/impl/ua_variable_type_impl.d.ts +79 -0
  417. package/dist/impl/ua_variable_type_impl.js +279 -0
  418. package/dist/impl/ua_variable_type_impl.js.map +1 -0
  419. package/dist/impl/ua_view_impl.d.ts +18 -0
  420. package/dist/impl/ua_view_impl.js +45 -0
  421. package/dist/impl/ua_view_impl.js.map +1 -0
  422. package/dist/impl/validate_data_type_correctness.d.ts +6 -0
  423. package/dist/impl/validate_data_type_correctness.js +123 -0
  424. package/dist/impl/validate_data_type_correctness.js.map +1 -0
  425. package/dist/tsconfig_base.tsbuildinfo +1 -1
  426. package/distHelpers/address_space_digest.d.ts +4 -0
  427. package/distHelpers/address_space_digest.js +9 -0
  428. package/distHelpers/address_space_digest.js.map +1 -0
  429. package/distHelpers/alarms_and_conditions_demo.d.ts +1 -1
  430. package/distHelpers/assertHasMatchingReference.d.ts +1 -1
  431. package/distHelpers/boiler_system.d.ts +1 -1
  432. package/distHelpers/boiler_system.js +3 -3
  433. package/distHelpers/boiler_system.js.map +1 -1
  434. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +1 -1
  435. package/distHelpers/get_address_space_fixture.js +38 -22
  436. package/distHelpers/get_address_space_fixture.js.map +1 -1
  437. package/distHelpers/get_mini_address_space.d.ts +1 -1
  438. package/distHelpers/get_mini_address_space.js +7 -7
  439. package/distHelpers/get_mini_address_space.js.map +1 -1
  440. package/distHelpers/index.d.ts +9 -9
  441. package/distHelpers/index.js +9 -9
  442. package/distHelpers/index.js.map +1 -1
  443. package/distHelpers/mock_session.d.ts +1 -1
  444. package/distHelpers/mock_session.js +2 -2
  445. package/distHelpers/mock_session.js.map +1 -1
  446. package/distNodeJS/address_space_digest.d.ts +13 -0
  447. package/distNodeJS/address_space_digest.js +31 -0
  448. package/distNodeJS/address_space_digest.js.map +1 -0
  449. package/distNodeJS/generate_address_space.d.ts +35 -2
  450. package/distNodeJS/generate_address_space.js +201 -7
  451. package/distNodeJS/generate_address_space.js.map +1 -1
  452. package/distNodeJS/index.d.ts +3 -1
  453. package/distNodeJS/index.js +3 -1
  454. package/distNodeJS/index.js.map +1 -1
  455. package/distNodeJS/nodeset_image_file_store.d.ts +29 -0
  456. package/distNodeJS/nodeset_image_file_store.js +120 -0
  457. package/distNodeJS/nodeset_image_file_store.js.map +1 -0
  458. package/impl/_instantiate_helpers.ts +197 -0
  459. package/impl/_mandatory_child_or_requested_optional_filter.ts +100 -0
  460. package/impl/address_space.ts +1572 -0
  461. package/impl/address_space_change_event_tools.ts +177 -0
  462. package/impl/address_space_private.ts +100 -0
  463. package/impl/alarms_and_conditions/condition_info_impl.ts +45 -0
  464. package/impl/alarms_and_conditions/condition_snapshot_impl.ts +793 -0
  465. package/impl/alarms_and_conditions/deviation_alarm_helper.ts +73 -0
  466. package/impl/alarms_and_conditions/index.ts +16 -0
  467. package/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +351 -0
  468. package/impl/alarms_and_conditions/ua_alarm_condition_impl.ts +515 -0
  469. package/impl/alarms_and_conditions/ua_base_event_impl.ts +61 -0
  470. package/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +246 -0
  471. package/impl/alarms_and_conditions/ua_condition_impl.ts +1286 -0
  472. package/impl/alarms_and_conditions/ua_discrete_alarm_impl.ts +60 -0
  473. package/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +95 -0
  474. package/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +21 -0
  475. package/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +112 -0
  476. package/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +25 -0
  477. package/impl/alarms_and_conditions/ua_limit_alarm_impl.ts +265 -0
  478. package/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +94 -0
  479. package/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +232 -0
  480. package/impl/alarms_and_conditions/ua_off_normal_alarm_impl.ts +216 -0
  481. package/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +26 -0
  482. package/impl/apply_condition_refresh.ts +56 -0
  483. package/impl/base_node_impl.ts +2165 -0
  484. package/impl/base_node_private.ts +1420 -0
  485. package/impl/child_accessors.ts +239 -0
  486. package/impl/data_access/adjust_datavalue_status_code.ts +36 -0
  487. package/impl/data_access/ua_multistate_discrete_impl.ts +198 -0
  488. package/impl/data_access/ua_multistate_value_discrete_impl.ts +384 -0
  489. package/impl/data_access/ua_two_state_discrete_impl.ts +195 -0
  490. package/impl/event_data.ts +80 -0
  491. package/impl/event_layout.ts +141 -0
  492. package/impl/extension_object_array_node.ts +343 -0
  493. package/impl/handle_hierarchy_parent.ts +133 -0
  494. package/impl/historical_access/address_space_historical_data_node.ts +849 -0
  495. package/impl/historizer_factory.ts +17 -0
  496. package/impl/namespace_impl.ts +2323 -0
  497. package/impl/namespace_private.ts +68 -0
  498. package/impl/nodeid_manager.ts +293 -0
  499. package/impl/nodeset_tools/construct_namespace_dependency.ts +381 -0
  500. package/impl/nodeset_tools/dump_to_bsd.ts +210 -0
  501. package/impl/nodeset_tools/nodeset_to_records.ts +846 -0
  502. package/impl/nodeset_tools/nodeset_to_xml.ts +1326 -0
  503. package/impl/private_namespace.ts +21 -0
  504. package/impl/reference_impl.ts +244 -0
  505. package/impl/reference_type_version.ts +19 -0
  506. package/impl/state_machine/finite_state_machine.ts +676 -0
  507. package/impl/state_machine/ua_shelving_state_machine_ex.ts +356 -0
  508. package/impl/state_machine/ua_two_state_variable.ts +421 -0
  509. package/impl/tool_isSubtypeOf.ts +168 -0
  510. package/impl/ua_data_type_impl.ts +486 -0
  511. package/impl/ua_method_impl.ts +364 -0
  512. package/impl/ua_object_impl.ts +278 -0
  513. package/impl/ua_object_type_impl.ts +179 -0
  514. package/impl/ua_reference_type_impl.ts +179 -0
  515. package/impl/ua_variable_impl.ts +2559 -0
  516. package/impl/ua_variable_impl_ext_obj.ts +904 -0
  517. package/impl/ua_variable_type_impl.ts +390 -0
  518. package/impl/ua_view_impl.ts +53 -0
  519. package/impl/validate_data_type_correctness.ts +142 -0
  520. package/package.json +49 -44
  521. package/source_nodejs/address_space_digest.ts +35 -0
  522. package/source_nodejs/generate_address_space.ts +181 -8
  523. package/source_nodejs/index.ts +3 -1
  524. package/source_nodejs/nodeset_image_file_store.ts +127 -0
  525. package/dist/source/address_space_ts.d.ts +0 -128
  526. package/dist/source/address_space_ts.js +0 -23
  527. package/dist/source/address_space_ts.js.map +0 -1
  528. package/dist/source/continuation_points/continuation_point_manager.js +0 -230
  529. package/dist/source/continuation_points/continuation_point_manager.js.map +0 -1
  530. package/dist/source/helpers/adjust_browse_direction.js.map +0 -1
  531. package/dist/source/helpers/argument_list.js +0 -263
  532. package/dist/source/helpers/argument_list.js.map +0 -1
  533. package/dist/source/helpers/call_helpers.js +0 -80
  534. package/dist/source/helpers/call_helpers.js.map +0 -1
  535. package/dist/source/helpers/coerce_enum_value.d.ts +0 -6
  536. package/dist/source/helpers/coerce_enum_value.js.map +0 -1
  537. package/dist/source/helpers/dump_tools.js +0 -81
  538. package/dist/source/helpers/dump_tools.js.map +0 -1
  539. package/dist/source/helpers/ensure_secure_access.d.ts +0 -9
  540. package/dist/source/helpers/ensure_secure_access.js +0 -58
  541. package/dist/source/helpers/ensure_secure_access.js.map +0 -1
  542. package/dist/source/helpers/make_optionals_map.js.map +0 -1
  543. package/dist/source/helpers/multiform_func.js +0 -75
  544. package/dist/source/helpers/multiform_func.js.map +0 -1
  545. package/dist/source/helpers/resolve_opaque_on_address_space.js +0 -25
  546. package/dist/source/helpers/resolve_opaque_on_address_space.js.map +0 -1
  547. package/dist/source/index.d.ts +0 -66
  548. package/dist/source/index.js +0 -97
  549. package/dist/source/index.js.map +0 -1
  550. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +0 -21
  551. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +0 -3
  552. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js.map +0 -1
  553. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +0 -150
  554. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js.map +0 -1
  555. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +0 -12
  556. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js.map +0 -1
  557. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js.map +0 -1
  558. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +0 -7
  559. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +0 -1
  560. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +0 -1
  561. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +0 -4
  562. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +0 -1
  563. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +0 -4
  564. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +0 -1
  565. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +0 -10
  566. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +0 -1
  567. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +0 -4
  568. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +0 -1
  569. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +0 -4
  570. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +0 -1
  571. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +0 -20
  572. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +0 -1
  573. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +0 -21
  574. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +0 -1
  575. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +0 -33
  576. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +0 -1
  577. package/dist/source/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +0 -1
  578. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +0 -19
  579. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +0 -1
  580. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +0 -44
  581. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js.map +0 -1
  582. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +0 -4
  583. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +0 -1
  584. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +0 -5
  585. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +0 -1
  586. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +0 -19
  587. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +0 -1
  588. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +0 -25
  589. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +0 -1
  590. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +0 -8
  591. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +0 -1
  592. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +0 -10
  593. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +0 -1
  594. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +0 -44
  595. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js.map +0 -1
  596. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +0 -22
  597. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +0 -1
  598. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +0 -13
  599. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js.map +0 -1
  600. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js.map +0 -1
  601. package/dist/source/interfaces/extension_object_constructor.js.map +0 -1
  602. package/dist/source/interfaces/i_condition_variable_type_setter_options.js.map +0 -1
  603. package/dist/source/interfaces/i_set_state_options.js.map +0 -1
  604. package/dist/source/interfaces/nodeset_loader_options.d.ts +0 -37
  605. package/dist/source/interfaces/nodeset_loader_options.js.map +0 -1
  606. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +0 -12
  607. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +0 -1
  608. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +0 -49
  609. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js.map +0 -1
  610. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +0 -11
  611. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js.map +0 -1
  612. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +0 -29
  613. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +0 -1
  614. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +0 -236
  615. package/dist/source/interfaces/state_machine/ua_state_machine_type.js.map +0 -1
  616. package/dist/source/interfaces/state_machine/ua_transition_ex.js.map +0 -1
  617. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js.map +0 -1
  618. package/dist/source/loader/decode_xml_extension_object.d.ts +0 -6
  619. package/dist/source/loader/decode_xml_extension_object.js +0 -69
  620. package/dist/source/loader/decode_xml_extension_object.js.map +0 -1
  621. package/dist/source/loader/ensure_datatype_extracted.js +0 -88
  622. package/dist/source/loader/ensure_datatype_extracted.js.map +0 -1
  623. package/dist/source/loader/generateAddressSpaceRaw.d.ts +0 -29
  624. package/dist/source/loader/generateAddressSpaceRaw.js +0 -188
  625. package/dist/source/loader/generateAddressSpaceRaw.js.map +0 -1
  626. package/dist/source/loader/load_nodeset2.d.ts +0 -15
  627. package/dist/source/loader/load_nodeset2.js +0 -1047
  628. package/dist/source/loader/load_nodeset2.js.map +0 -1
  629. package/dist/source/loader/make_semver_compatible.js.map +0 -1
  630. package/dist/source/loader/make_xml_extension_object_parser.js +0 -422
  631. package/dist/source/loader/make_xml_extension_object_parser.js.map +0 -1
  632. package/dist/source/loader/namespace_post_step.js +0 -57
  633. package/dist/source/loader/namespace_post_step.js.map +0 -1
  634. package/dist/source/loader/parsers/extension_object_parser.js +0 -274
  635. package/dist/source/loader/parsers/extension_object_parser.js.map +0 -1
  636. package/dist/source/loader/parsers/localized_text_parser.js.map +0 -1
  637. package/dist/source/loader/parsers/nodeid_parser.js.map +0 -1
  638. package/dist/source/loader/parsers/qualified_name_parser.js.map +0 -1
  639. package/dist/source/loader/parsers/variant_parser.d.ts +0 -35
  640. package/dist/source/loader/parsers/variant_parser.js +0 -331
  641. package/dist/source/loader/parsers/variant_parser.js.map +0 -1
  642. package/dist/source/loader/register_node_promoter.d.ts +0 -2
  643. package/dist/source/loader/register_node_promoter.js +0 -9
  644. package/dist/source/loader/register_node_promoter.js.map +0 -1
  645. package/dist/source/namespace.d.ts +0 -6
  646. package/dist/source/namespace.js.map +0 -1
  647. package/dist/source/namespace_alarm_and_condition.d.ts +0 -33
  648. package/dist/source/namespace_alarm_and_condition.js.map +0 -1
  649. package/dist/source/namespace_data_access.d.ts +0 -67
  650. package/dist/source/namespace_data_access.js.map +0 -1
  651. package/dist/source/namespace_machine_state.d.ts +0 -8
  652. package/dist/source/namespace_machine_state.js.map +0 -1
  653. package/dist/source/pseudo_session.d.ts +0 -74
  654. package/dist/source/pseudo_session.js +0 -308
  655. package/dist/source/pseudo_session.js.map +0 -1
  656. package/dist/source/session_context.d.ts +0 -241
  657. package/dist/source/session_context.js.map +0 -1
  658. package/dist/source/set_namespace_meta_data.js.map +0 -1
  659. package/dist/source/ua_addin.js.map +0 -1
  660. package/dist/source/ua_interface.js +0 -25
  661. package/dist/source/ua_interface.js.map +0 -1
  662. package/dist/source/ua_root_folder.js.map +0 -1
  663. package/dist/source/ua_two_state_variable_ex.d.ts +0 -24
  664. package/dist/source/ua_two_state_variable_ex.js.map +0 -1
  665. package/dist/source/xml_writer.js.map +0 -1
  666. package/dist/src/_instantiate_helpers.js +0 -99
  667. package/dist/src/_instantiate_helpers.js.map +0 -1
  668. package/dist/src/_mandatory_child_or_requested_optional_filter.js +0 -82
  669. package/dist/src/_mandatory_child_or_requested_optional_filter.js.map +0 -1
  670. package/dist/src/address_space.d.ts +0 -369
  671. package/dist/src/address_space.js +0 -1416
  672. package/dist/src/address_space.js.map +0 -1
  673. package/dist/src/address_space_change_event_tools.d.ts +0 -6
  674. package/dist/src/address_space_change_event_tools.js.map +0 -1
  675. package/dist/src/address_space_private.d.ts +0 -45
  676. package/dist/src/address_space_private.js.map +0 -1
  677. package/dist/src/alarms_and_conditions/condition.js.map +0 -1
  678. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +0 -18
  679. package/dist/src/alarms_and_conditions/condition_info_impl.js +0 -38
  680. package/dist/src/alarms_and_conditions/condition_info_impl.js.map +0 -1
  681. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +0 -269
  682. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +0 -699
  683. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +0 -1
  684. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +0 -12
  685. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +0 -66
  686. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +0 -1
  687. package/dist/src/alarms_and_conditions/index.d.ts +0 -16
  688. package/dist/src/alarms_and_conditions/index.js +0 -33
  689. package/dist/src/alarms_and_conditions/index.js.map +0 -1
  690. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +0 -42
  691. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +0 -243
  692. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +0 -1
  693. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +0 -80
  694. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +0 -415
  695. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +0 -1
  696. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +0 -18
  697. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +0 -33
  698. package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +0 -1
  699. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +0 -44
  700. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +0 -203
  701. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +0 -1
  702. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +0 -104
  703. package/dist/src/alarms_and_conditions/ua_condition_impl.js +0 -1017
  704. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +0 -1
  705. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +0 -19
  706. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +0 -39
  707. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +0 -1
  708. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +0 -25
  709. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +0 -55
  710. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +0 -1
  711. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +0 -11
  712. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +0 -12
  713. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +0 -1
  714. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +0 -23
  715. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +0 -87
  716. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +0 -1
  717. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +0 -10
  718. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +0 -8
  719. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +0 -1
  720. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +0 -26
  721. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +0 -208
  722. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +0 -1
  723. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +0 -23
  724. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +0 -55
  725. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +0 -1
  726. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +0 -27
  727. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +0 -173
  728. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +0 -1
  729. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +0 -43
  730. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +0 -168
  731. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +0 -1
  732. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +0 -18
  733. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +0 -18
  734. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +0 -1
  735. package/dist/src/apply_condition_refresh.d.ts +0 -4
  736. package/dist/src/apply_condition_refresh.js +0 -27
  737. package/dist/src/apply_condition_refresh.js.map +0 -1
  738. package/dist/src/base_node_impl.d.ts +0 -287
  739. package/dist/src/base_node_impl.js +0 -1538
  740. package/dist/src/base_node_impl.js.map +0 -1
  741. package/dist/src/base_node_private.d.ts +0 -87
  742. package/dist/src/base_node_private.js +0 -925
  743. package/dist/src/base_node_private.js.map +0 -1
  744. package/dist/src/check_value_rank_compatibility.js.map +0 -1
  745. package/dist/src/data_access/add_dataItem_stuff.js.map +0 -1
  746. package/dist/src/data_access/adjust_datavalue_status_code.d.ts +0 -7
  747. package/dist/src/data_access/adjust_datavalue_status_code.js.map +0 -1
  748. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +0 -35
  749. package/dist/src/data_access/ua_multistate_discrete_impl.js +0 -142
  750. package/dist/src/data_access/ua_multistate_discrete_impl.js.map +0 -1
  751. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +0 -51
  752. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +0 -302
  753. package/dist/src/data_access/ua_multistate_value_discrete_impl.js.map +0 -1
  754. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +0 -20
  755. package/dist/src/data_access/ua_two_state_discrete_impl.js +0 -163
  756. package/dist/src/data_access/ua_two_state_discrete_impl.js.map +0 -1
  757. package/dist/src/event_data.d.ts +0 -18
  758. package/dist/src/event_data.js +0 -70
  759. package/dist/src/event_data.js.map +0 -1
  760. package/dist/src/extension_object_array_node.d.ts +0 -34
  761. package/dist/src/extension_object_array_node.js +0 -262
  762. package/dist/src/extension_object_array_node.js.map +0 -1
  763. package/dist/src/get_basic_datatype.js.map +0 -1
  764. package/dist/src/historical_access/address_space_historical_data_node.d.ts +0 -21
  765. package/dist/src/historical_access/address_space_historical_data_node.js +0 -654
  766. package/dist/src/historical_access/address_space_historical_data_node.js.map +0 -1
  767. package/dist/src/idx_iterator.js.map +0 -1
  768. package/dist/src/index_current.d.ts +0 -50
  769. package/dist/src/index_current.js +0 -82
  770. package/dist/src/index_current.js.map +0 -1
  771. package/dist/src/namespace_impl.d.ts +0 -450
  772. package/dist/src/namespace_impl.js +0 -1876
  773. package/dist/src/namespace_impl.js.map +0 -1
  774. package/dist/src/namespace_private.d.ts +0 -31
  775. package/dist/src/namespace_private.js.map +0 -1
  776. package/dist/src/nodeid_manager.js +0 -249
  777. package/dist/src/nodeid_manager.js.map +0 -1
  778. package/dist/src/nodeset_tools/adjust_namespace_array.js.map +0 -1
  779. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +0 -33
  780. package/dist/src/nodeset_tools/construct_namespace_dependency.js +0 -347
  781. package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +0 -1
  782. package/dist/src/nodeset_tools/dump_to_bsd.d.ts +0 -2
  783. package/dist/src/nodeset_tools/dump_to_bsd.js +0 -164
  784. package/dist/src/nodeset_tools/dump_to_bsd.js.map +0 -1
  785. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +0 -12
  786. package/dist/src/nodeset_tools/nodeset_to_xml.js +0 -1381
  787. package/dist/src/nodeset_tools/nodeset_to_xml.js.map +0 -1
  788. package/dist/src/private_namespace.d.ts +0 -5
  789. package/dist/src/private_namespace.js.map +0 -1
  790. package/dist/src/reference_impl.d.ts +0 -43
  791. package/dist/src/reference_impl.js +0 -152
  792. package/dist/src/reference_impl.js.map +0 -1
  793. package/dist/src/role_permissions.js.map +0 -1
  794. package/dist/src/state_machine/finite_state_machine.d.ts +0 -70
  795. package/dist/src/state_machine/finite_state_machine.js +0 -574
  796. package/dist/src/state_machine/finite_state_machine.js.map +0 -1
  797. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +0 -39
  798. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +0 -249
  799. package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +0 -1
  800. package/dist/src/state_machine/ua_two_state_variable.d.ts +0 -55
  801. package/dist/src/state_machine/ua_two_state_variable.js +0 -323
  802. package/dist/src/state_machine/ua_two_state_variable.js.map +0 -1
  803. package/dist/src/tool_isSubtypeOf.d.ts +0 -18
  804. package/dist/src/tool_isSubtypeOf.js +0 -130
  805. package/dist/src/tool_isSubtypeOf.js.map +0 -1
  806. package/dist/src/ua_condition_type.js.map +0 -1
  807. package/dist/src/ua_data_type_impl.d.ts +0 -87
  808. package/dist/src/ua_data_type_impl.js +0 -393
  809. package/dist/src/ua_data_type_impl.js.map +0 -1
  810. package/dist/src/ua_method_impl.d.ts +0 -48
  811. package/dist/src/ua_method_impl.js +0 -280
  812. package/dist/src/ua_method_impl.js.map +0 -1
  813. package/dist/src/ua_object_impl.d.ts +0 -38
  814. package/dist/src/ua_object_impl.js +0 -214
  815. package/dist/src/ua_object_impl.js.map +0 -1
  816. package/dist/src/ua_object_type_impl.d.ts +0 -55
  817. package/dist/src/ua_object_type_impl.js +0 -131
  818. package/dist/src/ua_object_type_impl.js.map +0 -1
  819. package/dist/src/ua_reference_type_impl.d.ts +0 -42
  820. package/dist/src/ua_reference_type_impl.js +0 -146
  821. package/dist/src/ua_reference_type_impl.js.map +0 -1
  822. package/dist/src/ua_variable_impl.d.ts +0 -379
  823. package/dist/src/ua_variable_impl.js +0 -1940
  824. package/dist/src/ua_variable_impl.js.map +0 -1
  825. package/dist/src/ua_variable_impl_ext_obj.d.ts +0 -23
  826. package/dist/src/ua_variable_impl_ext_obj.js +0 -752
  827. package/dist/src/ua_variable_impl_ext_obj.js.map +0 -1
  828. package/dist/src/ua_variable_type_impl.d.ts +0 -79
  829. package/dist/src/ua_variable_type_impl.js +0 -276
  830. package/dist/src/ua_variable_type_impl.js.map +0 -1
  831. package/dist/src/ua_view_impl.d.ts +0 -18
  832. package/dist/src/ua_view_impl.js +0 -45
  833. package/dist/src/ua_view_impl.js.map +0 -1
  834. package/dist/src/validate_data_type_correctness.d.ts +0 -6
  835. package/dist/src/validate_data_type_correctness.js +0 -106
  836. package/dist/src/validate_data_type_correctness.js.map +0 -1
  837. package/source/address_space_ts.ts +0 -220
  838. package/source/continuation_points/continuation_point_manager.ts +0 -271
  839. package/source/helpers/argument_list.ts +0 -310
  840. package/source/helpers/call_helpers.ts +0 -100
  841. package/source/helpers/coerce_enum_value.ts +0 -33
  842. package/source/helpers/dump_tools.ts +0 -90
  843. package/source/helpers/ensure_secure_access.ts +0 -57
  844. package/source/helpers/multiform_func.ts +0 -78
  845. package/source/helpers/resolve_opaque_on_address_space.ts +0 -26
  846. package/source/index.ts +0 -72
  847. package/source/interfaces/alarms_and_conditions/condition_info_i.ts +0 -24
  848. package/source/interfaces/alarms_and_conditions/condition_snapshot.ts +0 -235
  849. package/source/interfaces/alarms_and_conditions/deviation_stuff.ts +0 -16
  850. package/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +0 -8
  851. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +0 -6
  852. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +0 -6
  853. package/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +0 -13
  854. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +0 -6
  855. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +0 -6
  856. package/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +0 -21
  857. package/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +0 -28
  858. package/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +0 -43
  859. package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +0 -36
  860. package/source/interfaces/alarms_and_conditions/ua_condition_ex.ts +0 -55
  861. package/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +0 -17
  862. package/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +0 -21
  863. package/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +0 -21
  864. package/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +0 -26
  865. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +0 -29
  866. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +0 -25
  867. package/source/interfaces/data_access/ua_multistate_discrete_ex.ts +0 -57
  868. package/source/interfaces/data_access/ua_multistate_value_discrete_ex.ts +0 -31
  869. package/source/interfaces/data_access/ua_two_state_discrete_ex.ts +0 -15
  870. package/source/interfaces/nodeset_loader_options.ts +0 -38
  871. package/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +0 -20
  872. package/source/interfaces/state_machine/ua_finite_state_machine_type.ts +0 -50
  873. package/source/interfaces/state_machine/ua_program_state_machine_type.ts +0 -14
  874. package/source/interfaces/state_machine/ua_shelved_state_machine_ex.ts +0 -35
  875. package/source/interfaces/state_machine/ua_state_machine_type.ts +0 -288
  876. package/source/loader/decode_xml_extension_object.ts +0 -80
  877. package/source/loader/ensure_datatype_extracted.ts +0 -122
  878. package/source/loader/generateAddressSpaceRaw.ts +0 -219
  879. package/source/loader/load_nodeset2.ts +0 -1275
  880. package/source/loader/make_xml_extension_object_parser.ts +0 -524
  881. package/source/loader/namespace_post_step.ts +0 -68
  882. package/source/loader/parsers/extension_object_parser.ts +0 -374
  883. package/source/loader/parsers/variant_parser.ts +0 -433
  884. package/source/loader/register_node_promoter.ts +0 -6
  885. package/source/namespace.ts +0 -7
  886. package/source/namespace_alarm_and_condition.ts +0 -78
  887. package/source/namespace_data_access.ts +0 -92
  888. package/source/namespace_machine_state.ts +0 -20
  889. package/source/pseudo_session.ts +0 -415
  890. package/source/session_context.ts +0 -725
  891. package/source/ua_interface.ts +0 -38
  892. package/source/ua_two_state_variable_ex.ts +0 -36
  893. package/src/_instantiate_helpers.ts +0 -197
  894. package/src/_mandatory_child_or_requested_optional_filter.ts +0 -100
  895. package/src/address_space.ts +0 -1631
  896. package/src/address_space_change_event_tools.ts +0 -177
  897. package/src/address_space_private.ts +0 -96
  898. package/src/alarms_and_conditions/condition_info_impl.ts +0 -44
  899. package/src/alarms_and_conditions/condition_snapshot_impl.ts +0 -792
  900. package/src/alarms_and_conditions/deviation_alarm_helper.ts +0 -73
  901. package/src/alarms_and_conditions/index.ts +0 -16
  902. package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +0 -331
  903. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +0 -479
  904. package/src/alarms_and_conditions/ua_base_event_impl.ts +0 -42
  905. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +0 -244
  906. package/src/alarms_and_conditions/ua_condition_impl.ts +0 -1261
  907. package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +0 -57
  908. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +0 -94
  909. package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +0 -20
  910. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +0 -109
  911. package/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +0 -25
  912. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +0 -244
  913. package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +0 -88
  914. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +0 -223
  915. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +0 -218
  916. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +0 -26
  917. package/src/apply_condition_refresh.ts +0 -29
  918. package/src/base_node_impl.ts +0 -1907
  919. package/src/base_node_private.ts +0 -1287
  920. package/src/data_access/adjust_datavalue_status_code.ts +0 -36
  921. package/src/data_access/ua_multistate_discrete_impl.ts +0 -189
  922. package/src/data_access/ua_multistate_value_discrete_impl.ts +0 -369
  923. package/src/data_access/ua_two_state_discrete_impl.ts +0 -184
  924. package/src/event_data.ts +0 -83
  925. package/src/extension_object_array_node.ts +0 -331
  926. package/src/historical_access/address_space_historical_data_node.ts +0 -842
  927. package/src/index_current.ts +0 -51
  928. package/src/namespace_impl.ts +0 -2380
  929. package/src/namespace_private.ts +0 -77
  930. package/src/nodeid_manager.ts +0 -293
  931. package/src/nodeset_tools/construct_namespace_dependency.ts +0 -375
  932. package/src/nodeset_tools/dump_to_bsd.ts +0 -201
  933. package/src/nodeset_tools/nodeset_to_xml.ts +0 -1652
  934. package/src/private_namespace.ts +0 -21
  935. package/src/reference_impl.ts +0 -171
  936. package/src/state_machine/finite_state_machine.ts +0 -668
  937. package/src/state_machine/ua_shelving_state_machine_ex.ts +0 -330
  938. package/src/state_machine/ua_two_state_variable.ts +0 -421
  939. package/src/tool_isSubtypeOf.ts +0 -160
  940. package/src/ua_data_type_impl.ts +0 -483
  941. package/src/ua_method_impl.ts +0 -362
  942. package/src/ua_object_impl.ts +0 -278
  943. package/src/ua_object_type_impl.ts +0 -179
  944. package/src/ua_reference_type_impl.ts +0 -170
  945. package/src/ua_variable_impl.ts +0 -2489
  946. package/src/ua_variable_impl_ext_obj.ts +0 -903
  947. package/src/ua_variable_type_impl.ts +0 -385
  948. package/src/ua_view_impl.ts +0 -53
  949. package/src/validate_data_type_correctness.ts +0 -124
  950. /package/{source → api}/helpers/adjust_browse_direction.ts +0 -0
  951. /package/{source → api}/helpers/make_optionals_map.ts +0 -0
  952. /package/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.ts +0 -0
  953. /package/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.ts +0 -0
  954. /package/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.ts +0 -0
  955. /package/{source → api}/interfaces/data_access/ua_y_array_item_ex.ts +0 -0
  956. /package/{source → api}/interfaces/extension_object_constructor.ts +0 -0
  957. /package/{source → api}/interfaces/i_condition_variable_type_setter_options.ts +0 -0
  958. /package/{source → api}/interfaces/i_set_state_options.ts +0 -0
  959. /package/{source → api}/interfaces/state_machine/ua_transition_ex.ts +0 -0
  960. /package/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.ts +0 -0
  961. /package/{source → api}/loader/make_semver_compatible.ts +0 -0
  962. /package/{source → api}/loader/parsers/localized_text_parser.ts +0 -0
  963. /package/{source → api}/loader/parsers/nodeid_parser.ts +0 -0
  964. /package/{source → api}/loader/parsers/qualified_name_parser.ts +0 -0
  965. /package/{source → api}/set_namespace_meta_data.ts +0 -0
  966. /package/{source → api}/ua_addin.ts +0 -0
  967. /package/{source → api}/ua_root_folder.ts +0 -0
  968. /package/{source → api}/xml_writer.ts +0 -0
  969. /package/dist/{source → api}/continuation_points/continuation_point_manager.d.ts +0 -0
  970. /package/dist/{source → api}/helpers/adjust_browse_direction.d.ts +0 -0
  971. /package/dist/{source → api}/helpers/adjust_browse_direction.js +0 -0
  972. /package/dist/{source → api}/helpers/argument_list.d.ts +0 -0
  973. /package/dist/{source → api}/helpers/call_helpers.d.ts +0 -0
  974. /package/dist/{source → api}/helpers/coerce_enum_value.js +0 -0
  975. /package/dist/{source → api}/helpers/dump_tools.d.ts +0 -0
  976. /package/dist/{source → api}/helpers/make_optionals_map.d.ts +0 -0
  977. /package/dist/{source → api}/helpers/make_optionals_map.js +0 -0
  978. /package/dist/{source → api}/helpers/multiform_func.d.ts +0 -0
  979. /package/dist/{source → api}/helpers/resolve_opaque_on_address_space.d.ts +0 -0
  980. /package/dist/{source → api}/interfaces/alarms_and_conditions/condition_snapshot.js +0 -0
  981. /package/dist/{source → api}/interfaces/alarms_and_conditions/deviation_stuff.js +0 -0
  982. /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +0 -0
  983. /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.js +0 -0
  984. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +0 -0
  985. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +0 -0
  986. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.js +0 -0
  987. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +0 -0
  988. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +0 -0
  989. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +0 -0
  990. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +0 -0
  991. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +0 -0
  992. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +0 -0
  993. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +0 -0
  994. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +0 -0
  995. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.d.ts +0 -0
  996. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.js +0 -0
  997. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +0 -0
  998. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_condition_ex.js +0 -0
  999. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +0 -0
  1000. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +0 -0
  1001. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +0 -0
  1002. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +0 -0
  1003. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +0 -0
  1004. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +0 -0
  1005. /package/dist/{source → api}/interfaces/data_access/ua_multistate_discrete_ex.js +0 -0
  1006. /package/dist/{source → api}/interfaces/data_access/ua_multistate_value_discrete_ex.js +0 -0
  1007. /package/dist/{source → api}/interfaces/data_access/ua_two_state_discrete_ex.js +0 -0
  1008. /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.d.ts +0 -0
  1009. /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.js +0 -0
  1010. /package/dist/{source → api}/interfaces/extension_object_constructor.d.ts +0 -0
  1011. /package/dist/{source → api}/interfaces/extension_object_constructor.js +0 -0
  1012. /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.d.ts +0 -0
  1013. /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.js +0 -0
  1014. /package/dist/{source → api}/interfaces/i_set_state_options.d.ts +0 -0
  1015. /package/dist/{source → api}/interfaces/i_set_state_options.js +0 -0
  1016. /package/dist/{source → api}/interfaces/nodeset_loader_options.js +0 -0
  1017. /package/dist/{source → api}/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +0 -0
  1018. /package/dist/{source → api}/interfaces/state_machine/ua_finite_state_machine_type.js +0 -0
  1019. /package/dist/{source → api}/interfaces/state_machine/ua_program_state_machine_type.js +0 -0
  1020. /package/dist/{source → api}/interfaces/state_machine/ua_shelved_state_machine_ex.js +0 -0
  1021. /package/dist/{source → api}/interfaces/state_machine/ua_state_machine_type.js +0 -0
  1022. /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.d.ts +0 -0
  1023. /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.js +0 -0
  1024. /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +0 -0
  1025. /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.js +0 -0
  1026. /package/dist/{source → api}/loader/ensure_datatype_extracted.d.ts +0 -0
  1027. /package/dist/{source → api}/loader/make_semver_compatible.d.ts +0 -0
  1028. /package/dist/{source → api}/loader/make_semver_compatible.js +0 -0
  1029. /package/dist/{source → api}/loader/make_xml_extension_object_parser.d.ts +0 -0
  1030. /package/dist/{source → api}/loader/namespace_post_step.d.ts +0 -0
  1031. /package/dist/{source → api}/loader/parsers/extension_object_parser.d.ts +0 -0
  1032. /package/dist/{source → api}/loader/parsers/localized_text_parser.d.ts +0 -0
  1033. /package/dist/{source → api}/loader/parsers/localized_text_parser.js +0 -0
  1034. /package/dist/{source → api}/loader/parsers/nodeid_parser.d.ts +0 -0
  1035. /package/dist/{source → api}/loader/parsers/nodeid_parser.js +0 -0
  1036. /package/dist/{source → api}/loader/parsers/qualified_name_parser.d.ts +0 -0
  1037. /package/dist/{source → api}/loader/parsers/qualified_name_parser.js +0 -0
  1038. /package/dist/{source → api}/namespace.js +0 -0
  1039. /package/dist/{source → api}/namespace_alarm_and_condition.js +0 -0
  1040. /package/dist/{source → api}/namespace_data_access.js +0 -0
  1041. /package/dist/{source → api}/namespace_machine_state.js +0 -0
  1042. /package/dist/{source → api}/session_context.js +0 -0
  1043. /package/dist/{source → api}/set_namespace_meta_data.d.ts +0 -0
  1044. /package/dist/{source → api}/set_namespace_meta_data.js +0 -0
  1045. /package/dist/{source → api}/ua_addin.d.ts +0 -0
  1046. /package/dist/{source → api}/ua_addin.js +0 -0
  1047. /package/dist/{source → api}/ua_interface.d.ts +0 -0
  1048. /package/dist/{source → api}/ua_root_folder.d.ts +0 -0
  1049. /package/dist/{source → api}/ua_root_folder.js +0 -0
  1050. /package/dist/{source → api}/ua_two_state_variable_ex.js +0 -0
  1051. /package/dist/{source → api}/xml_writer.d.ts +0 -0
  1052. /package/dist/{source → api}/xml_writer.js +0 -0
  1053. /package/dist/{src → impl}/_instantiate_helpers.d.ts +0 -0
  1054. /package/dist/{src → impl}/_mandatory_child_or_requested_optional_filter.d.ts +0 -0
  1055. /package/dist/{src → impl}/address_space_change_event_tools.js +0 -0
  1056. /package/dist/{src → impl}/address_space_private.js +0 -0
  1057. /package/dist/{src → impl}/alarms_and_conditions/condition.d.ts +0 -0
  1058. /package/dist/{src → impl}/alarms_and_conditions/condition.js +0 -0
  1059. /package/dist/{src → impl}/check_value_rank_compatibility.d.ts +0 -0
  1060. /package/dist/{src → impl}/check_value_rank_compatibility.js +0 -0
  1061. /package/dist/{src → impl}/data_access/add_dataItem_stuff.d.ts +0 -0
  1062. /package/dist/{src → impl}/data_access/add_dataItem_stuff.js +0 -0
  1063. /package/dist/{src → impl}/data_access/adjust_datavalue_status_code.js +0 -0
  1064. /package/dist/{src → impl}/get_basic_datatype.d.ts +0 -0
  1065. /package/dist/{src → impl}/get_basic_datatype.js +0 -0
  1066. /package/dist/{src → impl}/idx_iterator.d.ts +0 -0
  1067. /package/dist/{src → impl}/idx_iterator.js +0 -0
  1068. /package/dist/{src → impl}/namespace_private.js +0 -0
  1069. /package/dist/{src → impl}/nodeid_manager.d.ts +0 -0
  1070. /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.d.ts +0 -0
  1071. /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.js +0 -0
  1072. /package/dist/{src → impl}/private_namespace.js +0 -0
  1073. /package/dist/{src → impl}/role_permissions.d.ts +0 -0
  1074. /package/dist/{src → impl}/role_permissions.js +0 -0
  1075. /package/dist/{src → impl}/ua_condition_type.d.ts +0 -0
  1076. /package/dist/{src → impl}/ua_condition_type.js +0 -0
  1077. /package/{src → impl}/alarms_and_conditions/condition.ts +0 -0
  1078. /package/{src → impl}/check_value_rank_compatibility.ts +0 -0
  1079. /package/{src → impl}/data_access/add_dataItem_stuff.ts +0 -0
  1080. /package/{src → impl}/get_basic_datatype.ts +0 -0
  1081. /package/{src → impl}/idx_iterator.ts +0 -0
  1082. /package/{src → impl}/nodeset_tools/adjust_namespace_array.ts +0 -0
  1083. /package/{src → impl}/role_permissions.ts +0 -0
  1084. /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
- }