node-opcua-address-space 2.51.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 (598) hide show
  1. package/.mocharc.yml +12 -0
  2. package/LICENSE +20 -0
  3. package/dist/source/address_space_ts.d.ts +122 -0
  4. package/dist/source/address_space_ts.js +18 -0
  5. package/dist/source/address_space_ts.js.map +1 -0
  6. package/dist/source/continuation_points/continuation_point_manager.d.ts +21 -0
  7. package/dist/source/continuation_points/continuation_point_manager.js +100 -0
  8. package/dist/source/continuation_points/continuation_point_manager.js.map +1 -0
  9. package/dist/source/helpers/adjust_browse_direction.d.ts +5 -0
  10. package/dist/source/helpers/adjust_browse_direction.js +12 -0
  11. package/dist/source/helpers/adjust_browse_direction.js.map +1 -0
  12. package/dist/source/helpers/argument_list.d.ts +30 -0
  13. package/dist/source/helpers/argument_list.js +237 -0
  14. package/dist/source/helpers/argument_list.js.map +1 -0
  15. package/dist/source/helpers/call_helpers.d.ts +6 -0
  16. package/dist/source/helpers/call_helpers.js +71 -0
  17. package/dist/source/helpers/call_helpers.js.map +1 -0
  18. package/dist/source/helpers/check_event_clause.d.ts +17 -0
  19. package/dist/source/helpers/check_event_clause.js +53 -0
  20. package/dist/source/helpers/check_event_clause.js.map +1 -0
  21. package/dist/source/helpers/coerce_enum_value.d.ts +6 -0
  22. package/dist/source/helpers/coerce_enum_value.js +34 -0
  23. package/dist/source/helpers/coerce_enum_value.js.map +1 -0
  24. package/dist/source/helpers/dump_tools.d.ts +14 -0
  25. package/dist/source/helpers/dump_tools.js +79 -0
  26. package/dist/source/helpers/dump_tools.js.map +1 -0
  27. package/dist/source/helpers/ensure_secure_access.d.ts +9 -0
  28. package/dist/source/helpers/ensure_secure_access.js +90 -0
  29. package/dist/source/helpers/ensure_secure_access.js.map +1 -0
  30. package/dist/source/helpers/make_optionals_map.d.ts +21 -0
  31. package/dist/source/helpers/make_optionals_map.js +30 -0
  32. package/dist/source/helpers/make_optionals_map.js.map +1 -0
  33. package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +3 -0
  34. package/dist/source/helpers/resolve_opaque_on_address_space.js +37 -0
  35. package/dist/source/helpers/resolve_opaque_on_address_space.js.map +1 -0
  36. package/dist/source/index.d.ts +39 -0
  37. package/dist/source/index.js +62 -0
  38. package/dist/source/index.js.map +1 -0
  39. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +12 -0
  40. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +3 -0
  41. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js.map +1 -0
  42. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.d.ts +1 -0
  43. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js +3 -0
  44. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js.map +1 -0
  45. package/dist/source/interfaces/data_access/ua_discrete_item.d.ts +4 -0
  46. package/dist/source/interfaces/data_access/ua_discrete_item.js +3 -0
  47. package/dist/source/interfaces/data_access/ua_discrete_item.js.map +1 -0
  48. package/dist/source/interfaces/data_access/ua_multistate_discrete.d.ts +25 -0
  49. package/dist/source/interfaces/data_access/ua_multistate_discrete.js +3 -0
  50. package/dist/source/interfaces/data_access/ua_multistate_discrete.js.map +1 -0
  51. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +21 -0
  52. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js +3 -0
  53. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js.map +1 -0
  54. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.d.ts +27 -0
  55. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js +3 -0
  56. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js.map +1 -0
  57. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +24 -0
  58. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js +3 -0
  59. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +1 -0
  60. package/dist/source/interfaces/data_access/ua_two_state_discrete.d.ts +17 -0
  61. package/dist/source/interfaces/data_access/ua_two_state_discrete.js +3 -0
  62. package/dist/source/interfaces/data_access/ua_two_state_discrete.js.map +1 -0
  63. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +12 -0
  64. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js +3 -0
  65. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js.map +1 -0
  66. package/dist/source/interfaces/data_access/ua_y_array_item.d.ts +4 -0
  67. package/dist/source/interfaces/data_access/ua_y_array_item.js +3 -0
  68. package/dist/source/interfaces/data_access/ua_y_array_item.js.map +1 -0
  69. package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +8 -0
  70. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js +3 -0
  71. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js.map +1 -0
  72. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.d.ts +11 -0
  73. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js +3 -0
  74. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js.map +1 -0
  75. package/dist/source/interfaces/state_machine/finite_state_machine.d.ts +69 -0
  76. package/dist/source/interfaces/state_machine/finite_state_machine.js +3 -0
  77. package/dist/source/interfaces/state_machine/finite_state_machine.js.map +1 -0
  78. package/dist/source/interfaces/state_machine/program_finite_state_machine.d.ts +74 -0
  79. package/dist/source/interfaces/state_machine/program_finite_state_machine.js +3 -0
  80. package/dist/source/interfaces/state_machine/program_finite_state_machine.js.map +1 -0
  81. package/dist/source/interfaces/state_machine/state_machine.d.ts +342 -0
  82. package/dist/source/interfaces/state_machine/state_machine.js +3 -0
  83. package/dist/source/interfaces/state_machine/state_machine.js.map +1 -0
  84. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -0
  85. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +3 -0
  86. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +1 -0
  87. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -0
  88. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js +3 -0
  89. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js.map +1 -0
  90. package/dist/source/interfaces/state_machine/ua_finite_state_variable.d.ts +18 -0
  91. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js +3 -0
  92. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js.map +1 -0
  93. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -0
  94. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js +3 -0
  95. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js.map +1 -0
  96. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +222 -0
  97. package/dist/source/interfaces/state_machine/ua_state_machine_type.js +3 -0
  98. package/dist/source/interfaces/state_machine/ua_state_machine_type.js.map +1 -0
  99. package/dist/source/interfaces/state_machine/ua_state_variable.d.ts +29 -0
  100. package/dist/source/interfaces/state_machine/ua_state_variable.js +3 -0
  101. package/dist/source/interfaces/state_machine/ua_state_variable.js.map +1 -0
  102. package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +6 -0
  103. package/dist/source/interfaces/state_machine/ua_transition_ex.js +3 -0
  104. package/dist/source/interfaces/state_machine/ua_transition_ex.js.map +1 -0
  105. package/dist/source/interfaces/state_machine/ua_two_state_variable.d.ts +26 -0
  106. package/dist/source/interfaces/state_machine/ua_two_state_variable.js +3 -0
  107. package/dist/source/interfaces/state_machine/ua_two_state_variable.js.map +1 -0
  108. package/dist/source/interfaces/subscription_diagnostics_variable.d.ts +41 -0
  109. package/dist/source/interfaces/subscription_diagnostics_variable.js +3 -0
  110. package/dist/source/interfaces/subscription_diagnostics_variable.js.map +1 -0
  111. package/dist/source/interfaces/ua_authorisation_service.d.ts +1 -0
  112. package/dist/source/interfaces/ua_authorisation_service.js +3 -0
  113. package/dist/source/interfaces/ua_authorisation_service.js.map +1 -0
  114. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +8 -0
  115. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +3 -0
  116. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js.map +1 -0
  117. package/dist/source/loader/generateAddressSpaceRaw.d.ts +10 -0
  118. package/dist/source/loader/generateAddressSpaceRaw.js +59 -0
  119. package/dist/source/loader/generateAddressSpaceRaw.js.map +1 -0
  120. package/dist/source/loader/load_nodeset2.d.ts +13 -0
  121. package/dist/source/loader/load_nodeset2.js +1392 -0
  122. package/dist/source/loader/load_nodeset2.js.map +1 -0
  123. package/dist/source/loader/namespace_post_step.d.ts +6 -0
  124. package/dist/source/loader/namespace_post_step.js +48 -0
  125. package/dist/source/loader/namespace_post_step.js.map +1 -0
  126. package/dist/source/loader/register_node_promoter.d.ts +3 -0
  127. package/dist/source/loader/register_node_promoter.js +10 -0
  128. package/dist/source/loader/register_node_promoter.js.map +1 -0
  129. package/dist/source/namespace.d.ts +6 -0
  130. package/dist/source/namespace.js +3 -0
  131. package/dist/source/namespace.js.map +1 -0
  132. package/dist/source/namespace_alarm_and_condition.d.ts +24 -0
  133. package/dist/source/namespace_alarm_and_condition.js +3 -0
  134. package/dist/source/namespace_alarm_and_condition.js.map +1 -0
  135. package/dist/source/namespace_data_access.d.ts +42 -0
  136. package/dist/source/namespace_data_access.js +3 -0
  137. package/dist/source/namespace_data_access.js.map +1 -0
  138. package/dist/source/namespace_machine_state.d.ts +7 -0
  139. package/dist/source/namespace_machine_state.js +3 -0
  140. package/dist/source/namespace_machine_state.js.map +1 -0
  141. package/dist/source/pseudo_session.d.ts +55 -0
  142. package/dist/source/pseudo_session.js +205 -0
  143. package/dist/source/pseudo_session.js.map +1 -0
  144. package/dist/source/session_context.d.ts +111 -0
  145. package/dist/source/session_context.js +266 -0
  146. package/dist/source/session_context.js.map +1 -0
  147. package/dist/source/set_namespace_meta_data.d.ts +2 -0
  148. package/dist/source/set_namespace_meta_data.js +60 -0
  149. package/dist/source/set_namespace_meta_data.js.map +1 -0
  150. package/dist/source/ua_namespace_meta_data_type.d.ts +71 -0
  151. package/dist/source/ua_namespace_meta_data_type.js +3 -0
  152. package/dist/source/ua_namespace_meta_data_type.js.map +1 -0
  153. package/dist/source/ua_root_folder.d.ts +9 -0
  154. package/dist/source/ua_root_folder.js +3 -0
  155. package/dist/source/ua_root_folder.js.map +1 -0
  156. package/dist/source/ua_two_state_variable_ex.d.ts +23 -0
  157. package/dist/source/ua_two_state_variable_ex.js +3 -0
  158. package/dist/source/ua_two_state_variable_ex.js.map +1 -0
  159. package/dist/source/xml_writer.d.ts +9 -0
  160. package/dist/source/xml_writer.js +3 -0
  161. package/dist/source/xml_writer.js.map +1 -0
  162. package/dist/src/address_space.d.ts +393 -0
  163. package/dist/src/address_space.js +1375 -0
  164. package/dist/src/address_space.js.map +1 -0
  165. package/dist/src/address_space_change_event_tools.d.ts +6 -0
  166. package/dist/src/address_space_change_event_tools.js +150 -0
  167. package/dist/src/address_space_change_event_tools.js.map +1 -0
  168. package/dist/src/address_space_private.d.ts +44 -0
  169. package/dist/src/address_space_private.js +3 -0
  170. package/dist/src/address_space_private.js.map +1 -0
  171. package/dist/src/alarms_and_conditions/base_event_type.d.ts +26 -0
  172. package/dist/src/alarms_and_conditions/base_event_type.js +41 -0
  173. package/dist/src/alarms_and_conditions/base_event_type.js.map +1 -0
  174. package/dist/src/alarms_and_conditions/check_where_clause.d.ts +4 -0
  175. package/dist/src/alarms_and_conditions/check_where_clause.js +110 -0
  176. package/dist/src/alarms_and_conditions/check_where_clause.js.map +1 -0
  177. package/dist/src/alarms_and_conditions/condition.d.ts +5 -0
  178. package/dist/src/alarms_and_conditions/condition.js +81 -0
  179. package/dist/src/alarms_and_conditions/condition.js.map +1 -0
  180. package/dist/src/alarms_and_conditions/condition_info.d.ts +27 -0
  181. package/dist/src/alarms_and_conditions/condition_info.js +55 -0
  182. package/dist/src/alarms_and_conditions/condition_info.js.map +1 -0
  183. package/dist/src/alarms_and_conditions/condition_snapshot.d.ts +232 -0
  184. package/dist/src/alarms_and_conditions/condition_snapshot.js +667 -0
  185. package/dist/src/alarms_and_conditions/condition_snapshot.js.map +1 -0
  186. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +21 -0
  187. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +47 -0
  188. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +1 -0
  189. package/dist/src/alarms_and_conditions/extract_event_fields.d.ts +10 -0
  190. package/dist/src/alarms_and_conditions/extract_event_fields.js +90 -0
  191. package/dist/src/alarms_and_conditions/extract_event_fields.js.map +1 -0
  192. package/dist/src/alarms_and_conditions/index.d.ts +18 -0
  193. package/dist/src/alarms_and_conditions/index.js +31 -0
  194. package/dist/src/alarms_and_conditions/index.js.map +1 -0
  195. package/dist/src/alarms_and_conditions/shelving_state_machine.d.ts +22 -0
  196. package/dist/src/alarms_and_conditions/shelving_state_machine.js +241 -0
  197. package/dist/src/alarms_and_conditions/shelving_state_machine.js.map +1 -0
  198. package/dist/src/alarms_and_conditions/trip_alarm.d.ts +16 -0
  199. package/dist/src/alarms_and_conditions/trip_alarm.js +21 -0
  200. package/dist/src/alarms_and_conditions/trip_alarm.js.map +1 -0
  201. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.d.ts +54 -0
  202. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js +255 -0
  203. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js.map +1 -0
  204. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +62 -0
  205. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -0
  206. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -0
  207. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.d.ts +138 -0
  208. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js +460 -0
  209. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js.map +1 -0
  210. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +118 -0
  211. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +417 -0
  212. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -0
  213. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +29 -0
  214. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +39 -0
  215. package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +1 -0
  216. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.d.ts +35 -0
  217. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js +32 -0
  218. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js.map +1 -0
  219. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +21 -0
  220. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +26 -0
  221. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -0
  222. package/dist/src/alarms_and_conditions/ua_condition_base.d.ts +191 -0
  223. package/dist/src/alarms_and_conditions/ua_condition_base.js +1029 -0
  224. package/dist/src/alarms_and_conditions/ua_condition_base.js.map +1 -0
  225. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +182 -0
  226. package/dist/src/alarms_and_conditions/ua_condition_impl.js +1021 -0
  227. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -0
  228. package/dist/src/alarms_and_conditions/ua_discrete_alarm.d.ts +11 -0
  229. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js +58 -0
  230. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js.map +1 -0
  231. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +17 -0
  232. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +58 -0
  233. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -0
  234. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.d.ts +24 -0
  235. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js +59 -0
  236. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js.map +1 -0
  237. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +27 -0
  238. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +57 -0
  239. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -0
  240. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.d.ts +14 -0
  241. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js +17 -0
  242. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js.map +1 -0
  243. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +9 -0
  244. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +12 -0
  245. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -0
  246. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.d.ts +22 -0
  247. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js +87 -0
  248. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js.map +1 -0
  249. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +38 -0
  250. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +87 -0
  251. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -0
  252. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.d.ts +6 -0
  253. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js +11 -0
  254. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js.map +1 -0
  255. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +10 -0
  256. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +8 -0
  257. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -0
  258. package/dist/src/alarms_and_conditions/ua_limit_alarm.d.ts +76 -0
  259. package/dist/src/alarms_and_conditions/ua_limit_alarm.js +237 -0
  260. package/dist/src/alarms_and_conditions/ua_limit_alarm.js.map +1 -0
  261. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +98 -0
  262. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +233 -0
  263. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -0
  264. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.d.ts +27 -0
  265. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js +62 -0
  266. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js.map +1 -0
  267. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +28 -0
  268. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +51 -0
  269. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -0
  270. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.d.ts +49 -0
  271. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js +176 -0
  272. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js.map +1 -0
  273. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +25 -0
  274. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +163 -0
  275. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -0
  276. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.d.ts +47 -0
  277. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js +151 -0
  278. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js.map +1 -0
  279. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +39 -0
  280. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +136 -0
  281. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -0
  282. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.d.ts +16 -0
  283. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js +18 -0
  284. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js.map +1 -0
  285. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +16 -0
  286. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +18 -0
  287. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -0
  288. package/dist/src/apply_condition_refresh.d.ts +6 -0
  289. package/dist/src/apply_condition_refresh.js +28 -0
  290. package/dist/src/apply_condition_refresh.js.map +1 -0
  291. package/dist/src/base_node.d.ts +279 -0
  292. package/dist/src/base_node.js +1364 -0
  293. package/dist/src/base_node.js.map +1 -0
  294. package/dist/src/base_node_impl.d.ts +281 -0
  295. package/dist/src/base_node_impl.js +1394 -0
  296. package/dist/src/base_node_impl.js.map +1 -0
  297. package/dist/src/base_node_private.d.ts +61 -0
  298. package/dist/src/base_node_private.js +521 -0
  299. package/dist/src/base_node_private.js.map +1 -0
  300. package/dist/src/data_access/add_dataItem_stuff.d.ts +11 -0
  301. package/dist/src/data_access/add_dataItem_stuff.js +62 -0
  302. package/dist/src/data_access/add_dataItem_stuff.js.map +1 -0
  303. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.d.ts +1 -0
  304. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js +35 -0
  305. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js.map +1 -0
  306. package/dist/src/data_access/ua_analog_item.d.ts +13 -0
  307. package/dist/src/data_access/ua_analog_item.js +37 -0
  308. package/dist/src/data_access/ua_analog_item.js.map +1 -0
  309. package/dist/src/data_access/ua_data_item.d.ts +16 -0
  310. package/dist/src/data_access/ua_data_item.js +66 -0
  311. package/dist/src/data_access/ua_data_item.js.map +1 -0
  312. package/dist/src/data_access/ua_multistate_discrete.d.ts +23 -0
  313. package/dist/src/data_access/ua_multistate_discrete.js +131 -0
  314. package/dist/src/data_access/ua_multistate_discrete.js.map +1 -0
  315. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +32 -0
  316. package/dist/src/data_access/ua_multistate_discrete_impl.js +131 -0
  317. package/dist/src/data_access/ua_multistate_discrete_impl.js.map +1 -0
  318. package/dist/src/data_access/ua_multistate_value_discrete.d.ts +51 -0
  319. package/dist/src/data_access/ua_multistate_value_discrete.js +249 -0
  320. package/dist/src/data_access/ua_multistate_value_discrete.js.map +1 -0
  321. package/dist/src/data_access/ua_two_state_discrete.d.ts +25 -0
  322. package/dist/src/data_access/ua_two_state_discrete.js +154 -0
  323. package/dist/src/data_access/ua_two_state_discrete.js.map +1 -0
  324. package/dist/src/event_data.d.ts +29 -0
  325. package/dist/src/event_data.js +96 -0
  326. package/dist/src/event_data.js.map +1 -0
  327. package/dist/src/extension_object_array_node.d.ts +61 -0
  328. package/dist/src/extension_object_array_node.js +266 -0
  329. package/dist/src/extension_object_array_node.js.map +1 -0
  330. package/dist/src/historical_access/address_space_historical_data_node.d.ts +26 -0
  331. package/dist/src/historical_access/address_space_historical_data_node.js +662 -0
  332. package/dist/src/historical_access/address_space_historical_data_node.js.map +1 -0
  333. package/dist/src/index_current.d.ts +42 -0
  334. package/dist/src/index_current.js +71 -0
  335. package/dist/src/index_current.js.map +1 -0
  336. package/dist/src/namespace.d.ts +475 -0
  337. package/dist/src/namespace.js +1775 -0
  338. package/dist/src/namespace.js.map +1 -0
  339. package/dist/src/namespace_impl.d.ts +463 -0
  340. package/dist/src/namespace_impl.js +1763 -0
  341. package/dist/src/namespace_impl.js.map +1 -0
  342. package/dist/src/namespace_private.d.ts +21 -0
  343. package/dist/src/namespace_private.js +29 -0
  344. package/dist/src/namespace_private.js.map +1 -0
  345. package/dist/src/nodeid_manager.d.ts +36 -0
  346. package/dist/src/nodeid_manager.js +196 -0
  347. package/dist/src/nodeid_manager.js.map +1 -0
  348. package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +2 -0
  349. package/dist/src/nodeset_tools/adjust_namespace_array.js +14 -0
  350. package/dist/src/nodeset_tools/adjust_namespace_array.js.map +1 -0
  351. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +2 -0
  352. package/dist/src/nodeset_tools/construct_namespace_dependency.js +39 -0
  353. package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +1 -0
  354. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +2 -0
  355. package/dist/src/nodeset_tools/nodeset_to_xml.js +1155 -0
  356. package/dist/src/nodeset_tools/nodeset_to_xml.js.map +1 -0
  357. package/dist/src/nodeset_tools/typedictionary_to_xml.d.ts +2 -0
  358. package/dist/src/nodeset_tools/typedictionary_to_xml.js +147 -0
  359. package/dist/src/nodeset_tools/typedictionary_to_xml.js.map +1 -0
  360. package/dist/src/reference.d.ts +43 -0
  361. package/dist/src/reference.js +138 -0
  362. package/dist/src/reference.js.map +1 -0
  363. package/dist/src/reference_impl.d.ts +43 -0
  364. package/dist/src/reference_impl.js +138 -0
  365. package/dist/src/reference_impl.js.map +1 -0
  366. package/dist/src/role_permissions.d.ts +2 -0
  367. package/dist/src/role_permissions.js +11 -0
  368. package/dist/src/role_permissions.js.map +1 -0
  369. package/dist/src/session_context.d.ts +4 -0
  370. package/dist/src/session_context.js +9 -0
  371. package/dist/src/session_context.js.map +1 -0
  372. package/dist/src/state_machine/finite_state_machine.d.ts +67 -0
  373. package/dist/src/state_machine/finite_state_machine.js +354 -0
  374. package/dist/src/state_machine/finite_state_machine.js.map +1 -0
  375. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +34 -0
  376. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +244 -0
  377. package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +1 -0
  378. package/dist/src/state_machine/ua_two_state_variable.d.ts +61 -0
  379. package/dist/src/state_machine/ua_two_state_variable.js +332 -0
  380. package/dist/src/state_machine/ua_two_state_variable.js.map +1 -0
  381. package/dist/src/tool_isSupertypeOf.d.ts +17 -0
  382. package/dist/src/tool_isSupertypeOf.js +103 -0
  383. package/dist/src/tool_isSupertypeOf.js.map +1 -0
  384. package/dist/src/ua_condition_type.d.ts +8 -0
  385. package/dist/src/ua_condition_type.js +3 -0
  386. package/dist/src/ua_condition_type.js.map +1 -0
  387. package/dist/src/ua_data_type.d.ts +83 -0
  388. package/dist/src/ua_data_type.js +289 -0
  389. package/dist/src/ua_data_type.js.map +1 -0
  390. package/dist/src/ua_data_type_impl.d.ts +83 -0
  391. package/dist/src/ua_data_type_impl.js +291 -0
  392. package/dist/src/ua_data_type_impl.js.map +1 -0
  393. package/dist/src/ua_method.d.ts +42 -0
  394. package/dist/src/ua_method.js +204 -0
  395. package/dist/src/ua_method.js.map +1 -0
  396. package/dist/src/ua_method_impl.d.ts +40 -0
  397. package/dist/src/ua_method_impl.js +203 -0
  398. package/dist/src/ua_method_impl.js.map +1 -0
  399. package/dist/src/ua_object.d.ts +29 -0
  400. package/dist/src/ua_object.js +153 -0
  401. package/dist/src/ua_object.js.map +1 -0
  402. package/dist/src/ua_object_impl.d.ts +29 -0
  403. package/dist/src/ua_object_impl.js +156 -0
  404. package/dist/src/ua_object_impl.js.map +1 -0
  405. package/dist/src/ua_object_type.d.ts +49 -0
  406. package/dist/src/ua_object_type.js +124 -0
  407. package/dist/src/ua_object_type.js.map +1 -0
  408. package/dist/src/ua_object_type_impl.d.ts +48 -0
  409. package/dist/src/ua_object_type_impl.js +124 -0
  410. package/dist/src/ua_object_type_impl.js.map +1 -0
  411. package/dist/src/ua_reference_type.d.ts +42 -0
  412. package/dist/src/ua_reference_type.js +138 -0
  413. package/dist/src/ua_reference_type.js.map +1 -0
  414. package/dist/src/ua_reference_type_impl.d.ts +43 -0
  415. package/dist/src/ua_reference_type_impl.js +138 -0
  416. package/dist/src/ua_reference_type_impl.js.map +1 -0
  417. package/dist/src/ua_variable.d.ts +346 -0
  418. package/dist/src/ua_variable.js +1721 -0
  419. package/dist/src/ua_variable.js.map +1 -0
  420. package/dist/src/ua_variable_impl.d.ts +353 -0
  421. package/dist/src/ua_variable_impl.js +1719 -0
  422. package/dist/src/ua_variable_impl.js.map +1 -0
  423. package/dist/src/ua_variable_type.d.ts +54 -0
  424. package/dist/src/ua_variable_type.js +555 -0
  425. package/dist/src/ua_variable_type.js.map +1 -0
  426. package/dist/src/ua_variable_type_impl.d.ts +63 -0
  427. package/dist/src/ua_variable_type_impl.js +556 -0
  428. package/dist/src/ua_variable_type_impl.js.map +1 -0
  429. package/dist/src/ua_view.d.ts +16 -0
  430. package/dist/src/ua_view.js +42 -0
  431. package/dist/src/ua_view.js.map +1 -0
  432. package/dist/src/ua_view_impl.d.ts +15 -0
  433. package/dist/src/ua_view_impl.js +37 -0
  434. package/dist/src/ua_view_impl.js.map +1 -0
  435. package/distHelpers/add_event_generator_object.d.ts +3 -0
  436. package/distHelpers/add_event_generator_object.js +66 -0
  437. package/distHelpers/add_event_generator_object.js.map +1 -0
  438. package/distHelpers/alarms_and_conditions_demo.d.ts +10 -0
  439. package/distHelpers/alarms_and_conditions_demo.js +115 -0
  440. package/distHelpers/alarms_and_conditions_demo.js.map +1 -0
  441. package/distHelpers/assertHasMatchingReference.d.ts +19 -0
  442. package/distHelpers/assertHasMatchingReference.js +41 -0
  443. package/distHelpers/assertHasMatchingReference.js.map +1 -0
  444. package/distHelpers/boiler_system.d.ts +113 -0
  445. package/distHelpers/boiler_system.js +397 -0
  446. package/distHelpers/boiler_system.js.map +1 -0
  447. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +5 -0
  448. package/distHelpers/create_minimalist_address_space_nodeset.js +171 -0
  449. package/distHelpers/create_minimalist_address_space_nodeset.js.map +1 -0
  450. package/distHelpers/dump_statemachine.d.ts +6 -0
  451. package/distHelpers/dump_statemachine.js +116 -0
  452. package/distHelpers/dump_statemachine.js.map +1 -0
  453. package/distHelpers/get_address_space_fixture.d.ts +1 -0
  454. package/distHelpers/get_address_space_fixture.js +31 -0
  455. package/distHelpers/get_address_space_fixture.js.map +1 -0
  456. package/distHelpers/get_mini_address_space.d.ts +7 -0
  457. package/distHelpers/get_mini_address_space.js +37 -0
  458. package/distHelpers/get_mini_address_space.js.map +1 -0
  459. package/distHelpers/index.d.ts +11 -0
  460. package/distHelpers/index.js +24 -0
  461. package/distHelpers/index.js.map +1 -0
  462. package/distNodeJS/generate_address_space.d.ts +4 -0
  463. package/distNodeJS/generate_address_space.js +31 -0
  464. package/distNodeJS/generate_address_space.js.map +1 -0
  465. package/distNodeJS/index.d.ts +1 -0
  466. package/distNodeJS/index.js +14 -0
  467. package/distNodeJS/index.js.map +1 -0
  468. package/generate.js +1 -0
  469. package/nodeJS.d.ts +1 -0
  470. package/nodeJS.js +1 -0
  471. package/package.json +87 -0
  472. package/source/address_space_ts.ts +217 -0
  473. package/source/continuation_points/continuation_point_manager.ts +121 -0
  474. package/source/helpers/adjust_browse_direction.ts +15 -0
  475. package/source/helpers/argument_list.ts +286 -0
  476. package/source/helpers/call_helpers.ts +112 -0
  477. package/source/helpers/check_event_clause.ts +62 -0
  478. package/source/helpers/coerce_enum_value.ts +33 -0
  479. package/source/helpers/dump_tools.ts +92 -0
  480. package/source/helpers/ensure_secure_access.ts +88 -0
  481. package/source/helpers/make_optionals_map.ts +49 -0
  482. package/source/helpers/resolve_opaque_on_address_space.ts +23 -0
  483. package/source/index.ts +49 -0
  484. package/source/interfaces/alarms_and_conditions/condition_info_i.ts +13 -0
  485. package/source/interfaces/data_access/ua_multistate_discrete_ex.ts +26 -0
  486. package/source/interfaces/data_access/ua_multistate_value_discrete_ex.ts +34 -0
  487. package/source/interfaces/data_access/ua_two_state_discrete_ex.ts +14 -0
  488. package/source/interfaces/data_access/ua_y_array_item_ex.ts +10 -0
  489. package/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +14 -0
  490. package/source/interfaces/state_machine/ua_finite_state_machine_type.ts +50 -0
  491. package/source/interfaces/state_machine/ua_program_state_machine_type.ts +13 -0
  492. package/source/interfaces/state_machine/ua_state_machine_type.ts +261 -0
  493. package/source/interfaces/state_machine/ua_transition_ex.ts +7 -0
  494. package/source/interfaces/ua_subscription_diagnostics_variable_ex.ts +8 -0
  495. package/source/loader/generateAddressSpaceRaw.ts +79 -0
  496. package/source/loader/load_nodeset2.ts +1600 -0
  497. package/source/loader/namespace_post_step.ts +36 -0
  498. package/source/loader/register_node_promoter.ts +8 -0
  499. package/source/namespace.ts +9 -0
  500. package/source/namespace_alarm_and_condition.ts +47 -0
  501. package/source/namespace_data_access.ts +60 -0
  502. package/source/namespace_machine_state.ts +13 -0
  503. package/source/pseudo_session.ts +288 -0
  504. package/source/session_context.ts +345 -0
  505. package/source/set_namespace_meta_data.ts +68 -0
  506. package/source/ua_root_folder.ts +10 -0
  507. package/source/ua_two_state_variable_ex.ts +35 -0
  508. package/source/xml_writer.ts +15 -0
  509. package/source_nodejs/generate_address_space.ts +36 -0
  510. package/source_nodejs/index.ts +1 -0
  511. package/src/address_space.ts +1575 -0
  512. package/src/address_space_change_event_tools.ts +177 -0
  513. package/src/address_space_private.ts +98 -0
  514. package/src/alarms_and_conditions/check_where_clause.ts +148 -0
  515. package/src/alarms_and_conditions/condition.ts +89 -0
  516. package/src/alarms_and_conditions/condition_info.ts +66 -0
  517. package/src/alarms_and_conditions/condition_snapshot.ts +766 -0
  518. package/src/alarms_and_conditions/deviation_alarm_helper.ts +66 -0
  519. package/src/alarms_and_conditions/extract_event_fields.ts +104 -0
  520. package/src/alarms_and_conditions/index.ts +18 -0
  521. package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +339 -0
  522. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +513 -0
  523. package/src/alarms_and_conditions/ua_base_event_impl.ts +55 -0
  524. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +50 -0
  525. package/src/alarms_and_conditions/ua_condition_impl.ts +1298 -0
  526. package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +81 -0
  527. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +110 -0
  528. package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +19 -0
  529. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +130 -0
  530. package/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +24 -0
  531. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +305 -0
  532. package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +108 -0
  533. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +224 -0
  534. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +186 -0
  535. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +27 -0
  536. package/src/apply_condition_refresh.ts +30 -0
  537. package/src/base_node_impl.ts +1749 -0
  538. package/src/base_node_private.ts +690 -0
  539. package/src/data_access/add_dataItem_stuff.ts +75 -0
  540. package/src/data_access/check_variant_compatibility_ua_analog_item.ts +41 -0
  541. package/src/data_access/ua_multistate_discrete_impl.ts +168 -0
  542. package/src/data_access/ua_multistate_value_discrete.ts +299 -0
  543. package/src/data_access/ua_two_state_discrete.ts +185 -0
  544. package/src/event_data.ts +117 -0
  545. package/src/extension_object_array_node.ts +325 -0
  546. package/src/historical_access/address_space_historical_data_node.ts +828 -0
  547. package/src/index_current.ts +52 -0
  548. package/src/namespace_impl.ts +2181 -0
  549. package/src/namespace_private.ts +60 -0
  550. package/src/nodeid_manager.ts +228 -0
  551. package/src/nodeset_tools/adjust_namespace_array.ts +11 -0
  552. package/src/nodeset_tools/construct_namespace_dependency.ts +40 -0
  553. package/src/nodeset_tools/nodeset_to_xml.ts +1317 -0
  554. package/src/nodeset_tools/typedictionary_to_xml.ts +175 -0
  555. package/src/reference_impl.ts +169 -0
  556. package/src/role_permissions.ts +6 -0
  557. package/src/state_machine/finite_state_machine.ts +428 -0
  558. package/src/state_machine/ua_shelving_state_machine_ex.ts +314 -0
  559. package/src/state_machine/ua_two_state_variable.ts +421 -0
  560. package/src/tool_isSupertypeOf.ts +129 -0
  561. package/src/ua_condition_type.ts +10 -0
  562. package/src/ua_data_type_impl.ts +356 -0
  563. package/src/ua_method_impl.ts +278 -0
  564. package/src/ua_object_impl.ts +203 -0
  565. package/src/ua_object_type_impl.ts +158 -0
  566. package/src/ua_reference_type_impl.ts +174 -0
  567. package/src/ua_variable_impl.ts +2277 -0
  568. package/src/ua_variable_type_impl.ts +741 -0
  569. package/src/ua_view_impl.ts +54 -0
  570. package/testHelpers.d.ts +1 -0
  571. package/testHelpers.js +1 -0
  572. package/test_helpers/add_event_generator_object.ts +71 -0
  573. package/test_helpers/alarms_and_conditions_demo.ts +147 -0
  574. package/test_helpers/assertHasMatchingReference.ts +43 -0
  575. package/test_helpers/boiler_system.ts +618 -0
  576. package/test_helpers/create_minimalist_address_space_nodeset.ts +208 -0
  577. package/test_helpers/dump_statemachine.ts +155 -0
  578. package/test_helpers/get_address_space_fixture.ts +30 -0
  579. package/test_helpers/get_mini_address_space.ts +42 -0
  580. package/test_helpers/index.ts +11 -0
  581. package/test_helpers/test_fixtures/dataType_in_separateNamespace.xml +150 -0
  582. package/test_helpers/test_fixtures/dataType_in_separateNamespace_basic.xml +57 -0
  583. package/test_helpers/test_fixtures/dataType_in_separateNamespace_mix.xml +136 -0
  584. package/test_helpers/test_fixtures/dataType_withEnumeration.xml +82 -0
  585. package/test_helpers/test_fixtures/dataType_with_isOptionSet.xml +194 -0
  586. package/test_helpers/test_fixtures/dataType_with_structures.xml +605 -0
  587. package/test_helpers/test_fixtures/dataType_with_union.xml +1 -0
  588. package/test_helpers/test_fixtures/datatype_as_per_1.04.xml +91 -0
  589. package/test_helpers/test_fixtures/fixture_empty_nodeset2.xml +106 -0
  590. package/test_helpers/test_fixtures/fixture_simple_statemachine_nodeset2.xml +1303 -0
  591. package/test_helpers/test_fixtures/fixuture_nodeset_objects_with_some_methods.xml +362 -0
  592. package/test_helpers/test_fixtures/issue_846.xml +3172 -0
  593. package/test_helpers/test_fixtures/issue_899_variable_with_nodeid_value.xml +33 -0
  594. package/test_helpers/test_fixtures/mini.Node.Set2.xml +4508 -0
  595. package/test_helpers/test_fixtures/mini.nodeset.withVariousVariables.xml +194 -0
  596. package/test_helpers/test_fixtures/minimalist_nodeset_with_models.xml +8 -0
  597. package/test_helpers/test_fixtures/minimalist_nodeset_with_models_more_complex.xml +16 -0
  598. package/test_helpers/test_fixtures/nodeset_with_analog_items.xml +45 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load_nodeset2.js","sourceRoot":"","sources":["../../../source/loader/load_nodeset2.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { IAddressSpace, INamespace } from "node-opcua-address-space-base";
2
+ export declare const g_promotableObject: {
3
+ [key: string]: (node: any) => any;
4
+ };
5
+ export declare function promoteObjectAndVariablesInNamespace(namespace: INamespace): Promise<void>;
6
+ export declare function promoteObjectsAndVariables(addressSpace: IAddressSpace): Promise<void>;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.promoteObjectsAndVariables = exports.promoteObjectAndVariablesInNamespace = exports.g_promotableObject = void 0;
13
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
14
+ const node_opcua_debug_1 = require("node-opcua-debug");
15
+ const debugLog = (0, node_opcua_debug_1.make_debugLog)(__filename);
16
+ const doDebug = (0, node_opcua_debug_1.checkDebugFlag)(__filename);
17
+ exports.g_promotableObject = {};
18
+ function promoteObjectAndVariablesInNamespace(namespace) {
19
+ return __awaiter(this, void 0, void 0, function* () {
20
+ const namespaceP = namespace;
21
+ for (const a of namespaceP.nodeIterator()) {
22
+ if (a.nodeClass === node_opcua_data_model_1.NodeClass.Object || a.nodeClass === node_opcua_data_model_1.NodeClass.Variable) {
23
+ const aa = a;
24
+ if (aa.typeDefinition) {
25
+ const promoter = exports.g_promotableObject[aa.typeDefinition.toString()];
26
+ if (promoter) {
27
+ const before = a.constructor.name;
28
+ promoter(a);
29
+ const after = a.constructor.name;
30
+ if (doDebug) {
31
+ debugLog(`promoting ${a.browseName.toString()} from ${before} to ${after}`);
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }
37
+ });
38
+ }
39
+ exports.promoteObjectAndVariablesInNamespace = promoteObjectAndVariablesInNamespace;
40
+ function promoteObjectsAndVariables(addressSpace) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ for (const namespace of addressSpace.getNamespaceArray()) {
43
+ promoteObjectAndVariablesInNamespace(namespace);
44
+ }
45
+ });
46
+ }
47
+ exports.promoteObjectsAndVariables = promoteObjectsAndVariables;
48
+ //# sourceMappingURL=namespace_post_step.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace_post_step.js","sourceRoot":"","sources":["../../../source/loader/namespace_post_step.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAAkD;AAClD,uDAAiE;AAMjE,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,OAAO,GAAG,IAAA,iCAAc,EAAC,UAAU,CAAC,CAAC;AAE9B,QAAA,kBAAkB,GAA0C,EAAE,CAAC;AAE5E,SAAsB,oCAAoC,CAAC,SAAqB;;QAC5E,MAAM,UAAU,GAAG,SAA6B,CAAC;QACjD,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,EAAE;YACvC,IAAI,CAAC,CAAC,SAAS,KAAK,iCAAS,CAAC,MAAM,IAAI,CAAC,CAAC,SAAS,KAAK,iCAAS,CAAC,QAAQ,EAAE;gBACxE,MAAM,EAAE,GAAG,CAA4B,CAAC;gBACxC,IAAI,EAAE,CAAC,cAAc,EAAE;oBACnB,MAAM,QAAQ,GAAG,0BAAkB,CAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAClE,IAAI,QAAQ,EAAE;wBACV,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;wBAClC,QAAQ,CAAC,CAA0B,CAAC,CAAC;wBACrC,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;wBACjC,IAAI,OAAO,EAAE;4BACT,QAAQ,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,MAAM,OAAO,KAAK,EAAE,CAAC,CAAC;yBAC/E;qBACJ;iBACJ;aACJ;SACJ;IACL,CAAC;CAAA;AAlBD,oFAkBC;AACD,SAAsB,0BAA0B,CAAC,YAA2B;;QACxE,KAAK,MAAM,SAAS,IAAI,YAAY,CAAC,iBAAiB,EAAE,EAAE;YACtD,oCAAoC,CAAC,SAAS,CAAC,CAAC;SACnD;IACL,CAAC;CAAA;AAJD,gEAIC"}
@@ -0,0 +1,3 @@
1
+ import { NodeIdLike } from "node-opcua-nodeid";
2
+ import { UAObject, UAVariable } from "node-opcua-address-space-base";
3
+ export declare function registerNodePromoter(nodeId: NodeIdLike, promoter: ((node: UAVariable) => void) | ((node: UAObject) => void)): void;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerNodePromoter = void 0;
4
+ const node_opcua_nodeid_1 = require("node-opcua-nodeid");
5
+ const namespace_post_step_1 = require("./namespace_post_step");
6
+ function registerNodePromoter(nodeId, promoter) {
7
+ namespace_post_step_1.g_promotableObject[(0, node_opcua_nodeid_1.resolveNodeId)(nodeId).toString()] = promoter;
8
+ }
9
+ exports.registerNodePromoter = registerNodePromoter;
10
+ //# sourceMappingURL=register_node_promoter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register_node_promoter.js","sourceRoot":"","sources":["../../../source/loader/register_node_promoter.ts"],"names":[],"mappings":";;;AAAA,yDAA8D;AAG9D,+DAA2D;AAE3D,SAAgB,oBAAoB,CAAC,MAAkB,EAAE,QAAmE;IACxH,wCAAkB,CAAC,IAAA,iCAAa,EAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC;AACpE,CAAC;AAFD,oDAEC"}
@@ -0,0 +1,6 @@
1
+ import { INamespace } from "node-opcua-address-space-base";
2
+ import { INamespaceAlarmAndCondition } from "./namespace_alarm_and_condition";
3
+ import { INamespaceDataAccess } from "./namespace_data_access";
4
+ import { INamespaceMachineState } from "./namespace_machine_state";
5
+ export interface Namespace extends INamespace, INamespaceAlarmAndCondition, INamespaceDataAccess, INamespaceMachineState {
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=namespace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../source/namespace.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import { UAEventType } from "node-opcua-address-space-base";
2
+ import { NodeId } from "node-opcua-nodeid";
3
+ import { UAAcknowledgeableConditionEx } from "../src/alarms_and_conditions/ua_acknowledgeable_condition_impl";
4
+ import { UAAlarmConditionEx } from "../src/alarms_and_conditions/ua_alarm_condition_impl";
5
+ import { UAConditionEx } from "../src/alarms_and_conditions/ua_condition_impl";
6
+ import { UADiscreteAlarmEx } from "../src/alarms_and_conditions/ua_discrete_alarm_impl";
7
+ import { UAExclusiveDeviationAlarmEx } from "../src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl";
8
+ import { UAExclusiveLimitAlarmEx } from "../src/alarms_and_conditions/ua_exclusive_limit_alarm_impl";
9
+ import { UALimitAlarmEx } from "../src/alarms_and_conditions/ua_limit_alarm_impl";
10
+ import { UANonExclusiveDeviationAlarmEx } from "../src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl";
11
+ import { UANonExclusiveLimitAlarmEx } from "../src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl";
12
+ import { UAOffNormalAlarmEx } from "../src/alarms_and_conditions/ua_off_normal_alarm_impl";
13
+ export interface INamespaceAlarmAndCondition {
14
+ instantiateCondition(conditionTypeId: UAEventType | NodeId | string, options: any, data?: any): UAConditionEx;
15
+ instantiateAcknowledgeableCondition(conditionTypeId: UAEventType | NodeId | string, options: any, data?: any): UAAcknowledgeableConditionEx;
16
+ instantiateAlarmCondition(alarmConditionTypeId: UAEventType | NodeId | string, options: any, data?: any): UAAlarmConditionEx;
17
+ instantiateLimitAlarm(limitAlarmTypeId: UAEventType | NodeId | string, options: any, data?: any): UALimitAlarmEx;
18
+ instantiateExclusiveLimitAlarm(exclusiveLimitAlarmTypeId: UAEventType | NodeId | string, options: any, data?: any): UAExclusiveLimitAlarmEx;
19
+ instantiateExclusiveDeviationAlarm(options: any, data?: any): UAExclusiveDeviationAlarmEx;
20
+ instantiateNonExclusiveLimitAlarm(nonExclusiveLimitAlarmTypeId: UAEventType | NodeId | string, options: any, data?: any): UANonExclusiveLimitAlarmEx;
21
+ instantiateNonExclusiveDeviationAlarm(options: any, data?: any): UANonExclusiveDeviationAlarmEx;
22
+ instantiateDiscreteAlarm(discreteAlarmType: UAEventType | NodeId | string, options: any, data?: any): UADiscreteAlarmEx;
23
+ instantiateOffNormalAlarm(options: any, data?: any): UAOffNormalAlarmEx;
24
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=namespace_alarm_and_condition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace_alarm_and_condition.js","sourceRoot":"","sources":["../../source/namespace_alarm_and_condition.ts"],"names":[],"mappings":""}
@@ -0,0 +1,42 @@
1
+ import { AddVariableOptionsWithoutValue, AddYArrayItemOptions, BindVariableOptions } from "node-opcua-address-space-base";
2
+ import { NodeIdLike } from "node-opcua-nodeid";
3
+ import { UAAnalogItem, UADataItem } from "node-opcua-nodeset-ua";
4
+ import { EUInformation, EUInformationOptions } from "node-opcua-types";
5
+ import { DataType, VariantArrayType } from "node-opcua-variant";
6
+ import { UAMultiStateDiscreteEx } from "./interfaces/data_access/ua_multistate_discrete_ex";
7
+ import { UAMultiStateValueDiscreteEx } from "./interfaces/data_access/ua_multistate_value_discrete_ex";
8
+ import { UATwoStateDiscreteEx } from "./interfaces/data_access/ua_two_state_discrete_ex";
9
+ import { AddMultiStateDiscreteOptions, AddMultiStateValueDiscreteOptions, AddTwoStateDiscreteOptions, AddTwoStateVariableOptions } from "./address_space_ts";
10
+ import { UATwoStateVariableEx } from "./ua_two_state_variable_ex";
11
+ import { UAYArrayItemEx } from "./interfaces/data_access/ua_y_array_item_ex";
12
+ export interface AddDataItemOptions extends AddVariableOptionsWithoutValue {
13
+ arrayType?: VariantArrayType;
14
+ value?: BindVariableOptions;
15
+ /** @example "(tempA -25) + tempB" */
16
+ definition?: string;
17
+ /** @example 0.5 */
18
+ valuePrecision?: number;
19
+ }
20
+ export interface AddAnalogDataItemOptions extends AddDataItemOptions {
21
+ value?: BindVariableOptions;
22
+ engineeringUnitsRange?: {
23
+ low: number;
24
+ high: number;
25
+ };
26
+ instrumentRange?: {
27
+ low: number;
28
+ high: number;
29
+ };
30
+ engineeringUnits?: EUInformationOptions | EUInformation;
31
+ minimumSamplingInterval?: number;
32
+ dataType?: string | NodeIdLike;
33
+ }
34
+ export interface INamespaceDataAccess {
35
+ addDataItem<T, DT extends DataType>(options: AddDataItemOptions): UADataItem<T, DT>;
36
+ addAnalogDataItem<T, DT extends DataType>(options: AddAnalogDataItemOptions): UAAnalogItem<T, DT>;
37
+ addYArrayItem<DT extends DataType.Double | DataType.Float>(options: AddYArrayItemOptions): UAYArrayItemEx<DT>;
38
+ addTwoStateVariable(options: AddTwoStateVariableOptions): UATwoStateVariableEx;
39
+ addTwoStateDiscrete(options: AddTwoStateDiscreteOptions): UATwoStateDiscreteEx;
40
+ addMultiStateDiscrete<T, DT extends DataType>(options: AddMultiStateDiscreteOptions): UAMultiStateDiscreteEx<T, DT>;
41
+ addMultiStateValueDiscrete<T, DT extends DataType>(options: AddMultiStateValueDiscreteOptions): UAMultiStateValueDiscreteEx<T, DT>;
42
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=namespace_data_access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace_data_access.js","sourceRoot":"","sources":["../../source/namespace_data_access.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { UAObject, UAObjectType } from "node-opcua-address-space-base";
2
+ import { UAState } from "node-opcua-nodeset-ua";
3
+ import { UATransitionEx } from "./interfaces/state_machine/ua_transition_ex";
4
+ export interface INamespaceMachineState {
5
+ addState(component: UAObject | UAObjectType, stateName: string, stateNumber: number, isInitialState?: boolean): UAState;
6
+ addTransition(component: UAObject | UAObjectType, /* StateMachine | StateMachineType,*/ fromState: string, toState: string, transitionNumber: number): UATransitionEx;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=namespace_machine_state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace_machine_state.js","sourceRoot":"","sources":["../../source/namespace_machine_state.ts"],"names":[],"mappings":""}
@@ -0,0 +1,55 @@
1
+ /// <reference types="node" />
2
+ import { DataValue } from "node-opcua-data-value";
3
+ import { NodeId } from "node-opcua-nodeid";
4
+ import { ArgumentDefinition, BrowseDescriptionLike, CallMethodRequestLike, IBasicSession, MethodId, ResponseCallback } from "node-opcua-pseudo-session";
5
+ import { BrowseResult } from "node-opcua-service-browse";
6
+ import { CallMethodResult } from "node-opcua-service-call";
7
+ import { BrowsePath, BrowsePathResult } from "node-opcua-service-translate-browse-path";
8
+ import { StatusCode } from "node-opcua-status-code";
9
+ import { WriteValueOptions, ReadValueIdOptions } from "node-opcua-types";
10
+ import { IAddressSpace, ISessionContext } from "node-opcua-address-space-base";
11
+ /**
12
+ * Pseudo session is an helper object that exposes the same async methods
13
+ * than the ClientSession. It can be used on a server address space.
14
+ *
15
+ * Code reused !
16
+ * The primary benefit of this object is that its makes advanced OPCUA
17
+ * operations that uses browse, translate, read, write etc similar
18
+ * whether we work inside a server or through a client session.
19
+ *
20
+ */
21
+ export declare class PseudoSession implements IBasicSession {
22
+ requestedMaxReferencesPerNode: number;
23
+ private _sessionId;
24
+ private readonly addressSpace;
25
+ private readonly continuationPointManager;
26
+ private readonly context;
27
+ constructor(addressSpace: IAddressSpace, context?: ISessionContext);
28
+ getSessionId(): NodeId;
29
+ browse(nodeToBrowse: BrowseDescriptionLike, callback: ResponseCallback<BrowseResult>): void;
30
+ browse(nodesToBrowse: BrowseDescriptionLike[], callback: ResponseCallback<BrowseResult[]>): void;
31
+ browse(nodeToBrowse: BrowseDescriptionLike): Promise<BrowseResult>;
32
+ browse(nodesToBrowse: BrowseDescriptionLike[]): Promise<BrowseResult[]>;
33
+ read(nodeToRead: ReadValueIdOptions, callback: ResponseCallback<DataValue>): void;
34
+ read(nodesToRead: ReadValueIdOptions[], callback: ResponseCallback<DataValue[]>): void;
35
+ read(nodeToRead: ReadValueIdOptions): Promise<DataValue>;
36
+ read(nodesToRead: ReadValueIdOptions[]): Promise<DataValue[]>;
37
+ browseNext(continuationPoint: Buffer, releaseContinuationPoints: boolean, callback: ResponseCallback<BrowseResult>): void;
38
+ browseNext(continuationPoints: Buffer[], releaseContinuationPoints: boolean, callback: ResponseCallback<BrowseResult[]>): void;
39
+ browseNext(continuationPoint: Buffer, releaseContinuationPoints: boolean): Promise<BrowseResult>;
40
+ browseNext(continuationPoints: Buffer[], releaseContinuationPoints: boolean): Promise<BrowseResult[]>;
41
+ call(methodToCall: CallMethodRequestLike, callback: ResponseCallback<CallMethodResult>): void;
42
+ call(methodsToCall: CallMethodRequestLike[], callback: ResponseCallback<CallMethodResult[]>): void;
43
+ call(methodToCall: CallMethodRequestLike): Promise<CallMethodResult>;
44
+ call(methodsToCall: CallMethodRequestLike[]): Promise<CallMethodResult[]>;
45
+ getArgumentDefinition(methodId: MethodId): Promise<ArgumentDefinition>;
46
+ getArgumentDefinition(methodId: MethodId, callback: ResponseCallback<ArgumentDefinition>): void;
47
+ translateBrowsePath(browsePaths: BrowsePath[], callback: ResponseCallback<BrowsePathResult[]>): void;
48
+ translateBrowsePath(browsePath: BrowsePath, callback: ResponseCallback<BrowsePathResult>): void;
49
+ translateBrowsePath(browsePath: BrowsePath): Promise<BrowsePathResult>;
50
+ translateBrowsePath(browsePaths: BrowsePath[]): Promise<BrowsePathResult[]>;
51
+ write(nodeToWrite: WriteValueOptions, callback: ResponseCallback<StatusCode>): void;
52
+ write(nodesToWrite: WriteValueOptions[], callback: ResponseCallback<StatusCode[]>): void;
53
+ write(nodeToWrite: WriteValueOptions): Promise<StatusCode>;
54
+ write(nodesToWrite: WriteValueOptions[]): Promise<StatusCode[]>;
55
+ }
@@ -0,0 +1,205 @@
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) => {
60
+ (0, node_opcua_assert_1.assert)(!result.continuationPoint);
61
+ const truncatedResult = this.continuationPointManager.register(this.requestedMaxReferencesPerNode, result.references || []);
62
+ (0, node_opcua_assert_1.assert)(truncatedResult.statusCode === node_opcua_status_code_1.StatusCodes.Good);
63
+ truncatedResult.statusCode = result.statusCode;
64
+ return new node_opcua_service_browse_1.BrowseResult(truncatedResult);
65
+ });
66
+ callback(null, isArray ? results : results[0]);
67
+ });
68
+ }
69
+ read(nodesToRead, callback) {
70
+ const isArray = Array.isArray(nodesToRead);
71
+ if (!isArray) {
72
+ nodesToRead = [nodesToRead];
73
+ }
74
+ const _nodesToRead = nodesToRead;
75
+ const context = this.context;
76
+ setImmediate(() => {
77
+ async.map(_nodesToRead, (nodeToRead, innerCallback) => {
78
+ const obj = this.addressSpace.findNode(nodeToRead.nodeId);
79
+ if (!obj || obj.nodeClass !== node_opcua_data_model_1.NodeClass.Variable || nodeToRead.attributeId !== node_opcua_data_model_1.AttributeIds.Value) {
80
+ return innerCallback();
81
+ }
82
+ obj.readValueAsync(context, innerCallback);
83
+ }, (err) => {
84
+ const dataValues = _nodesToRead.map((nodeToRead) => {
85
+ (0, node_opcua_assert_1.assert)(!!nodeToRead.nodeId, "expecting a nodeId");
86
+ (0, node_opcua_assert_1.assert)(!!nodeToRead.attributeId, "expecting a attributeId");
87
+ const nodeId = nodeToRead.nodeId;
88
+ const attributeId = nodeToRead.attributeId;
89
+ const indexRange = nodeToRead.indexRange;
90
+ const dataEncoding = nodeToRead.dataEncoding;
91
+ const obj = this.addressSpace.findNode(nodeId);
92
+ if (!obj) {
93
+ return new node_opcua_data_value_1.DataValue({ statusCode: node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown });
94
+ }
95
+ const context = this.context;
96
+ const dataValue = obj.readAttribute(context, attributeId, indexRange, dataEncoding);
97
+ return dataValue;
98
+ });
99
+ callback(null, isArray ? dataValues : dataValues[0]);
100
+ });
101
+ });
102
+ }
103
+ browseNext(continuationPoints, releaseContinuationPoints, callback) {
104
+ setImmediate(() => {
105
+ if (continuationPoints instanceof Buffer) {
106
+ return this.browseNext([continuationPoints], releaseContinuationPoints, (err, _results) => {
107
+ if (err) {
108
+ return callback(err);
109
+ }
110
+ callback(null, _results[0]);
111
+ });
112
+ }
113
+ let results;
114
+ if (releaseContinuationPoints) {
115
+ // releaseContinuationPoints = TRUE
116
+ // passed continuationPoints shall be reset to free resources in
117
+ // the Server. The continuation points are released and the results
118
+ // and diagnosticInfos arrays are empty.
119
+ results = continuationPoints.map((continuationPoint) => {
120
+ return this.continuationPointManager.cancel(continuationPoint);
121
+ });
122
+ }
123
+ else {
124
+ // let extract data from continuation points
125
+ // releaseContinuationPoints = FALSE
126
+ // passed continuationPoints shall be used to get the next set of
127
+ // browse information.
128
+ results = continuationPoints.map((continuationPoint) => {
129
+ return this.continuationPointManager.getNext(continuationPoint);
130
+ });
131
+ }
132
+ results = results.map((r) => new node_opcua_service_browse_1.BrowseResult(r));
133
+ callback(null, results);
134
+ });
135
+ }
136
+ call(methodsToCall, callback) {
137
+ const isArray = Array.isArray(methodsToCall);
138
+ if (!isArray) {
139
+ methodsToCall = [methodsToCall];
140
+ }
141
+ async.map(methodsToCall, (methodToCall, innerCallback) => {
142
+ const callMethodRequest = new node_opcua_service_call_1.CallMethodRequest(methodToCall);
143
+ (0, call_helpers_1.callMethodHelper)(this.context, this.addressSpace, callMethodRequest, (err, result) => {
144
+ let callMethodResult;
145
+ if (err) {
146
+ errorLog("Internal Error = ", err);
147
+ callMethodResult = new node_opcua_service_call_1.CallMethodResult({
148
+ statusCode: node_opcua_status_code_1.StatusCodes.BadInternalError
149
+ });
150
+ }
151
+ else {
152
+ callMethodResult = new node_opcua_service_call_1.CallMethodResult(result);
153
+ }
154
+ innerCallback(null, callMethodResult);
155
+ });
156
+ }, (err, callMethodResults) => {
157
+ callback(null, isArray ? callMethodResults : callMethodResults[0]);
158
+ });
159
+ }
160
+ getArgumentDefinition(methodId, callback) {
161
+ return (0, node_opcua_pseudo_session_1.getArgumentDefinitionHelper)(this, methodId, callback);
162
+ }
163
+ translateBrowsePath(browsePaths, callback) {
164
+ const isArray = Array.isArray(browsePaths);
165
+ if (!isArray) {
166
+ browsePaths = [browsePaths];
167
+ }
168
+ const browsePathResults = browsePaths.map((browsePath) => {
169
+ return this.addressSpace.browsePath(browsePath);
170
+ });
171
+ callback(null, isArray ? browsePathResults : browsePathResults[0]);
172
+ }
173
+ write(nodesToWrite, callback) {
174
+ const isArray = nodesToWrite instanceof Array;
175
+ const _nodesToWrite = !isArray ? [nodesToWrite] : nodesToWrite;
176
+ const context = this.context;
177
+ setImmediate(() => {
178
+ const statusCodesPromises = _nodesToWrite.map((nodeToWrite) => {
179
+ (0, node_opcua_assert_1.assert)(!!nodeToWrite.nodeId, "expecting a nodeId");
180
+ (0, node_opcua_assert_1.assert)(!!nodeToWrite.attributeId, "expecting a attributeId");
181
+ const nodeId = nodeToWrite.nodeId;
182
+ const obj = this.addressSpace.findNode(nodeId);
183
+ if (!obj) {
184
+ return node_opcua_status_code_1.StatusCodes.BadNodeIdUnknown;
185
+ }
186
+ return (0, util_1.promisify)(obj.writeAttribute).call(obj, context, nodeToWrite);
187
+ });
188
+ Promise.all(statusCodesPromises).then((statusCodes) => {
189
+ callback(null, isArray ? statusCodes : statusCodes[0]);
190
+ });
191
+ });
192
+ }
193
+ }
194
+ exports.PseudoSession = PseudoSession;
195
+ // tslint:disable:no-var-requires
196
+ // tslint:disable:max-line-length
197
+ const thenify = require("thenify");
198
+ PseudoSession.prototype.read = thenify.withCallback(PseudoSession.prototype.read);
199
+ PseudoSession.prototype.write = thenify.withCallback(PseudoSession.prototype.write);
200
+ PseudoSession.prototype.browse = thenify.withCallback(PseudoSession.prototype.browse);
201
+ PseudoSession.prototype.browseNext = thenify.withCallback(PseudoSession.prototype.browseNext);
202
+ PseudoSession.prototype.getArgumentDefinition = thenify.withCallback(PseudoSession.prototype.getArgumentDefinition);
203
+ PseudoSession.prototype.call = thenify.withCallback(PseudoSession.prototype.call);
204
+ PseudoSession.prototype.translateBrowsePath = thenify.withCallback(PseudoSession.prototype.translateBrowsePath);
205
+ //# sourceMappingURL=pseudo_session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pseudo_session.js","sourceRoot":"","sources":["../../source/pseudo_session.ts"],"names":[],"mappings":"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"}