node-opcua-address-space 2.97.0 → 2.98.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (342) hide show
  1. package/dist/source/address_space_ts.d.ts +118 -118
  2. package/dist/source/address_space_ts.js +17 -17
  3. package/dist/source/continuation_points/continuation_point_manager.d.ts +91 -91
  4. package/dist/source/continuation_points/continuation_point_manager.js +200 -200
  5. package/dist/source/helpers/adjust_browse_direction.d.ts +5 -5
  6. package/dist/source/helpers/adjust_browse_direction.js +11 -11
  7. package/dist/source/helpers/argument_list.d.ts +33 -33
  8. package/dist/source/helpers/argument_list.js +254 -254
  9. package/dist/source/helpers/call_helpers.d.ts +6 -6
  10. package/dist/source/helpers/call_helpers.js +71 -71
  11. package/dist/source/helpers/coerce_enum_value.d.ts +6 -6
  12. package/dist/source/helpers/coerce_enum_value.js +33 -33
  13. package/dist/source/helpers/dump_tools.d.ts +14 -14
  14. package/dist/source/helpers/dump_tools.js +78 -78
  15. package/dist/source/helpers/ensure_secure_access.d.ts +9 -9
  16. package/dist/source/helpers/ensure_secure_access.js +76 -76
  17. package/dist/source/helpers/make_optionals_map.d.ts +21 -21
  18. package/dist/source/helpers/make_optionals_map.js +29 -29
  19. package/dist/source/helpers/multiform_func.d.ts +11 -11
  20. package/dist/source/helpers/multiform_func.js +75 -75
  21. package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +3 -3
  22. package/dist/source/helpers/resolve_opaque_on_address_space.js +36 -36
  23. package/dist/source/index.d.ts +61 -61
  24. package/dist/source/index.js +89 -89
  25. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +19 -19
  26. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +2 -2
  27. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +193 -193
  28. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js +2 -2
  29. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +12 -12
  30. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js +2 -2
  31. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +10 -10
  32. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js +2 -2
  33. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -7
  34. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +2 -2
  35. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +7 -7
  36. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js +2 -2
  37. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +4 -4
  38. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +2 -2
  39. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -4
  40. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +2 -2
  41. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +9 -9
  42. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +2 -2
  43. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +4 -4
  44. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +2 -2
  45. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +4 -4
  46. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +2 -2
  47. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +20 -20
  48. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +2 -2
  49. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +23 -23
  50. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +2 -2
  51. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +32 -32
  52. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +2 -2
  53. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +19 -19
  54. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +2 -2
  55. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +45 -42
  56. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js +2 -2
  57. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +7 -7
  58. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +25 -25
  59. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -5
  60. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +2 -2
  61. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +20 -20
  62. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +2 -2
  63. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +26 -26
  64. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +2 -2
  65. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +8 -8
  66. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +2 -2
  67. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -10
  68. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +2 -2
  69. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +21 -21
  70. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js +2 -2
  71. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +24 -24
  72. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js +2 -2
  73. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +12 -12
  74. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js +2 -2
  75. package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +8 -8
  76. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js +2 -2
  77. package/dist/source/interfaces/extension_object_constructor.d.ts +10 -10
  78. package/dist/source/interfaces/extension_object_constructor.js +2 -2
  79. package/dist/source/interfaces/nodeset_loader_options.d.ts +4 -4
  80. package/dist/source/interfaces/nodeset_loader_options.js +2 -2
  81. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -12
  82. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +2 -2
  83. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -49
  84. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js +2 -2
  85. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -11
  86. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js +2 -2
  87. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +30 -30
  88. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js +2 -2
  89. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +234 -234
  90. package/dist/source/interfaces/state_machine/ua_state_machine_type.js +2 -2
  91. package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +6 -6
  92. package/dist/source/interfaces/state_machine/ua_transition_ex.js +2 -2
  93. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +8 -8
  94. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +2 -2
  95. package/dist/source/loader/decode_xml_extension_object.d.ts +6 -6
  96. package/dist/source/loader/decode_xml_extension_object.js +71 -71
  97. package/dist/source/loader/ensure_datatype_extracted.d.ts +5 -5
  98. package/dist/source/loader/ensure_datatype_extracted.js +70 -70
  99. package/dist/source/loader/generateAddressSpaceRaw.d.ts +11 -11
  100. package/dist/source/loader/generateAddressSpaceRaw.js +45 -45
  101. package/dist/source/loader/load_nodeset2.d.ts +17 -17
  102. package/dist/source/loader/load_nodeset2.js +1483 -1483
  103. package/dist/source/loader/make_semver_compatible.d.ts +6 -6
  104. package/dist/source/loader/make_semver_compatible.js +25 -25
  105. package/dist/source/loader/make_xml_extension_object_parser.d.ts +28 -28
  106. package/dist/source/loader/make_xml_extension_object_parser.js +326 -326
  107. package/dist/source/loader/namespace_post_step.d.ts +10 -10
  108. package/dist/source/loader/namespace_post_step.js +61 -61
  109. package/dist/source/loader/register_node_promoter.d.ts +2 -2
  110. package/dist/source/loader/register_node_promoter.js +9 -9
  111. package/dist/source/namespace.d.ts +6 -6
  112. package/dist/source/namespace.js +2 -2
  113. package/dist/source/namespace_alarm_and_condition.d.ts +32 -32
  114. package/dist/source/namespace_alarm_and_condition.js +2 -2
  115. package/dist/source/namespace_data_access.d.ts +42 -42
  116. package/dist/source/namespace_data_access.js +2 -2
  117. package/dist/source/namespace_machine_state.d.ts +8 -8
  118. package/dist/source/namespace_machine_state.js +2 -2
  119. package/dist/source/pseudo_session.d.ts +72 -72
  120. package/dist/source/pseudo_session.js +254 -254
  121. package/dist/source/session_context.d.ts +111 -111
  122. package/dist/source/session_context.js +264 -264
  123. package/dist/source/session_context.js.map +1 -1
  124. package/dist/source/set_namespace_meta_data.d.ts +2 -2
  125. package/dist/source/set_namespace_meta_data.js +59 -59
  126. package/dist/source/ua_root_folder.d.ts +9 -9
  127. package/dist/source/ua_root_folder.js +2 -2
  128. package/dist/source/ua_two_state_variable_ex.d.ts +23 -23
  129. package/dist/source/ua_two_state_variable_ex.js +2 -2
  130. package/dist/source/xml_writer.d.ts +18 -18
  131. package/dist/source/xml_writer.js +2 -2
  132. package/dist/src/address_space.d.ts +387 -387
  133. package/dist/src/address_space.js +1385 -1385
  134. package/dist/src/address_space.js.map +1 -1
  135. package/dist/src/address_space_change_event_tools.d.ts +6 -6
  136. package/dist/src/address_space_change_event_tools.js +152 -152
  137. package/dist/src/address_space_private.d.ts +43 -43
  138. package/dist/src/address_space_private.js +2 -2
  139. package/dist/src/alarms_and_conditions/condition.d.ts +5 -5
  140. package/dist/src/alarms_and_conditions/condition.js +78 -78
  141. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +26 -26
  142. package/dist/src/alarms_and_conditions/condition_info_impl.js +54 -54
  143. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +222 -222
  144. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +657 -657
  145. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +1 -1
  146. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +9 -9
  147. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +60 -60
  148. package/dist/src/alarms_and_conditions/index.d.ts +16 -16
  149. package/dist/src/alarms_and_conditions/index.js +32 -32
  150. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +44 -44
  151. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -244
  152. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +93 -93
  153. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +418 -418
  154. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
  155. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +26 -26
  156. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +38 -38
  157. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +44 -44
  158. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +183 -183
  159. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +155 -153
  160. package/dist/src/alarms_and_conditions/ua_condition_impl.js +1028 -1028
  161. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -1
  162. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +14 -14
  163. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +34 -34
  164. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +24 -24
  165. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +56 -56
  166. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +11 -11
  167. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +11 -11
  168. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +23 -23
  169. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -86
  170. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +11 -11
  171. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +7 -7
  172. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +79 -79
  173. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +250 -250
  174. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +24 -24
  175. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +50 -50
  176. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +19 -19
  177. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +162 -162
  178. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +46 -46
  179. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +165 -165
  180. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -18
  181. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +17 -17
  182. package/dist/src/apply_condition_refresh.d.ts +6 -6
  183. package/dist/src/apply_condition_refresh.js +27 -27
  184. package/dist/src/base_node_impl.d.ts +284 -284
  185. package/dist/src/base_node_impl.js +1454 -1454
  186. package/dist/src/base_node_private.d.ts +81 -81
  187. package/dist/src/base_node_private.js +832 -803
  188. package/dist/src/base_node_private.js.map +1 -1
  189. package/dist/src/check_value_rank_compatibility.d.ts +15 -15
  190. package/dist/src/check_value_rank_compatibility.js +81 -81
  191. package/dist/src/data_access/add_dataItem_stuff.d.ts +11 -11
  192. package/dist/src/data_access/add_dataItem_stuff.js +61 -61
  193. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.d.ts +1 -1
  194. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js +34 -34
  195. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +32 -32
  196. package/dist/src/data_access/ua_multistate_discrete_impl.js +130 -130
  197. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +52 -52
  198. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +253 -253
  199. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +25 -25
  200. package/dist/src/data_access/ua_two_state_discrete_impl.js +155 -155
  201. package/dist/src/event_data.d.ts +34 -34
  202. package/dist/src/event_data.js +64 -64
  203. package/dist/src/extension_object_array_node.d.ts +23 -23
  204. package/dist/src/extension_object_array_node.js +248 -248
  205. package/dist/src/historical_access/address_space_historical_data_node.d.ts +26 -26
  206. package/dist/src/historical_access/address_space_historical_data_node.js +652 -652
  207. package/dist/src/idx_iterator.d.ts +8 -8
  208. package/dist/src/idx_iterator.js +50 -50
  209. package/dist/src/index_current.d.ts +46 -46
  210. package/dist/src/index_current.js +77 -77
  211. package/dist/src/namespace_impl.d.ts +456 -456
  212. package/dist/src/namespace_impl.js +1762 -1762
  213. package/dist/src/namespace_impl.js.map +1 -1
  214. package/dist/src/namespace_private.d.ts +23 -23
  215. package/dist/src/namespace_private.js +32 -32
  216. package/dist/src/nodeid_manager.d.ts +37 -37
  217. package/dist/src/nodeid_manager.js +183 -183
  218. package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +2 -2
  219. package/dist/src/nodeset_tools/adjust_namespace_array.js +13 -13
  220. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +18 -18
  221. package/dist/src/nodeset_tools/construct_namespace_dependency.js +140 -140
  222. package/dist/src/nodeset_tools/dump_to_bsd.d.ts +2 -2
  223. package/dist/src/nodeset_tools/dump_to_bsd.js +164 -164
  224. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +10 -10
  225. package/dist/src/nodeset_tools/nodeset_to_xml.js +1287 -1287
  226. package/dist/src/private_namespace.d.ts +5 -5
  227. package/dist/src/private_namespace.js +19 -19
  228. package/dist/src/reference_impl.d.ts +43 -43
  229. package/dist/src/reference_impl.js +139 -139
  230. package/dist/src/role_permissions.d.ts +2 -2
  231. package/dist/src/role_permissions.js +10 -10
  232. package/dist/src/state_machine/finite_state_machine.d.ts +81 -81
  233. package/dist/src/state_machine/finite_state_machine.js +388 -388
  234. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +38 -38
  235. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +250 -250
  236. package/dist/src/state_machine/ua_two_state_variable.d.ts +61 -61
  237. package/dist/src/state_machine/ua_two_state_variable.js +331 -331
  238. package/dist/src/tool_isSubtypeOf.d.ts +18 -18
  239. package/dist/src/tool_isSubtypeOf.js +124 -124
  240. package/dist/src/ua_condition_type.d.ts +8 -8
  241. package/dist/src/ua_condition_type.js +2 -2
  242. package/dist/src/ua_data_type_impl.d.ts +89 -89
  243. package/dist/src/ua_data_type_impl.js +368 -368
  244. package/dist/src/ua_method_impl.d.ts +42 -42
  245. package/dist/src/ua_method_impl.js +217 -217
  246. package/dist/src/ua_object_impl.d.ts +35 -35
  247. package/dist/src/ua_object_impl.js +168 -168
  248. package/dist/src/ua_object_type_impl.d.ts +50 -50
  249. package/dist/src/ua_object_type_impl.js +126 -126
  250. package/dist/src/ua_reference_type_impl.d.ts +45 -45
  251. package/dist/src/ua_reference_type_impl.js +141 -141
  252. package/dist/src/ua_variable_impl.d.ts +380 -380
  253. package/dist/src/ua_variable_impl.js +1738 -1738
  254. package/dist/src/ua_variable_impl_ext_obj.d.ts +23 -23
  255. package/dist/src/ua_variable_impl_ext_obj.js +670 -670
  256. package/dist/src/ua_variable_type_impl.d.ts +74 -74
  257. package/dist/src/ua_variable_type_impl.js +597 -581
  258. package/dist/src/ua_variable_type_impl.js.map +1 -1
  259. package/dist/src/ua_view_impl.d.ts +19 -19
  260. package/dist/src/ua_view_impl.js +43 -43
  261. package/dist/tsconfig_common.tsbuildinfo +1 -0
  262. package/distHelpers/add_event_generator_object.d.ts +3 -3
  263. package/distHelpers/add_event_generator_object.js +64 -64
  264. package/distHelpers/alarms_and_conditions_demo.d.ts +9 -9
  265. package/distHelpers/alarms_and_conditions_demo.js +115 -115
  266. package/distHelpers/assertHasMatchingReference.d.ts +19 -19
  267. package/distHelpers/assertHasMatchingReference.js +40 -40
  268. package/distHelpers/boiler_system.d.ts +113 -113
  269. package/distHelpers/boiler_system.js +395 -395
  270. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +5 -5
  271. package/distHelpers/create_minimalist_address_space_nodeset.js +171 -171
  272. package/distHelpers/date_utils.d.ts +3 -3
  273. package/distHelpers/date_utils.js +9 -9
  274. package/distHelpers/dump_statemachine.js +127 -127
  275. package/distHelpers/get_address_space_fixture.d.ts +1 -1
  276. package/distHelpers/get_address_space_fixture.js +30 -30
  277. package/distHelpers/get_mini_address_space.d.ts +7 -7
  278. package/distHelpers/get_mini_address_space.js +36 -36
  279. package/distHelpers/index.d.ts +12 -12
  280. package/distHelpers/index.js +28 -28
  281. package/distHelpers/mock_session.d.ts +10 -10
  282. package/distHelpers/mock_session.js +25 -25
  283. package/distNodeJS/generate_address_space.d.ts +6 -6
  284. package/distNodeJS/generate_address_space.js +52 -52
  285. package/distNodeJS/index.d.ts +1 -1
  286. package/distNodeJS/index.js +17 -17
  287. package/package.json +51 -40
  288. package/source/interfaces/alarms_and_conditions/ua_condition_ex.ts +4 -3
  289. package/src/alarms_and_conditions/ua_condition_impl.ts +14 -9
  290. package/src/base_node_private.ts +73 -28
  291. package/src/ua_variable_type_impl.ts +35 -17
  292. package/.mocharc.yml +0 -12
  293. package/dist/src/tool_isSupertypeOf.d.ts +0 -18
  294. package/dist/src/tool_isSupertypeOf.js +0 -125
  295. package/dist/src/tool_isSupertypeOf.js.map +0 -1
  296. package/generate.js +0 -1
  297. package/source_nodejs/generate_address_space.ts +0 -60
  298. package/source_nodejs/index.ts +0 -1
  299. package/test_helpers/add_event_generator_object.ts +0 -71
  300. package/test_helpers/alarms_and_conditions_demo.ts +0 -151
  301. package/test_helpers/assertHasMatchingReference.ts +0 -43
  302. package/test_helpers/boiler_system.ts +0 -610
  303. package/test_helpers/create_minimalist_address_space_nodeset.ts +0 -208
  304. package/test_helpers/date_utils.ts +0 -5
  305. package/test_helpers/dump_statemachine.ts +0 -155
  306. package/test_helpers/get_address_space_fixture.ts +0 -30
  307. package/test_helpers/get_mini_address_space.ts +0 -42
  308. package/test_helpers/index.ts +0 -12
  309. package/test_helpers/mock_session.ts +0 -34
  310. package/test_helpers/test_fixtures/dataType_in_separateNamespace.xml +0 -150
  311. package/test_helpers/test_fixtures/dataType_in_separateNamespace_basic.xml +0 -57
  312. package/test_helpers/test_fixtures/dataType_in_separateNamespace_mix.xml +0 -136
  313. package/test_helpers/test_fixtures/dataType_issue.xml +0 -80
  314. package/test_helpers/test_fixtures/dataType_withEnumeration.xml +0 -82
  315. package/test_helpers/test_fixtures/dataType_with_isOptionSet.xml +0 -194
  316. package/test_helpers/test_fixtures/dataType_with_qualifiedname.xml +0 -71
  317. package/test_helpers/test_fixtures/dataType_with_recursive_structure.xml +0 -155
  318. package/test_helpers/test_fixtures/dataType_with_structures.xml +0 -605
  319. package/test_helpers/test_fixtures/dataType_with_union.xml +0 -90
  320. package/test_helpers/test_fixtures/datatype_as_per_1.04.xml +0 -118
  321. package/test_helpers/test_fixtures/datatype_with_allow_subtype.xml +0 -104
  322. package/test_helpers/test_fixtures/eurange_issue.xml +0 -74
  323. package/test_helpers/test_fixtures/example_issue1096.xml +0 -267
  324. package/test_helpers/test_fixtures/fixture_empty_nodeset2.xml +0 -106
  325. package/test_helpers/test_fixtures/fixture_simple_statemachine_nodeset2.xml +0 -1305
  326. package/test_helpers/test_fixtures/fixuture_nodeset_objects_with_some_methods.xml +0 -370
  327. package/test_helpers/test_fixtures/issue_1132_variable_with_nodeid_value.xml +0 -68
  328. package/test_helpers/test_fixtures/issue_846.xml +0 -3172
  329. package/test_helpers/test_fixtures/issue_899_variable_with_nodeid_value.xml +0 -33
  330. package/test_helpers/test_fixtures/mini.Node.Set2.xml +0 -4736
  331. package/test_helpers/test_fixtures/mini.nodeset.withVariousVariables.xml +0 -196
  332. package/test_helpers/test_fixtures/minimalist_nodeset_with_models.xml +0 -8
  333. package/test_helpers/test_fixtures/minimalist_nodeset_with_models_more_complex.xml +0 -20
  334. package/test_helpers/test_fixtures/nodeset_no_aliases.xml +0 -30
  335. package/test_helpers/test_fixtures/nodeset_no_aliases_with_aliases.xml +0 -31
  336. package/test_helpers/test_fixtures/nodeset_with_analog_items.xml +0 -45
  337. package/test_helpers/test_fixtures/nodeset_with_guid.xml +0 -1442
  338. package/test_helpers/test_fixtures/nodeset_with_int64_values.xml +0 -31
  339. package/test_helpers/test_fixtures/nodeset_with_special_char.xml +0 -34
  340. package/test_helpers/test_fixtures/nodeset_with_utf8_special_characters.xml +0 -20
  341. package/test_helpers/test_fixtures/variable_with_value.xml +0 -143
  342. package/test_helpers/test_fixtures/variabletype_with_value.xml +0 -324
@@ -1,72 +1,72 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.callMethodHelper = void 0;
4
- /**
5
- * @module node-opcua-address-space
6
- */
7
- const node_opcua_assert_1 = require("node-opcua-assert");
8
- const node_opcua_data_model_1 = require("node-opcua-data-model");
9
- const node_opcua_nodeid_1 = require("node-opcua-nodeid");
10
- const node_opcua_status_code_1 = require("node-opcua-status-code");
11
- const argument_list_1 = require("./argument_list");
12
- const resolve_opaque_on_address_space_1 = require("./resolve_opaque_on_address_space");
13
- function callMethodHelper(context, addressSpace, callMethodRequest, callback) {
14
- const objectId = callMethodRequest.objectId;
15
- const methodId = callMethodRequest.methodId;
16
- const inputArguments = callMethodRequest.inputArguments || [];
17
- (0, node_opcua_assert_1.assert)(objectId instanceof node_opcua_nodeid_1.NodeId);
18
- (0, node_opcua_assert_1.assert)(methodId instanceof node_opcua_nodeid_1.NodeId);
19
- const object = addressSpace.findNode(objectId);
20
- if (!object) {
21
- return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
22
- }
23
- if (object.nodeClass !== node_opcua_data_model_1.NodeClass.Object && object.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
24
- return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdInvalid });
25
- }
26
- const methodObj = addressSpace.findNode(methodId);
27
- if (!methodObj) {
28
- return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
29
- }
30
- if (methodObj.nodeClass !== node_opcua_data_model_1.NodeClass.Method) {
31
- return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdInvalid });
32
- }
33
- const response1 = (0, argument_list_1.getMethodDeclaration_ArgumentList)(addressSpace, objectId, methodId);
34
- if (response1.statusCode.isNotGood()) {
35
- return callback(null, { statusCode: response1.statusCode });
36
- }
37
- const methodDeclaration = response1.methodDeclaration;
38
- // verify input Parameters
39
- const methodInputArguments = methodDeclaration.getInputArguments();
40
- const response = (0, argument_list_1.verifyArguments_ArgumentList)(addressSpace, methodInputArguments, inputArguments);
41
- if (response.statusCode.isNotGood()) {
42
- return callback(null, response);
43
- }
44
- (0, resolve_opaque_on_address_space_1.resolveOpaqueOnAddressSpace)(addressSpace, inputArguments)
45
- .then(() => {
46
- methodObj.execute(object, inputArguments, context, (err, callMethodResponse) => {
47
- var _a;
48
- /* istanbul ignore next */
49
- if (err) {
50
- return callback(err);
51
- }
52
- if (!callMethodResponse) {
53
- return callback(new Error("internal Error"));
54
- }
55
- callMethodResponse.inputArgumentResults =
56
- callMethodResponse.inputArgumentResults || response.inputArgumentResults || [];
57
- (0, node_opcua_assert_1.assert)(callMethodResponse.statusCode);
58
- if ((_a = callMethodResponse.statusCode) === null || _a === void 0 ? void 0 : _a.isGood()) {
59
- (0, node_opcua_assert_1.assert)(Array.isArray(callMethodResponse.outputArguments));
60
- }
61
- (0, node_opcua_assert_1.assert)(Array.isArray(callMethodResponse.inputArgumentResults));
62
- (0, node_opcua_assert_1.assert)(callMethodResponse.inputArgumentResults.length === methodInputArguments.length);
63
- const outputArguments = callMethodResponse.outputArguments || [];
64
- (0, resolve_opaque_on_address_space_1.resolveOpaqueOnAddressSpace)(addressSpace, outputArguments)
65
- .then(() => callback(null, callMethodResponse))
66
- .catch(callback);
67
- });
68
- })
69
- .catch((err) => callback(err));
70
- }
71
- exports.callMethodHelper = callMethodHelper;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.callMethodHelper = void 0;
4
+ /**
5
+ * @module node-opcua-address-space
6
+ */
7
+ const node_opcua_assert_1 = require("node-opcua-assert");
8
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
9
+ const node_opcua_nodeid_1 = require("node-opcua-nodeid");
10
+ const node_opcua_status_code_1 = require("node-opcua-status-code");
11
+ const argument_list_1 = require("./argument_list");
12
+ const resolve_opaque_on_address_space_1 = require("./resolve_opaque_on_address_space");
13
+ function callMethodHelper(context, addressSpace, callMethodRequest, callback) {
14
+ const objectId = callMethodRequest.objectId;
15
+ const methodId = callMethodRequest.methodId;
16
+ const inputArguments = callMethodRequest.inputArguments || [];
17
+ (0, node_opcua_assert_1.assert)(objectId instanceof node_opcua_nodeid_1.NodeId);
18
+ (0, node_opcua_assert_1.assert)(methodId instanceof node_opcua_nodeid_1.NodeId);
19
+ const object = addressSpace.findNode(objectId);
20
+ if (!object) {
21
+ return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
22
+ }
23
+ if (object.nodeClass !== node_opcua_data_model_1.NodeClass.Object && object.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
24
+ return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdInvalid });
25
+ }
26
+ const methodObj = addressSpace.findNode(methodId);
27
+ if (!methodObj) {
28
+ return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
29
+ }
30
+ if (methodObj.nodeClass !== node_opcua_data_model_1.NodeClass.Method) {
31
+ return callback(null, { statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdInvalid });
32
+ }
33
+ const response1 = (0, argument_list_1.getMethodDeclaration_ArgumentList)(addressSpace, objectId, methodId);
34
+ if (response1.statusCode.isNotGood()) {
35
+ return callback(null, { statusCode: response1.statusCode });
36
+ }
37
+ const methodDeclaration = response1.methodDeclaration;
38
+ // verify input Parameters
39
+ const methodInputArguments = methodDeclaration.getInputArguments();
40
+ const response = (0, argument_list_1.verifyArguments_ArgumentList)(addressSpace, methodInputArguments, inputArguments);
41
+ if (response.statusCode.isNotGood()) {
42
+ return callback(null, response);
43
+ }
44
+ (0, resolve_opaque_on_address_space_1.resolveOpaqueOnAddressSpace)(addressSpace, inputArguments)
45
+ .then(() => {
46
+ methodObj.execute(object, inputArguments, context, (err, callMethodResponse) => {
47
+ var _a;
48
+ /* istanbul ignore next */
49
+ if (err) {
50
+ return callback(err);
51
+ }
52
+ if (!callMethodResponse) {
53
+ return callback(new Error("internal Error"));
54
+ }
55
+ callMethodResponse.inputArgumentResults =
56
+ callMethodResponse.inputArgumentResults || response.inputArgumentResults || [];
57
+ (0, node_opcua_assert_1.assert)(callMethodResponse.statusCode);
58
+ if ((_a = callMethodResponse.statusCode) === null || _a === void 0 ? void 0 : _a.isGood()) {
59
+ (0, node_opcua_assert_1.assert)(Array.isArray(callMethodResponse.outputArguments));
60
+ }
61
+ (0, node_opcua_assert_1.assert)(Array.isArray(callMethodResponse.inputArgumentResults));
62
+ (0, node_opcua_assert_1.assert)(callMethodResponse.inputArgumentResults.length === methodInputArguments.length);
63
+ const outputArguments = callMethodResponse.outputArguments || [];
64
+ (0, resolve_opaque_on_address_space_1.resolveOpaqueOnAddressSpace)(addressSpace, outputArguments)
65
+ .then(() => callback(null, callMethodResponse))
66
+ .catch(callback);
67
+ });
68
+ })
69
+ .catch((err) => callback(err));
70
+ }
71
+ exports.callMethodHelper = callMethodHelper;
72
72
  //# sourceMappingURL=call_helpers.js.map
@@ -1,6 +1,6 @@
1
- import { Int64 } from "node-opcua-basic-types";
2
- import { EnumValueType } from "node-opcua-types";
3
- import { EnumValueTypeOptionsLike } from "../address_space_ts";
4
- export declare function coerceEnumValues(enumValues: EnumValueTypeOptionsLike[] | {
5
- [key: string]: number | Int64;
6
- }): EnumValueType[];
1
+ import { Int64 } from "node-opcua-basic-types";
2
+ import { EnumValueType } from "node-opcua-types";
3
+ import { EnumValueTypeOptionsLike } from "../address_space_ts";
4
+ export declare function coerceEnumValues(enumValues: EnumValueTypeOptionsLike[] | {
5
+ [key: string]: number | Int64;
6
+ }): EnumValueType[];
@@ -1,34 +1,34 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.coerceEnumValues = void 0;
4
- /**
5
- * @module node-opcua-address-space
6
- */
7
- const node_opcua_assert_1 = require("node-opcua-assert");
8
- const node_opcua_data_model_1 = require("node-opcua-data-model");
9
- const node_opcua_types_1 = require("node-opcua-types");
10
- function coerceEnumValues(enumValues) {
11
- if (Array.isArray(enumValues)) {
12
- //
13
- return enumValues.map((en) => {
14
- (0, node_opcua_assert_1.assert)(Object.prototype.hasOwnProperty.call(en, "value"));
15
- (0, node_opcua_assert_1.assert)(Object.prototype.hasOwnProperty.call(en, "displayName"));
16
- return new node_opcua_types_1.EnumValueType({
17
- displayName: (0, node_opcua_data_model_1.coerceLocalizedText)(en.displayName),
18
- value: en.value
19
- });
20
- });
21
- }
22
- else {
23
- return coerceEnumValues(Object.entries(enumValues).map((entrie) => {
24
- const [key, value] = entrie;
25
- return new node_opcua_types_1.EnumValueType({
26
- description: (0, node_opcua_data_model_1.coerceLocalizedText)(key),
27
- displayName: (0, node_opcua_data_model_1.coerceLocalizedText)(key),
28
- value
29
- });
30
- }));
31
- }
32
- }
33
- exports.coerceEnumValues = coerceEnumValues;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.coerceEnumValues = void 0;
4
+ /**
5
+ * @module node-opcua-address-space
6
+ */
7
+ const node_opcua_assert_1 = require("node-opcua-assert");
8
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
9
+ const node_opcua_types_1 = require("node-opcua-types");
10
+ function coerceEnumValues(enumValues) {
11
+ if (Array.isArray(enumValues)) {
12
+ //
13
+ return enumValues.map((en) => {
14
+ (0, node_opcua_assert_1.assert)(Object.prototype.hasOwnProperty.call(en, "value"));
15
+ (0, node_opcua_assert_1.assert)(Object.prototype.hasOwnProperty.call(en, "displayName"));
16
+ return new node_opcua_types_1.EnumValueType({
17
+ displayName: (0, node_opcua_data_model_1.coerceLocalizedText)(en.displayName),
18
+ value: en.value
19
+ });
20
+ });
21
+ }
22
+ else {
23
+ return coerceEnumValues(Object.entries(enumValues).map((entrie) => {
24
+ const [key, value] = entrie;
25
+ return new node_opcua_types_1.EnumValueType({
26
+ description: (0, node_opcua_data_model_1.coerceLocalizedText)(key),
27
+ displayName: (0, node_opcua_data_model_1.coerceLocalizedText)(key),
28
+ value
29
+ });
30
+ }));
31
+ }
32
+ }
33
+ exports.coerceEnumValues = coerceEnumValues;
34
34
  //# sourceMappingURL=coerce_enum_value.js.map
@@ -1,14 +1,14 @@
1
- import { NodeIdLike } from "node-opcua-nodeid";
2
- import { BrowseDescriptionOptions, ReferenceDescription } from "node-opcua-types";
3
- import { IAddressSpace, BaseNode, UAReference } from "node-opcua-address-space-base";
4
- export declare function referenceTypeToString(addressSpace: IAddressSpace, referenceTypeId: NodeIdLike | null): string;
5
- export declare function dumpReferenceDescription(addressSpace: IAddressSpace, referenceDescription: ReferenceDescription): void;
6
- export declare function dumpReferenceDescriptions(addressSpace: IAddressSpace, referenceDescriptions: ReferenceDescription[]): void;
7
- export declare function dumpBrowseDescription(node: BaseNode, _browseDescription: BrowseDescriptionOptions): void;
8
- /**
9
- * @method dumpReferences
10
- * @param addressSpace {IAddressSpace}
11
- * @param references {Array<Reference>|null}
12
- * @static
13
- */
14
- export declare function dumpReferences(addressSpace: IAddressSpace, references: UAReference[]): void;
1
+ import { NodeIdLike } from "node-opcua-nodeid";
2
+ import { BrowseDescriptionOptions, ReferenceDescription } from "node-opcua-types";
3
+ import { IAddressSpace, BaseNode, UAReference } from "node-opcua-address-space-base";
4
+ export declare function referenceTypeToString(addressSpace: IAddressSpace, referenceTypeId: NodeIdLike | null): string;
5
+ export declare function dumpReferenceDescription(addressSpace: IAddressSpace, referenceDescription: ReferenceDescription): void;
6
+ export declare function dumpReferenceDescriptions(addressSpace: IAddressSpace, referenceDescriptions: ReferenceDescription[]): void;
7
+ export declare function dumpBrowseDescription(node: BaseNode, _browseDescription: BrowseDescriptionOptions): void;
8
+ /**
9
+ * @method dumpReferences
10
+ * @param addressSpace {IAddressSpace}
11
+ * @param references {Array<Reference>|null}
12
+ * @static
13
+ */
14
+ export declare function dumpReferences(addressSpace: IAddressSpace, references: UAReference[]): void;
@@ -1,79 +1,79 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dumpReferences = exports.dumpBrowseDescription = exports.dumpReferenceDescriptions = exports.dumpReferenceDescription = exports.referenceTypeToString = void 0;
4
- /**
5
- * @module node-opcua-address-space
6
- */
7
- // tslint:disable:no-console
8
- const chalk = require("chalk");
9
- const node_opcua_assert_1 = require("node-opcua-assert");
10
- const node_opcua_data_model_1 = require("node-opcua-data-model");
11
- const node_opcua_types_1 = require("node-opcua-types");
12
- const reference_impl_1 = require("../../src/reference_impl");
13
- function referenceTypeToString(addressSpace, referenceTypeId) {
14
- // istanbul ignore next
15
- if (!referenceTypeId) {
16
- return "<null> ";
17
- }
18
- else {
19
- const referenceType = addressSpace.findNode(referenceTypeId);
20
- return referenceTypeId.toString() + " " + referenceType.browseName.toString() + "/" + referenceType.inverseName.text;
21
- }
22
- }
23
- exports.referenceTypeToString = referenceTypeToString;
24
- function nodeIdInfo(addressSpace, nodeId) {
25
- const obj = addressSpace.findNode(nodeId);
26
- const name = obj ? obj.browseName.toString() : " <????>";
27
- return nodeId.toString() + " [ " + name + " ]";
28
- }
29
- function dumpReferenceDescription(addressSpace, referenceDescription) {
30
- (0, node_opcua_assert_1.assert)(referenceDescription.referenceTypeId); // must be known;
31
- console.log(chalk.red("referenceDescription"));
32
- console.log(" referenceTypeId : ", referenceTypeToString(addressSpace, referenceDescription.referenceTypeId));
33
- console.log(" isForward : ", referenceDescription.isForward ? "true" : "false");
34
- console.log(" nodeId : ", nodeIdInfo(addressSpace, referenceDescription.nodeId));
35
- console.log(" browseName : ", referenceDescription.browseName.toString());
36
- console.log(" nodeClass : ", referenceDescription.nodeClass.toString());
37
- console.log(" typeDefinition : ", nodeIdInfo(addressSpace, referenceDescription.typeDefinition));
38
- }
39
- exports.dumpReferenceDescription = dumpReferenceDescription;
40
- function dumpReferenceDescriptions(addressSpace, referenceDescriptions) {
41
- referenceDescriptions.forEach((r) => dumpReferenceDescription(addressSpace, r));
42
- }
43
- exports.dumpReferenceDescriptions = dumpReferenceDescriptions;
44
- function dumpBrowseDescription(node, _browseDescription) {
45
- const browseDescription = new node_opcua_types_1.BrowseDescription(_browseDescription);
46
- const addressSpace = node.addressSpace;
47
- console.log(" Browse Node :");
48
- if (browseDescription.nodeId) {
49
- console.log(" nodeId : ", chalk.cyan(browseDescription.nodeId.toString()));
50
- }
51
- console.log(" nodeId : ", chalk.cyan(node.browseName.toString()), "(", node.nodeId.toString(), ")");
52
- console.log(" referenceTypeId :", referenceTypeToString(addressSpace, browseDescription.referenceTypeId));
53
- console.log(" browseDirection :", chalk.cyan(node_opcua_data_model_1.BrowseDirection[browseDescription.browseDirection]));
54
- console.log(" includeSubType :", browseDescription.includeSubtypes ? "true" : "false");
55
- console.log(" nodeClassMask :", browseDescription.nodeClassMask);
56
- console.log(" resultMask :", browseDescription.resultMask);
57
- }
58
- exports.dumpBrowseDescription = dumpBrowseDescription;
59
- /**
60
- * @method dumpReferences
61
- * @param addressSpace {IAddressSpace}
62
- * @param references {Array<Reference>|null}
63
- * @static
64
- */
65
- function dumpReferences(addressSpace, references) {
66
- (0, node_opcua_assert_1.assert)(addressSpace);
67
- for (const reference of references) {
68
- const referenceType = (0, reference_impl_1.resolveReferenceType)(addressSpace, reference);
69
- if (!referenceType) {
70
- // unknown type ... this may happen when the address space is not fully build
71
- return;
72
- }
73
- const dir = reference.isForward ? "(=>)" : "(<-)";
74
- const objectName = nodeIdInfo(addressSpace, reference.nodeId);
75
- console.log(" referenceType : ", dir, referenceType ? referenceType.browseName.toString() : reference.referenceType.toString(), " ", objectName);
76
- }
77
- }
78
- exports.dumpReferences = dumpReferences;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dumpReferences = exports.dumpBrowseDescription = exports.dumpReferenceDescriptions = exports.dumpReferenceDescription = exports.referenceTypeToString = void 0;
4
+ /**
5
+ * @module node-opcua-address-space
6
+ */
7
+ // tslint:disable:no-console
8
+ const chalk = require("chalk");
9
+ const node_opcua_assert_1 = require("node-opcua-assert");
10
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
11
+ const node_opcua_types_1 = require("node-opcua-types");
12
+ const reference_impl_1 = require("../../src/reference_impl");
13
+ function referenceTypeToString(addressSpace, referenceTypeId) {
14
+ // istanbul ignore next
15
+ if (!referenceTypeId) {
16
+ return "<null> ";
17
+ }
18
+ else {
19
+ const referenceType = addressSpace.findNode(referenceTypeId);
20
+ return referenceTypeId.toString() + " " + referenceType.browseName.toString() + "/" + referenceType.inverseName.text;
21
+ }
22
+ }
23
+ exports.referenceTypeToString = referenceTypeToString;
24
+ function nodeIdInfo(addressSpace, nodeId) {
25
+ const obj = addressSpace.findNode(nodeId);
26
+ const name = obj ? obj.browseName.toString() : " <????>";
27
+ return nodeId.toString() + " [ " + name + " ]";
28
+ }
29
+ function dumpReferenceDescription(addressSpace, referenceDescription) {
30
+ (0, node_opcua_assert_1.assert)(referenceDescription.referenceTypeId); // must be known;
31
+ console.log(chalk.red("referenceDescription"));
32
+ console.log(" referenceTypeId : ", referenceTypeToString(addressSpace, referenceDescription.referenceTypeId));
33
+ console.log(" isForward : ", referenceDescription.isForward ? "true" : "false");
34
+ console.log(" nodeId : ", nodeIdInfo(addressSpace, referenceDescription.nodeId));
35
+ console.log(" browseName : ", referenceDescription.browseName.toString());
36
+ console.log(" nodeClass : ", referenceDescription.nodeClass.toString());
37
+ console.log(" typeDefinition : ", nodeIdInfo(addressSpace, referenceDescription.typeDefinition));
38
+ }
39
+ exports.dumpReferenceDescription = dumpReferenceDescription;
40
+ function dumpReferenceDescriptions(addressSpace, referenceDescriptions) {
41
+ referenceDescriptions.forEach((r) => dumpReferenceDescription(addressSpace, r));
42
+ }
43
+ exports.dumpReferenceDescriptions = dumpReferenceDescriptions;
44
+ function dumpBrowseDescription(node, _browseDescription) {
45
+ const browseDescription = new node_opcua_types_1.BrowseDescription(_browseDescription);
46
+ const addressSpace = node.addressSpace;
47
+ console.log(" Browse Node :");
48
+ if (browseDescription.nodeId) {
49
+ console.log(" nodeId : ", chalk.cyan(browseDescription.nodeId.toString()));
50
+ }
51
+ console.log(" nodeId : ", chalk.cyan(node.browseName.toString()), "(", node.nodeId.toString(), ")");
52
+ console.log(" referenceTypeId :", referenceTypeToString(addressSpace, browseDescription.referenceTypeId));
53
+ console.log(" browseDirection :", chalk.cyan(node_opcua_data_model_1.BrowseDirection[browseDescription.browseDirection]));
54
+ console.log(" includeSubType :", browseDescription.includeSubtypes ? "true" : "false");
55
+ console.log(" nodeClassMask :", browseDescription.nodeClassMask);
56
+ console.log(" resultMask :", browseDescription.resultMask);
57
+ }
58
+ exports.dumpBrowseDescription = dumpBrowseDescription;
59
+ /**
60
+ * @method dumpReferences
61
+ * @param addressSpace {IAddressSpace}
62
+ * @param references {Array<Reference>|null}
63
+ * @static
64
+ */
65
+ function dumpReferences(addressSpace, references) {
66
+ (0, node_opcua_assert_1.assert)(addressSpace);
67
+ for (const reference of references) {
68
+ const referenceType = (0, reference_impl_1.resolveReferenceType)(addressSpace, reference);
69
+ if (!referenceType) {
70
+ // unknown type ... this may happen when the address space is not fully build
71
+ return;
72
+ }
73
+ const dir = reference.isForward ? "(=>)" : "(<-)";
74
+ const objectName = nodeIdInfo(addressSpace, reference.nodeId);
75
+ console.log(" referenceType : ", dir, referenceType ? referenceType.browseName.toString() : reference.referenceType.toString(), " ", objectName);
76
+ }
77
+ }
78
+ exports.dumpReferences = dumpReferences;
79
79
  //# sourceMappingURL=dump_tools.js.map
@@ -1,9 +1,9 @@
1
- import { BaseNode } from "node-opcua-address-space-base";
2
- /**
3
- * this method install the access right restriction on the given node and its children
4
- * values will only be available to user with role Administrator or supervisor and
5
- * with a signed and encrypted channel.
6
- *
7
- * @param node the node which permissions are to be adjusted
8
- */
9
- export declare function ensureObjectIsSecure(node: BaseNode): void;
1
+ import { BaseNode } from "node-opcua-address-space-base";
2
+ /**
3
+ * this method install the access right restriction on the given node and its children
4
+ * values will only be available to user with role Administrator or supervisor and
5
+ * with a signed and encrypted channel.
6
+ *
7
+ * @param node the node which permissions are to be adjusted
8
+ */
9
+ export declare function ensureObjectIsSecure(node: BaseNode): void;
@@ -1,77 +1,77 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ensureObjectIsSecure = void 0;
4
- const node_opcua_data_model_1 = require("node-opcua-data-model");
5
- const node_opcua_types_1 = require("node-opcua-types");
6
- const session_context_1 = require("../session_context");
7
- function isChannelSecure(channel) {
8
- if (channel.securityMode === node_opcua_types_1.MessageSecurityMode.SignAndEncrypt) {
9
- return true;
10
- }
11
- return false;
12
- }
13
- function newIsUserReadable(context) {
14
- if (context) {
15
- if (!context.session) {
16
- // console.log(" context has no session", context);
17
- return false;
18
- }
19
- if (!context.session.channel) {
20
- // console.log(" context has no channel", context);
21
- return false;
22
- }
23
- if (!isChannelSecure(context.session.channel)) {
24
- return false;
25
- }
26
- return true;
27
- }
28
- return false;
29
- }
30
- /**
31
- * make sure that the given ia node can only be read
32
- * by Administrator user on a encrypted channel
33
- * @param node
34
-
35
- */
36
- const restrictedPermissions = [
37
- { roleId: session_context_1.WellKnownRoles.SecurityAdmin, permissions: node_opcua_data_model_1.allPermissions },
38
- { roleId: session_context_1.WellKnownRoles.ConfigureAdmin, permissions: node_opcua_data_model_1.allPermissions },
39
- { roleId: session_context_1.WellKnownRoles.Supervisor, permissions: node_opcua_data_model_1.allPermissions },
40
- { roleId: session_context_1.WellKnownRoles.Operator, permissions: (0, node_opcua_data_model_1.makePermissionFlag)("Browse") },
41
- { roleId: session_context_1.WellKnownRoles.Engineer, permissions: (0, node_opcua_data_model_1.makePermissionFlag)("Browse") },
42
- { roleId: session_context_1.WellKnownRoles.Observer, permissions: (0, node_opcua_data_model_1.makePermissionFlag)("Browse") }
43
- /*
44
- { roleId: WellKnownRoles.Anonymous, permissions: makePermissionFlag("Browse") },
45
- { roleId: WellKnownRoles.AuthenticatedUser, permissions: makePermissionFlag("Browse") },
46
- */
47
- ];
48
- const restrictedAccessFlag = (0, node_opcua_data_model_1.makeAccessRestrictionsFlag)("SigningRequired | EncryptionRequired");
49
- /**
50
- * this method install the access right restriction on the given node and its children
51
- * values will only be available to user with role Administrator or supervisor and
52
- * with a signed and encrypted channel.
53
- *
54
- * @param node the node which permissions are to be adjusted
55
- */
56
- function ensureObjectIsSecure(node) {
57
- node.setAccessRestrictions(restrictedAccessFlag);
58
- if (node.nodeClass === node_opcua_data_model_1.NodeClass.Variable) {
59
- // replaceMethod(node, "isUserReadable", newIsUserReadable);
60
- const variable = node;
61
- variable.setRolePermissions(restrictedPermissions);
62
- }
63
- if (node.nodeClass === node_opcua_data_model_1.NodeClass.Method) {
64
- const method = node;
65
- method.setRolePermissions(restrictedPermissions);
66
- }
67
- if (node.nodeClass === node_opcua_data_model_1.NodeClass.Object) {
68
- const object = node;
69
- object.setRolePermissions(restrictedPermissions);
70
- }
71
- const children = node.findReferencesExAsObject("Aggregates", node_opcua_data_model_1.BrowseDirection.Forward);
72
- for (const child of children) {
73
- ensureObjectIsSecure(child);
74
- }
75
- }
76
- exports.ensureObjectIsSecure = ensureObjectIsSecure;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ensureObjectIsSecure = void 0;
4
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
5
+ const node_opcua_types_1 = require("node-opcua-types");
6
+ const session_context_1 = require("../session_context");
7
+ function isChannelSecure(channel) {
8
+ if (channel.securityMode === node_opcua_types_1.MessageSecurityMode.SignAndEncrypt) {
9
+ return true;
10
+ }
11
+ return false;
12
+ }
13
+ function newIsUserReadable(context) {
14
+ if (context) {
15
+ if (!context.session) {
16
+ // console.log(" context has no session", context);
17
+ return false;
18
+ }
19
+ if (!context.session.channel) {
20
+ // console.log(" context has no channel", context);
21
+ return false;
22
+ }
23
+ if (!isChannelSecure(context.session.channel)) {
24
+ return false;
25
+ }
26
+ return true;
27
+ }
28
+ return false;
29
+ }
30
+ /**
31
+ * make sure that the given ia node can only be read
32
+ * by Administrator user on a encrypted channel
33
+ * @param node
34
+
35
+ */
36
+ const restrictedPermissions = [
37
+ { roleId: session_context_1.WellKnownRoles.SecurityAdmin, permissions: node_opcua_data_model_1.allPermissions },
38
+ { roleId: session_context_1.WellKnownRoles.ConfigureAdmin, permissions: node_opcua_data_model_1.allPermissions },
39
+ { roleId: session_context_1.WellKnownRoles.Supervisor, permissions: node_opcua_data_model_1.allPermissions },
40
+ { roleId: session_context_1.WellKnownRoles.Operator, permissions: (0, node_opcua_data_model_1.makePermissionFlag)("Browse") },
41
+ { roleId: session_context_1.WellKnownRoles.Engineer, permissions: (0, node_opcua_data_model_1.makePermissionFlag)("Browse") },
42
+ { roleId: session_context_1.WellKnownRoles.Observer, permissions: (0, node_opcua_data_model_1.makePermissionFlag)("Browse") }
43
+ /*
44
+ { roleId: WellKnownRoles.Anonymous, permissions: makePermissionFlag("Browse") },
45
+ { roleId: WellKnownRoles.AuthenticatedUser, permissions: makePermissionFlag("Browse") },
46
+ */
47
+ ];
48
+ const restrictedAccessFlag = (0, node_opcua_data_model_1.makeAccessRestrictionsFlag)("SigningRequired | EncryptionRequired");
49
+ /**
50
+ * this method install the access right restriction on the given node and its children
51
+ * values will only be available to user with role Administrator or supervisor and
52
+ * with a signed and encrypted channel.
53
+ *
54
+ * @param node the node which permissions are to be adjusted
55
+ */
56
+ function ensureObjectIsSecure(node) {
57
+ node.setAccessRestrictions(restrictedAccessFlag);
58
+ if (node.nodeClass === node_opcua_data_model_1.NodeClass.Variable) {
59
+ // replaceMethod(node, "isUserReadable", newIsUserReadable);
60
+ const variable = node;
61
+ variable.setRolePermissions(restrictedPermissions);
62
+ }
63
+ if (node.nodeClass === node_opcua_data_model_1.NodeClass.Method) {
64
+ const method = node;
65
+ method.setRolePermissions(restrictedPermissions);
66
+ }
67
+ if (node.nodeClass === node_opcua_data_model_1.NodeClass.Object) {
68
+ const object = node;
69
+ object.setRolePermissions(restrictedPermissions);
70
+ }
71
+ const children = node.findReferencesExAsObject("Aggregates", node_opcua_data_model_1.BrowseDirection.Forward);
72
+ for (const child of children) {
73
+ ensureObjectIsSecure(child);
74
+ }
75
+ }
76
+ exports.ensureObjectIsSecure = ensureObjectIsSecure;
77
77
  //# sourceMappingURL=ensure_secure_access.js.map
@@ -1,21 +1,21 @@
1
- /**
2
- * transform optional into a map
3
- *
4
- * @example
5
- * ```javascript
6
- * const optionals = [ "A", "B", "C.D" ];
7
- *
8
- * const map = makeOptionalsMap(optionals);
9
- * const map = {
10
- * A: {}
11
- * B: {}
12
- * C: { D: {} }
13
- * };
14
- * ```
15
- *
16
- * @internal
17
- */
18
- export interface OptionalMap {
19
- [key: string]: OptionalMap;
20
- }
21
- export declare function makeOptionalsMap(optionals?: string[] | null): OptionalMap;
1
+ /**
2
+ * transform optional into a map
3
+ *
4
+ * @example
5
+ * ```javascript
6
+ * const optionals = [ "A", "B", "C.D" ];
7
+ *
8
+ * const map = makeOptionalsMap(optionals);
9
+ * const map = {
10
+ * A: {}
11
+ * B: {}
12
+ * C: { D: {} }
13
+ * };
14
+ * ```
15
+ *
16
+ * @internal
17
+ */
18
+ export interface OptionalMap {
19
+ [key: string]: OptionalMap;
20
+ }
21
+ export declare function makeOptionalsMap(optionals?: string[] | null): OptionalMap;