node-opcua-address-space 2.70.3 → 2.71.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 (369) 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 +32 -32
  4. package/dist/source/continuation_points/continuation_point_manager.js +195 -195
  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 +34 -34
  8. package/dist/source/helpers/argument_list.js +285 -285
  9. package/dist/source/helpers/call_helpers.d.ts +6 -6
  10. package/dist/source/helpers/call_helpers.js +70 -70
  11. package/dist/source/helpers/check_event_clause.d.ts +17 -17
  12. package/dist/source/helpers/check_event_clause.js +52 -52
  13. package/dist/source/helpers/coerce_enum_value.d.ts +6 -6
  14. package/dist/source/helpers/coerce_enum_value.js +33 -33
  15. package/dist/source/helpers/dump_tools.d.ts +14 -14
  16. package/dist/source/helpers/dump_tools.js +78 -78
  17. package/dist/source/helpers/ensure_secure_access.d.ts +9 -9
  18. package/dist/source/helpers/ensure_secure_access.js +76 -76
  19. package/dist/source/helpers/make_optionals_map.d.ts +21 -21
  20. package/dist/source/helpers/make_optionals_map.js +29 -29
  21. package/dist/source/helpers/multiform_func.d.ts +11 -11
  22. package/dist/source/helpers/multiform_func.js +73 -73
  23. package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +3 -3
  24. package/dist/source/helpers/resolve_opaque_on_address_space.js +36 -36
  25. package/dist/source/index.d.ts +40 -40
  26. package/dist/source/index.js +66 -66
  27. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +12 -12
  28. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +2 -2
  29. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.d.ts +23 -0
  30. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js +3 -0
  31. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js.map +1 -0
  32. package/dist/source/interfaces/data_access/ua_discrete_item.d.ts +6 -0
  33. package/dist/source/interfaces/data_access/ua_discrete_item.js +3 -0
  34. package/dist/source/interfaces/data_access/ua_discrete_item.js.map +1 -0
  35. package/dist/source/interfaces/data_access/ua_multistate_discrete.d.ts +25 -0
  36. package/dist/source/interfaces/data_access/ua_multistate_discrete.js +3 -0
  37. package/dist/source/interfaces/data_access/ua_multistate_discrete.js.map +1 -0
  38. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +21 -21
  39. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js +2 -2
  40. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.d.ts +27 -0
  41. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js +3 -0
  42. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js.map +1 -0
  43. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +24 -24
  44. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js +2 -2
  45. package/dist/source/interfaces/data_access/ua_two_state_discrete.d.ts +17 -0
  46. package/dist/source/interfaces/data_access/ua_two_state_discrete.js +3 -0
  47. package/dist/source/interfaces/data_access/ua_two_state_discrete.js.map +1 -0
  48. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +12 -12
  49. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js +2 -2
  50. package/dist/source/interfaces/data_access/ua_y_array_item.d.ts +19 -0
  51. package/dist/source/interfaces/data_access/ua_y_array_item.js +3 -0
  52. package/dist/source/interfaces/data_access/ua_y_array_item.js.map +1 -0
  53. package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +8 -8
  54. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js +2 -2
  55. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.d.ts +11 -0
  56. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js +3 -0
  57. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js.map +1 -0
  58. package/dist/source/interfaces/state_machine/finite_state_machine.d.ts +70 -0
  59. package/dist/source/interfaces/state_machine/finite_state_machine.js +3 -0
  60. package/dist/source/interfaces/state_machine/finite_state_machine.js.map +1 -0
  61. package/dist/source/interfaces/state_machine/program_finite_state_machine.d.ts +74 -0
  62. package/dist/source/interfaces/state_machine/program_finite_state_machine.js +3 -0
  63. package/dist/source/interfaces/state_machine/program_finite_state_machine.js.map +1 -0
  64. package/dist/source/interfaces/state_machine/state_machine.d.ts +342 -0
  65. package/dist/source/interfaces/state_machine/state_machine.js +3 -0
  66. package/dist/source/interfaces/state_machine/state_machine.js.map +1 -0
  67. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -12
  68. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +2 -2
  69. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -49
  70. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js +2 -2
  71. package/dist/source/interfaces/state_machine/ua_finite_state_variable.d.ts +18 -0
  72. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js +3 -0
  73. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js.map +1 -0
  74. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -11
  75. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js +2 -2
  76. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +222 -222
  77. package/dist/source/interfaces/state_machine/ua_state_machine_type.js +2 -2
  78. package/dist/source/interfaces/state_machine/ua_state_variable.d.ts +29 -0
  79. package/dist/source/interfaces/state_machine/ua_state_variable.js +3 -0
  80. package/dist/source/interfaces/state_machine/ua_state_variable.js.map +1 -0
  81. package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +6 -6
  82. package/dist/source/interfaces/state_machine/ua_transition_ex.js +2 -2
  83. package/dist/source/interfaces/state_machine/ua_two_state_variable.d.ts +26 -0
  84. package/dist/source/interfaces/state_machine/ua_two_state_variable.js +3 -0
  85. package/dist/source/interfaces/state_machine/ua_two_state_variable.js.map +1 -0
  86. package/dist/source/interfaces/subscription_diagnostics_variable.d.ts +41 -0
  87. package/dist/source/interfaces/subscription_diagnostics_variable.js +3 -0
  88. package/dist/source/interfaces/subscription_diagnostics_variable.js.map +1 -0
  89. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +8 -8
  90. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +2 -2
  91. package/dist/source/loader/decode_xml_extension_object.d.ts +6 -6
  92. package/dist/source/loader/decode_xml_extension_object.js +71 -71
  93. package/dist/source/loader/ensure_datatype_extracted.d.ts +5 -5
  94. package/dist/source/loader/ensure_datatype_extracted.js +45 -45
  95. package/dist/source/loader/generateAddressSpaceRaw.d.ts +10 -10
  96. package/dist/source/loader/generateAddressSpaceRaw.js +45 -45
  97. package/dist/source/loader/load_nodeset2.d.ts +16 -16
  98. package/dist/source/loader/load_nodeset2.js +1464 -1464
  99. package/dist/source/loader/make_xml_extension_object_parser.d.ts +28 -28
  100. package/dist/source/loader/make_xml_extension_object_parser.js +315 -315
  101. package/dist/source/loader/namespace_post_step.d.ts +6 -6
  102. package/dist/source/loader/namespace_post_step.js +47 -47
  103. package/dist/source/loader/register_node_promoter.d.ts +3 -3
  104. package/dist/source/loader/register_node_promoter.js +9 -9
  105. package/dist/source/namespace.d.ts +6 -6
  106. package/dist/source/namespace.js +2 -2
  107. package/dist/source/namespace_alarm_and_condition.d.ts +24 -24
  108. package/dist/source/namespace_alarm_and_condition.js +2 -2
  109. package/dist/source/namespace_data_access.d.ts +42 -42
  110. package/dist/source/namespace_data_access.js +2 -2
  111. package/dist/source/namespace_machine_state.d.ts +7 -7
  112. package/dist/source/namespace_machine_state.js +2 -2
  113. package/dist/source/pseudo_session.d.ts +55 -55
  114. package/dist/source/pseudo_session.js +203 -203
  115. package/dist/source/session_context.d.ts +111 -111
  116. package/dist/source/session_context.js +265 -265
  117. package/dist/source/set_namespace_meta_data.d.ts +2 -2
  118. package/dist/source/set_namespace_meta_data.js +59 -59
  119. package/dist/source/ua_root_folder.d.ts +9 -9
  120. package/dist/source/ua_root_folder.js +2 -2
  121. package/dist/source/ua_two_state_variable_ex.d.ts +23 -23
  122. package/dist/source/ua_two_state_variable_ex.js +2 -2
  123. package/dist/source/xml_writer.d.ts +9 -9
  124. package/dist/source/xml_writer.js +2 -2
  125. package/dist/src/address_space.d.ts +392 -392
  126. package/dist/src/address_space.js +1387 -1387
  127. package/dist/src/address_space_change_event_tools.d.ts +6 -6
  128. package/dist/src/address_space_change_event_tools.js +149 -149
  129. package/dist/src/address_space_private.d.ts +43 -43
  130. package/dist/src/address_space_private.js +2 -2
  131. package/dist/src/alarms_and_conditions/base_event_type.d.ts +26 -0
  132. package/dist/src/alarms_and_conditions/base_event_type.js +41 -0
  133. package/dist/src/alarms_and_conditions/base_event_type.js.map +1 -0
  134. package/dist/src/alarms_and_conditions/check_where_clause.d.ts +4 -4
  135. package/dist/src/alarms_and_conditions/check_where_clause.js +109 -109
  136. package/dist/src/alarms_and_conditions/condition.d.ts +5 -5
  137. package/dist/src/alarms_and_conditions/condition.js +80 -80
  138. package/dist/src/alarms_and_conditions/condition_info.d.ts +27 -27
  139. package/dist/src/alarms_and_conditions/condition_info.js +54 -54
  140. package/dist/src/alarms_and_conditions/condition_snapshot.d.ts +233 -233
  141. package/dist/src/alarms_and_conditions/condition_snapshot.js +666 -666
  142. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +21 -21
  143. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +46 -46
  144. package/dist/src/alarms_and_conditions/extract_event_fields.d.ts +10 -10
  145. package/dist/src/alarms_and_conditions/extract_event_fields.js +89 -89
  146. package/dist/src/alarms_and_conditions/index.d.ts +18 -18
  147. package/dist/src/alarms_and_conditions/index.js +34 -34
  148. package/dist/src/alarms_and_conditions/shelving_state_machine.d.ts +22 -0
  149. package/dist/src/alarms_and_conditions/shelving_state_machine.js +241 -0
  150. package/dist/src/alarms_and_conditions/shelving_state_machine.js.map +1 -0
  151. package/dist/src/alarms_and_conditions/trip_alarm.d.ts +16 -0
  152. package/dist/src/alarms_and_conditions/trip_alarm.js +21 -0
  153. package/dist/src/alarms_and_conditions/trip_alarm.js.map +1 -0
  154. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.d.ts +54 -0
  155. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js +255 -0
  156. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js.map +1 -0
  157. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +62 -62
  158. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -244
  159. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.d.ts +138 -0
  160. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js +460 -0
  161. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js.map +1 -0
  162. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +118 -118
  163. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +416 -416
  164. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +29 -29
  165. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +38 -38
  166. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.d.ts +35 -0
  167. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js +32 -0
  168. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js.map +1 -0
  169. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +21 -21
  170. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +25 -25
  171. package/dist/src/alarms_and_conditions/ua_condition_base.d.ts +191 -0
  172. package/dist/src/alarms_and_conditions/ua_condition_base.js +1029 -0
  173. package/dist/src/alarms_and_conditions/ua_condition_base.js.map +1 -0
  174. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +182 -182
  175. package/dist/src/alarms_and_conditions/ua_condition_impl.js +1022 -1022
  176. package/dist/src/alarms_and_conditions/ua_discrete_alarm.d.ts +11 -0
  177. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js +58 -0
  178. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js.map +1 -0
  179. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +17 -17
  180. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +57 -57
  181. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.d.ts +24 -0
  182. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js +59 -0
  183. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js.map +1 -0
  184. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +27 -27
  185. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +56 -56
  186. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.d.ts +14 -0
  187. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js +17 -0
  188. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js.map +1 -0
  189. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +9 -9
  190. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +11 -11
  191. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.d.ts +22 -0
  192. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js +87 -0
  193. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js.map +1 -0
  194. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +38 -38
  195. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -86
  196. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.d.ts +6 -0
  197. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js +11 -0
  198. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js.map +1 -0
  199. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +10 -10
  200. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +7 -7
  201. package/dist/src/alarms_and_conditions/ua_limit_alarm.d.ts +76 -0
  202. package/dist/src/alarms_and_conditions/ua_limit_alarm.js +237 -0
  203. package/dist/src/alarms_and_conditions/ua_limit_alarm.js.map +1 -0
  204. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +97 -97
  205. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +250 -250
  206. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.d.ts +27 -0
  207. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js +62 -0
  208. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js.map +1 -0
  209. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +28 -28
  210. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +50 -50
  211. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.d.ts +49 -0
  212. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js +176 -0
  213. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js.map +1 -0
  214. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +25 -25
  215. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +162 -162
  216. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.d.ts +47 -0
  217. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js +151 -0
  218. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js.map +1 -0
  219. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +39 -39
  220. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +135 -135
  221. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.d.ts +16 -0
  222. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js +18 -0
  223. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js.map +1 -0
  224. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +16 -16
  225. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +17 -17
  226. package/dist/src/apply_condition_refresh.d.ts +6 -6
  227. package/dist/src/apply_condition_refresh.js +27 -27
  228. package/dist/src/base_node.d.ts +270 -0
  229. package/dist/src/base_node.js +1299 -0
  230. package/dist/src/base_node.js.map +1 -0
  231. package/dist/src/base_node_impl.d.ts +281 -281
  232. package/dist/src/base_node_impl.js +1395 -1395
  233. package/dist/src/base_node_private.d.ts +61 -61
  234. package/dist/src/base_node_private.js +705 -705
  235. package/dist/src/data_access/add_dataItem_stuff.d.ts +11 -11
  236. package/dist/src/data_access/add_dataItem_stuff.js +61 -61
  237. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.d.ts +1 -1
  238. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js +34 -34
  239. package/dist/src/data_access/ua_analog_item.d.ts +13 -0
  240. package/dist/src/data_access/ua_analog_item.js +37 -0
  241. package/dist/src/data_access/ua_analog_item.js.map +1 -0
  242. package/dist/src/data_access/ua_data_item.d.ts +16 -0
  243. package/dist/src/data_access/ua_data_item.js +66 -0
  244. package/dist/src/data_access/ua_data_item.js.map +1 -0
  245. package/dist/src/data_access/ua_multistate_discrete.d.ts +24 -0
  246. package/dist/src/data_access/ua_multistate_discrete.js +132 -0
  247. package/dist/src/data_access/ua_multistate_discrete.js.map +1 -0
  248. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +32 -32
  249. package/dist/src/data_access/ua_multistate_discrete_impl.js +130 -130
  250. package/dist/src/data_access/ua_multistate_value_discrete.d.ts +51 -51
  251. package/dist/src/data_access/ua_multistate_value_discrete.js +249 -249
  252. package/dist/src/data_access/ua_two_state_discrete.d.ts +25 -25
  253. package/dist/src/data_access/ua_two_state_discrete.js +153 -153
  254. package/dist/src/event_data.d.ts +29 -29
  255. package/dist/src/event_data.js +95 -95
  256. package/dist/src/extension_object_array_node.d.ts +61 -61
  257. package/dist/src/extension_object_array_node.js +276 -276
  258. package/dist/src/historical_access/address_space_historical_data_node.d.ts +26 -26
  259. package/dist/src/historical_access/address_space_historical_data_node.js +630 -630
  260. package/dist/src/index_current.d.ts +45 -45
  261. package/dist/src/index_current.js +77 -77
  262. package/dist/src/namespace.d.ts +472 -0
  263. package/dist/src/namespace.js +1759 -0
  264. package/dist/src/namespace.js.map +1 -0
  265. package/dist/src/namespace_impl.d.ts +457 -457
  266. package/dist/src/namespace_impl.js +1733 -1733
  267. package/dist/src/namespace_private.d.ts +21 -21
  268. package/dist/src/namespace_private.js +32 -32
  269. package/dist/src/nodeid_manager.d.ts +36 -36
  270. package/dist/src/nodeid_manager.js +197 -197
  271. package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +2 -2
  272. package/dist/src/nodeset_tools/adjust_namespace_array.js +13 -13
  273. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +2 -2
  274. package/dist/src/nodeset_tools/construct_namespace_dependency.js +83 -83
  275. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +2 -2
  276. package/dist/src/nodeset_tools/nodeset_to_xml.js +1143 -1143
  277. package/dist/src/nodeset_tools/typedictionary_to_xml.d.ts +2 -2
  278. package/dist/src/nodeset_tools/typedictionary_to_xml.js +154 -154
  279. package/dist/src/reference.d.ts +43 -0
  280. package/dist/src/reference.js +138 -0
  281. package/dist/src/reference.js.map +1 -0
  282. package/dist/src/reference_impl.d.ts +43 -43
  283. package/dist/src/reference_impl.js +139 -139
  284. package/dist/src/role_permissions.d.ts +2 -2
  285. package/dist/src/role_permissions.js +10 -10
  286. package/dist/src/session_context.d.ts +4 -0
  287. package/dist/src/session_context.js +9 -0
  288. package/dist/src/session_context.js.map +1 -0
  289. package/dist/src/state_machine/finite_state_machine.d.ts +67 -67
  290. package/dist/src/state_machine/finite_state_machine.js +353 -353
  291. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +34 -34
  292. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +250 -250
  293. package/dist/src/state_machine/ua_two_state_variable.d.ts +61 -61
  294. package/dist/src/state_machine/ua_two_state_variable.js +331 -331
  295. package/dist/src/tool_isSupertypeOf.d.ts +17 -17
  296. package/dist/src/tool_isSupertypeOf.js +108 -108
  297. package/dist/src/ua_condition_type.d.ts +8 -8
  298. package/dist/src/ua_condition_type.js +2 -2
  299. package/dist/src/ua_data_type.d.ts +81 -0
  300. package/dist/src/ua_data_type.js +259 -0
  301. package/dist/src/ua_data_type.js.map +1 -0
  302. package/dist/src/ua_data_type_impl.d.ts +93 -93
  303. package/dist/src/ua_data_type_impl.js +368 -368
  304. package/dist/src/ua_method.d.ts +33 -0
  305. package/dist/src/ua_method.js +194 -0
  306. package/dist/src/ua_method.js.map +1 -0
  307. package/dist/src/ua_method_impl.d.ts +41 -41
  308. package/dist/src/ua_method_impl.js +208 -208
  309. package/dist/src/ua_object.d.ts +27 -0
  310. package/dist/src/ua_object.js +153 -0
  311. package/dist/src/ua_object.js.map +1 -0
  312. package/dist/src/ua_object_impl.d.ts +33 -33
  313. package/dist/src/ua_object_impl.js +156 -156
  314. package/dist/src/ua_object_type.d.ts +49 -0
  315. package/dist/src/ua_object_type.js +123 -0
  316. package/dist/src/ua_object_type.js.map +1 -0
  317. package/dist/src/ua_object_type_impl.d.ts +48 -48
  318. package/dist/src/ua_object_type_impl.js +124 -124
  319. package/dist/src/ua_reference_type.d.ts +31 -0
  320. package/dist/src/ua_reference_type.js +108 -0
  321. package/dist/src/ua_reference_type.js.map +1 -0
  322. package/dist/src/ua_reference_type_impl.d.ts +43 -43
  323. package/dist/src/ua_reference_type_impl.js +139 -139
  324. package/dist/src/ua_variable.d.ts +346 -0
  325. package/dist/src/ua_variable.js +1651 -0
  326. package/dist/src/ua_variable.js.map +1 -0
  327. package/dist/src/ua_variable_impl.d.ts +351 -351
  328. package/dist/src/ua_variable_impl.js +1604 -1604
  329. package/dist/src/ua_variable_impl_ext_obj.d.ts +17 -17
  330. package/dist/src/ua_variable_impl_ext_obj.js +437 -437
  331. package/dist/src/ua_variable_type.d.ts +57 -0
  332. package/dist/src/ua_variable_type.js +530 -0
  333. package/dist/src/ua_variable_type.js.map +1 -0
  334. package/dist/src/ua_variable_type_impl.d.ts +62 -62
  335. package/dist/src/ua_variable_type_impl.js +570 -564
  336. package/dist/src/ua_variable_type_impl.js.map +1 -1
  337. package/dist/src/ua_view.d.ts +16 -0
  338. package/dist/src/ua_view.js +41 -0
  339. package/dist/src/ua_view.js.map +1 -0
  340. package/dist/src/ua_view_impl.d.ts +15 -15
  341. package/dist/src/ua_view_impl.js +36 -36
  342. package/distHelpers/add_event_generator_object.d.ts +3 -3
  343. package/distHelpers/add_event_generator_object.js +65 -65
  344. package/distHelpers/alarms_and_conditions_demo.d.ts +10 -10
  345. package/distHelpers/alarms_and_conditions_demo.js +114 -114
  346. package/distHelpers/assertHasMatchingReference.d.ts +19 -19
  347. package/distHelpers/assertHasMatchingReference.js +40 -40
  348. package/distHelpers/boiler_system.d.ts +113 -113
  349. package/distHelpers/boiler_system.js +395 -395
  350. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +5 -5
  351. package/distHelpers/create_minimalist_address_space_nodeset.js +171 -171
  352. package/distHelpers/date_utils.d.ts +3 -3
  353. package/distHelpers/date_utils.js +9 -9
  354. package/distHelpers/dump_statemachine.js +127 -127
  355. package/distHelpers/get_address_space_fixture.d.ts +1 -1
  356. package/distHelpers/get_address_space_fixture.js +30 -30
  357. package/distHelpers/get_mini_address_space.d.ts +7 -7
  358. package/distHelpers/get_mini_address_space.js +36 -36
  359. package/distHelpers/index.d.ts +12 -12
  360. package/distHelpers/index.js +28 -28
  361. package/distHelpers/mock_session.d.ts +14 -14
  362. package/distHelpers/mock_session.js +25 -25
  363. package/distNodeJS/generate_address_space.d.ts +4 -4
  364. package/distNodeJS/generate_address_space.js +41 -41
  365. package/distNodeJS/index.d.ts +1 -1
  366. package/distNodeJS/index.js +17 -17
  367. package/package.json +38 -38
  368. package/src/ua_variable_type_impl.ts +11 -4
  369. package/test_helpers/test_fixtures/eurange_issue.xml +73 -0
@@ -1,204 +1,204 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PseudoSession = void 0;
4
- /**
5
- * @module node-opcua-address-space
6
- */
7
- const util_1 = require("util");
8
- const async = require("async");
9
- const node_opcua_assert_1 = require("node-opcua-assert");
10
- const node_opcua_data_value_1 = require("node-opcua-data-value");
11
- const node_opcua_debug_1 = require("node-opcua-debug");
12
- const node_opcua_nodeid_1 = require("node-opcua-nodeid");
13
- const node_opcua_pseudo_session_1 = require("node-opcua-pseudo-session");
14
- const node_opcua_service_browse_1 = require("node-opcua-service-browse");
15
- const node_opcua_service_call_1 = require("node-opcua-service-call");
16
- const node_opcua_status_code_1 = require("node-opcua-status-code");
17
- const node_opcua_data_model_1 = require("node-opcua-data-model");
18
- const node_opcua_basic_types_1 = require("node-opcua-basic-types");
19
- const continuation_point_manager_1 = require("./continuation_points/continuation_point_manager");
20
- const call_helpers_1 = require("./helpers/call_helpers");
21
- const session_context_1 = require("./session_context");
22
- const errorLog = (0, node_opcua_debug_1.make_errorLog)("PseudoSession");
23
- /**
24
- * Pseudo session is an helper object that exposes the same async methods
25
- * than the ClientSession. It can be used on a server address space.
26
- *
27
- * Code reused !
28
- * The primary benefit of this object is that its makes advanced OPCUA
29
- * operations that uses browse, translate, read, write etc similar
30
- * whether we work inside a server or through a client session.
31
- *
32
- */
33
- class PseudoSession {
34
- constructor(addressSpace, context) {
35
- this.requestedMaxReferencesPerNode = 0;
36
- this._sessionId = new node_opcua_nodeid_1.NodeId(node_opcua_nodeid_1.NodeIdType.GUID, (0, node_opcua_basic_types_1.randomGuid)());
37
- this.addressSpace = addressSpace;
38
- this.context = context || session_context_1.SessionContext.defaultContext;
39
- this.continuationPointManager = new continuation_point_manager_1.ContinuationPointManager();
40
- }
41
- getSessionId() {
42
- return this._sessionId;
43
- }
44
- browse(nodesToBrowse, callback) {
45
- setImmediate(() => {
46
- const isArray = Array.isArray(nodesToBrowse);
47
- if (!isArray) {
48
- nodesToBrowse = [nodesToBrowse];
49
- }
50
- let results = [];
51
- for (const browseDescription of nodesToBrowse) {
52
- browseDescription.referenceTypeId = (0, node_opcua_nodeid_1.resolveNodeId)(browseDescription.referenceTypeId);
53
- const _browseDescription = browseDescription instanceof node_opcua_service_browse_1.BrowseDescription ? browseDescription : new node_opcua_service_browse_1.BrowseDescription(browseDescription);
54
- const nodeId = (0, node_opcua_nodeid_1.resolveNodeId)(_browseDescription.nodeId);
55
- const r = this.addressSpace.browseSingleNode(nodeId, _browseDescription, this.context);
56
- results.push(r);
57
- }
58
- // handle continuation points
59
- results = results.map((result, index) => {
60
- (0, node_opcua_assert_1.assert)(!result.continuationPoint);
61
- const r = this.continuationPointManager.registerReferences(this.requestedMaxReferencesPerNode, result.references || [], { continuationPoint: null, index });
62
- let { statusCode } = r;
63
- const { continuationPoint, values } = r;
64
- (0, node_opcua_assert_1.assert)(statusCode === node_opcua_status_code_1.StatusCodes.Good || statusCode === node_opcua_status_code_1.StatusCodes.GoodNoData);
65
- statusCode = result.statusCode;
66
- return new node_opcua_service_browse_1.BrowseResult({
67
- statusCode,
68
- continuationPoint,
69
- references: values
70
- });
71
- });
72
- callback(null, isArray ? results : results[0]);
73
- });
74
- }
75
- read(nodesToRead, callback) {
76
- const isArray = Array.isArray(nodesToRead);
77
- if (!isArray) {
78
- nodesToRead = [nodesToRead];
79
- }
80
- const _nodesToRead = nodesToRead;
81
- const context = this.context;
82
- setImmediate(() => {
83
- async.map(_nodesToRead, (nodeToRead, innerCallback) => {
84
- const obj = this.addressSpace.findNode(nodeToRead.nodeId);
85
- if (!obj || obj.nodeClass !== node_opcua_data_model_1.NodeClass.Variable || nodeToRead.attributeId !== node_opcua_data_model_1.AttributeIds.Value) {
86
- return innerCallback();
87
- }
88
- obj.readValueAsync(context, innerCallback);
89
- }, (err) => {
90
- const dataValues = _nodesToRead.map((nodeToRead) => {
91
- (0, node_opcua_assert_1.assert)(!!nodeToRead.nodeId, "expecting a nodeId");
92
- (0, node_opcua_assert_1.assert)(!!nodeToRead.attributeId, "expecting a attributeId");
93
- const nodeId = nodeToRead.nodeId;
94
- const attributeId = nodeToRead.attributeId;
95
- const indexRange = nodeToRead.indexRange;
96
- const dataEncoding = nodeToRead.dataEncoding;
97
- const obj = this.addressSpace.findNode(nodeId);
98
- if (!obj) {
99
- return new node_opcua_data_value_1.DataValue({ statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
100
- }
101
- const context = this.context;
102
- const dataValue = obj.readAttribute(context, attributeId, indexRange, dataEncoding);
103
- return dataValue;
104
- });
105
- callback(null, isArray ? dataValues : dataValues[0]);
106
- });
107
- });
108
- }
109
- browseNext(continuationPoints, releaseContinuationPoints, callback) {
110
- setImmediate(() => {
111
- if (continuationPoints instanceof Buffer) {
112
- return this.browseNext([continuationPoints], releaseContinuationPoints, (err, _results) => {
113
- if (err) {
114
- return callback(err);
115
- }
116
- callback(null, _results[0]);
117
- });
118
- }
119
- const results = continuationPoints
120
- .map((continuationPoint, index) => {
121
- return this.continuationPointManager.getNextReferences(0, {
122
- continuationPoint,
123
- index,
124
- releaseContinuationPoints
125
- });
126
- })
127
- .map((r) => new node_opcua_service_browse_1.BrowseResult({
128
- statusCode: r.statusCode,
129
- continuationPoint: r.continuationPoint,
130
- references: r.values
131
- }));
132
- callback(null, results);
133
- });
134
- }
135
- call(methodsToCall, callback) {
136
- const isArray = Array.isArray(methodsToCall);
137
- if (!isArray) {
138
- methodsToCall = [methodsToCall];
139
- }
140
- async.map(methodsToCall, (methodToCall, innerCallback) => {
141
- const callMethodRequest = new node_opcua_service_call_1.CallMethodRequest(methodToCall);
142
- (0, call_helpers_1.callMethodHelper)(this.context, this.addressSpace, callMethodRequest, (err, result) => {
143
- let callMethodResult;
144
- if (err) {
145
- errorLog("Internal Error = ", err);
146
- callMethodResult = new node_opcua_service_call_1.CallMethodResult({
147
- statusCode: node_opcua_status_code_1.StatusCodes.BadInternalError
148
- });
149
- }
150
- else {
151
- callMethodResult = new node_opcua_service_call_1.CallMethodResult(result);
152
- }
153
- innerCallback(null, callMethodResult);
154
- });
155
- }, (err, callMethodResults) => {
156
- callback(null, isArray ? callMethodResults : callMethodResults[0]);
157
- });
158
- }
159
- getArgumentDefinition(methodId, callback) {
160
- return (0, node_opcua_pseudo_session_1.getArgumentDefinitionHelper)(this, methodId, callback);
161
- }
162
- translateBrowsePath(browsePaths, callback) {
163
- const isArray = Array.isArray(browsePaths);
164
- if (!isArray) {
165
- browsePaths = [browsePaths];
166
- }
167
- const browsePathResults = browsePaths.map((browsePath) => {
168
- return this.addressSpace.browsePath(browsePath);
169
- });
170
- callback(null, isArray ? browsePathResults : browsePathResults[0]);
171
- }
172
- write(nodesToWrite, callback) {
173
- const isArray = nodesToWrite instanceof Array;
174
- const _nodesToWrite = !isArray ? [nodesToWrite] : nodesToWrite;
175
- const context = this.context;
176
- setImmediate(() => {
177
- const statusCodesPromises = _nodesToWrite.map((nodeToWrite) => {
178
- (0, node_opcua_assert_1.assert)(!!nodeToWrite.nodeId, "expecting a nodeId");
179
- (0, node_opcua_assert_1.assert)(!!nodeToWrite.attributeId, "expecting a attributeId");
180
- const nodeId = nodeToWrite.nodeId;
181
- const obj = this.addressSpace.findNode(nodeId);
182
- if (!obj) {
183
- return node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown;
184
- }
185
- return (0, util_1.promisify)(obj.writeAttribute).call(obj, context, nodeToWrite);
186
- });
187
- Promise.all(statusCodesPromises).then((statusCodes) => {
188
- callback(null, isArray ? statusCodes : statusCodes[0]);
189
- });
190
- });
191
- }
192
- }
193
- exports.PseudoSession = PseudoSession;
194
- // tslint:disable:no-var-requires
195
- // tslint:disable:max-line-length
196
- const thenify = require("thenify");
197
- PseudoSession.prototype.read = thenify.withCallback(PseudoSession.prototype.read);
198
- PseudoSession.prototype.write = thenify.withCallback(PseudoSession.prototype.write);
199
- PseudoSession.prototype.browse = thenify.withCallback(PseudoSession.prototype.browse);
200
- PseudoSession.prototype.browseNext = thenify.withCallback(PseudoSession.prototype.browseNext);
201
- PseudoSession.prototype.getArgumentDefinition = thenify.withCallback(PseudoSession.prototype.getArgumentDefinition);
202
- PseudoSession.prototype.call = thenify.withCallback(PseudoSession.prototype.call);
203
- PseudoSession.prototype.translateBrowsePath = thenify.withCallback(PseudoSession.prototype.translateBrowsePath);
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PseudoSession = void 0;
4
+ /**
5
+ * @module node-opcua-address-space
6
+ */
7
+ const util_1 = require("util");
8
+ const async = require("async");
9
+ const node_opcua_assert_1 = require("node-opcua-assert");
10
+ const node_opcua_data_value_1 = require("node-opcua-data-value");
11
+ const node_opcua_debug_1 = require("node-opcua-debug");
12
+ const node_opcua_nodeid_1 = require("node-opcua-nodeid");
13
+ const node_opcua_pseudo_session_1 = require("node-opcua-pseudo-session");
14
+ const node_opcua_service_browse_1 = require("node-opcua-service-browse");
15
+ const node_opcua_service_call_1 = require("node-opcua-service-call");
16
+ const node_opcua_status_code_1 = require("node-opcua-status-code");
17
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
18
+ const node_opcua_basic_types_1 = require("node-opcua-basic-types");
19
+ const continuation_point_manager_1 = require("./continuation_points/continuation_point_manager");
20
+ const call_helpers_1 = require("./helpers/call_helpers");
21
+ const session_context_1 = require("./session_context");
22
+ const errorLog = (0, node_opcua_debug_1.make_errorLog)("PseudoSession");
23
+ /**
24
+ * Pseudo session is an helper object that exposes the same async methods
25
+ * than the ClientSession. It can be used on a server address space.
26
+ *
27
+ * Code reused !
28
+ * The primary benefit of this object is that its makes advanced OPCUA
29
+ * operations that uses browse, translate, read, write etc similar
30
+ * whether we work inside a server or through a client session.
31
+ *
32
+ */
33
+ class PseudoSession {
34
+ constructor(addressSpace, context) {
35
+ this.requestedMaxReferencesPerNode = 0;
36
+ this._sessionId = new node_opcua_nodeid_1.NodeId(node_opcua_nodeid_1.NodeIdType.GUID, (0, node_opcua_basic_types_1.randomGuid)());
37
+ this.addressSpace = addressSpace;
38
+ this.context = context || session_context_1.SessionContext.defaultContext;
39
+ this.continuationPointManager = new continuation_point_manager_1.ContinuationPointManager();
40
+ }
41
+ getSessionId() {
42
+ return this._sessionId;
43
+ }
44
+ browse(nodesToBrowse, callback) {
45
+ setImmediate(() => {
46
+ const isArray = Array.isArray(nodesToBrowse);
47
+ if (!isArray) {
48
+ nodesToBrowse = [nodesToBrowse];
49
+ }
50
+ let results = [];
51
+ for (const browseDescription of nodesToBrowse) {
52
+ browseDescription.referenceTypeId = (0, node_opcua_nodeid_1.resolveNodeId)(browseDescription.referenceTypeId);
53
+ const _browseDescription = browseDescription instanceof node_opcua_service_browse_1.BrowseDescription ? browseDescription : new node_opcua_service_browse_1.BrowseDescription(browseDescription);
54
+ const nodeId = (0, node_opcua_nodeid_1.resolveNodeId)(_browseDescription.nodeId);
55
+ const r = this.addressSpace.browseSingleNode(nodeId, _browseDescription, this.context);
56
+ results.push(r);
57
+ }
58
+ // handle continuation points
59
+ results = results.map((result, index) => {
60
+ (0, node_opcua_assert_1.assert)(!result.continuationPoint);
61
+ const r = this.continuationPointManager.registerReferences(this.requestedMaxReferencesPerNode, result.references || [], { continuationPoint: null, index });
62
+ let { statusCode } = r;
63
+ const { continuationPoint, values } = r;
64
+ (0, node_opcua_assert_1.assert)(statusCode === node_opcua_status_code_1.StatusCodes.Good || statusCode === node_opcua_status_code_1.StatusCodes.GoodNoData);
65
+ statusCode = result.statusCode;
66
+ return new node_opcua_service_browse_1.BrowseResult({
67
+ statusCode,
68
+ continuationPoint,
69
+ references: values
70
+ });
71
+ });
72
+ callback(null, isArray ? results : results[0]);
73
+ });
74
+ }
75
+ read(nodesToRead, callback) {
76
+ const isArray = Array.isArray(nodesToRead);
77
+ if (!isArray) {
78
+ nodesToRead = [nodesToRead];
79
+ }
80
+ const _nodesToRead = nodesToRead;
81
+ const context = this.context;
82
+ setImmediate(() => {
83
+ async.map(_nodesToRead, (nodeToRead, innerCallback) => {
84
+ const obj = this.addressSpace.findNode(nodeToRead.nodeId);
85
+ if (!obj || obj.nodeClass !== node_opcua_data_model_1.NodeClass.Variable || nodeToRead.attributeId !== node_opcua_data_model_1.AttributeIds.Value) {
86
+ return innerCallback();
87
+ }
88
+ obj.readValueAsync(context, innerCallback);
89
+ }, (err) => {
90
+ const dataValues = _nodesToRead.map((nodeToRead) => {
91
+ (0, node_opcua_assert_1.assert)(!!nodeToRead.nodeId, "expecting a nodeId");
92
+ (0, node_opcua_assert_1.assert)(!!nodeToRead.attributeId, "expecting a attributeId");
93
+ const nodeId = nodeToRead.nodeId;
94
+ const attributeId = nodeToRead.attributeId;
95
+ const indexRange = nodeToRead.indexRange;
96
+ const dataEncoding = nodeToRead.dataEncoding;
97
+ const obj = this.addressSpace.findNode(nodeId);
98
+ if (!obj) {
99
+ return new node_opcua_data_value_1.DataValue({ statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
100
+ }
101
+ const context = this.context;
102
+ const dataValue = obj.readAttribute(context, attributeId, indexRange, dataEncoding);
103
+ return dataValue;
104
+ });
105
+ callback(null, isArray ? dataValues : dataValues[0]);
106
+ });
107
+ });
108
+ }
109
+ browseNext(continuationPoints, releaseContinuationPoints, callback) {
110
+ setImmediate(() => {
111
+ if (continuationPoints instanceof Buffer) {
112
+ return this.browseNext([continuationPoints], releaseContinuationPoints, (err, _results) => {
113
+ if (err) {
114
+ return callback(err);
115
+ }
116
+ callback(null, _results[0]);
117
+ });
118
+ }
119
+ const results = continuationPoints
120
+ .map((continuationPoint, index) => {
121
+ return this.continuationPointManager.getNextReferences(0, {
122
+ continuationPoint,
123
+ index,
124
+ releaseContinuationPoints
125
+ });
126
+ })
127
+ .map((r) => new node_opcua_service_browse_1.BrowseResult({
128
+ statusCode: r.statusCode,
129
+ continuationPoint: r.continuationPoint,
130
+ references: r.values
131
+ }));
132
+ callback(null, results);
133
+ });
134
+ }
135
+ call(methodsToCall, callback) {
136
+ const isArray = Array.isArray(methodsToCall);
137
+ if (!isArray) {
138
+ methodsToCall = [methodsToCall];
139
+ }
140
+ async.map(methodsToCall, (methodToCall, innerCallback) => {
141
+ const callMethodRequest = new node_opcua_service_call_1.CallMethodRequest(methodToCall);
142
+ (0, call_helpers_1.callMethodHelper)(this.context, this.addressSpace, callMethodRequest, (err, result) => {
143
+ let callMethodResult;
144
+ if (err) {
145
+ errorLog("Internal Error = ", err);
146
+ callMethodResult = new node_opcua_service_call_1.CallMethodResult({
147
+ statusCode: node_opcua_status_code_1.StatusCodes.BadInternalError
148
+ });
149
+ }
150
+ else {
151
+ callMethodResult = new node_opcua_service_call_1.CallMethodResult(result);
152
+ }
153
+ innerCallback(null, callMethodResult);
154
+ });
155
+ }, (err, callMethodResults) => {
156
+ callback(null, isArray ? callMethodResults : callMethodResults[0]);
157
+ });
158
+ }
159
+ getArgumentDefinition(methodId, callback) {
160
+ return (0, node_opcua_pseudo_session_1.getArgumentDefinitionHelper)(this, methodId, callback);
161
+ }
162
+ translateBrowsePath(browsePaths, callback) {
163
+ const isArray = Array.isArray(browsePaths);
164
+ if (!isArray) {
165
+ browsePaths = [browsePaths];
166
+ }
167
+ const browsePathResults = browsePaths.map((browsePath) => {
168
+ return this.addressSpace.browsePath(browsePath);
169
+ });
170
+ callback(null, isArray ? browsePathResults : browsePathResults[0]);
171
+ }
172
+ write(nodesToWrite, callback) {
173
+ const isArray = nodesToWrite instanceof Array;
174
+ const _nodesToWrite = !isArray ? [nodesToWrite] : nodesToWrite;
175
+ const context = this.context;
176
+ setImmediate(() => {
177
+ const statusCodesPromises = _nodesToWrite.map((nodeToWrite) => {
178
+ (0, node_opcua_assert_1.assert)(!!nodeToWrite.nodeId, "expecting a nodeId");
179
+ (0, node_opcua_assert_1.assert)(!!nodeToWrite.attributeId, "expecting a attributeId");
180
+ const nodeId = nodeToWrite.nodeId;
181
+ const obj = this.addressSpace.findNode(nodeId);
182
+ if (!obj) {
183
+ return node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown;
184
+ }
185
+ return (0, util_1.promisify)(obj.writeAttribute).call(obj, context, nodeToWrite);
186
+ });
187
+ Promise.all(statusCodesPromises).then((statusCodes) => {
188
+ callback(null, isArray ? statusCodes : statusCodes[0]);
189
+ });
190
+ });
191
+ }
192
+ }
193
+ exports.PseudoSession = PseudoSession;
194
+ // tslint:disable:no-var-requires
195
+ // tslint:disable:max-line-length
196
+ const thenify = require("thenify");
197
+ PseudoSession.prototype.read = thenify.withCallback(PseudoSession.prototype.read);
198
+ PseudoSession.prototype.write = thenify.withCallback(PseudoSession.prototype.write);
199
+ PseudoSession.prototype.browse = thenify.withCallback(PseudoSession.prototype.browse);
200
+ PseudoSession.prototype.browseNext = thenify.withCallback(PseudoSession.prototype.browseNext);
201
+ PseudoSession.prototype.getArgumentDefinition = thenify.withCallback(PseudoSession.prototype.getArgumentDefinition);
202
+ PseudoSession.prototype.call = thenify.withCallback(PseudoSession.prototype.call);
203
+ PseudoSession.prototype.translateBrowsePath = thenify.withCallback(PseudoSession.prototype.translateBrowsePath);
204
204
  //# sourceMappingURL=pseudo_session.js.map
@@ -1,111 +1,111 @@
1
- /**
2
- * @module node-opcua-address-space
3
- */
4
- import { AccessRestrictionsFlag, PermissionFlag } from "node-opcua-data-model";
5
- import { PreciseClock } from "node-opcua-date-time";
6
- import { NodeId, NodeIdLike } from "node-opcua-nodeid";
7
- import { PermissionType, RolePermissionType } from "node-opcua-types";
8
- import { ISessionContext, UAObject, UAObjectType, BaseNode, ISessionBase } from "node-opcua-address-space-base";
9
- export { RolePermissionType, RolePermissionTypeOptions, PermissionType } from "node-opcua-types";
10
- /**
11
- *
12
- */
13
- export declare enum WellKnownRoles {
14
- Anonymous = 15644,
15
- AuthenticatedUser = 15656,
16
- ConfigureAdmin = 15716,
17
- Engineer = 16036,
18
- Observer = 15668,
19
- Operator = 15680,
20
- SecurityAdmin = 15704,
21
- Supervisor = 15692
22
- }
23
- export declare enum WellKnownRolesNodeId {
24
- Anonymous = 15644,
25
- AuthenticatedUser = 15656,
26
- ConfigureAdmin = 15716,
27
- Engineer = 16036,
28
- Observer = 15668,
29
- Operator = 15680,
30
- SecurityAdmin = 15704,
31
- Supervisor = 15692
32
- }
33
- /**
34
- * OPC Unified Architecture, Part 3 13 Release 1.04
35
- * 4.8.2 Well Known Roles
36
- * All Servers should support the well-known Roles which are defined in Table 2. The NodeIds
37
- * for the well-known Roles are defined in Part 6.
38
- * Table 2 – Well-Known Roles
39
- * BrowseName Suggested Permissions
40
- *
41
- * Anonymous The Role has very limited access for use when a Session has anonymous credentials.
42
- * AuthenticatedUser The Role has limited access for use when a Session has valid non-anonymous credentials
43
- * but has not been explicitly granted access to a Role.
44
- * Observer The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.
45
- * Operator The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.
46
- * In addition, the Session is allowed to write some live data and call some Methods.
47
- * Engineer The Role is allowed to browse, read/write configuration data, read historical data/events,
48
- * call Methods or subscribe to data/events.
49
- * Supervisor The Role is allowed to browse, read live data, read historical data/events, call Methods or
50
- * subscribe to data/events.
51
- * ConfigureAdmin The Role is allowed to change the non-security related config
52
- * SecurityAdmin The Role is allowed to change security related settings.
53
- */
54
- export declare type WellKnownRolesSemiColumnSeparated = string;
55
- export interface IUserManager {
56
- /**
57
- * retrieve the roles of the given user
58
- * @returns semicolon separated list of roles
59
- */
60
- getUserRoles?: (user: string) => NodeId[];
61
- }
62
- export interface IServerBase {
63
- userManager?: IUserManager;
64
- }
65
- export interface SessionContextOptions {
66
- session?: ISessionBase;
67
- object?: UAObject | UAObjectType;
68
- server?: IServerBase;
69
- }
70
- export declare function makeRoles(roleIds: NodeIdLike[] | string | WellKnownRoles): NodeId[];
71
- export declare class SessionContext implements ISessionContext {
72
- static defaultContext: SessionContext;
73
- object: any;
74
- currentTime?: PreciseClock;
75
- continuationPoints: any;
76
- userIdentity?: string;
77
- readonly session?: ISessionBase;
78
- readonly server?: IServerBase;
79
- constructor(options?: SessionContextOptions);
80
- /**
81
- * getCurrentUserRoles
82
- *
83
- * guest => anonymous user (unauthenticated)
84
- * default => default authenticated user
85
- *
86
- */
87
- getCurrentUserRoles(): NodeId[];
88
- getApplicableRolePermissions(node: BaseNode): RolePermissionType[] | null;
89
- getPermissions(node: BaseNode): PermissionFlag;
90
- getAccessRestrictions(node: BaseNode): AccessRestrictionsFlag;
91
- /**
92
- *
93
- * @param node
94
- * @returns true if the browse is denied (access is restricted)
95
- */
96
- isBrowseAccessRestricted(node: BaseNode): boolean;
97
- /**
98
- *
99
- * @param node
100
- * @returns true if the context is access restricted
101
- */
102
- isAccessRestricted(node: BaseNode): boolean;
103
- /**
104
- * @method checkPermission
105
- * @param node
106
- * @param requestedPermission
107
- * @return {Boolean} returns true of the current user is granted the requested Permission
108
- */
109
- checkPermission(node: BaseNode, requestedPermission: PermissionType): boolean;
110
- currentUserHasRole(role: NodeIdLike): boolean;
111
- }
1
+ /**
2
+ * @module node-opcua-address-space
3
+ */
4
+ import { AccessRestrictionsFlag, PermissionFlag } from "node-opcua-data-model";
5
+ import { PreciseClock } from "node-opcua-date-time";
6
+ import { NodeId, NodeIdLike } from "node-opcua-nodeid";
7
+ import { PermissionType, RolePermissionType } from "node-opcua-types";
8
+ import { ISessionContext, UAObject, UAObjectType, BaseNode, ISessionBase } from "node-opcua-address-space-base";
9
+ export { RolePermissionType, RolePermissionTypeOptions, PermissionType } from "node-opcua-types";
10
+ /**
11
+ *
12
+ */
13
+ export declare enum WellKnownRoles {
14
+ Anonymous = 15644,
15
+ AuthenticatedUser = 15656,
16
+ ConfigureAdmin = 15716,
17
+ Engineer = 16036,
18
+ Observer = 15668,
19
+ Operator = 15680,
20
+ SecurityAdmin = 15704,
21
+ Supervisor = 15692
22
+ }
23
+ export declare enum WellKnownRolesNodeId {
24
+ Anonymous = 15644,
25
+ AuthenticatedUser = 15656,
26
+ ConfigureAdmin = 15716,
27
+ Engineer = 16036,
28
+ Observer = 15668,
29
+ Operator = 15680,
30
+ SecurityAdmin = 15704,
31
+ Supervisor = 15692
32
+ }
33
+ /**
34
+ * OPC Unified Architecture, Part 3 13 Release 1.04
35
+ * 4.8.2 Well Known Roles
36
+ * All Servers should support the well-known Roles which are defined in Table 2. The NodeIds
37
+ * for the well-known Roles are defined in Part 6.
38
+ * Table 2 – Well-Known Roles
39
+ * BrowseName Suggested Permissions
40
+ *
41
+ * Anonymous The Role has very limited access for use when a Session has anonymous credentials.
42
+ * AuthenticatedUser The Role has limited access for use when a Session has valid non-anonymous credentials
43
+ * but has not been explicitly granted access to a Role.
44
+ * Observer The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.
45
+ * Operator The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.
46
+ * In addition, the Session is allowed to write some live data and call some Methods.
47
+ * Engineer The Role is allowed to browse, read/write configuration data, read historical data/events,
48
+ * call Methods or subscribe to data/events.
49
+ * Supervisor The Role is allowed to browse, read live data, read historical data/events, call Methods or
50
+ * subscribe to data/events.
51
+ * ConfigureAdmin The Role is allowed to change the non-security related config
52
+ * SecurityAdmin The Role is allowed to change security related settings.
53
+ */
54
+ export declare type WellKnownRolesSemiColumnSeparated = string;
55
+ export interface IUserManager {
56
+ /**
57
+ * retrieve the roles of the given user
58
+ * @returns semicolon separated list of roles
59
+ */
60
+ getUserRoles?: (user: string) => NodeId[];
61
+ }
62
+ export interface IServerBase {
63
+ userManager?: IUserManager;
64
+ }
65
+ export interface SessionContextOptions {
66
+ session?: ISessionBase;
67
+ object?: UAObject | UAObjectType;
68
+ server?: IServerBase;
69
+ }
70
+ export declare function makeRoles(roleIds: NodeIdLike[] | string | WellKnownRoles): NodeId[];
71
+ export declare class SessionContext implements ISessionContext {
72
+ static defaultContext: SessionContext;
73
+ object: any;
74
+ currentTime?: PreciseClock;
75
+ continuationPoints: any;
76
+ userIdentity?: string;
77
+ readonly session?: ISessionBase;
78
+ readonly server?: IServerBase;
79
+ constructor(options?: SessionContextOptions);
80
+ /**
81
+ * getCurrentUserRoles
82
+ *
83
+ * guest => anonymous user (unauthenticated)
84
+ * default => default authenticated user
85
+ *
86
+ */
87
+ getCurrentUserRoles(): NodeId[];
88
+ getApplicableRolePermissions(node: BaseNode): RolePermissionType[] | null;
89
+ getPermissions(node: BaseNode): PermissionFlag;
90
+ getAccessRestrictions(node: BaseNode): AccessRestrictionsFlag;
91
+ /**
92
+ *
93
+ * @param node
94
+ * @returns true if the browse is denied (access is restricted)
95
+ */
96
+ isBrowseAccessRestricted(node: BaseNode): boolean;
97
+ /**
98
+ *
99
+ * @param node
100
+ * @returns true if the context is access restricted
101
+ */
102
+ isAccessRestricted(node: BaseNode): boolean;
103
+ /**
104
+ * @method checkPermission
105
+ * @param node
106
+ * @param requestedPermission
107
+ * @return {Boolean} returns true of the current user is granted the requested Permission
108
+ */
109
+ checkPermission(node: BaseNode, requestedPermission: PermissionType): boolean;
110
+ currentUserHasRole(role: NodeIdLike): boolean;
111
+ }