node-opcua-address-space 2.179.0 → 2.181.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1085) hide show
  1. package/api/address_space_public.ts +63 -0
  2. package/api/address_space_ts.ts +129 -0
  3. package/api/continuation_points/continuation_point_manager.ts +271 -0
  4. package/api/helpers/argument_list.ts +310 -0
  5. package/api/helpers/call_helpers.ts +100 -0
  6. package/api/helpers/coerce_enum_value.ts +33 -0
  7. package/api/helpers/dump_tools.ts +90 -0
  8. package/api/helpers/ensure_secure_access.ts +78 -0
  9. package/api/helpers/multiform_func.ts +78 -0
  10. package/api/helpers/resolve_opaque_on_address_space.ts +26 -0
  11. package/api/index.ts +210 -0
  12. package/api/interfaces/alarms_and_conditions/condition_info_i.ts +60 -0
  13. package/api/interfaces/alarms_and_conditions/condition_snapshot.ts +236 -0
  14. package/api/interfaces/alarms_and_conditions/deviation_stuff.ts +16 -0
  15. package/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +8 -0
  16. package/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +6 -0
  17. package/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +6 -0
  18. package/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +13 -0
  19. package/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +6 -0
  20. package/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +6 -0
  21. package/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +21 -0
  22. package/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +28 -0
  23. package/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +72 -0
  24. package/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +36 -0
  25. package/api/interfaces/alarms_and_conditions/ua_condition_ex.ts +55 -0
  26. package/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +17 -0
  27. package/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +21 -0
  28. package/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +21 -0
  29. package/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +26 -0
  30. package/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +29 -0
  31. package/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +25 -0
  32. package/api/interfaces/data_access/ua_multistate_discrete_ex.ts +57 -0
  33. package/api/interfaces/data_access/ua_multistate_value_discrete_ex.ts +31 -0
  34. package/api/interfaces/data_access/ua_two_state_discrete_ex.ts +15 -0
  35. package/api/interfaces/nodeset_loader_options.ts +58 -0
  36. package/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +20 -0
  37. package/api/interfaces/state_machine/ua_finite_state_machine_type.ts +50 -0
  38. package/api/interfaces/state_machine/ua_program_state_machine_type.ts +14 -0
  39. package/api/interfaces/state_machine/ua_shelved_state_machine_ex.ts +35 -0
  40. package/api/interfaces/state_machine/ua_state_machine_type.ts +288 -0
  41. package/api/loader/decode_xml_extension_object.ts +80 -0
  42. package/api/loader/ensure_datatype_extracted.ts +122 -0
  43. package/api/loader/generateAddressSpaceRaw.ts +470 -0
  44. package/api/loader/load_nodeset2.ts +278 -0
  45. package/api/loader/make_xml_extension_object_parser.ts +518 -0
  46. package/api/loader/namespace_post_step.ts +68 -0
  47. package/api/loader/nodeset_image.ts +451 -0
  48. package/api/loader/nodeset_image_codec.ts +576 -0
  49. package/api/loader/nodeset_image_store.ts +78 -0
  50. package/api/loader/nodeset_record.ts +141 -0
  51. package/api/loader/nodeset_record_applier.ts +889 -0
  52. package/api/loader/nodeset_source.ts +367 -0
  53. package/api/loader/nodeset_source_helpers.ts +50 -0
  54. package/api/loader/nodeset_to_image.ts +29 -0
  55. package/api/loader/nodeset_xml_producer.ts +383 -0
  56. package/api/loader/parsers/extension_object_parser.ts +374 -0
  57. package/api/loader/parsers/variant_parser.ts +363 -0
  58. package/api/loader/register_node_promoter.ts +6 -0
  59. package/api/namespace.ts +25 -0
  60. package/api/namespace_alarm_and_condition.ts +78 -0
  61. package/api/namespace_data_access.ts +92 -0
  62. package/api/namespace_machine_state.ts +20 -0
  63. package/api/pseudo_session.ts +415 -0
  64. package/api/session_context.ts +729 -0
  65. package/api/ua_interface.ts +38 -0
  66. package/api/ua_two_state_variable_ex.ts +36 -0
  67. package/bin/opcua-nodeset-image.js +192 -0
  68. package/dist/api/address_space_public.d.ts +57 -0
  69. package/dist/api/address_space_public.js +19 -0
  70. package/dist/api/address_space_public.js.map +1 -0
  71. package/dist/api/address_space_ts.d.ts +79 -0
  72. package/dist/api/address_space_ts.js +13 -0
  73. package/dist/api/address_space_ts.js.map +1 -0
  74. package/dist/api/continuation_points/continuation_point_manager.js +230 -0
  75. package/dist/api/continuation_points/continuation_point_manager.js.map +1 -0
  76. package/dist/api/helpers/adjust_browse_direction.js.map +1 -0
  77. package/dist/api/helpers/argument_list.js +263 -0
  78. package/dist/api/helpers/argument_list.js.map +1 -0
  79. package/dist/api/helpers/call_helpers.js +80 -0
  80. package/dist/api/helpers/call_helpers.js.map +1 -0
  81. package/dist/api/helpers/coerce_enum_value.d.ts +6 -0
  82. package/dist/api/helpers/coerce_enum_value.js.map +1 -0
  83. package/dist/api/helpers/dump_tools.js +81 -0
  84. package/dist/api/helpers/dump_tools.js.map +1 -0
  85. package/dist/api/helpers/ensure_secure_access.d.ts +19 -0
  86. package/dist/api/helpers/ensure_secure_access.js +67 -0
  87. package/dist/api/helpers/ensure_secure_access.js.map +1 -0
  88. package/dist/api/helpers/make_optionals_map.js.map +1 -0
  89. package/dist/api/helpers/multiform_func.js +75 -0
  90. package/dist/api/helpers/multiform_func.js.map +1 -0
  91. package/dist/api/helpers/resolve_opaque_on_address_space.js +25 -0
  92. package/dist/api/helpers/resolve_opaque_on_address_space.js.map +1 -0
  93. package/dist/api/index.d.ts +113 -0
  94. package/dist/api/index.js +234 -0
  95. package/dist/api/index.js.map +1 -0
  96. package/dist/api/interfaces/alarms_and_conditions/condition_info_i.d.ts +54 -0
  97. package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js +28 -0
  98. package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js.map +1 -0
  99. package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.d.ts +151 -0
  100. package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.js.map +1 -0
  101. package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.d.ts +12 -0
  102. package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.js.map +1 -0
  103. package/dist/api/interfaces/alarms_and_conditions/install_setpoint_options.js.map +1 -0
  104. package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -0
  105. package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +1 -0
  106. package/dist/api/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +1 -0
  107. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +4 -0
  108. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +1 -0
  109. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -0
  110. package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +1 -0
  111. package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +10 -0
  112. package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +1 -0
  113. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +4 -0
  114. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +1 -0
  115. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +4 -0
  116. package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +1 -0
  117. package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +20 -0
  118. package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +1 -0
  119. package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +21 -0
  120. package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +1 -0
  121. package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +56 -0
  122. package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +1 -0
  123. package/dist/api/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +1 -0
  124. package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +19 -0
  125. package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +1 -0
  126. package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +44 -0
  127. package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.js.map +1 -0
  128. package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +4 -0
  129. package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +1 -0
  130. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -0
  131. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +1 -0
  132. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +19 -0
  133. package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +1 -0
  134. package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +25 -0
  135. package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +1 -0
  136. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +8 -0
  137. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +1 -0
  138. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -0
  139. package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +1 -0
  140. package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.d.ts +44 -0
  141. package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.js.map +1 -0
  142. package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +22 -0
  143. package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +1 -0
  144. package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.d.ts +13 -0
  145. package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.js.map +1 -0
  146. package/dist/api/interfaces/data_access/ua_y_array_item_ex.js.map +1 -0
  147. package/dist/api/interfaces/extension_object_constructor.js.map +1 -0
  148. package/dist/api/interfaces/i_condition_variable_type_setter_options.js.map +1 -0
  149. package/dist/api/interfaces/i_set_state_options.js.map +1 -0
  150. package/dist/api/interfaces/nodeset_loader_options.d.ts +56 -0
  151. package/dist/api/interfaces/nodeset_loader_options.js.map +1 -0
  152. package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -0
  153. package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +1 -0
  154. package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -0
  155. package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.js.map +1 -0
  156. package/dist/api/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -0
  157. package/dist/api/interfaces/state_machine/ua_program_state_machine_type.js.map +1 -0
  158. package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +29 -0
  159. package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +1 -0
  160. package/dist/api/interfaces/state_machine/ua_state_machine_type.d.ts +236 -0
  161. package/dist/api/interfaces/state_machine/ua_state_machine_type.js.map +1 -0
  162. package/dist/api/interfaces/state_machine/ua_transition_ex.js.map +1 -0
  163. package/dist/api/interfaces/ua_subscription_diagnostics_variable_ex.js.map +1 -0
  164. package/dist/api/loader/decode_xml_extension_object.d.ts +6 -0
  165. package/dist/api/loader/decode_xml_extension_object.js +69 -0
  166. package/dist/api/loader/decode_xml_extension_object.js.map +1 -0
  167. package/dist/api/loader/ensure_datatype_extracted.js +88 -0
  168. package/dist/api/loader/ensure_datatype_extracted.js.map +1 -0
  169. package/dist/api/loader/generateAddressSpaceRaw.d.ts +64 -0
  170. package/dist/api/loader/generateAddressSpaceRaw.js +379 -0
  171. package/dist/api/loader/generateAddressSpaceRaw.js.map +1 -0
  172. package/dist/api/loader/load_nodeset2.d.ts +38 -0
  173. package/dist/api/loader/load_nodeset2.js +245 -0
  174. package/dist/api/loader/load_nodeset2.js.map +1 -0
  175. package/dist/api/loader/make_semver_compatible.js.map +1 -0
  176. package/dist/api/loader/make_xml_extension_object_parser.js +417 -0
  177. package/dist/api/loader/make_xml_extension_object_parser.js.map +1 -0
  178. package/dist/api/loader/namespace_post_step.js +57 -0
  179. package/dist/api/loader/namespace_post_step.js.map +1 -0
  180. package/dist/api/loader/nodeset_image.d.ts +94 -0
  181. package/dist/api/loader/nodeset_image.js +406 -0
  182. package/dist/api/loader/nodeset_image.js.map +1 -0
  183. package/dist/api/loader/nodeset_image_codec.d.ts +104 -0
  184. package/dist/api/loader/nodeset_image_codec.js +489 -0
  185. package/dist/api/loader/nodeset_image_codec.js.map +1 -0
  186. package/dist/api/loader/nodeset_image_store.d.ts +27 -0
  187. package/dist/api/loader/nodeset_image_store.js +72 -0
  188. package/dist/api/loader/nodeset_image_store.js.map +1 -0
  189. package/dist/api/loader/nodeset_record.d.ts +125 -0
  190. package/dist/api/loader/nodeset_record.js +26 -0
  191. package/dist/api/loader/nodeset_record.js.map +1 -0
  192. package/dist/api/loader/nodeset_record_applier.d.ts +106 -0
  193. package/dist/api/loader/nodeset_record_applier.js +731 -0
  194. package/dist/api/loader/nodeset_record_applier.js.map +1 -0
  195. package/dist/api/loader/nodeset_source.d.ts +124 -0
  196. package/dist/api/loader/nodeset_source.js +307 -0
  197. package/dist/api/loader/nodeset_source.js.map +1 -0
  198. package/dist/api/loader/nodeset_source_helpers.d.ts +27 -0
  199. package/dist/api/loader/nodeset_source_helpers.js +30 -0
  200. package/dist/api/loader/nodeset_source_helpers.js.map +1 -0
  201. package/dist/api/loader/nodeset_to_image.d.ts +13 -0
  202. package/dist/api/loader/nodeset_to_image.js +30 -0
  203. package/dist/api/loader/nodeset_to_image.js.map +1 -0
  204. package/dist/api/loader/nodeset_xml_producer.d.ts +16 -0
  205. package/dist/api/loader/nodeset_xml_producer.js +349 -0
  206. package/dist/api/loader/nodeset_xml_producer.js.map +1 -0
  207. package/dist/api/loader/parsers/extension_object_parser.js +274 -0
  208. package/dist/api/loader/parsers/extension_object_parser.js.map +1 -0
  209. package/dist/api/loader/parsers/localized_text_parser.js.map +1 -0
  210. package/dist/api/loader/parsers/nodeid_parser.js.map +1 -0
  211. package/dist/api/loader/parsers/qualified_name_parser.js.map +1 -0
  212. package/dist/api/loader/parsers/variant_parser.d.ts +42 -0
  213. package/dist/api/loader/parsers/variant_parser.js +294 -0
  214. package/dist/api/loader/parsers/variant_parser.js.map +1 -0
  215. package/dist/api/loader/register_node_promoter.d.ts +2 -0
  216. package/dist/api/loader/register_node_promoter.js +9 -0
  217. package/dist/api/loader/register_node_promoter.js.map +1 -0
  218. package/dist/api/namespace.d.ts +18 -0
  219. package/dist/api/namespace.js.map +1 -0
  220. package/dist/api/namespace_alarm_and_condition.d.ts +33 -0
  221. package/dist/api/namespace_alarm_and_condition.js.map +1 -0
  222. package/dist/api/namespace_data_access.d.ts +67 -0
  223. package/dist/api/namespace_data_access.js.map +1 -0
  224. package/dist/api/namespace_machine_state.d.ts +8 -0
  225. package/dist/api/namespace_machine_state.js.map +1 -0
  226. package/dist/api/pseudo_session.d.ts +74 -0
  227. package/dist/api/pseudo_session.js +308 -0
  228. package/dist/api/pseudo_session.js.map +1 -0
  229. package/dist/api/session_context.d.ts +242 -0
  230. package/dist/api/session_context.js +524 -0
  231. package/dist/api/session_context.js.map +1 -0
  232. package/dist/api/set_namespace_meta_data.js.map +1 -0
  233. package/dist/api/ua_addin.js.map +1 -0
  234. package/dist/api/ua_interface.js +25 -0
  235. package/dist/api/ua_interface.js.map +1 -0
  236. package/dist/api/ua_root_folder.js.map +1 -0
  237. package/dist/api/ua_two_state_variable_ex.d.ts +24 -0
  238. package/dist/api/ua_two_state_variable_ex.js.map +1 -0
  239. package/dist/api/xml_writer.js.map +1 -0
  240. package/dist/impl/_instantiate_helpers.js +99 -0
  241. package/dist/impl/_instantiate_helpers.js.map +1 -0
  242. package/dist/impl/_mandatory_child_or_requested_optional_filter.js +82 -0
  243. package/dist/impl/_mandatory_child_or_requested_optional_filter.js.map +1 -0
  244. package/dist/impl/address_space.d.ts +379 -0
  245. package/dist/impl/address_space.js +1383 -0
  246. package/dist/impl/address_space.js.map +1 -0
  247. package/dist/impl/address_space_change_event_tools.d.ts +6 -0
  248. package/dist/impl/address_space_change_event_tools.js.map +1 -0
  249. package/dist/impl/address_space_private.d.ts +48 -0
  250. package/dist/impl/address_space_private.js.map +1 -0
  251. package/dist/impl/alarms_and_conditions/condition.js.map +1 -0
  252. package/dist/impl/alarms_and_conditions/condition_info_impl.d.ts +19 -0
  253. package/dist/impl/alarms_and_conditions/condition_info_impl.js +39 -0
  254. package/dist/impl/alarms_and_conditions/condition_info_impl.js.map +1 -0
  255. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.d.ts +271 -0
  256. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js +700 -0
  257. package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js.map +1 -0
  258. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.d.ts +12 -0
  259. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js +66 -0
  260. package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js.map +1 -0
  261. package/dist/impl/alarms_and_conditions/index.d.ts +16 -0
  262. package/dist/impl/alarms_and_conditions/index.js +33 -0
  263. package/dist/impl/alarms_and_conditions/index.js.map +1 -0
  264. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +54 -0
  265. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -0
  266. package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -0
  267. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.d.ts +105 -0
  268. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js +428 -0
  269. package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -0
  270. package/dist/impl/alarms_and_conditions/ua_base_event_impl.d.ts +36 -0
  271. package/dist/impl/alarms_and_conditions/ua_base_event_impl.js +32 -0
  272. package/dist/impl/alarms_and_conditions/ua_base_event_impl.js.map +1 -0
  273. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +47 -0
  274. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +204 -0
  275. package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -0
  276. package/dist/impl/alarms_and_conditions/ua_condition_impl.d.ts +152 -0
  277. package/dist/impl/alarms_and_conditions/ua_condition_impl.js +1016 -0
  278. package/dist/impl/alarms_and_conditions/ua_condition_impl.js.map +1 -0
  279. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +22 -0
  280. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js +41 -0
  281. package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -0
  282. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +30 -0
  283. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +54 -0
  284. package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -0
  285. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +12 -0
  286. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +13 -0
  287. package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -0
  288. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +28 -0
  289. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -0
  290. package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -0
  291. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +10 -0
  292. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +8 -0
  293. package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -0
  294. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.d.ts +49 -0
  295. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js +207 -0
  296. package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -0
  297. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +28 -0
  298. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +54 -0
  299. package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -0
  300. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +38 -0
  301. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +172 -0
  302. package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -0
  303. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +44 -0
  304. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js +164 -0
  305. package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -0
  306. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -0
  307. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +18 -0
  308. package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -0
  309. package/dist/impl/apply_condition_refresh.d.ts +4 -0
  310. package/dist/impl/apply_condition_refresh.js +29 -0
  311. package/dist/impl/apply_condition_refresh.js.map +1 -0
  312. package/dist/impl/base_node_impl.d.ts +347 -0
  313. package/dist/impl/base_node_impl.js +1768 -0
  314. package/dist/impl/base_node_impl.js.map +1 -0
  315. package/dist/impl/base_node_private.d.ts +138 -0
  316. package/dist/impl/base_node_private.js +1028 -0
  317. package/dist/impl/base_node_private.js.map +1 -0
  318. package/dist/impl/check_value_rank_compatibility.js.map +1 -0
  319. package/dist/impl/child_accessors.d.ts +43 -0
  320. package/dist/impl/child_accessors.js +222 -0
  321. package/dist/impl/child_accessors.js.map +1 -0
  322. package/dist/impl/data_access/add_dataItem_stuff.js.map +1 -0
  323. package/dist/impl/data_access/adjust_datavalue_status_code.d.ts +7 -0
  324. package/dist/impl/data_access/adjust_datavalue_status_code.js.map +1 -0
  325. package/dist/impl/data_access/ua_multistate_discrete_impl.d.ts +38 -0
  326. package/dist/impl/data_access/ua_multistate_discrete_impl.js +143 -0
  327. package/dist/impl/data_access/ua_multistate_discrete_impl.js.map +1 -0
  328. package/dist/impl/data_access/ua_multistate_value_discrete_impl.d.ts +61 -0
  329. package/dist/impl/data_access/ua_multistate_value_discrete_impl.js +303 -0
  330. package/dist/impl/data_access/ua_multistate_value_discrete_impl.js.map +1 -0
  331. package/dist/impl/data_access/ua_two_state_discrete_impl.d.ts +30 -0
  332. package/dist/impl/data_access/ua_two_state_discrete_impl.js +164 -0
  333. package/dist/impl/data_access/ua_two_state_discrete_impl.js.map +1 -0
  334. package/dist/impl/event_data.d.ts +27 -0
  335. package/dist/impl/event_data.js +73 -0
  336. package/dist/impl/event_data.js.map +1 -0
  337. package/dist/impl/event_layout.d.ts +40 -0
  338. package/dist/impl/event_layout.js +103 -0
  339. package/dist/impl/event_layout.js.map +1 -0
  340. package/dist/impl/extension_object_array_node.d.ts +41 -0
  341. package/dist/impl/extension_object_array_node.js +274 -0
  342. package/dist/impl/extension_object_array_node.js.map +1 -0
  343. package/dist/impl/get_basic_datatype.js.map +1 -0
  344. package/dist/impl/handle_hierarchy_parent.d.ts +33 -0
  345. package/dist/impl/handle_hierarchy_parent.js +103 -0
  346. package/dist/impl/handle_hierarchy_parent.js.map +1 -0
  347. package/dist/impl/historical_access/address_space_historical_data_node.d.ts +21 -0
  348. package/dist/impl/historical_access/address_space_historical_data_node.js +658 -0
  349. package/dist/impl/historical_access/address_space_historical_data_node.js.map +1 -0
  350. package/dist/impl/historizer_factory.d.ts +18 -0
  351. package/dist/impl/historizer_factory.js +16 -0
  352. package/dist/impl/historizer_factory.js.map +1 -0
  353. package/dist/impl/idx_iterator.js.map +1 -0
  354. package/dist/impl/namespace_impl.d.ts +469 -0
  355. package/dist/impl/namespace_impl.js +1845 -0
  356. package/dist/impl/namespace_impl.js.map +1 -0
  357. package/dist/impl/namespace_private.d.ts +25 -0
  358. package/dist/impl/namespace_private.js.map +1 -0
  359. package/dist/impl/nodeid_manager.js +249 -0
  360. package/dist/impl/nodeid_manager.js.map +1 -0
  361. package/dist/impl/nodeset_tools/adjust_namespace_array.js.map +1 -0
  362. package/dist/impl/nodeset_tools/construct_namespace_dependency.d.ts +37 -0
  363. package/dist/impl/nodeset_tools/construct_namespace_dependency.js +352 -0
  364. package/dist/impl/nodeset_tools/construct_namespace_dependency.js.map +1 -0
  365. package/dist/impl/nodeset_tools/dump_to_bsd.d.ts +10 -0
  366. package/dist/impl/nodeset_tools/dump_to_bsd.js +176 -0
  367. package/dist/impl/nodeset_tools/dump_to_bsd.js.map +1 -0
  368. package/dist/impl/nodeset_tools/nodeset_to_records.d.ts +67 -0
  369. package/dist/impl/nodeset_tools/nodeset_to_records.js +773 -0
  370. package/dist/impl/nodeset_tools/nodeset_to_records.js.map +1 -0
  371. package/dist/impl/nodeset_tools/nodeset_to_xml.d.ts +28 -0
  372. package/dist/impl/nodeset_tools/nodeset_to_xml.js +1132 -0
  373. package/dist/impl/nodeset_tools/nodeset_to_xml.js.map +1 -0
  374. package/dist/impl/private_namespace.d.ts +5 -0
  375. package/dist/impl/private_namespace.js.map +1 -0
  376. package/dist/impl/reference_impl.d.ts +82 -0
  377. package/dist/impl/reference_impl.js +207 -0
  378. package/dist/impl/reference_impl.js.map +1 -0
  379. package/dist/impl/reference_type_version.d.ts +22 -0
  380. package/dist/impl/reference_type_version.js +22 -0
  381. package/dist/impl/reference_type_version.js.map +1 -0
  382. package/dist/impl/role_permissions.js.map +1 -0
  383. package/dist/impl/state_machine/finite_state_machine.d.ts +81 -0
  384. package/dist/impl/state_machine/finite_state_machine.js +573 -0
  385. package/dist/impl/state_machine/finite_state_machine.js.map +1 -0
  386. package/dist/impl/state_machine/ua_shelving_state_machine_ex.d.ts +64 -0
  387. package/dist/impl/state_machine/ua_shelving_state_machine_ex.js +249 -0
  388. package/dist/impl/state_machine/ua_shelving_state_machine_ex.js.map +1 -0
  389. package/dist/impl/state_machine/ua_two_state_variable.d.ts +55 -0
  390. package/dist/impl/state_machine/ua_two_state_variable.js +323 -0
  391. package/dist/impl/state_machine/ua_two_state_variable.js.map +1 -0
  392. package/dist/impl/tool_isSubtypeOf.d.ts +18 -0
  393. package/dist/impl/tool_isSubtypeOf.js +138 -0
  394. package/dist/impl/tool_isSubtypeOf.js.map +1 -0
  395. package/dist/impl/ua_condition_type.js.map +1 -0
  396. package/dist/impl/ua_data_type_impl.d.ts +87 -0
  397. package/dist/impl/ua_data_type_impl.js +391 -0
  398. package/dist/impl/ua_data_type_impl.js.map +1 -0
  399. package/dist/impl/ua_method_impl.d.ts +48 -0
  400. package/dist/impl/ua_method_impl.js +281 -0
  401. package/dist/impl/ua_method_impl.js.map +1 -0
  402. package/dist/impl/ua_object_impl.d.ts +38 -0
  403. package/dist/impl/ua_object_impl.js +214 -0
  404. package/dist/impl/ua_object_impl.js.map +1 -0
  405. package/dist/impl/ua_object_type_impl.d.ts +55 -0
  406. package/dist/impl/ua_object_type_impl.js +131 -0
  407. package/dist/impl/ua_object_type_impl.js.map +1 -0
  408. package/dist/impl/ua_reference_type_impl.d.ts +42 -0
  409. package/dist/impl/ua_reference_type_impl.js +157 -0
  410. package/dist/impl/ua_reference_type_impl.js.map +1 -0
  411. package/dist/impl/ua_variable_impl.d.ts +391 -0
  412. package/dist/impl/ua_variable_impl.js +2001 -0
  413. package/dist/impl/ua_variable_impl.js.map +1 -0
  414. package/dist/impl/ua_variable_impl_ext_obj.d.ts +23 -0
  415. package/dist/impl/ua_variable_impl_ext_obj.js +753 -0
  416. package/dist/impl/ua_variable_impl_ext_obj.js.map +1 -0
  417. package/dist/impl/ua_variable_type_impl.d.ts +79 -0
  418. package/dist/impl/ua_variable_type_impl.js +279 -0
  419. package/dist/impl/ua_variable_type_impl.js.map +1 -0
  420. package/dist/impl/ua_view_impl.d.ts +18 -0
  421. package/dist/impl/ua_view_impl.js +45 -0
  422. package/dist/impl/ua_view_impl.js.map +1 -0
  423. package/dist/impl/validate_data_type_correctness.d.ts +6 -0
  424. package/dist/impl/validate_data_type_correctness.js +123 -0
  425. package/dist/impl/validate_data_type_correctness.js.map +1 -0
  426. package/dist/tsconfig_base.tsbuildinfo +1 -1
  427. package/distHelpers/address_space_digest.d.ts +4 -0
  428. package/distHelpers/address_space_digest.js +9 -0
  429. package/distHelpers/address_space_digest.js.map +1 -0
  430. package/distHelpers/alarms_and_conditions_demo.d.ts +1 -1
  431. package/distHelpers/assertHasMatchingReference.d.ts +1 -1
  432. package/distHelpers/boiler_system.d.ts +1 -1
  433. package/distHelpers/boiler_system.js +3 -3
  434. package/distHelpers/boiler_system.js.map +1 -1
  435. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +1 -1
  436. package/distHelpers/get_address_space_fixture.js +38 -22
  437. package/distHelpers/get_address_space_fixture.js.map +1 -1
  438. package/distHelpers/get_mini_address_space.d.ts +1 -1
  439. package/distHelpers/get_mini_address_space.js +7 -7
  440. package/distHelpers/get_mini_address_space.js.map +1 -1
  441. package/distHelpers/index.d.ts +9 -9
  442. package/distHelpers/index.js +9 -9
  443. package/distHelpers/index.js.map +1 -1
  444. package/distHelpers/mock_session.d.ts +1 -1
  445. package/distHelpers/mock_session.js +2 -2
  446. package/distHelpers/mock_session.js.map +1 -1
  447. package/distNodeJS/address_space_digest.d.ts +13 -0
  448. package/distNodeJS/address_space_digest.js +31 -0
  449. package/distNodeJS/address_space_digest.js.map +1 -0
  450. package/distNodeJS/generate_address_space.d.ts +35 -2
  451. package/distNodeJS/generate_address_space.js +201 -7
  452. package/distNodeJS/generate_address_space.js.map +1 -1
  453. package/distNodeJS/index.d.ts +3 -1
  454. package/distNodeJS/index.js +3 -1
  455. package/distNodeJS/index.js.map +1 -1
  456. package/distNodeJS/nodeset_image_file_store.d.ts +29 -0
  457. package/distNodeJS/nodeset_image_file_store.js +120 -0
  458. package/distNodeJS/nodeset_image_file_store.js.map +1 -0
  459. package/impl/_instantiate_helpers.ts +197 -0
  460. package/impl/_mandatory_child_or_requested_optional_filter.ts +100 -0
  461. package/impl/address_space.ts +1572 -0
  462. package/impl/address_space_change_event_tools.ts +177 -0
  463. package/impl/address_space_private.ts +100 -0
  464. package/impl/alarms_and_conditions/condition_info_impl.ts +45 -0
  465. package/impl/alarms_and_conditions/condition_snapshot_impl.ts +793 -0
  466. package/impl/alarms_and_conditions/deviation_alarm_helper.ts +73 -0
  467. package/impl/alarms_and_conditions/index.ts +16 -0
  468. package/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +351 -0
  469. package/impl/alarms_and_conditions/ua_alarm_condition_impl.ts +515 -0
  470. package/impl/alarms_and_conditions/ua_base_event_impl.ts +61 -0
  471. package/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +246 -0
  472. package/impl/alarms_and_conditions/ua_condition_impl.ts +1286 -0
  473. package/impl/alarms_and_conditions/ua_discrete_alarm_impl.ts +60 -0
  474. package/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +95 -0
  475. package/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +21 -0
  476. package/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +112 -0
  477. package/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +25 -0
  478. package/impl/alarms_and_conditions/ua_limit_alarm_impl.ts +265 -0
  479. package/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +94 -0
  480. package/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +232 -0
  481. package/impl/alarms_and_conditions/ua_off_normal_alarm_impl.ts +216 -0
  482. package/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +26 -0
  483. package/impl/apply_condition_refresh.ts +56 -0
  484. package/impl/base_node_impl.ts +2165 -0
  485. package/impl/base_node_private.ts +1420 -0
  486. package/impl/child_accessors.ts +239 -0
  487. package/impl/data_access/adjust_datavalue_status_code.ts +36 -0
  488. package/impl/data_access/ua_multistate_discrete_impl.ts +198 -0
  489. package/impl/data_access/ua_multistate_value_discrete_impl.ts +384 -0
  490. package/impl/data_access/ua_two_state_discrete_impl.ts +195 -0
  491. package/impl/event_data.ts +80 -0
  492. package/impl/event_layout.ts +141 -0
  493. package/impl/extension_object_array_node.ts +343 -0
  494. package/impl/handle_hierarchy_parent.ts +133 -0
  495. package/impl/historical_access/address_space_historical_data_node.ts +849 -0
  496. package/impl/historizer_factory.ts +17 -0
  497. package/impl/namespace_impl.ts +2323 -0
  498. package/impl/namespace_private.ts +68 -0
  499. package/impl/nodeid_manager.ts +293 -0
  500. package/impl/nodeset_tools/construct_namespace_dependency.ts +381 -0
  501. package/impl/nodeset_tools/dump_to_bsd.ts +210 -0
  502. package/impl/nodeset_tools/nodeset_to_records.ts +846 -0
  503. package/impl/nodeset_tools/nodeset_to_xml.ts +1326 -0
  504. package/impl/private_namespace.ts +21 -0
  505. package/impl/reference_impl.ts +244 -0
  506. package/impl/reference_type_version.ts +19 -0
  507. package/impl/state_machine/finite_state_machine.ts +676 -0
  508. package/impl/state_machine/ua_shelving_state_machine_ex.ts +356 -0
  509. package/impl/state_machine/ua_two_state_variable.ts +421 -0
  510. package/impl/tool_isSubtypeOf.ts +168 -0
  511. package/impl/ua_data_type_impl.ts +486 -0
  512. package/impl/ua_method_impl.ts +364 -0
  513. package/impl/ua_object_impl.ts +278 -0
  514. package/impl/ua_object_type_impl.ts +179 -0
  515. package/impl/ua_reference_type_impl.ts +179 -0
  516. package/impl/ua_variable_impl.ts +2559 -0
  517. package/impl/ua_variable_impl_ext_obj.ts +904 -0
  518. package/impl/ua_variable_type_impl.ts +390 -0
  519. package/impl/ua_view_impl.ts +53 -0
  520. package/impl/validate_data_type_correctness.ts +142 -0
  521. package/package.json +49 -44
  522. package/source_nodejs/address_space_digest.ts +35 -0
  523. package/source_nodejs/generate_address_space.ts +181 -8
  524. package/source_nodejs/index.ts +3 -1
  525. package/source_nodejs/nodeset_image_file_store.ts +127 -0
  526. package/dist/source/address_space_ts.d.ts +0 -128
  527. package/dist/source/address_space_ts.js +0 -23
  528. package/dist/source/address_space_ts.js.map +0 -1
  529. package/dist/source/continuation_points/continuation_point_manager.js +0 -230
  530. package/dist/source/continuation_points/continuation_point_manager.js.map +0 -1
  531. package/dist/source/helpers/adjust_browse_direction.js.map +0 -1
  532. package/dist/source/helpers/argument_list.js +0 -263
  533. package/dist/source/helpers/argument_list.js.map +0 -1
  534. package/dist/source/helpers/call_helpers.js +0 -80
  535. package/dist/source/helpers/call_helpers.js.map +0 -1
  536. package/dist/source/helpers/coerce_enum_value.d.ts +0 -6
  537. package/dist/source/helpers/coerce_enum_value.js.map +0 -1
  538. package/dist/source/helpers/dump_tools.js +0 -81
  539. package/dist/source/helpers/dump_tools.js.map +0 -1
  540. package/dist/source/helpers/ensure_secure_access.d.ts +0 -9
  541. package/dist/source/helpers/ensure_secure_access.js +0 -58
  542. package/dist/source/helpers/ensure_secure_access.js.map +0 -1
  543. package/dist/source/helpers/make_optionals_map.js.map +0 -1
  544. package/dist/source/helpers/multiform_func.js +0 -75
  545. package/dist/source/helpers/multiform_func.js.map +0 -1
  546. package/dist/source/helpers/resolve_opaque_on_address_space.js +0 -25
  547. package/dist/source/helpers/resolve_opaque_on_address_space.js.map +0 -1
  548. package/dist/source/index.d.ts +0 -66
  549. package/dist/source/index.js +0 -97
  550. package/dist/source/index.js.map +0 -1
  551. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +0 -21
  552. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +0 -3
  553. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js.map +0 -1
  554. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +0 -150
  555. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js.map +0 -1
  556. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +0 -12
  557. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js.map +0 -1
  558. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js.map +0 -1
  559. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +0 -7
  560. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +0 -1
  561. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +0 -1
  562. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +0 -4
  563. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +0 -1
  564. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +0 -4
  565. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +0 -1
  566. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +0 -10
  567. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +0 -1
  568. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +0 -4
  569. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +0 -1
  570. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +0 -4
  571. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +0 -1
  572. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +0 -20
  573. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +0 -1
  574. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +0 -21
  575. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +0 -1
  576. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +0 -33
  577. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +0 -1
  578. package/dist/source/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +0 -1
  579. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +0 -19
  580. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +0 -1
  581. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +0 -44
  582. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js.map +0 -1
  583. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +0 -4
  584. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +0 -1
  585. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +0 -5
  586. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +0 -1
  587. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +0 -19
  588. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +0 -1
  589. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +0 -25
  590. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +0 -1
  591. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +0 -8
  592. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +0 -1
  593. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +0 -10
  594. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +0 -1
  595. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +0 -44
  596. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js.map +0 -1
  597. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +0 -22
  598. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +0 -1
  599. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +0 -13
  600. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js.map +0 -1
  601. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js.map +0 -1
  602. package/dist/source/interfaces/extension_object_constructor.js.map +0 -1
  603. package/dist/source/interfaces/i_condition_variable_type_setter_options.js.map +0 -1
  604. package/dist/source/interfaces/i_set_state_options.js.map +0 -1
  605. package/dist/source/interfaces/nodeset_loader_options.d.ts +0 -37
  606. package/dist/source/interfaces/nodeset_loader_options.js.map +0 -1
  607. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +0 -12
  608. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +0 -1
  609. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +0 -49
  610. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js.map +0 -1
  611. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +0 -11
  612. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js.map +0 -1
  613. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +0 -29
  614. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +0 -1
  615. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +0 -236
  616. package/dist/source/interfaces/state_machine/ua_state_machine_type.js.map +0 -1
  617. package/dist/source/interfaces/state_machine/ua_transition_ex.js.map +0 -1
  618. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js.map +0 -1
  619. package/dist/source/loader/decode_xml_extension_object.d.ts +0 -6
  620. package/dist/source/loader/decode_xml_extension_object.js +0 -69
  621. package/dist/source/loader/decode_xml_extension_object.js.map +0 -1
  622. package/dist/source/loader/ensure_datatype_extracted.js +0 -88
  623. package/dist/source/loader/ensure_datatype_extracted.js.map +0 -1
  624. package/dist/source/loader/generateAddressSpaceRaw.d.ts +0 -29
  625. package/dist/source/loader/generateAddressSpaceRaw.js +0 -188
  626. package/dist/source/loader/generateAddressSpaceRaw.js.map +0 -1
  627. package/dist/source/loader/load_nodeset2.d.ts +0 -15
  628. package/dist/source/loader/load_nodeset2.js +0 -1047
  629. package/dist/source/loader/load_nodeset2.js.map +0 -1
  630. package/dist/source/loader/make_semver_compatible.js.map +0 -1
  631. package/dist/source/loader/make_xml_extension_object_parser.js +0 -422
  632. package/dist/source/loader/make_xml_extension_object_parser.js.map +0 -1
  633. package/dist/source/loader/namespace_post_step.js +0 -57
  634. package/dist/source/loader/namespace_post_step.js.map +0 -1
  635. package/dist/source/loader/parsers/extension_object_parser.js +0 -274
  636. package/dist/source/loader/parsers/extension_object_parser.js.map +0 -1
  637. package/dist/source/loader/parsers/localized_text_parser.js.map +0 -1
  638. package/dist/source/loader/parsers/nodeid_parser.js.map +0 -1
  639. package/dist/source/loader/parsers/qualified_name_parser.js.map +0 -1
  640. package/dist/source/loader/parsers/variant_parser.d.ts +0 -35
  641. package/dist/source/loader/parsers/variant_parser.js +0 -331
  642. package/dist/source/loader/parsers/variant_parser.js.map +0 -1
  643. package/dist/source/loader/register_node_promoter.d.ts +0 -2
  644. package/dist/source/loader/register_node_promoter.js +0 -9
  645. package/dist/source/loader/register_node_promoter.js.map +0 -1
  646. package/dist/source/namespace.d.ts +0 -6
  647. package/dist/source/namespace.js.map +0 -1
  648. package/dist/source/namespace_alarm_and_condition.d.ts +0 -33
  649. package/dist/source/namespace_alarm_and_condition.js.map +0 -1
  650. package/dist/source/namespace_data_access.d.ts +0 -67
  651. package/dist/source/namespace_data_access.js.map +0 -1
  652. package/dist/source/namespace_machine_state.d.ts +0 -8
  653. package/dist/source/namespace_machine_state.js.map +0 -1
  654. package/dist/source/pseudo_session.d.ts +0 -74
  655. package/dist/source/pseudo_session.js +0 -308
  656. package/dist/source/pseudo_session.js.map +0 -1
  657. package/dist/source/session_context.d.ts +0 -241
  658. package/dist/source/session_context.js +0 -517
  659. package/dist/source/session_context.js.map +0 -1
  660. package/dist/source/set_namespace_meta_data.js.map +0 -1
  661. package/dist/source/ua_addin.js.map +0 -1
  662. package/dist/source/ua_interface.js +0 -25
  663. package/dist/source/ua_interface.js.map +0 -1
  664. package/dist/source/ua_root_folder.js.map +0 -1
  665. package/dist/source/ua_two_state_variable_ex.d.ts +0 -24
  666. package/dist/source/ua_two_state_variable_ex.js.map +0 -1
  667. package/dist/source/xml_writer.js.map +0 -1
  668. package/dist/src/_instantiate_helpers.js +0 -99
  669. package/dist/src/_instantiate_helpers.js.map +0 -1
  670. package/dist/src/_mandatory_child_or_requested_optional_filter.js +0 -82
  671. package/dist/src/_mandatory_child_or_requested_optional_filter.js.map +0 -1
  672. package/dist/src/address_space.d.ts +0 -369
  673. package/dist/src/address_space.js +0 -1416
  674. package/dist/src/address_space.js.map +0 -1
  675. package/dist/src/address_space_change_event_tools.d.ts +0 -6
  676. package/dist/src/address_space_change_event_tools.js.map +0 -1
  677. package/dist/src/address_space_private.d.ts +0 -45
  678. package/dist/src/address_space_private.js.map +0 -1
  679. package/dist/src/alarms_and_conditions/condition.js.map +0 -1
  680. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +0 -18
  681. package/dist/src/alarms_and_conditions/condition_info_impl.js +0 -38
  682. package/dist/src/alarms_and_conditions/condition_info_impl.js.map +0 -1
  683. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +0 -269
  684. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +0 -699
  685. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +0 -1
  686. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +0 -12
  687. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +0 -66
  688. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +0 -1
  689. package/dist/src/alarms_and_conditions/index.d.ts +0 -16
  690. package/dist/src/alarms_and_conditions/index.js +0 -33
  691. package/dist/src/alarms_and_conditions/index.js.map +0 -1
  692. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +0 -42
  693. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +0 -243
  694. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +0 -1
  695. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +0 -80
  696. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +0 -415
  697. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +0 -1
  698. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +0 -18
  699. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +0 -33
  700. package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +0 -1
  701. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +0 -44
  702. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +0 -203
  703. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +0 -1
  704. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +0 -104
  705. package/dist/src/alarms_and_conditions/ua_condition_impl.js +0 -1017
  706. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +0 -1
  707. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +0 -19
  708. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +0 -39
  709. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +0 -1
  710. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +0 -25
  711. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +0 -55
  712. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +0 -1
  713. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +0 -11
  714. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +0 -12
  715. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +0 -1
  716. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +0 -23
  717. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +0 -87
  718. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +0 -1
  719. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +0 -10
  720. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +0 -8
  721. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +0 -1
  722. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +0 -26
  723. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +0 -208
  724. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +0 -1
  725. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +0 -23
  726. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +0 -55
  727. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +0 -1
  728. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +0 -27
  729. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +0 -173
  730. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +0 -1
  731. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +0 -43
  732. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +0 -168
  733. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +0 -1
  734. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +0 -18
  735. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +0 -18
  736. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +0 -1
  737. package/dist/src/apply_condition_refresh.d.ts +0 -4
  738. package/dist/src/apply_condition_refresh.js +0 -27
  739. package/dist/src/apply_condition_refresh.js.map +0 -1
  740. package/dist/src/base_node_impl.d.ts +0 -287
  741. package/dist/src/base_node_impl.js +0 -1538
  742. package/dist/src/base_node_impl.js.map +0 -1
  743. package/dist/src/base_node_private.d.ts +0 -87
  744. package/dist/src/base_node_private.js +0 -925
  745. package/dist/src/base_node_private.js.map +0 -1
  746. package/dist/src/check_value_rank_compatibility.js.map +0 -1
  747. package/dist/src/data_access/add_dataItem_stuff.js.map +0 -1
  748. package/dist/src/data_access/adjust_datavalue_status_code.d.ts +0 -7
  749. package/dist/src/data_access/adjust_datavalue_status_code.js.map +0 -1
  750. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +0 -35
  751. package/dist/src/data_access/ua_multistate_discrete_impl.js +0 -142
  752. package/dist/src/data_access/ua_multistate_discrete_impl.js.map +0 -1
  753. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +0 -51
  754. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +0 -302
  755. package/dist/src/data_access/ua_multistate_value_discrete_impl.js.map +0 -1
  756. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +0 -20
  757. package/dist/src/data_access/ua_two_state_discrete_impl.js +0 -163
  758. package/dist/src/data_access/ua_two_state_discrete_impl.js.map +0 -1
  759. package/dist/src/event_data.d.ts +0 -18
  760. package/dist/src/event_data.js +0 -70
  761. package/dist/src/event_data.js.map +0 -1
  762. package/dist/src/extension_object_array_node.d.ts +0 -34
  763. package/dist/src/extension_object_array_node.js +0 -262
  764. package/dist/src/extension_object_array_node.js.map +0 -1
  765. package/dist/src/get_basic_datatype.js.map +0 -1
  766. package/dist/src/historical_access/address_space_historical_data_node.d.ts +0 -21
  767. package/dist/src/historical_access/address_space_historical_data_node.js +0 -654
  768. package/dist/src/historical_access/address_space_historical_data_node.js.map +0 -1
  769. package/dist/src/idx_iterator.js.map +0 -1
  770. package/dist/src/index_current.d.ts +0 -50
  771. package/dist/src/index_current.js +0 -82
  772. package/dist/src/index_current.js.map +0 -1
  773. package/dist/src/namespace_impl.d.ts +0 -450
  774. package/dist/src/namespace_impl.js +0 -1876
  775. package/dist/src/namespace_impl.js.map +0 -1
  776. package/dist/src/namespace_private.d.ts +0 -31
  777. package/dist/src/namespace_private.js.map +0 -1
  778. package/dist/src/nodeid_manager.js +0 -249
  779. package/dist/src/nodeid_manager.js.map +0 -1
  780. package/dist/src/nodeset_tools/adjust_namespace_array.js.map +0 -1
  781. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +0 -33
  782. package/dist/src/nodeset_tools/construct_namespace_dependency.js +0 -347
  783. package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +0 -1
  784. package/dist/src/nodeset_tools/dump_to_bsd.d.ts +0 -2
  785. package/dist/src/nodeset_tools/dump_to_bsd.js +0 -164
  786. package/dist/src/nodeset_tools/dump_to_bsd.js.map +0 -1
  787. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +0 -12
  788. package/dist/src/nodeset_tools/nodeset_to_xml.js +0 -1381
  789. package/dist/src/nodeset_tools/nodeset_to_xml.js.map +0 -1
  790. package/dist/src/private_namespace.d.ts +0 -5
  791. package/dist/src/private_namespace.js.map +0 -1
  792. package/dist/src/reference_impl.d.ts +0 -43
  793. package/dist/src/reference_impl.js +0 -152
  794. package/dist/src/reference_impl.js.map +0 -1
  795. package/dist/src/role_permissions.js.map +0 -1
  796. package/dist/src/state_machine/finite_state_machine.d.ts +0 -70
  797. package/dist/src/state_machine/finite_state_machine.js +0 -574
  798. package/dist/src/state_machine/finite_state_machine.js.map +0 -1
  799. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +0 -39
  800. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +0 -249
  801. package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +0 -1
  802. package/dist/src/state_machine/ua_two_state_variable.d.ts +0 -55
  803. package/dist/src/state_machine/ua_two_state_variable.js +0 -323
  804. package/dist/src/state_machine/ua_two_state_variable.js.map +0 -1
  805. package/dist/src/tool_isSubtypeOf.d.ts +0 -18
  806. package/dist/src/tool_isSubtypeOf.js +0 -130
  807. package/dist/src/tool_isSubtypeOf.js.map +0 -1
  808. package/dist/src/ua_condition_type.js.map +0 -1
  809. package/dist/src/ua_data_type_impl.d.ts +0 -87
  810. package/dist/src/ua_data_type_impl.js +0 -393
  811. package/dist/src/ua_data_type_impl.js.map +0 -1
  812. package/dist/src/ua_method_impl.d.ts +0 -48
  813. package/dist/src/ua_method_impl.js +0 -280
  814. package/dist/src/ua_method_impl.js.map +0 -1
  815. package/dist/src/ua_object_impl.d.ts +0 -38
  816. package/dist/src/ua_object_impl.js +0 -214
  817. package/dist/src/ua_object_impl.js.map +0 -1
  818. package/dist/src/ua_object_type_impl.d.ts +0 -55
  819. package/dist/src/ua_object_type_impl.js +0 -131
  820. package/dist/src/ua_object_type_impl.js.map +0 -1
  821. package/dist/src/ua_reference_type_impl.d.ts +0 -42
  822. package/dist/src/ua_reference_type_impl.js +0 -146
  823. package/dist/src/ua_reference_type_impl.js.map +0 -1
  824. package/dist/src/ua_variable_impl.d.ts +0 -379
  825. package/dist/src/ua_variable_impl.js +0 -1940
  826. package/dist/src/ua_variable_impl.js.map +0 -1
  827. package/dist/src/ua_variable_impl_ext_obj.d.ts +0 -23
  828. package/dist/src/ua_variable_impl_ext_obj.js +0 -752
  829. package/dist/src/ua_variable_impl_ext_obj.js.map +0 -1
  830. package/dist/src/ua_variable_type_impl.d.ts +0 -79
  831. package/dist/src/ua_variable_type_impl.js +0 -276
  832. package/dist/src/ua_variable_type_impl.js.map +0 -1
  833. package/dist/src/ua_view_impl.d.ts +0 -18
  834. package/dist/src/ua_view_impl.js +0 -45
  835. package/dist/src/ua_view_impl.js.map +0 -1
  836. package/dist/src/validate_data_type_correctness.d.ts +0 -6
  837. package/dist/src/validate_data_type_correctness.js +0 -106
  838. package/dist/src/validate_data_type_correctness.js.map +0 -1
  839. package/source/address_space_ts.ts +0 -220
  840. package/source/continuation_points/continuation_point_manager.ts +0 -271
  841. package/source/helpers/argument_list.ts +0 -310
  842. package/source/helpers/call_helpers.ts +0 -100
  843. package/source/helpers/coerce_enum_value.ts +0 -33
  844. package/source/helpers/dump_tools.ts +0 -90
  845. package/source/helpers/ensure_secure_access.ts +0 -57
  846. package/source/helpers/multiform_func.ts +0 -78
  847. package/source/helpers/resolve_opaque_on_address_space.ts +0 -26
  848. package/source/index.ts +0 -72
  849. package/source/interfaces/alarms_and_conditions/condition_info_i.ts +0 -24
  850. package/source/interfaces/alarms_and_conditions/condition_snapshot.ts +0 -235
  851. package/source/interfaces/alarms_and_conditions/deviation_stuff.ts +0 -16
  852. package/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +0 -8
  853. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +0 -6
  854. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +0 -6
  855. package/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +0 -13
  856. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +0 -6
  857. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +0 -6
  858. package/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +0 -21
  859. package/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +0 -28
  860. package/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +0 -43
  861. package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +0 -36
  862. package/source/interfaces/alarms_and_conditions/ua_condition_ex.ts +0 -55
  863. package/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +0 -17
  864. package/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +0 -21
  865. package/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +0 -21
  866. package/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +0 -26
  867. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +0 -29
  868. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +0 -25
  869. package/source/interfaces/data_access/ua_multistate_discrete_ex.ts +0 -57
  870. package/source/interfaces/data_access/ua_multistate_value_discrete_ex.ts +0 -31
  871. package/source/interfaces/data_access/ua_two_state_discrete_ex.ts +0 -15
  872. package/source/interfaces/nodeset_loader_options.ts +0 -38
  873. package/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +0 -20
  874. package/source/interfaces/state_machine/ua_finite_state_machine_type.ts +0 -50
  875. package/source/interfaces/state_machine/ua_program_state_machine_type.ts +0 -14
  876. package/source/interfaces/state_machine/ua_shelved_state_machine_ex.ts +0 -35
  877. package/source/interfaces/state_machine/ua_state_machine_type.ts +0 -288
  878. package/source/loader/decode_xml_extension_object.ts +0 -80
  879. package/source/loader/ensure_datatype_extracted.ts +0 -122
  880. package/source/loader/generateAddressSpaceRaw.ts +0 -219
  881. package/source/loader/load_nodeset2.ts +0 -1275
  882. package/source/loader/make_xml_extension_object_parser.ts +0 -524
  883. package/source/loader/namespace_post_step.ts +0 -68
  884. package/source/loader/parsers/extension_object_parser.ts +0 -374
  885. package/source/loader/parsers/variant_parser.ts +0 -433
  886. package/source/loader/register_node_promoter.ts +0 -6
  887. package/source/namespace.ts +0 -7
  888. package/source/namespace_alarm_and_condition.ts +0 -78
  889. package/source/namespace_data_access.ts +0 -92
  890. package/source/namespace_machine_state.ts +0 -20
  891. package/source/pseudo_session.ts +0 -415
  892. package/source/session_context.ts +0 -717
  893. package/source/ua_interface.ts +0 -38
  894. package/source/ua_two_state_variable_ex.ts +0 -36
  895. package/src/_instantiate_helpers.ts +0 -197
  896. package/src/_mandatory_child_or_requested_optional_filter.ts +0 -100
  897. package/src/address_space.ts +0 -1631
  898. package/src/address_space_change_event_tools.ts +0 -177
  899. package/src/address_space_private.ts +0 -96
  900. package/src/alarms_and_conditions/condition_info_impl.ts +0 -44
  901. package/src/alarms_and_conditions/condition_snapshot_impl.ts +0 -792
  902. package/src/alarms_and_conditions/deviation_alarm_helper.ts +0 -73
  903. package/src/alarms_and_conditions/index.ts +0 -16
  904. package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +0 -331
  905. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +0 -479
  906. package/src/alarms_and_conditions/ua_base_event_impl.ts +0 -42
  907. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +0 -244
  908. package/src/alarms_and_conditions/ua_condition_impl.ts +0 -1261
  909. package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +0 -57
  910. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +0 -94
  911. package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +0 -20
  912. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +0 -109
  913. package/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +0 -25
  914. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +0 -244
  915. package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +0 -88
  916. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +0 -223
  917. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +0 -218
  918. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +0 -26
  919. package/src/apply_condition_refresh.ts +0 -29
  920. package/src/base_node_impl.ts +0 -1907
  921. package/src/base_node_private.ts +0 -1287
  922. package/src/data_access/adjust_datavalue_status_code.ts +0 -36
  923. package/src/data_access/ua_multistate_discrete_impl.ts +0 -189
  924. package/src/data_access/ua_multistate_value_discrete_impl.ts +0 -369
  925. package/src/data_access/ua_two_state_discrete_impl.ts +0 -184
  926. package/src/event_data.ts +0 -83
  927. package/src/extension_object_array_node.ts +0 -331
  928. package/src/historical_access/address_space_historical_data_node.ts +0 -842
  929. package/src/index_current.ts +0 -51
  930. package/src/namespace_impl.ts +0 -2380
  931. package/src/namespace_private.ts +0 -77
  932. package/src/nodeid_manager.ts +0 -293
  933. package/src/nodeset_tools/construct_namespace_dependency.ts +0 -375
  934. package/src/nodeset_tools/dump_to_bsd.ts +0 -201
  935. package/src/nodeset_tools/nodeset_to_xml.ts +0 -1652
  936. package/src/private_namespace.ts +0 -21
  937. package/src/reference_impl.ts +0 -171
  938. package/src/state_machine/finite_state_machine.ts +0 -668
  939. package/src/state_machine/ua_shelving_state_machine_ex.ts +0 -330
  940. package/src/state_machine/ua_two_state_variable.ts +0 -421
  941. package/src/tool_isSubtypeOf.ts +0 -160
  942. package/src/ua_data_type_impl.ts +0 -483
  943. package/src/ua_method_impl.ts +0 -362
  944. package/src/ua_object_impl.ts +0 -278
  945. package/src/ua_object_type_impl.ts +0 -179
  946. package/src/ua_reference_type_impl.ts +0 -170
  947. package/src/ua_variable_impl.ts +0 -2489
  948. package/src/ua_variable_impl_ext_obj.ts +0 -903
  949. package/src/ua_variable_type_impl.ts +0 -385
  950. package/src/ua_view_impl.ts +0 -53
  951. package/src/validate_data_type_correctness.ts +0 -124
  952. /package/{source → api}/helpers/adjust_browse_direction.ts +0 -0
  953. /package/{source → api}/helpers/make_optionals_map.ts +0 -0
  954. /package/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.ts +0 -0
  955. /package/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.ts +0 -0
  956. /package/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.ts +0 -0
  957. /package/{source → api}/interfaces/data_access/ua_y_array_item_ex.ts +0 -0
  958. /package/{source → api}/interfaces/extension_object_constructor.ts +0 -0
  959. /package/{source → api}/interfaces/i_condition_variable_type_setter_options.ts +0 -0
  960. /package/{source → api}/interfaces/i_set_state_options.ts +0 -0
  961. /package/{source → api}/interfaces/state_machine/ua_transition_ex.ts +0 -0
  962. /package/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.ts +0 -0
  963. /package/{source → api}/loader/make_semver_compatible.ts +0 -0
  964. /package/{source → api}/loader/parsers/localized_text_parser.ts +0 -0
  965. /package/{source → api}/loader/parsers/nodeid_parser.ts +0 -0
  966. /package/{source → api}/loader/parsers/qualified_name_parser.ts +0 -0
  967. /package/{source → api}/set_namespace_meta_data.ts +0 -0
  968. /package/{source → api}/ua_addin.ts +0 -0
  969. /package/{source → api}/ua_root_folder.ts +0 -0
  970. /package/{source → api}/xml_writer.ts +0 -0
  971. /package/dist/{source → api}/continuation_points/continuation_point_manager.d.ts +0 -0
  972. /package/dist/{source → api}/helpers/adjust_browse_direction.d.ts +0 -0
  973. /package/dist/{source → api}/helpers/adjust_browse_direction.js +0 -0
  974. /package/dist/{source → api}/helpers/argument_list.d.ts +0 -0
  975. /package/dist/{source → api}/helpers/call_helpers.d.ts +0 -0
  976. /package/dist/{source → api}/helpers/coerce_enum_value.js +0 -0
  977. /package/dist/{source → api}/helpers/dump_tools.d.ts +0 -0
  978. /package/dist/{source → api}/helpers/make_optionals_map.d.ts +0 -0
  979. /package/dist/{source → api}/helpers/make_optionals_map.js +0 -0
  980. /package/dist/{source → api}/helpers/multiform_func.d.ts +0 -0
  981. /package/dist/{source → api}/helpers/resolve_opaque_on_address_space.d.ts +0 -0
  982. /package/dist/{source → api}/interfaces/alarms_and_conditions/condition_snapshot.js +0 -0
  983. /package/dist/{source → api}/interfaces/alarms_and_conditions/deviation_stuff.js +0 -0
  984. /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +0 -0
  985. /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.js +0 -0
  986. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +0 -0
  987. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +0 -0
  988. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.js +0 -0
  989. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +0 -0
  990. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +0 -0
  991. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +0 -0
  992. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +0 -0
  993. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +0 -0
  994. /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +0 -0
  995. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +0 -0
  996. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +0 -0
  997. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.d.ts +0 -0
  998. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.js +0 -0
  999. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +0 -0
  1000. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_condition_ex.js +0 -0
  1001. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +0 -0
  1002. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +0 -0
  1003. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +0 -0
  1004. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +0 -0
  1005. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +0 -0
  1006. /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +0 -0
  1007. /package/dist/{source → api}/interfaces/data_access/ua_multistate_discrete_ex.js +0 -0
  1008. /package/dist/{source → api}/interfaces/data_access/ua_multistate_value_discrete_ex.js +0 -0
  1009. /package/dist/{source → api}/interfaces/data_access/ua_two_state_discrete_ex.js +0 -0
  1010. /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.d.ts +0 -0
  1011. /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.js +0 -0
  1012. /package/dist/{source → api}/interfaces/extension_object_constructor.d.ts +0 -0
  1013. /package/dist/{source → api}/interfaces/extension_object_constructor.js +0 -0
  1014. /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.d.ts +0 -0
  1015. /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.js +0 -0
  1016. /package/dist/{source → api}/interfaces/i_set_state_options.d.ts +0 -0
  1017. /package/dist/{source → api}/interfaces/i_set_state_options.js +0 -0
  1018. /package/dist/{source → api}/interfaces/nodeset_loader_options.js +0 -0
  1019. /package/dist/{source → api}/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +0 -0
  1020. /package/dist/{source → api}/interfaces/state_machine/ua_finite_state_machine_type.js +0 -0
  1021. /package/dist/{source → api}/interfaces/state_machine/ua_program_state_machine_type.js +0 -0
  1022. /package/dist/{source → api}/interfaces/state_machine/ua_shelved_state_machine_ex.js +0 -0
  1023. /package/dist/{source → api}/interfaces/state_machine/ua_state_machine_type.js +0 -0
  1024. /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.d.ts +0 -0
  1025. /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.js +0 -0
  1026. /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +0 -0
  1027. /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.js +0 -0
  1028. /package/dist/{source → api}/loader/ensure_datatype_extracted.d.ts +0 -0
  1029. /package/dist/{source → api}/loader/make_semver_compatible.d.ts +0 -0
  1030. /package/dist/{source → api}/loader/make_semver_compatible.js +0 -0
  1031. /package/dist/{source → api}/loader/make_xml_extension_object_parser.d.ts +0 -0
  1032. /package/dist/{source → api}/loader/namespace_post_step.d.ts +0 -0
  1033. /package/dist/{source → api}/loader/parsers/extension_object_parser.d.ts +0 -0
  1034. /package/dist/{source → api}/loader/parsers/localized_text_parser.d.ts +0 -0
  1035. /package/dist/{source → api}/loader/parsers/localized_text_parser.js +0 -0
  1036. /package/dist/{source → api}/loader/parsers/nodeid_parser.d.ts +0 -0
  1037. /package/dist/{source → api}/loader/parsers/nodeid_parser.js +0 -0
  1038. /package/dist/{source → api}/loader/parsers/qualified_name_parser.d.ts +0 -0
  1039. /package/dist/{source → api}/loader/parsers/qualified_name_parser.js +0 -0
  1040. /package/dist/{source → api}/namespace.js +0 -0
  1041. /package/dist/{source → api}/namespace_alarm_and_condition.js +0 -0
  1042. /package/dist/{source → api}/namespace_data_access.js +0 -0
  1043. /package/dist/{source → api}/namespace_machine_state.js +0 -0
  1044. /package/dist/{source → api}/set_namespace_meta_data.d.ts +0 -0
  1045. /package/dist/{source → api}/set_namespace_meta_data.js +0 -0
  1046. /package/dist/{source → api}/ua_addin.d.ts +0 -0
  1047. /package/dist/{source → api}/ua_addin.js +0 -0
  1048. /package/dist/{source → api}/ua_interface.d.ts +0 -0
  1049. /package/dist/{source → api}/ua_root_folder.d.ts +0 -0
  1050. /package/dist/{source → api}/ua_root_folder.js +0 -0
  1051. /package/dist/{source → api}/ua_two_state_variable_ex.js +0 -0
  1052. /package/dist/{source → api}/xml_writer.d.ts +0 -0
  1053. /package/dist/{source → api}/xml_writer.js +0 -0
  1054. /package/dist/{src → impl}/_instantiate_helpers.d.ts +0 -0
  1055. /package/dist/{src → impl}/_mandatory_child_or_requested_optional_filter.d.ts +0 -0
  1056. /package/dist/{src → impl}/address_space_change_event_tools.js +0 -0
  1057. /package/dist/{src → impl}/address_space_private.js +0 -0
  1058. /package/dist/{src → impl}/alarms_and_conditions/condition.d.ts +0 -0
  1059. /package/dist/{src → impl}/alarms_and_conditions/condition.js +0 -0
  1060. /package/dist/{src → impl}/check_value_rank_compatibility.d.ts +0 -0
  1061. /package/dist/{src → impl}/check_value_rank_compatibility.js +0 -0
  1062. /package/dist/{src → impl}/data_access/add_dataItem_stuff.d.ts +0 -0
  1063. /package/dist/{src → impl}/data_access/add_dataItem_stuff.js +0 -0
  1064. /package/dist/{src → impl}/data_access/adjust_datavalue_status_code.js +0 -0
  1065. /package/dist/{src → impl}/get_basic_datatype.d.ts +0 -0
  1066. /package/dist/{src → impl}/get_basic_datatype.js +0 -0
  1067. /package/dist/{src → impl}/idx_iterator.d.ts +0 -0
  1068. /package/dist/{src → impl}/idx_iterator.js +0 -0
  1069. /package/dist/{src → impl}/namespace_private.js +0 -0
  1070. /package/dist/{src → impl}/nodeid_manager.d.ts +0 -0
  1071. /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.d.ts +0 -0
  1072. /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.js +0 -0
  1073. /package/dist/{src → impl}/private_namespace.js +0 -0
  1074. /package/dist/{src → impl}/role_permissions.d.ts +0 -0
  1075. /package/dist/{src → impl}/role_permissions.js +0 -0
  1076. /package/dist/{src → impl}/ua_condition_type.d.ts +0 -0
  1077. /package/dist/{src → impl}/ua_condition_type.js +0 -0
  1078. /package/{src → impl}/alarms_and_conditions/condition.ts +0 -0
  1079. /package/{src → impl}/check_value_rank_compatibility.ts +0 -0
  1080. /package/{src → impl}/data_access/add_dataItem_stuff.ts +0 -0
  1081. /package/{src → impl}/get_basic_datatype.ts +0 -0
  1082. /package/{src → impl}/idx_iterator.ts +0 -0
  1083. /package/{src → impl}/nodeset_tools/adjust_namespace_array.ts +0 -0
  1084. /package/{src → impl}/role_permissions.ts +0 -0
  1085. /package/{src → impl}/ua_condition_type.ts +0 -0
@@ -0,0 +1,1383 @@
1
+ "use strict";
2
+ /**
3
+ * @module node-opcua-address-space
4
+ */
5
+ var __importDefault = (this && this.__importDefault) || function (mod) {
6
+ return (mod && mod.__esModule) ? mod : { "default": mod };
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AddressSpaceImpl = void 0;
10
+ const chalk_1 = __importDefault(require("chalk"));
11
+ const node_opcua_assert_1 = require("node-opcua-assert");
12
+ const node_opcua_constants_1 = require("node-opcua-constants");
13
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
14
+ const node_opcua_debug_1 = require("node-opcua-debug");
15
+ const node_opcua_nodeid_1 = require("node-opcua-nodeid");
16
+ const node_opcua_object_registry_1 = require("node-opcua-object-registry");
17
+ const node_opcua_service_browse_1 = require("node-opcua-service-browse");
18
+ const node_opcua_status_code_1 = require("node-opcua-status-code");
19
+ const node_opcua_types_1 = require("node-opcua-types");
20
+ const node_opcua_utils_1 = require("node-opcua-utils");
21
+ const node_opcua_variant_1 = require("node-opcua-variant");
22
+ const adjust_browse_direction_js_1 = require("../api/helpers/adjust_browse_direction.js");
23
+ const index_js_1 = require("./alarms_and_conditions/index.js");
24
+ const base_node_impl_js_1 = require("./base_node_impl.js");
25
+ const event_data_js_1 = require("./event_data.js");
26
+ const event_layout_js_1 = require("./event_layout.js");
27
+ const address_space_historical_data_node_js_1 = require("./historical_access/address_space_historical_data_node.js");
28
+ const historizer_factory_js_1 = require("./historizer_factory.js");
29
+ const namespace_impl_js_1 = require("./namespace_impl.js");
30
+ const reference_impl_js_1 = require("./reference_impl.js");
31
+ const ua_data_type_impl_js_1 = require("./ua_data_type_impl.js");
32
+ const ua_object_impl_js_1 = require("./ua_object_impl.js");
33
+ const ua_object_type_impl_js_1 = require("./ua_object_type_impl.js");
34
+ const ua_reference_type_impl_js_1 = require("./ua_reference_type_impl.js");
35
+ const doDebug = false;
36
+ const errorLog = (0, node_opcua_debug_1.make_errorLog)("address_space");
37
+ const debugLog = (0, node_opcua_debug_1.make_debugLog)("address_space");
38
+ const warningLog = (0, node_opcua_debug_1.make_warningLog)("address_space");
39
+ const dequeue_1 = __importDefault(require("dequeue"));
40
+ const regexNumberColumnString = /^([0-9]+):(.*)/;
41
+ const enumerationTypeNodeId = (0, node_opcua_nodeid_1.coerceNodeId)(node_opcua_constants_1.DataTypeIds.Enumeration);
42
+ /**
43
+ * Extracts the namespace and browse name as a string from the given input.
44
+ *
45
+ * @param addressSpace The address space instance.
46
+ * @param browseNameOrNodeId A NodeIdLike, QualifiedName, or string representing the browse name or node id.
47
+ * @param namespaceIndex Optional namespace index.
48
+ * @returns A tuple containing the NamespacePrivate and the browse name as a string.
49
+ */
50
+ function _extract_namespace_and_browse_name_as_string(addressSpace, browseNameOrNodeId, namespaceIndex) {
51
+ (0, node_opcua_assert_1.assert)(!namespaceIndex || namespaceIndex >= 0);
52
+ let result;
53
+ if (namespaceIndex !== undefined && namespaceIndex > 0) {
54
+ (0, node_opcua_assert_1.assert)(typeof browseNameOrNodeId === "string", "expecting a string when namespaceIndex is specified");
55
+ result = [addressSpace.getNamespace(namespaceIndex), browseNameOrNodeId.toString()];
56
+ }
57
+ else if (typeof browseNameOrNodeId === "string") {
58
+ // we may have a string like "ns=1;i=1234" or "ns=1:MyBrowseName"
59
+ if (isNodeIdString(browseNameOrNodeId)) {
60
+ return _extract_namespace_and_browse_name_as_string(addressSpace, addressSpace.resolveNodeId(browseNameOrNodeId), namespaceIndex);
61
+ }
62
+ // we must have a BrowseName string
63
+ if (browseNameOrNodeId.indexOf(":") >= 0) {
64
+ const a = browseNameOrNodeId.split(":");
65
+ namespaceIndex = a.length === 2 ? parseInt(a[0], 10) : namespaceIndex;
66
+ browseNameOrNodeId = a.length === 2 ? a[1] : browseNameOrNodeId;
67
+ }
68
+ result = [addressSpace.getNamespace(namespaceIndex || 0), browseNameOrNodeId];
69
+ }
70
+ else if (browseNameOrNodeId instanceof node_opcua_data_model_1.QualifiedName) {
71
+ namespaceIndex = browseNameOrNodeId.namespaceIndex;
72
+ result = [addressSpace.getNamespace(namespaceIndex), browseNameOrNodeId.name || ""];
73
+ }
74
+ else if (typeof browseNameOrNodeId === "number") {
75
+ result = [addressSpace.getDefaultNamespace(), node_opcua_variant_1.DataType[browseNameOrNodeId]];
76
+ }
77
+ else if (browseNameOrNodeId instanceof node_opcua_nodeid_1.NodeId) {
78
+ // we have a nodeId
79
+ const nodeId = browseNameOrNodeId;
80
+ namespaceIndex = nodeId.namespace;
81
+ const node = addressSpace.findNode(nodeId);
82
+ const browseName = node ? node.browseName.toString() : "UnknownNode";
83
+ result = [addressSpace.getNamespace(namespaceIndex), browseName];
84
+ }
85
+ /* c8 ignore next */
86
+ if (!result?.[0]) {
87
+ throw new Error(` Cannot find namespace associated with ${browseNameOrNodeId} ${namespaceIndex}`);
88
+ }
89
+ return result;
90
+ }
91
+ /**
92
+ * returns true if str matches a nodeID, e.g i=123 or ns=...
93
+ */
94
+ function isNodeIdString(str) {
95
+ if (typeof str !== "string") {
96
+ return false;
97
+ }
98
+ return str.substring(0, 2) === "i=" || str.substring(0, 3) === "ns=";
99
+ }
100
+ /**
101
+ * The implementation behind `AddressSpace`.
102
+ *
103
+ * Consumers reach it as {@link AddressSpace}, whose type shows `create` and
104
+ * `historizerFactory` and nothing else. Everything here beyond those two is machinery.
105
+ *
106
+ * @internal
107
+ */
108
+ class AddressSpaceImpl {
109
+ get rootFolder() {
110
+ const rootFolder = this.findNode(this.resolveNodeId("RootFolder"));
111
+ if (!rootFolder) {
112
+ // throw new Error("AddressSpace doesn't contain rootFolder object");
113
+ return null;
114
+ }
115
+ return rootFolder;
116
+ }
117
+ static isNonEmptyQualifiedName = namespace_impl_js_1.isNonEmptyQualifiedName;
118
+ /**
119
+ * Reads and writes reach the module that the historical-access code also reads, so
120
+ * assigning here actually takes effect. It used to be a plain static, while the code that
121
+ * consumed it read the static of a different AddressSpace class altogether.
122
+ */
123
+ static get historizerFactory() {
124
+ return historizer_factory_js_1.historizerFactoryHolder.factory;
125
+ }
126
+ static set historizerFactory(factory) {
127
+ historizer_factory_js_1.historizerFactoryHolder.factory = factory;
128
+ }
129
+ static create() {
130
+ return new AddressSpaceImpl();
131
+ }
132
+ static registry = new node_opcua_object_registry_1.ObjectRegistry();
133
+ /***
134
+ * @internal
135
+ * @private
136
+ */
137
+ suspendBackReference = false;
138
+ isFrugal = false;
139
+ registerChildAccessorNames(browseNames) {
140
+ (0, base_node_impl_js_1.defineSharedChildAccessors)(browseNames);
141
+ }
142
+ // reference keys pack a reference type as a small ordinal (see reference_impl.ts); one is
143
+ // handed out per distinct reference type NodeId, whether or not the type exists yet
144
+ _referenceTypeOrdinals = new Map();
145
+ referenceTypeOrdinal(referenceType) {
146
+ const key = (0, reference_impl_js_1.nodeIdKey)(referenceType);
147
+ let ordinal = this._referenceTypeOrdinals.get(key);
148
+ if (ordinal === undefined) {
149
+ ordinal = this._referenceTypeOrdinals.size;
150
+ this._referenceTypeOrdinals.set(key, ordinal);
151
+ }
152
+ return ordinal;
153
+ }
154
+ historizingNodes = new Set();
155
+ _condition_refresh_in_progress = false;
156
+ isNodeIdString = isNodeIdString;
157
+ _private_namespaceIndex;
158
+ _namespaceArray;
159
+ _shutdownTask;
160
+ _eventIdCounter;
161
+ $$extraDataTypeManager;
162
+ _modelChangeTransactionCounter = 0;
163
+ _modelChanges = [];
164
+ _methodCallInterceptors = [];
165
+ constructor() {
166
+ this._private_namespaceIndex = 1;
167
+ this._namespaceArray = [];
168
+ // special namespace 0 is reserved for the UA namespace
169
+ this.registerNamespace("http://opcfoundation.org/UA/");
170
+ AddressSpaceImpl.registry.register(this);
171
+ }
172
+ toJSON() {
173
+ return {
174
+ namespaces: this._namespaceArray.length
175
+ };
176
+ }
177
+ toString() {
178
+ return `AddressSpace({ namespaces: ${this._namespaceArray.length} })`;
179
+ }
180
+ [Symbol.for("nodejs.util.inspect.custom")]() {
181
+ return this.toString();
182
+ }
183
+ /**
184
+ * @internal
185
+ */
186
+ getDataTypeManager() {
187
+ if (!this.$$extraDataTypeManager) {
188
+ throw new Error("expecting a $$extraDataTypeManager please make sure ensureDatatypeExtracted is called");
189
+ }
190
+ return this.$$extraDataTypeManager;
191
+ }
192
+ getNamespaceUri(namespaceIndex) {
193
+ (0, node_opcua_assert_1.assert)(namespaceIndex >= 0 && namespaceIndex < this._namespaceArray.length);
194
+ return this._namespaceArray[namespaceIndex].namespaceUri;
195
+ }
196
+ /***
197
+ */
198
+ getNamespace(namespaceIndexOrName) {
199
+ if (typeof namespaceIndexOrName === "number") {
200
+ const namespaceIndex = namespaceIndexOrName;
201
+ (0, node_opcua_assert_1.assert)(namespaceIndex >= 0 && namespaceIndex < this._namespaceArray.length, "invalid namespace index ( out of bound)");
202
+ return this._namespaceArray[namespaceIndex];
203
+ }
204
+ else {
205
+ const namespaceUri = namespaceIndexOrName;
206
+ (0, node_opcua_assert_1.assert)(typeof namespaceUri === "string");
207
+ const index = this.getNamespaceIndex(namespaceUri);
208
+ return this._namespaceArray[index];
209
+ }
210
+ }
211
+ /***
212
+ * @return the default namespace (standard OPCUA namespace)
213
+ */
214
+ getDefaultNamespace() {
215
+ return this.getNamespace(0);
216
+ }
217
+ /***
218
+ *
219
+ * objects instances managed by the server will be created in this namespace.
220
+ *
221
+ * @return address space own namespace
222
+ */
223
+ getOwnNamespace() {
224
+ /* c8 ignore next */
225
+ if (this._private_namespaceIndex >= this._namespaceArray.length) {
226
+ throw new Error("please create the private namespace");
227
+ }
228
+ return this.getNamespace(this._private_namespaceIndex);
229
+ }
230
+ /**
231
+ * @return the namespace index of a namespace given by its namespace uri
232
+ *
233
+ */
234
+ getNamespaceIndex(namespaceUri) {
235
+ (0, node_opcua_assert_1.assert)(typeof namespaceUri === "string");
236
+ return this._namespaceArray.findIndex((ns) => ns.namespaceUri === namespaceUri);
237
+ }
238
+ /**
239
+ *
240
+ * register a new namespace,
241
+ * it is OK to call registerNamespace even if namespace has already been registered;
242
+ * in this case the registerNamespace has no effect and returns the existing namespace.
243
+ *
244
+ * @param namespaceUri {string}
245
+ * @returns {Namespace}
246
+ */
247
+ registerNamespace(namespaceUri) {
248
+ let index = this._namespaceArray.findIndex((ns) => ns.namespaceUri === namespaceUri);
249
+ if (index !== -1) {
250
+ (0, node_opcua_assert_1.assert)(this._namespaceArray[index].addressSpace === this);
251
+ return this._namespaceArray[index];
252
+ }
253
+ index = this._namespaceArray.length;
254
+ this._namespaceArray.push(new namespace_impl_js_1.NamespaceImpl({
255
+ addressSpace: this,
256
+ index,
257
+ namespaceUri,
258
+ publicationDate: new Date(),
259
+ version: "undefined"
260
+ }));
261
+ return this._namespaceArray[index];
262
+ }
263
+ /***
264
+ * @return {Namespace[]} the namespace array
265
+ */
266
+ getNamespaceArray() {
267
+ return this._namespaceArray;
268
+ }
269
+ /**
270
+ *
271
+ * @param alias {String} the alias name
272
+ * @param nodeId {NodeId}
273
+ * @internal
274
+ */
275
+ addAlias(alias, nodeId) {
276
+ (0, node_opcua_assert_1.assert)(typeof alias === "string");
277
+ (0, node_opcua_assert_1.assert)(nodeId instanceof node_opcua_nodeid_1.NodeId);
278
+ this.getNamespace(nodeId.namespace).addAlias(alias, nodeId);
279
+ }
280
+ /**
281
+ * find an node by node Id
282
+ * @param nodeId a nodeId or a string coerce-able to nodeID, representing the object to find.
283
+ * @return {BaseNode|null}
284
+ */
285
+ findNode(nodeId) {
286
+ if (!(nodeId instanceof node_opcua_nodeid_1.NodeId)) {
287
+ nodeId = this.resolveNodeId(nodeId);
288
+ }
289
+ if (nodeId.namespace < 0 || nodeId.namespace >= this._namespaceArray.length) {
290
+ // namespace index is out of bound
291
+ return null;
292
+ }
293
+ const namespace = this._namespaceArray[nodeId.namespace];
294
+ return namespace.findNode2(nodeId);
295
+ }
296
+ findMethod(nodeId) {
297
+ const node = this.findNode(nodeId);
298
+ if (!node || node.nodeClass !== node_opcua_data_model_1.NodeClass.Method) {
299
+ return null;
300
+ }
301
+ return node;
302
+ }
303
+ /**
304
+ * resolved a string or a nodeId to a nodeID
305
+ */
306
+ resolveNodeId(nodeId) {
307
+ if (typeof nodeId === "string") {
308
+ const m = nodeId.match(regexNumberColumnString);
309
+ if (m && m.length === 3) {
310
+ const namespaceIndex = parseInt(m[1], 10);
311
+ const aliasName = m[2];
312
+ const namespace = this.getNamespace(namespaceIndex);
313
+ // check if the string is a known alias
314
+ const aliasNodeId = namespace.resolveAlias(aliasName);
315
+ if (aliasNodeId !== null) {
316
+ return aliasNodeId;
317
+ }
318
+ }
319
+ }
320
+ const namespaceArray = this.getNamespaceArray().map((a) => a.namespaceUri);
321
+ return (0, node_opcua_nodeid_1.resolveNodeId)(nodeId, { namespaceArray });
322
+ }
323
+ /**
324
+ *
325
+ * @param objectType {String|NodeId|QualifiedName}
326
+ * @param [namespaceIndex=0 {Number}] an optional namespace index
327
+ * @return {UAObjectType|null}
328
+ *
329
+ * @example
330
+ *
331
+ * ```javascript
332
+ * const objectType = addressSpace.findObjectType("ns=0;i=58");
333
+ * objectType.browseName.toString().should.eql("BaseObjectType");
334
+ *
335
+ * const objectType = addressSpace.findObjectType("BaseObjectType");
336
+ * objectType.browseName.toString().should.eql("BaseObjectType");
337
+ *
338
+ * const objectType = addressSpace.findObjectType(resolveNodeId("ns=0;i=58"));
339
+ * objectType.browseName.toString().should.eql("BaseObjectType");
340
+ *
341
+ * const objectType = addressSpace.findObjectType("CustomObjectType",36);
342
+ * objectType.nodeId.namespace.should.eql(36);
343
+ * objectType.browseName.toString().should.eql("BaseObjectType");
344
+ *
345
+ * const objectType = addressSpace.findObjectType("36:CustomObjectType");
346
+ * objectType.nodeId.namespace.should.eql(36);
347
+ * objectType.browseName.toString().should.eql("BaseObjectType");
348
+ * ```
349
+ */
350
+ findObjectType(objectType, namespaceIndex) {
351
+ if (objectType instanceof node_opcua_nodeid_1.NodeId) {
352
+ return _find_by_node_id(this, objectType, namespaceIndex);
353
+ }
354
+ const [namespace, browseName] = _extract_namespace_and_browse_name_as_string(this, objectType, namespaceIndex);
355
+ return namespace.findObjectType(browseName);
356
+ }
357
+ /**
358
+ * @param variableType {String|NodeId}
359
+ * @param [namespaceIndex=0 {Number}] an optional namespace index
360
+ * @return {UAObjectType|null}
361
+ *
362
+ * @example
363
+ *
364
+ * ```javascript
365
+ * const objectType = addressSpace.findVariableType("ns=0;i=62");
366
+ * objectType.browseName.toString().should.eql("BaseVariableType");
367
+ *
368
+ * const objectType = addressSpace.findVariableType("BaseVariableType");
369
+ * objectType.browseName.toString().should.eql("BaseVariableType");
370
+ *
371
+ * const objectType = addressSpace.findVariableType(resolveNodeId("ns=0;i=62"));
372
+ * objectType.browseName.toString().should.eql("BaseVariableType");
373
+ * ```
374
+ */
375
+ findVariableType(variableType, namespaceIndex) {
376
+ if (variableType instanceof node_opcua_nodeid_1.NodeId) {
377
+ return _find_by_node_id(this, variableType, namespaceIndex);
378
+ }
379
+ const [namespace, browseName] = _extract_namespace_and_browse_name_as_string(this, variableType, namespaceIndex);
380
+ return namespace.findVariableType(browseName);
381
+ }
382
+ /**
383
+ * Find the DataType node from a NodeId or a browseName
384
+ * @param dataType {String|NodeId}
385
+ * @param [namespaceIndex=0 {Number}] an optional namespace index
386
+ * @return {DataType|null}
387
+ *
388
+ *
389
+ * @example
390
+ *
391
+ * ```javascript
392
+ * const dataDouble = addressSpace.findDataType("Double");
393
+ * const dataDouble = addressSpace.findDataType(resolveNodeId("ns=0;i=3"));
394
+ * ```
395
+ */
396
+ findDataType(dataType, namespaceIndex) {
397
+ // startingNode i=24 :
398
+ // BaseDataType
399
+ // +-> Boolean (i=1) {BooleanDataType (ns=2:9898)
400
+ // +-> String (i=12)
401
+ // +->NumericRange
402
+ // +->Time
403
+ // +-> DateTime
404
+ // +-> Structure
405
+ // +-> Node
406
+ // +-> ObjectNode
407
+ if (dataType instanceof ua_data_type_impl_js_1.UADataTypeImpl) {
408
+ return this.findDataType(dataType.nodeId);
409
+ }
410
+ else if (dataType instanceof node_opcua_nodeid_1.NodeId) {
411
+ return _find_by_node_id(this, dataType, namespaceIndex);
412
+ }
413
+ if (typeof dataType === "number") {
414
+ if (node_opcua_variant_1.DataType[dataType] !== undefined) {
415
+ return this.findDataType((0, node_opcua_nodeid_1.makeNodeId)(dataType, 0));
416
+ }
417
+ else {
418
+ return this.findDataType((0, node_opcua_nodeid_1.resolveNodeId)(dataType));
419
+ }
420
+ }
421
+ const res = _extract_namespace_and_browse_name_as_string(this, dataType, namespaceIndex);
422
+ const namespace = res[0];
423
+ const browseName = res[1];
424
+ return namespace.findDataType(browseName);
425
+ }
426
+ /**
427
+ *
428
+ * @example
429
+ *
430
+ * const dataType = addressSpace.findDataType("ns=0;i=12");
431
+ * addressSpace.findCorrespondingBasicDataType(dataType).should.eql(DataType.String);
432
+ *
433
+ * const dataType = addressSpace.findDataType("ServerStatusDataType"); // ServerStatus
434
+ * addressSpace.findCorrespondingBasicDataType(dataType).should.eql(DataType.ExtensionObject);
435
+ *
436
+ */
437
+ findCorrespondingBasicDataType(dataTypeNode) {
438
+ const _orig_dataTypeNode = dataTypeNode;
439
+ if (typeof dataTypeNode === "string") {
440
+ const resolvedDataType = this.resolveNodeId(dataTypeNode);
441
+ /* c8 ignore next */
442
+ if (!resolvedDataType) {
443
+ throw new Error(`Cannot resolve ${_orig_dataTypeNode.toString()}`);
444
+ }
445
+ dataTypeNode = resolvedDataType;
446
+ }
447
+ if (dataTypeNode instanceof node_opcua_nodeid_1.NodeId) {
448
+ const foundDataTypeNode = this.findDataType(dataTypeNode);
449
+ /* c8 ignore next */
450
+ if (!foundDataTypeNode) {
451
+ throw Error(`cannot find dataTypeNode ${_orig_dataTypeNode.toString()}`);
452
+ }
453
+ dataTypeNode = foundDataTypeNode;
454
+ }
455
+ /* c8 ignore next */
456
+ if (!(dataTypeNode instanceof ua_data_type_impl_js_1.UADataTypeImpl)) {
457
+ throw new Error("we are expecting an UADataType here : " +
458
+ _orig_dataTypeNode.toString() +
459
+ " should not refer to a " +
460
+ dataTypeNode.browseName.name);
461
+ }
462
+ if ((0, node_opcua_nodeid_1.sameNodeId)(enumerationTypeNodeId, dataTypeNode?.nodeId)) {
463
+ return node_opcua_variant_1.DataType.Int32;
464
+ }
465
+ const n = dataTypeNode.nodeId;
466
+ if (n.namespace === 0 && n.value === 29) {
467
+ // Number
468
+ return node_opcua_variant_1.DataType.Null; //which one ?
469
+ }
470
+ if (n.namespace === 0 && n.value === 0) {
471
+ return node_opcua_variant_1.DataType.Null;
472
+ }
473
+ if (n.identifierType === node_opcua_nodeid_1.NodeIdType.NUMERIC && n.namespace === 0 && n.value <= 25) {
474
+ return n.value;
475
+ }
476
+ const result = this.findCorrespondingBasicDataType(dataTypeNode.subtypeOfObj);
477
+ return result;
478
+ }
479
+ /**
480
+ * find a ReferenceType by its inverse name.
481
+ * @param inverseName the inverse name of the ReferenceType to find
482
+ * @deprecated
483
+ */
484
+ findReferenceTypeFromInverseName(inverseName) {
485
+ return this.getDefaultNamespace().findReferenceTypeFromInverseName(inverseName);
486
+ }
487
+ /**
488
+ * @param refType {String|NodeId}
489
+ * @param [namespaceIndex=0 {Number}] an optional namespace index
490
+ * @return {ReferenceType|null}
491
+ *
492
+ * refType could be
493
+ * - a string representing a nodeid : e.g. `i=9004` or ns=1;i=6030
494
+ * - a string representing a browse name : e.g `"HasTypeDefinition"`.
495
+ * In this case it should be in the alias list.
496
+ *
497
+ */
498
+ findReferenceType(refType, namespaceIndex) {
499
+ // startingNode ns=0;i=31 : References
500
+ // +-> References i=31
501
+ // +->(hasSubtype) NonHierarchicalReferences
502
+ // +->(hasSubtype) HasTypeDefinition
503
+ // +->(hasSubtype) HierarchicalReferences
504
+ // +->(hasSubtype) HasChild/ChildOf
505
+ // +->(hasSubtype) Aggregates/AggregatedBy
506
+ // +-> HasProperty/PropertyOf
507
+ // +-> HasComponent/ComponentOf
508
+ // +-> HasHistoricalConfiguration/HistoricalConfigurationOf
509
+ // +->(hasSubtype) HasSubtype/HasSupertype
510
+ // +->(hasSubtype) Organizes/OrganizedBy
511
+ // +->(hasSubtype) HasEventSource/EventSourceOf
512
+ let node;
513
+ if ((!(refType instanceof node_opcua_nodeid_1.NodeId) && isNodeIdString(refType)) || typeof refType === "number") {
514
+ refType = (0, node_opcua_nodeid_1.resolveNodeId)(refType);
515
+ }
516
+ if (refType instanceof node_opcua_nodeid_1.NodeId) {
517
+ node = this.findNode(refType);
518
+ /* c8 ignore next */
519
+ if (!(node && node.nodeClass === node_opcua_data_model_1.NodeClass.ReferenceType)) {
520
+ // throw new Error("cannot resolve referenceId "+ refType.toString());
521
+ return null;
522
+ }
523
+ }
524
+ else {
525
+ (0, node_opcua_assert_1.assert)(typeof refType === "string");
526
+ node = this._findReferenceType(refType, namespaceIndex);
527
+ }
528
+ return node;
529
+ }
530
+ /**
531
+ * returns the inverse name of the referenceType.
532
+ *
533
+ * @param referenceType {String} : the reference type name
534
+ * @return {String} the name of the inverse reference type.
535
+ *
536
+ * @example
537
+ *
538
+ * ```javascript
539
+ * addressSpace.inverseReferenceType("OrganizedBy").should.eql("Organizes");
540
+ * addressSpace.inverseReferenceType("Organizes").should.eql("OrganizedBy");
541
+ * ```
542
+ *
543
+ */
544
+ inverseReferenceType(referenceType) {
545
+ (0, node_opcua_assert_1.assert)(typeof referenceType === "string");
546
+ const n1 = this.findReferenceType(referenceType);
547
+ if (n1) {
548
+ return n1.inverseName?.text;
549
+ }
550
+ else {
551
+ const n2 = this.findReferenceTypeFromInverseName(referenceType);
552
+ return n2?.browseName.toString() || "";
553
+ }
554
+ }
555
+ /**
556
+ * find an EventType node in the address space
557
+ * @param eventTypeId {String|NodeId|UAObjectType} the eventType to find
558
+ * @param namespaceIndex the namespace index of the event to find
559
+ * @return {UAObjectType|null} the EventType found or null.
560
+ *
561
+ * note:
562
+ * - the method with throw an exception if a node is found
563
+ * that is not a BaseEventType or a subtype of it.
564
+ *
565
+ * @example
566
+ *
567
+ * var evtType = addressSpace.findEventType("AuditEventType");
568
+ *
569
+ */
570
+ findEventType(eventTypeId, namespaceIndex) {
571
+ let eventType;
572
+ if (eventTypeId instanceof base_node_impl_js_1.BaseNodeImpl) {
573
+ eventType = eventTypeId;
574
+ }
575
+ else {
576
+ eventType = this.findObjectType(eventTypeId, namespaceIndex);
577
+ }
578
+ if (!eventType) {
579
+ return null;
580
+ }
581
+ const baseEventType = this.findObjectType("BaseEventType");
582
+ /* c8 ignore next */
583
+ if (!baseEventType) {
584
+ throw new Error("expecting BaseEventType - please check you nodeset xml file!");
585
+ }
586
+ if ((0, node_opcua_nodeid_1.sameNodeId)(eventType.nodeId, baseEventType.nodeId)) {
587
+ return eventType;
588
+ }
589
+ /* eventTypeNode should be a sub type of "BaseEventType" */
590
+ /* c8 ignore next */
591
+ if (!eventType.isSubtypeOf(baseEventType)) {
592
+ throw new Error("findEventType: event found is not subType of BaseEventType");
593
+ }
594
+ return eventType;
595
+ }
596
+ /**
597
+ * EventId is generated by the Server to uniquely identify a particular Event Notification.
598
+ * @return {Variant} dataType: "ByteString"
599
+ */
600
+ generateEventId() {
601
+ /*
602
+ * OpcUA 1.02 part 5 : 6.4.2 BaseEventType
603
+ * The Server is responsible to ensure that each Event has its unique EventId.
604
+ * It may do this, for example, by putting GUIDs into the ByteString.
605
+ * Clients can use the EventId to assist in minimizing or eliminating gaps and overlaps that may occur during
606
+ * a redundancy fail-over. The EventId shall always be returned as value and the Server is not allowed to
607
+ * return a StatusCode for the EventId indicating an error.
608
+ *
609
+ */
610
+ const offset = 16;
611
+ if (!this._eventIdCounter) {
612
+ this._eventIdCounter = (0, node_opcua_utils_1.randomBytes)(20);
613
+ this._eventIdCounter.writeInt32BE(0, offset);
614
+ }
615
+ this._eventIdCounter.writeInt32BE(this._eventIdCounter.readInt32BE(offset) + 1, offset);
616
+ return new node_opcua_variant_1.Variant({
617
+ dataType: node_opcua_variant_1.DataType.ByteString,
618
+ value: Buffer.from(this._eventIdCounter)
619
+ });
620
+ }
621
+ /*=
622
+ * construct a simple javascript object with all the default properties of the event
623
+ *
624
+ *
625
+ * eventTypeId can be a UAEventType
626
+ *
627
+ * @private
628
+ */
629
+ constructEventData(eventTypeId, dataInput) {
630
+ const data = (dataInput || {});
631
+ // construct the reference dataStructure to store event Data
632
+ let eventTypeNode = eventTypeId;
633
+ // make sure that eventType is really a object that derived from EventType
634
+ if (eventTypeId instanceof ua_object_type_impl_js_1.UAObjectTypeImpl) {
635
+ eventTypeNode = this.findEventType(eventTypeId);
636
+ }
637
+ /* c8 ignore next */
638
+ if (!eventTypeNode)
639
+ throw new Error(` cannot find EventType for ${eventTypeId}`);
640
+ (0, node_opcua_assert_1.assert)(eventTypeNode instanceof ua_object_type_impl_js_1.UAObjectTypeImpl, "eventTypeId must represent a UAObjectType");
641
+ // eventId
642
+ (0, node_opcua_assert_1.assert)(!Object.hasOwn(data, "eventId"), "eventId constructEventData : options object should not have eventId property");
643
+ data.eventId = data.eventId || this.generateEventId();
644
+ // eventType
645
+ data.eventType = { dataType: node_opcua_variant_1.DataType.NodeId, value: eventTypeNode.nodeId };
646
+ // sourceNode
647
+ (0, node_opcua_assert_1.assert)(Object.hasOwn(data, "sourceNode"), "expecting a source node to be defined");
648
+ data.sourceNode = new node_opcua_variant_1.Variant(data.sourceNode);
649
+ (0, node_opcua_assert_1.assert)(data.sourceNode.dataType === node_opcua_variant_1.DataType.NodeId);
650
+ // sourceName
651
+ const sourceNode = this.findNode(data.sourceNode.value);
652
+ if (!sourceNode) {
653
+ warningLog(`constructEventData: cannot find sourceNode ${data.sourceNode.value?.toString()} for event ${eventTypeNode.browseName.toString()}`);
654
+ }
655
+ data.sourceName = data.sourceName || {
656
+ dataType: node_opcua_variant_1.DataType.String,
657
+ value: sourceNode?.getDisplayName("en") || ""
658
+ };
659
+ const nowUTC = new Date();
660
+ // time (UtcTime)
661
+ // TODO
662
+ data.time = data.time || { dataType: node_opcua_variant_1.DataType.DateTime, value: nowUTC };
663
+ // receivedTime (UtcTime)
664
+ // TODO
665
+ data.receiveTime = data.receiveTime || { dataType: node_opcua_variant_1.DataType.DateTime, value: nowUTC };
666
+ // localTime (UtcTime)
667
+ // TODO
668
+ data.localTime = data.localTime || { dataType: node_opcua_variant_1.DataType.DateTime, value: nowUTC };
669
+ // message (LocalizedText)
670
+ data.message = data.message || { dataType: node_opcua_variant_1.DataType.LocalizedText, value: { text: "" } };
671
+ // severity (UInt16)
672
+ data.severity = data.severity || { dataType: node_opcua_variant_1.DataType.UInt16, value: 0 };
673
+ // xx // reminder : event type cannot be instantiated directly !
674
+ // xx assert(eventTypeNode.isAbstract);
675
+ const baseObjectType = this.findObjectType("BaseObjectType"); // i=58
676
+ /* c8 ignore next */
677
+ if (!baseObjectType) {
678
+ throw new Error("BaseObjectType must be defined in the address space");
679
+ }
680
+ const layout = (0, event_layout_js_1.getEventLayout)(this, eventTypeNode, baseObjectType);
681
+ const eventData = new event_data_js_1.EventData(eventTypeNode, layout.pathToNodeId);
682
+ for (const field of layout.fields) {
683
+ if (Object.hasOwn(data, field.lowerName)) {
684
+ eventData._setField(field, data[field.lowerName]);
685
+ continue;
686
+ }
687
+ // add a property , but with a null variant
688
+ eventData._setField(field, { dataType: node_opcua_variant_1.DataType.Null });
689
+ // c8 ignore next
690
+ if (doDebug) {
691
+ errorLog((field.mandatory
692
+ ? chalk_1.default.red("ERROR : AddressSpace#constructEventData(eventType,options) cannot find property ")
693
+ : chalk_1.default.yellow("Warning : AddressSpace#constructEventData(eventType,options) cannot find property ")) +
694
+ eventTypeNode.browseName.toString() +
695
+ " => " +
696
+ chalk_1.default.cyan(field.lowerName));
697
+ }
698
+ }
699
+ // verify that all elements of data are valid
700
+ for (const key of Object.keys(data)) {
701
+ /* c8 ignore next */
702
+ if (key !== "$eventDataSource" && !layout.names.has(key)) {
703
+ warningLog(`constructEventData: cannot find property '${key}' in [ ${[...layout.names].join(", ")}] when filling ${eventTypeNode.browseName.toString()}`);
704
+ }
705
+ }
706
+ return eventData;
707
+ }
708
+ // - Browse --------------------------------------------------------------------------------------------------------
709
+ /**
710
+ * browse some path.
711
+ *
712
+ * @param {BrowsePath} browsePath
713
+ * @return {BrowsePathResult}
714
+ *
715
+ * This service can be used translates one or more browse paths into NodeIds.
716
+ * A browse path is constructed of a starting Node and a RelativePath. The specified starting Node
717
+ * identifies the Node from which the RelativePath is based. The RelativePath contains a sequence of
718
+ * ReferenceTypes and BrowseNames.
719
+ *
720
+ * |StatusCode | |
721
+ * |------------------------------|:-----------------------------------------------------------|
722
+ * |BadNodeIdUnknown | |
723
+ * |BadNodeIdInvalid | |
724
+ * |BadNothingToDo | - the relative path contains an empty list ) |
725
+ * |BadBrowseNameInvalid | - target name is missing in relative path |
726
+ * |UncertainReferenceOutOfServer | - The path element has targets which are in another server.|
727
+ * |BadTooManyMatches | |
728
+ * |BadQueryTooComplex | |
729
+ * |BadNoMatch | |
730
+ *
731
+ *
732
+ *
733
+ */
734
+ browsePath(browsePath) {
735
+ (0, node_opcua_assert_1.assert)(browsePath instanceof node_opcua_types_1.BrowsePath);
736
+ const startingNode = this.findNode(browsePath.startingNode);
737
+ if (!startingNode) {
738
+ return new node_opcua_types_1.BrowsePathResult({ statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
739
+ }
740
+ if (!browsePath.relativePath.elements || browsePath.relativePath.elements.length === 0) {
741
+ return new node_opcua_types_1.BrowsePathResult({
742
+ statusCode: node_opcua_status_code_1.StatusCodes.BadNothingToDo,
743
+ targets: []
744
+ });
745
+ }
746
+ const elements_length = browsePath.relativePath.elements.length;
747
+ // -------------------------------------------------------------------------------------------------------
748
+ // verify standard RelativePath construction
749
+ // from OPCUA 1.03 - PArt 3 - 7.6 RelativePath:
750
+ // TargetName The BrowseName of the target node.
751
+ // The final element may have an empty targetName. In this situation all targets of the
752
+ // references identified by the referenceTypeId are the targets of the RelativePath.
753
+ // The targetName shall be specified for all other elements.
754
+ // The current path cannot be followed any further if no targets with the specified
755
+ // BrowseName exist.
756
+ // Let's detect null targetName which are not in last position and return BadBrowseNameInvalid if not
757
+ //
758
+ const empty_targetName_not_in_lastPos = browsePath.relativePath.elements.reduce((prev, e, index) => {
759
+ const is_last = index + 1 === elements_length;
760
+ const isBad = !is_last && (!e.targetName || e.targetName.isEmpty());
761
+ return prev + (isBad ? 1 : 0);
762
+ }, 0);
763
+ if (empty_targetName_not_in_lastPos) {
764
+ return new node_opcua_types_1.BrowsePathResult({ statusCode: node_opcua_status_code_1.StatusCodes.BadBrowseNameInvalid });
765
+ }
766
+ // from OPCUA 1.03 - PArt 3 - 5.8.4 TranslateBrowsePathToNodeIds
767
+ // TranslateBrowsePathToNodeIds further restrict RelativePath targetName rules:
768
+ // The last element in the relativePath shall always have a targetName specified.
769
+ const last_el = browsePath.relativePath.elements[elements_length - 1];
770
+ if (!last_el.targetName?.name || last_el.targetName.name.length === 0) {
771
+ return new node_opcua_types_1.BrowsePathResult({ statusCode: node_opcua_status_code_1.StatusCodes.BadBrowseNameInvalid });
772
+ }
773
+ const res = [];
774
+ const explore_element = (curNodeObject, elements, index) => {
775
+ const element = elements[index];
776
+ const is_last = index + 1 === elements.length;
777
+ const nodeIds = curNodeObject.browseNodeByTargetName(element, is_last);
778
+ const targets = nodeIds.map((nodeId) => {
779
+ return {
780
+ remainingPathIndex: elements.length - index,
781
+ targetId: nodeId
782
+ };
783
+ });
784
+ if (!is_last) {
785
+ // explorer
786
+ for (const target of targets) {
787
+ const node = this.findNode(target.targetId);
788
+ if (!node) {
789
+ continue;
790
+ }
791
+ explore_element(node, elements, index + 1);
792
+ }
793
+ }
794
+ else {
795
+ for (const target of targets) {
796
+ res.push({
797
+ remainingPathIndex: 0xffffffff,
798
+ targetId: (0, node_opcua_nodeid_1.coerceExpandedNodeId)(target.targetId)
799
+ });
800
+ }
801
+ }
802
+ };
803
+ explore_element(startingNode, browsePath.relativePath.elements, 0);
804
+ if (res.length === 0) {
805
+ return new node_opcua_types_1.BrowsePathResult({ statusCode: node_opcua_status_code_1.StatusCodes.BadNoMatch });
806
+ }
807
+ return new node_opcua_types_1.BrowsePathResult({
808
+ statusCode: node_opcua_status_code_1.StatusCodes.Good,
809
+ targets: res
810
+ });
811
+ }
812
+ // - Extension Object ----------------------------------------------------------------------------------------------
813
+ getExtensionObjectConstructor(dataType) {
814
+ (0, node_opcua_assert_1.assert)(dataType, "expecting a dataType");
815
+ if (dataType instanceof node_opcua_nodeid_1.NodeId) {
816
+ const tmp = this.findNode(dataType);
817
+ /* c8 ignore next */
818
+ if (!tmp) {
819
+ throw new Error(`getExtensionObjectConstructor: cannot resolve dataType ${dataType}`);
820
+ }
821
+ dataType = tmp;
822
+ }
823
+ /* c8 ignore next */
824
+ if (!(dataType instanceof ua_data_type_impl_js_1.UADataTypeImpl)) {
825
+ // may be dataType was the NodeId of the "Binary Encoding" node
826
+ throw new Error(`getExtensionObjectConstructor: dataType has unexpected type${dataType}`);
827
+ }
828
+ const _dataType = dataType;
829
+ // to do verify that dataType is of type "Structure"
830
+ const structureDataType = this.findDataType("Structure");
831
+ /* c8 ignore next */
832
+ if (!structureDataType) {
833
+ throw new Error("getExtensionObjectConstructor: cannot find 'Structure' DataType in standard address Space");
834
+ }
835
+ /* c8 ignore next */
836
+ if (!_dataType.isSubtypeOf(structureDataType)) {
837
+ // c8 ignore next
838
+ doDebug && debugLog(_dataType.toString());
839
+ }
840
+ (0, node_opcua_assert_1.assert)(_dataType.isSubtypeOf(structureDataType));
841
+ if (!_dataType._extensionObjectConstructor) {
842
+ if (!this.$$extraDataTypeManager) {
843
+ throw new Error(`getExtensionObjectConstructor: cannot build a constructor for ${_dataType.browseName.toString()} (${_dataType.nodeId.toString()}): ` +
844
+ "the DataType manager is not initialised. " +
845
+ "Make sure generateAddressSpace() completed successfully and/or that ensureDatatypeExtracted(addressSpace) was awaited before using structured DataTypes.");
846
+ }
847
+ const dataTypeManager = this.$$extraDataTypeManager;
848
+ _dataType._extensionObjectConstructor = dataTypeManager.getExtensionObjectConstructorFromDataType(_dataType.nodeId);
849
+ }
850
+ (0, node_opcua_assert_1.assert)(_dataType._extensionObjectConstructor, "dataType must have a constructor");
851
+ const Constructor = _dataType._extensionObjectConstructor;
852
+ return Constructor;
853
+ }
854
+ /**
855
+ * @param dataType
856
+ * @param [options]
857
+ * @return the constructed extension object
858
+ *
859
+ *
860
+ * @example
861
+ *
862
+ * // example 1
863
+ * var extObj = addressSpace.constructExtensionObject("BuildInfo",{ productName: "PRODUCT_NAME"});
864
+ *
865
+ * // example 2
866
+ * serverStatusDataType.nodeClass.should.eql(NodeClass.DataType);
867
+ * serverStatusDataType.browseName.toString().should.eql("ServerStatusDataType");
868
+ * var serverStatus = addressSpace.constructExtensionObject(serverStatusDataType);
869
+ * serverStatus.should.be.instanceof(ServerStatusDataType);
870
+ */
871
+ constructExtensionObject(dataType, options) {
872
+ const Constructor = this.getExtensionObjectConstructor(dataType);
873
+ return new Constructor(options);
874
+ }
875
+ /**
876
+ * cleanup all resources maintained by this addressSpace.
877
+ */
878
+ dispose() {
879
+ this._namespaceArray.map((namespace) => namespace.dispose());
880
+ AddressSpaceImpl.registry.unregister(this);
881
+ /* c8 ignore next */
882
+ if (this._shutdownTask && this._shutdownTask.length > 0) {
883
+ throw new Error("AddressSpace#dispose : shutdown has not been called");
884
+ }
885
+ }
886
+ /**
887
+ * register a function that will be called when the server will perform its shut down.
888
+ */
889
+ registerShutdownTask(task) {
890
+ this._shutdownTask = this._shutdownTask || [];
891
+ (0, node_opcua_assert_1.assert)(typeof task === "function");
892
+ this._shutdownTask.push(task);
893
+ }
894
+ /**
895
+ * Register a method call interceptor.
896
+ * Interceptors are called sequentially before each UAMethod.execute().
897
+ * If any interceptor returns a non-Good StatusCode, the method call
898
+ * is rejected and subsequent interceptors are skipped.
899
+ */
900
+ addMethodCallInterceptor(interceptor) {
901
+ (0, node_opcua_assert_1.assert)(typeof interceptor === "function");
902
+ this._methodCallInterceptors.push(interceptor);
903
+ }
904
+ /**
905
+ * Remove a previously registered method call interceptor.
906
+ */
907
+ removeMethodCallInterceptor(interceptor) {
908
+ const index = this._methodCallInterceptors.indexOf(interceptor);
909
+ if (index !== -1) {
910
+ this._methodCallInterceptors.splice(index, 1);
911
+ }
912
+ }
913
+ async shutdown() {
914
+ const performTasks = async (tasks) => {
915
+ // perform registerShutdownTask
916
+ for (const task of tasks) {
917
+ await task.call(this);
918
+ }
919
+ };
920
+ if (this._shutdownTask) {
921
+ const tasks = this._shutdownTask;
922
+ this._shutdownTask = [];
923
+ await performTasks(tasks);
924
+ }
925
+ }
926
+ browseSingleNode(nodeId, browseDescription, context) {
927
+ const browseResult = {
928
+ continuationPoint: undefined,
929
+ references: null,
930
+ statusCode: node_opcua_status_code_1.StatusCodes.Good
931
+ };
932
+ if (!browseDescription || browseDescription.browseDirection === node_opcua_data_model_1.BrowseDirection.Invalid) {
933
+ browseResult.statusCode = node_opcua_status_code_1.StatusCodes.BadBrowseDirectionInvalid;
934
+ return new node_opcua_service_browse_1.BrowseResult(browseResult);
935
+ }
936
+ browseDescription.browseDirection = (0, adjust_browse_direction_js_1.adjustBrowseDirection)(browseDescription.browseDirection, node_opcua_data_model_1.BrowseDirection.Forward);
937
+ /* c8 ignore next */
938
+ if (typeof nodeId === "number") {
939
+ throw new Error("Not Implemented");
940
+ }
941
+ if (typeof nodeId === "string") {
942
+ const node = this.findNode(this.resolveNodeId(nodeId));
943
+ if (node) {
944
+ nodeId = node.nodeId;
945
+ }
946
+ }
947
+ // check if referenceTypeId is correct
948
+ if (browseDescription.referenceTypeId instanceof node_opcua_nodeid_1.NodeId) {
949
+ if (browseDescription.referenceTypeId.value === 0) {
950
+ browseDescription.referenceTypeId = null;
951
+ }
952
+ else {
953
+ const rf = this.findNode(browseDescription.referenceTypeId);
954
+ if (!rf || !(rf instanceof ua_reference_type_impl_js_1.UAReferenceTypeImpl)) {
955
+ browseResult.statusCode = node_opcua_status_code_1.StatusCodes.BadReferenceTypeIdInvalid;
956
+ return new node_opcua_service_browse_1.BrowseResult(browseResult);
957
+ }
958
+ }
959
+ }
960
+ const obj = this.findNode(nodeId);
961
+ if (!obj) {
962
+ // Object Not Found
963
+ browseResult.statusCode = node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown;
964
+ }
965
+ else {
966
+ browseResult.statusCode = node_opcua_status_code_1.StatusCodes.Good;
967
+ browseResult.references = obj.browseNode(browseDescription, context);
968
+ }
969
+ return new node_opcua_service_browse_1.BrowseResult(browseResult);
970
+ }
971
+ /**
972
+ * @param folder
973
+ * @private
974
+ */
975
+ _coerceFolder(folder) {
976
+ folder = this._coerceNode(folder);
977
+ /* c8 ignore next */
978
+ if (folder && !_isFolder(this, folder)) {
979
+ throw new Error(`Parent folder must be of FolderType ${folder.typeDefinition.toString()}`);
980
+ }
981
+ return folder;
982
+ }
983
+ /**
984
+ *
985
+ * @param view
986
+ * @param modelChange
987
+ * @private
988
+ */
989
+ _collectModelChange(_view, modelChange) {
990
+ this._modelChanges.push(modelChange);
991
+ }
992
+ /**
993
+ *
994
+ * walk up the hierarchy of objects until a view is found
995
+ * objects may belong to multiples views.
996
+ * Note: this method doesn't return the main view => Server object.
997
+ * @param node {BaseNode}
998
+ * @return {BaseNode[]}
999
+ */
1000
+ /**
1001
+ *
1002
+ * @param node
1003
+ * @private
1004
+ */
1005
+ extractRootViews(node) {
1006
+ (0, node_opcua_assert_1.assert)(node.nodeClass === node_opcua_data_model_1.NodeClass.Object || node.nodeClass === node_opcua_data_model_1.NodeClass.Variable);
1007
+ const visitedMap = {};
1008
+ const q = new dequeue_1.default();
1009
+ q.push(node);
1010
+ const objectsFolder = this.rootFolder.objects;
1011
+ (0, node_opcua_assert_1.assert)(objectsFolder instanceof ua_object_impl_js_1.UAObjectImpl);
1012
+ const results = [];
1013
+ while (q.length) {
1014
+ node = q.shift();
1015
+ const references = node.findReferencesEx("HierarchicalReferences", node_opcua_data_model_1.BrowseDirection.Inverse);
1016
+ const parentNodes = references.map((r) => reference_impl_js_1.ReferenceImpl.resolveReferenceNode(this, r));
1017
+ for (const parent of parentNodes) {
1018
+ if ((0, node_opcua_nodeid_1.sameNodeId)(parent.nodeId, objectsFolder.nodeId)) {
1019
+ continue; // nothing to do
1020
+ }
1021
+ if (parent.nodeClass === node_opcua_data_model_1.NodeClass.View) {
1022
+ results.push(parent);
1023
+ }
1024
+ else {
1025
+ const key = parent.nodeId.toString();
1026
+ if (Object.hasOwn(visitedMap, key)) {
1027
+ continue;
1028
+ }
1029
+ visitedMap[key] = parent;
1030
+ q.push(parent);
1031
+ }
1032
+ }
1033
+ }
1034
+ return results;
1035
+ }
1036
+ /**
1037
+ *
1038
+ * @param func
1039
+ * @private
1040
+ */
1041
+ modelChangeTransaction(func) {
1042
+ this._modelChangeTransactionCounter = this._modelChangeTransactionCounter || 0;
1043
+ function beginModelChange() {
1044
+ this._modelChanges = this._modelChanges || [];
1045
+ (0, node_opcua_assert_1.assert)(this._modelChangeTransactionCounter >= 0);
1046
+ this._modelChangeTransactionCounter += 1;
1047
+ }
1048
+ function endModelChange() {
1049
+ this._modelChangeTransactionCounter -= 1;
1050
+ if (this._modelChangeTransactionCounter === 0) {
1051
+ if (this._modelChanges.length === 0) {
1052
+ return; // nothing to do
1053
+ }
1054
+ // increase version number of participating nodes
1055
+ // https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore
1056
+ // const nodeIds = _.uniq(this._modelChanges.map((c: any) => c.affected));
1057
+ const nodeIds = [...new Set(this._modelChanges.map((c) => c.affected))];
1058
+ const nodes = nodeIds.map((nodeId) => this.findNode(nodeId));
1059
+ nodes.forEach(_increase_version_number);
1060
+ // raise events
1061
+ if (this.rootFolder.objects.server) {
1062
+ const eventTypeNode = this.findEventType("GeneralModelChangeEventType");
1063
+ if (eventTypeNode) {
1064
+ this.rootFolder.objects.server.raiseEvent(eventTypeNode, {
1065
+ // Part 5 - 6.4.32 GeneralModelChangeEventType
1066
+ changes: {
1067
+ dataType: node_opcua_variant_1.DataType.ExtensionObject,
1068
+ arrayType: node_opcua_variant_1.VariantArrayType.Array,
1069
+ value: this._modelChanges
1070
+ }
1071
+ });
1072
+ }
1073
+ }
1074
+ this._modelChanges = [];
1075
+ // _notifyModelChange(this);
1076
+ }
1077
+ }
1078
+ beginModelChange.call(this);
1079
+ try {
1080
+ func();
1081
+ }
1082
+ catch (err) {
1083
+ errorLog("modelChangeTransaction", err?.message);
1084
+ throw err;
1085
+ }
1086
+ finally {
1087
+ endModelChange.call(this);
1088
+ }
1089
+ }
1090
+ /**
1091
+ * normalize the ReferenceType field of the Reference Object
1092
+ * @param params.referenceType {String|nodeId}
1093
+ * @param params.isForward {Boolean} default value: true;
1094
+ * @return {Object} a new reference object with the normalized name { referenceType: <value>, isForward: <flag>}
1095
+ */
1096
+ normalizeReferenceType(params) {
1097
+ if (params instanceof reference_impl_js_1.ReferenceImpl) {
1098
+ // a reference has already been normalized
1099
+ return params;
1100
+ }
1101
+ // ----------------------------------------------- handle is forward
1102
+ (0, node_opcua_assert_1.assert)(params.isForward === undefined || typeof params.isForward === "boolean");
1103
+ params.isForward = (0, node_opcua_utils_1.isNullOrUndefined)(params.isForward) ? true : !!params.isForward;
1104
+ // referenceType = Organizes , isForward = true => referenceType = Organizes , isForward = true
1105
+ // referenceType = Organizes , isForward = false => referenceType = Organizes , isForward = false
1106
+ // referenceType = OrganizedBy , isForward = true => referenceType = Organizes , isForward = **false**
1107
+ // referenceType = OrganizedBy , isForward = false => referenceType = Organizes , isForward = **true**
1108
+ // ----------------------------------------------- handle referenceType
1109
+ if (params.referenceType instanceof ua_reference_type_impl_js_1.UAReferenceTypeImpl) {
1110
+ params.referenceType = params.referenceType;
1111
+ params.referenceType = params.referenceType.nodeId;
1112
+ }
1113
+ else if (typeof params.referenceType === "string") {
1114
+ // the browse name first: a reference type whose inverse name is its own browse name
1115
+ // (GeneratesEvent in some nodesets) names the forward direction, not the inverse
1116
+ const byName = isNodeIdString(params.referenceType) ? null : this.findReferenceType(params.referenceType);
1117
+ const inv = byName ? null : this.findReferenceTypeFromInverseName(params.referenceType);
1118
+ if (byName) {
1119
+ params.referenceType = byName.nodeId;
1120
+ params._referenceType = byName;
1121
+ }
1122
+ else if (inv) {
1123
+ params.referenceType = inv.nodeId;
1124
+ params._referenceType = inv;
1125
+ params.isForward = !params.isForward;
1126
+ }
1127
+ else {
1128
+ params.referenceType = (0, node_opcua_nodeid_1.resolveNodeId)(params.referenceType);
1129
+ const refType = this.findReferenceType(params.referenceType);
1130
+ if (refType) {
1131
+ params._referenceType = refType;
1132
+ }
1133
+ }
1134
+ }
1135
+ (0, node_opcua_assert_1.assert)(params.referenceType instanceof node_opcua_nodeid_1.NodeId);
1136
+ // ----------- now resolve target NodeId;
1137
+ if (params.nodeId instanceof base_node_impl_js_1.BaseNodeImpl) {
1138
+ (0, node_opcua_assert_1.assert)(!Object.hasOwn(params, "node"));
1139
+ params.node = params.nodeId;
1140
+ params.nodeId = params.node.nodeId;
1141
+ }
1142
+ else {
1143
+ let _nodeId = params.nodeId;
1144
+ (0, node_opcua_assert_1.assert)(!!_nodeId, "missing 'nodeId' in reference");
1145
+ const _nodeIdWithNodeId = _nodeId;
1146
+ if (_nodeId && _nodeIdWithNodeId.nodeId) {
1147
+ _nodeId = _nodeIdWithNodeId.nodeId;
1148
+ }
1149
+ _nodeId = (0, node_opcua_nodeid_1.resolveNodeId)(_nodeId);
1150
+ params.nodeId = _nodeId;
1151
+ }
1152
+ return new reference_impl_js_1.ReferenceImpl(params);
1153
+ }
1154
+ normalizeReferenceTypes(references) {
1155
+ if (!references || references.length === 0) {
1156
+ return [];
1157
+ }
1158
+ return references.map((el) => this.normalizeReferenceType(el));
1159
+ }
1160
+ // -- Historical Node -----------------------------------------------------------------------------------------
1161
+ /**
1162
+ *
1163
+ * @param node
1164
+ * @param options
1165
+ */
1166
+ installHistoricalDataNode(node, options) {
1167
+ address_space_historical_data_node_js_1.AddressSpace_installHistoricalDataNode.call(this, node, options);
1168
+ }
1169
+ // -- Alarms & Conditions -----------------------------------------------------------------------------------------
1170
+ /**
1171
+ *
1172
+ */
1173
+ installAlarmsAndConditionsService() {
1174
+ index_js_1.UAConditionImplBase.install_condition_refresh_handle(this);
1175
+ index_js_1.UAAcknowledgeableConditionImplBase.install_method_handle_on_type(this);
1176
+ }
1177
+ // -- internal stuff -----------------------------------------------------------------------------------------------
1178
+ _coerceNode(node) {
1179
+ // coerce to BaseNode object
1180
+ if (node instanceof base_node_impl_js_1.BaseNodeImpl) {
1181
+ return node;
1182
+ }
1183
+ // it's a node id like
1184
+ // coerce parent folder to an object
1185
+ const returnValue = this.findNode((0, node_opcua_nodeid_1.resolveNodeId)(node));
1186
+ /*
1187
+ if (!hasTypeDefinition(node as BaseNode)) {
1188
+ node = this.findNode(node.nodeId) || node;
1189
+ if (!node || !hasTypeDefinition(node)) {
1190
+ return null;
1191
+ }
1192
+ }
1193
+ */
1194
+ return returnValue;
1195
+ }
1196
+ _coerce_DataType(dataType) {
1197
+ if (dataType instanceof node_opcua_nodeid_1.NodeId) {
1198
+ // xx assert(self.findDataType(dataType));
1199
+ return dataType;
1200
+ }
1201
+ if (dataType === 0) {
1202
+ return node_opcua_nodeid_1.NodeId.nullNodeId;
1203
+ }
1204
+ return this._coerce_Type(dataType, node_opcua_constants_1.DataTypeIds, "DataTypeIds", AddressSpaceImpl.prototype.findDataType);
1205
+ }
1206
+ _coerceTypeDefinition(typeDefinition) {
1207
+ if (typeof typeDefinition === "string") {
1208
+ // coerce parent folder to an node
1209
+ const typeDefinitionNode = this.findNode(typeDefinition);
1210
+ /* c8 ignore next */
1211
+ if (!typeDefinitionNode) {
1212
+ throw new Error(`_coerceTypeDefinition: cannot find node ${typeDefinition}`);
1213
+ }
1214
+ typeDefinition = typeDefinitionNode.nodeId;
1215
+ }
1216
+ (0, node_opcua_assert_1.assert)(typeDefinition instanceof node_opcua_nodeid_1.NodeId);
1217
+ return typeDefinition;
1218
+ }
1219
+ _coerceType(baseType, topMostBaseType, nodeClass) {
1220
+ (0, node_opcua_assert_1.assert)(typeof topMostBaseType === "string");
1221
+ const topMostBaseTypeNode = this.findNode(topMostBaseType);
1222
+ /* c8 ignore next */
1223
+ if (!topMostBaseTypeNode) {
1224
+ throw new Error(`Cannot find topMostBaseTypeNode ${topMostBaseType.toString()}`);
1225
+ }
1226
+ (0, node_opcua_assert_1.assert)(topMostBaseTypeNode instanceof base_node_impl_js_1.BaseNodeImpl);
1227
+ (0, node_opcua_assert_1.assert)(topMostBaseTypeNode.nodeClass === nodeClass);
1228
+ if (!baseType) {
1229
+ return topMostBaseTypeNode;
1230
+ }
1231
+ (0, node_opcua_assert_1.assert)(typeof baseType === "string" || baseType instanceof base_node_impl_js_1.BaseNodeImpl || baseType instanceof node_opcua_nodeid_1.NodeId);
1232
+ let baseTypeNode;
1233
+ if (baseType instanceof base_node_impl_js_1.BaseNodeImpl) {
1234
+ baseTypeNode = baseType;
1235
+ }
1236
+ else {
1237
+ baseTypeNode = this.findNode(baseType);
1238
+ }
1239
+ /* c8 ignore next*/
1240
+ if (!baseTypeNode) {
1241
+ throw new Error(`Cannot find ObjectType or VariableType for ${baseType.toString()}`);
1242
+ }
1243
+ const baseTypeNodeWithIsSubtypeOf = baseTypeNode;
1244
+ /* c8 ignore next */
1245
+ if (!baseTypeNodeWithIsSubtypeOf.isSubtypeOf) {
1246
+ throw new Error(`Cannot find ObjectType or VariableType for ${baseType.toString()}`);
1247
+ }
1248
+ /* c8 ignore next */
1249
+ if (!baseTypeNodeWithIsSubtypeOf.isSubtypeOf(topMostBaseTypeNode)) {
1250
+ throw new Error("wrong type ");
1251
+ }
1252
+ return baseTypeNode;
1253
+ }
1254
+ _coerce_VariableTypeIds(dataType) {
1255
+ return this._coerce_Type(dataType, node_opcua_constants_1.VariableTypeIds, "VariableTypeIds", AddressSpaceImpl.prototype.findVariableType);
1256
+ }
1257
+ _register(node) {
1258
+ (0, node_opcua_assert_1.assert)(node.nodeId instanceof node_opcua_nodeid_1.NodeId);
1259
+ const namespace = this.getNamespace(node.nodeId.namespace);
1260
+ namespace._register(node);
1261
+ }
1262
+ deleteNode(nodeOrNodeId) {
1263
+ _getNamespace(this, nodeOrNodeId).deleteNode(nodeOrNodeId);
1264
+ }
1265
+ isEnumeration(dataType) {
1266
+ // DataType must be one of Enumeration
1267
+ const dataTypeNode = this.findDataType(dataType);
1268
+ if (!dataTypeNode) {
1269
+ throw new Error(` Cannot find DataType ${dataType.toString()} in standard address Space`);
1270
+ }
1271
+ const enumerationNode = this.findDataType("Enumeration");
1272
+ if (!enumerationNode) {
1273
+ throw new Error(" Cannot find 'Enumeration' DataType in standard address Space");
1274
+ }
1275
+ return dataTypeNode.isSubtypeOf(enumerationNode);
1276
+ }
1277
+ _coerce_Type(dataType, typeMap, typeMapName, finderMethod) {
1278
+ if (typeof dataType === "number") {
1279
+ return this._coerce_Type((0, node_opcua_nodeid_1.coerceNodeId)(dataType), typeMap, typeMapName, finderMethod);
1280
+ }
1281
+ if (dataType instanceof base_node_impl_js_1.BaseNodeImpl) {
1282
+ dataType = dataType.nodeId;
1283
+ }
1284
+ (0, node_opcua_assert_1.assert)(typeMap !== null && typeof typeMap === "object");
1285
+ let nodeId;
1286
+ if (typeof dataType === "string") {
1287
+ if (isNodeIdString(dataType)) {
1288
+ const nodeId = this.resolveNodeId(dataType);
1289
+ if (nodeId.isEmpty()) {
1290
+ // this is a valid dataType NodeId, but it has no definition in the address space
1291
+ return node_opcua_nodeid_1.NodeId.nullNodeId;
1292
+ }
1293
+ const node = this.findNode(nodeId);
1294
+ if (node) {
1295
+ // if dataType is a nodeId string, we can use it directly
1296
+ return node.nodeId;
1297
+ }
1298
+ else {
1299
+ warningLog("Expecting valid nodeId of a DataType : ", nodeId.toString());
1300
+ return nodeId;
1301
+ }
1302
+ }
1303
+ const namespace0 = this.getDefaultNamespace();
1304
+ // resolve dataType
1305
+ nodeId = namespace0.resolveAlias(dataType);
1306
+ if (!nodeId) {
1307
+ // dataType was not found in the aliases database
1308
+ if (typeMap[dataType]) {
1309
+ nodeId = (0, node_opcua_nodeid_1.makeNodeId)(typeMap[dataType], 0);
1310
+ return nodeId;
1311
+ }
1312
+ else {
1313
+ nodeId = (0, node_opcua_nodeid_1.resolveNodeId)(dataType);
1314
+ }
1315
+ }
1316
+ }
1317
+ else if (typeof dataType === "number") {
1318
+ nodeId = (0, node_opcua_nodeid_1.makeNodeId)(dataType, 0);
1319
+ }
1320
+ else {
1321
+ nodeId = (0, node_opcua_nodeid_1.resolveNodeId)(dataType);
1322
+ }
1323
+ /* c8 ignore next */
1324
+ if (nodeId == null || !(nodeId instanceof node_opcua_nodeid_1.NodeId)) {
1325
+ throw new Error("Expecting valid nodeId ");
1326
+ }
1327
+ const el = finderMethod.call(this, nodeId);
1328
+ if (!el) {
1329
+ // verify that node Id exists in standard type map typeMap
1330
+ const find = Object.values(typeMap).filter((a) => a === nodeId?.value);
1331
+ /* c8 ignore next */
1332
+ if (find.length !== 1) {
1333
+ throw new Error(` cannot find ${dataType.toString()} in typeMap ${typeMapName} L = ${find.length}`);
1334
+ }
1335
+ }
1336
+ return nodeId;
1337
+ }
1338
+ _findReferenceType(refType, namespaceIndex) {
1339
+ if (refType instanceof node_opcua_nodeid_1.NodeId) {
1340
+ return _find_by_node_id(this, refType, namespaceIndex);
1341
+ }
1342
+ const [namespace, browseName] = _extract_namespace_and_browse_name_as_string(this, refType, namespaceIndex);
1343
+ return namespace.findReferenceType(browseName);
1344
+ }
1345
+ }
1346
+ exports.AddressSpaceImpl = AddressSpaceImpl;
1347
+ function _getNamespace(addressSpace, nodeOrNodId) {
1348
+ const nodeId = nodeOrNodId instanceof base_node_impl_js_1.BaseNodeImpl ? nodeOrNodId.nodeId : nodeOrNodId;
1349
+ return addressSpace.getNamespace(nodeId.namespace);
1350
+ }
1351
+ function _find_by_node_id(addressSpace, nodeId, _namespaceIndex) {
1352
+ const obj = addressSpace.findNode(nodeId);
1353
+ return obj;
1354
+ }
1355
+ /**
1356
+ * return true if nodeId is a UAFolder
1357
+ * @param addressSpace
1358
+ * @param folder
1359
+ * @return {Boolean}
1360
+ * @private
1361
+ */
1362
+ function _isFolder(addressSpace, folder) {
1363
+ const folderType = addressSpace.findObjectType("FolderType");
1364
+ (0, node_opcua_assert_1.assert)(folder instanceof base_node_impl_js_1.BaseNodeImpl);
1365
+ (0, node_opcua_assert_1.assert)(folder.typeDefinitionObj);
1366
+ return folder.typeDefinitionObj.isSubtypeOf(folderType);
1367
+ }
1368
+ function _increase_version_number(node) {
1369
+ const uaNodeVersion = node?.getNodeVersion();
1370
+ if (uaNodeVersion) {
1371
+ const rawValue = uaNodeVersion.readValue().value.value || "";
1372
+ let previousValue = parseInt(rawValue || "0", 10);
1373
+ if (Number.isNaN(previousValue)) {
1374
+ warningLog("NodeVersion was ", rawValue);
1375
+ previousValue = 0;
1376
+ }
1377
+ uaNodeVersion.setValueFromSource({
1378
+ dataType: node_opcua_variant_1.DataType.String,
1379
+ value: (previousValue + 1).toString()
1380
+ });
1381
+ }
1382
+ }
1383
+ //# sourceMappingURL=address_space.js.map