node-opcua-address-space 2.54.0 → 2.57.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 (336) hide show
  1. package/LICENSE +20 -20
  2. package/dist/source/address_space_ts.js.map +1 -1
  3. package/dist/source/continuation_points/continuation_point_manager.d.ts +27 -16
  4. package/dist/source/continuation_points/continuation_point_manager.js +141 -48
  5. package/dist/source/continuation_points/continuation_point_manager.js.map +1 -1
  6. package/dist/source/helpers/adjust_browse_direction.js.map +1 -1
  7. package/dist/source/helpers/call_helpers.js.map +1 -1
  8. package/dist/source/helpers/check_event_clause.js.map +1 -1
  9. package/dist/source/helpers/coerce_enum_value.js.map +1 -1
  10. package/dist/source/helpers/ensure_secure_access.js +0 -13
  11. package/dist/source/helpers/ensure_secure_access.js.map +1 -1
  12. package/dist/source/helpers/resolve_opaque_on_address_space.js.map +1 -1
  13. package/dist/source/loader/load_nodeset2.js +30 -6
  14. package/dist/source/loader/load_nodeset2.js.map +1 -1
  15. package/dist/source/loader/namespace_post_step.js.map +1 -1
  16. package/dist/source/loader/register_node_promoter.js.map +1 -1
  17. package/dist/source/namespace_machine_state.d.ts +1 -1
  18. package/dist/source/pseudo_session.js +23 -24
  19. package/dist/source/pseudo_session.js.map +1 -1
  20. package/dist/source/session_context.js.map +1 -1
  21. package/dist/source/set_namespace_meta_data.js.map +1 -1
  22. package/dist/src/address_space.d.ts +7 -8
  23. package/dist/src/address_space.js +2 -2
  24. package/dist/src/address_space.js.map +1 -1
  25. package/dist/src/address_space_private.d.ts +4 -5
  26. package/dist/src/alarms_and_conditions/check_where_clause.js +1 -1
  27. package/dist/src/alarms_and_conditions/check_where_clause.js.map +1 -1
  28. package/dist/src/alarms_and_conditions/condition.js.map +1 -1
  29. package/dist/src/alarms_and_conditions/extract_event_fields.js.map +1 -1
  30. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -1
  31. package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +1 -1
  32. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -1
  33. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -1
  34. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -1
  35. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -1
  36. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -1
  37. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -1
  38. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -1
  39. package/dist/src/base_node_impl.js.map +1 -1
  40. package/dist/src/data_access/add_dataItem_stuff.js.map +1 -1
  41. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js.map +1 -1
  42. package/dist/src/data_access/ua_multistate_discrete_impl.js.map +1 -1
  43. package/dist/src/event_data.js.map +1 -1
  44. package/dist/src/extension_object_array_node.js.map +1 -1
  45. package/dist/src/historical_access/address_space_historical_data_node.js +28 -59
  46. package/dist/src/historical_access/address_space_historical_data_node.js.map +1 -1
  47. package/dist/src/namespace_impl.d.ts +2 -2
  48. package/dist/src/namespace_impl.js +6 -6
  49. package/dist/src/namespace_impl.js.map +1 -1
  50. package/dist/src/nodeid_manager.js +1 -4
  51. package/dist/src/nodeid_manager.js.map +1 -1
  52. package/dist/src/nodeset_tools/nodeset_to_xml.js +1 -1
  53. package/dist/src/nodeset_tools/nodeset_to_xml.js.map +1 -1
  54. package/dist/src/nodeset_tools/typedictionary_to_xml.d.ts +1 -1
  55. package/dist/src/nodeset_tools/typedictionary_to_xml.js +3 -2
  56. package/dist/src/nodeset_tools/typedictionary_to_xml.js.map +1 -1
  57. package/dist/src/reference_impl.js +3 -1
  58. package/dist/src/reference_impl.js.map +1 -1
  59. package/dist/src/state_machine/finite_state_machine.js.map +1 -1
  60. package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +1 -1
  61. package/dist/src/state_machine/ua_two_state_variable.js.map +1 -1
  62. package/dist/src/tool_isSupertypeOf.js.map +1 -1
  63. package/dist/src/ua_method_impl.d.ts +1 -1
  64. package/dist/src/ua_method_impl.js.map +1 -1
  65. package/dist/src/ua_object_impl.d.ts +10 -6
  66. package/dist/src/ua_object_impl.js +1 -1
  67. package/dist/src/ua_object_impl.js.map +1 -1
  68. package/dist/src/ua_object_type_impl.js.map +1 -1
  69. package/dist/src/ua_reference_type_impl.js +3 -1
  70. package/dist/src/ua_reference_type_impl.js.map +1 -1
  71. package/dist/src/ua_variable_impl.d.ts +8 -7
  72. package/dist/src/ua_variable_impl.js +6 -10
  73. package/dist/src/ua_variable_impl.js.map +1 -1
  74. package/dist/src/ua_variable_type_impl.js.map +1 -1
  75. package/dist/src/ua_view_impl.js.map +1 -1
  76. package/distHelpers/alarms_and_conditions_demo.js.map +1 -1
  77. package/distHelpers/boiler_system.d.ts +1 -1
  78. package/distHelpers/boiler_system.js +1 -2
  79. package/distHelpers/boiler_system.js.map +1 -1
  80. package/distHelpers/create_minimalist_address_space_nodeset.js +1 -0
  81. package/distHelpers/create_minimalist_address_space_nodeset.js.map +1 -1
  82. package/distHelpers/date_utils.d.ts +3 -0
  83. package/distHelpers/date_utils.js +10 -0
  84. package/distHelpers/date_utils.js.map +1 -0
  85. package/distHelpers/get_mini_address_space.js.map +1 -1
  86. package/distHelpers/index.d.ts +2 -0
  87. package/distHelpers/index.js +2 -0
  88. package/distHelpers/index.js.map +1 -1
  89. package/distHelpers/mock_session.d.ts +14 -0
  90. package/distHelpers/mock_session.js +26 -0
  91. package/distHelpers/mock_session.js.map +1 -0
  92. package/generate.js +1 -1
  93. package/nodeJS.d.ts +1 -1
  94. package/package.json +39 -40
  95. package/source/address_space_ts.ts +0 -3
  96. package/source/continuation_points/continuation_point_manager.ts +178 -64
  97. package/source/helpers/adjust_browse_direction.ts +3 -3
  98. package/source/helpers/argument_list.ts +1 -1
  99. package/source/helpers/call_helpers.ts +0 -1
  100. package/source/helpers/check_event_clause.ts +2 -9
  101. package/source/helpers/coerce_enum_value.ts +3 -3
  102. package/source/helpers/ensure_secure_access.ts +1 -13
  103. package/source/helpers/resolve_opaque_on_address_space.ts +4 -1
  104. package/source/interfaces/alarms_and_conditions/condition_info_i.ts +13 -13
  105. package/source/interfaces/data_access/ua_multistate_value_discrete_ex.ts +0 -1
  106. package/source/interfaces/data_access/ua_y_array_item_ex.ts +4 -2
  107. package/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +5 -1
  108. package/source/interfaces/state_machine/ua_state_machine_type.ts +2 -2
  109. package/source/loader/load_nodeset2.ts +41 -9
  110. package/source/loader/namespace_post_step.ts +1 -2
  111. package/source/loader/register_node_promoter.ts +4 -1
  112. package/source/namespace.ts +4 -6
  113. package/source/namespace_machine_state.ts +1 -2
  114. package/source/pseudo_session.ts +37 -29
  115. package/source/session_context.ts +1 -8
  116. package/source/set_namespace_meta_data.ts +21 -15
  117. package/source/xml_writer.ts +0 -1
  118. package/source_nodejs/index.ts +1 -1
  119. package/src/address_space.ts +17 -16
  120. package/src/address_space_private.ts +7 -12
  121. package/src/alarms_and_conditions/check_where_clause.ts +21 -22
  122. package/src/alarms_and_conditions/condition.ts +0 -1
  123. package/src/alarms_and_conditions/extract_event_fields.ts +0 -1
  124. package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +7 -4
  125. package/src/alarms_and_conditions/ua_base_event_impl.ts +11 -15
  126. package/src/alarms_and_conditions/ua_condition_impl.ts +22 -31
  127. package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +39 -33
  128. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +2 -2
  129. package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +4 -5
  130. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +16 -16
  131. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +8 -8
  132. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +9 -10
  133. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +2 -4
  134. package/src/apply_condition_refresh.ts +2 -2
  135. package/src/base_node_impl.ts +2 -2
  136. package/src/data_access/add_dataItem_stuff.ts +4 -4
  137. package/src/data_access/check_variant_compatibility_ua_analog_item.ts +12 -15
  138. package/src/data_access/ua_multistate_discrete_impl.ts +6 -3
  139. package/src/data_access/ua_multistate_value_discrete.ts +1 -1
  140. package/src/event_data.ts +1 -7
  141. package/src/extension_object_array_node.ts +4 -10
  142. package/src/historical_access/address_space_historical_data_node.ts +39 -63
  143. package/src/namespace_impl.ts +5 -5
  144. package/src/namespace_private.ts +1 -1
  145. package/src/nodeid_manager.ts +2 -5
  146. package/src/nodeset_tools/nodeset_to_xml.ts +5 -5
  147. package/src/nodeset_tools/typedictionary_to_xml.ts +7 -5
  148. package/src/reference_impl.ts +4 -2
  149. package/src/state_machine/finite_state_machine.ts +426 -428
  150. package/src/state_machine/ua_shelving_state_machine_ex.ts +13 -4
  151. package/src/state_machine/ua_two_state_variable.ts +5 -7
  152. package/src/tool_isSupertypeOf.ts +2 -6
  153. package/src/ua_condition_type.ts +0 -1
  154. package/src/ua_method_impl.ts +18 -8
  155. package/src/ua_object_impl.ts +13 -8
  156. package/src/ua_object_type_impl.ts +7 -4
  157. package/src/ua_reference_type_impl.ts +6 -12
  158. package/src/ua_variable_impl.ts +11 -15
  159. package/src/ua_variable_type_impl.ts +2 -2
  160. package/src/ua_view_impl.ts +3 -6
  161. package/testHelpers.d.ts +1 -1
  162. package/test_helpers/add_event_generator_object.ts +2 -2
  163. package/test_helpers/alarms_and_conditions_demo.ts +9 -8
  164. package/test_helpers/assertHasMatchingReference.ts +43 -43
  165. package/test_helpers/boiler_system.ts +610 -618
  166. package/test_helpers/create_minimalist_address_space_nodeset.ts +13 -13
  167. package/test_helpers/date_utils.ts +5 -0
  168. package/test_helpers/dump_statemachine.ts +2 -2
  169. package/test_helpers/get_address_space_fixture.ts +30 -30
  170. package/test_helpers/get_mini_address_space.ts +42 -42
  171. package/test_helpers/index.ts +13 -11
  172. package/test_helpers/mock_session.ts +34 -0
  173. package/test_helpers/test_fixtures/dataType_in_separateNamespace.xml +150 -150
  174. package/test_helpers/test_fixtures/dataType_in_separateNamespace_basic.xml +57 -57
  175. package/test_helpers/test_fixtures/dataType_in_separateNamespace_mix.xml +135 -135
  176. package/test_helpers/test_fixtures/dataType_issue.xml +80 -0
  177. package/test_helpers/test_fixtures/dataType_withEnumeration.xml +82 -82
  178. package/test_helpers/test_fixtures/dataType_with_isOptionSet.xml +194 -194
  179. package/test_helpers/test_fixtures/dataType_with_union.xml +1 -1
  180. package/test_helpers/test_fixtures/datatype_as_per_1.04.xml +1 -2
  181. package/test_helpers/test_fixtures/fixture_empty_nodeset2.xml +106 -106
  182. package/test_helpers/test_fixtures/fixture_simple_statemachine_nodeset2.xml +1303 -1303
  183. package/test_helpers/test_fixtures/fixuture_nodeset_objects_with_some_methods.xml +362 -362
  184. package/test_helpers/test_fixtures/issue_846.xml +3172 -3172
  185. package/test_helpers/test_fixtures/issue_899_variable_with_nodeid_value.xml +32 -32
  186. package/test_helpers/test_fixtures/mini.nodeset.withVariousVariables.xml +194 -194
  187. package/test_helpers/test_fixtures/minimalist_nodeset_with_models.xml +8 -8
  188. package/test_helpers/test_fixtures/minimalist_nodeset_with_models_more_complex.xml +16 -16
  189. package/test_helpers/test_fixtures/nodeset_with_analog_items.xml +45 -45
  190. package/.nyc_output/0d52ec22-23b7-4df1-9695-d5cf1dc6a6a7.json +0 -1
  191. package/.nyc_output/processinfo/0d52ec22-23b7-4df1-9695-d5cf1dc6a6a7.json +0 -1
  192. package/.nyc_output/processinfo/index.json +0 -1
  193. package/.vscode/settings.json +0 -7
  194. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.d.ts +0 -23
  195. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js +0 -3
  196. package/dist/source/interfaces/alarms_and_conditions/ua_condition_base_i.js.map +0 -1
  197. package/dist/source/interfaces/data_access/ua_discrete_item.d.ts +0 -6
  198. package/dist/source/interfaces/data_access/ua_discrete_item.js +0 -3
  199. package/dist/source/interfaces/data_access/ua_discrete_item.js.map +0 -1
  200. package/dist/source/interfaces/data_access/ua_multistate_discrete.d.ts +0 -25
  201. package/dist/source/interfaces/data_access/ua_multistate_discrete.js +0 -3
  202. package/dist/source/interfaces/data_access/ua_multistate_discrete.js.map +0 -1
  203. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.d.ts +0 -27
  204. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js +0 -3
  205. package/dist/source/interfaces/data_access/ua_multistate_value_discrete.js.map +0 -1
  206. package/dist/source/interfaces/data_access/ua_two_state_discrete.d.ts +0 -17
  207. package/dist/source/interfaces/data_access/ua_two_state_discrete.js +0 -3
  208. package/dist/source/interfaces/data_access/ua_two_state_discrete.js.map +0 -1
  209. package/dist/source/interfaces/data_access/ua_y_array_item.d.ts +0 -19
  210. package/dist/source/interfaces/data_access/ua_y_array_item.js +0 -3
  211. package/dist/source/interfaces/data_access/ua_y_array_item.js.map +0 -1
  212. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.d.ts +0 -11
  213. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js +0 -3
  214. package/dist/source/interfaces/state_machine/exclusive_limit_state_machine.js.map +0 -1
  215. package/dist/source/interfaces/state_machine/finite_state_machine.d.ts +0 -70
  216. package/dist/source/interfaces/state_machine/finite_state_machine.js +0 -3
  217. package/dist/source/interfaces/state_machine/finite_state_machine.js.map +0 -1
  218. package/dist/source/interfaces/state_machine/program_finite_state_machine.d.ts +0 -74
  219. package/dist/source/interfaces/state_machine/program_finite_state_machine.js +0 -3
  220. package/dist/source/interfaces/state_machine/program_finite_state_machine.js.map +0 -1
  221. package/dist/source/interfaces/state_machine/state_machine.d.ts +0 -342
  222. package/dist/source/interfaces/state_machine/state_machine.js +0 -3
  223. package/dist/source/interfaces/state_machine/state_machine.js.map +0 -1
  224. package/dist/source/interfaces/state_machine/ua_finite_state_variable.d.ts +0 -18
  225. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js +0 -3
  226. package/dist/source/interfaces/state_machine/ua_finite_state_variable.js.map +0 -1
  227. package/dist/source/interfaces/state_machine/ua_state_variable.d.ts +0 -29
  228. package/dist/source/interfaces/state_machine/ua_state_variable.js +0 -3
  229. package/dist/source/interfaces/state_machine/ua_state_variable.js.map +0 -1
  230. package/dist/source/interfaces/state_machine/ua_two_state_variable.d.ts +0 -26
  231. package/dist/source/interfaces/state_machine/ua_two_state_variable.js +0 -3
  232. package/dist/source/interfaces/state_machine/ua_two_state_variable.js.map +0 -1
  233. package/dist/source/interfaces/subscription_diagnostics_variable.d.ts +0 -41
  234. package/dist/source/interfaces/subscription_diagnostics_variable.js +0 -3
  235. package/dist/source/interfaces/subscription_diagnostics_variable.js.map +0 -1
  236. package/dist/source/ua_namespace_meta_data_type.d.ts +0 -71
  237. package/dist/source/ua_namespace_meta_data_type.js +0 -3
  238. package/dist/source/ua_namespace_meta_data_type.js.map +0 -1
  239. package/dist/src/alarms_and_conditions/base_event_type.d.ts +0 -26
  240. package/dist/src/alarms_and_conditions/base_event_type.js +0 -41
  241. package/dist/src/alarms_and_conditions/base_event_type.js.map +0 -1
  242. package/dist/src/alarms_and_conditions/shelving_state_machine.d.ts +0 -22
  243. package/dist/src/alarms_and_conditions/shelving_state_machine.js +0 -241
  244. package/dist/src/alarms_and_conditions/shelving_state_machine.js.map +0 -1
  245. package/dist/src/alarms_and_conditions/trip_alarm.d.ts +0 -16
  246. package/dist/src/alarms_and_conditions/trip_alarm.js +0 -21
  247. package/dist/src/alarms_and_conditions/trip_alarm.js.map +0 -1
  248. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.d.ts +0 -54
  249. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js +0 -255
  250. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_base.js.map +0 -1
  251. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.d.ts +0 -138
  252. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js +0 -460
  253. package/dist/src/alarms_and_conditions/ua_alarm_condition_base.js.map +0 -1
  254. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.d.ts +0 -35
  255. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js +0 -32
  256. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm.js.map +0 -1
  257. package/dist/src/alarms_and_conditions/ua_condition_base.d.ts +0 -191
  258. package/dist/src/alarms_and_conditions/ua_condition_base.js +0 -1029
  259. package/dist/src/alarms_and_conditions/ua_condition_base.js.map +0 -1
  260. package/dist/src/alarms_and_conditions/ua_discrete_alarm.d.ts +0 -11
  261. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js +0 -58
  262. package/dist/src/alarms_and_conditions/ua_discrete_alarm.js.map +0 -1
  263. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.d.ts +0 -24
  264. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js +0 -59
  265. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm.js.map +0 -1
  266. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.d.ts +0 -14
  267. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js +0 -17
  268. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm.js.map +0 -1
  269. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.d.ts +0 -22
  270. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js +0 -87
  271. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm.js.map +0 -1
  272. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.d.ts +0 -6
  273. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js +0 -11
  274. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm.js.map +0 -1
  275. package/dist/src/alarms_and_conditions/ua_limit_alarm.d.ts +0 -76
  276. package/dist/src/alarms_and_conditions/ua_limit_alarm.js +0 -237
  277. package/dist/src/alarms_and_conditions/ua_limit_alarm.js.map +0 -1
  278. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.d.ts +0 -27
  279. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js +0 -62
  280. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm.js.map +0 -1
  281. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.d.ts +0 -49
  282. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js +0 -176
  283. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm.js.map +0 -1
  284. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.d.ts +0 -47
  285. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js +0 -151
  286. package/dist/src/alarms_and_conditions/ua_off_normal_alarm.js.map +0 -1
  287. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.d.ts +0 -16
  288. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js +0 -18
  289. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm.js.map +0 -1
  290. package/dist/src/base_node.d.ts +0 -279
  291. package/dist/src/base_node.js +0 -1364
  292. package/dist/src/base_node.js.map +0 -1
  293. package/dist/src/data_access/ua_analog_item.d.ts +0 -13
  294. package/dist/src/data_access/ua_analog_item.js +0 -37
  295. package/dist/src/data_access/ua_analog_item.js.map +0 -1
  296. package/dist/src/data_access/ua_data_item.d.ts +0 -16
  297. package/dist/src/data_access/ua_data_item.js +0 -66
  298. package/dist/src/data_access/ua_data_item.js.map +0 -1
  299. package/dist/src/data_access/ua_multistate_discrete.d.ts +0 -23
  300. package/dist/src/data_access/ua_multistate_discrete.js +0 -131
  301. package/dist/src/data_access/ua_multistate_discrete.js.map +0 -1
  302. package/dist/src/namespace.d.ts +0 -479
  303. package/dist/src/namespace.js +0 -1774
  304. package/dist/src/namespace.js.map +0 -1
  305. package/dist/src/reference.d.ts +0 -43
  306. package/dist/src/reference.js +0 -138
  307. package/dist/src/reference.js.map +0 -1
  308. package/dist/src/session_context.d.ts +0 -4
  309. package/dist/src/session_context.js +0 -9
  310. package/dist/src/session_context.js.map +0 -1
  311. package/dist/src/ua_data_type.d.ts +0 -83
  312. package/dist/src/ua_data_type.js +0 -289
  313. package/dist/src/ua_data_type.js.map +0 -1
  314. package/dist/src/ua_method.d.ts +0 -42
  315. package/dist/src/ua_method.js +0 -204
  316. package/dist/src/ua_method.js.map +0 -1
  317. package/dist/src/ua_object.d.ts +0 -29
  318. package/dist/src/ua_object.js +0 -153
  319. package/dist/src/ua_object.js.map +0 -1
  320. package/dist/src/ua_object_type.d.ts +0 -49
  321. package/dist/src/ua_object_type.js +0 -124
  322. package/dist/src/ua_object_type.js.map +0 -1
  323. package/dist/src/ua_reference_type.d.ts +0 -42
  324. package/dist/src/ua_reference_type.js +0 -138
  325. package/dist/src/ua_reference_type.js.map +0 -1
  326. package/dist/src/ua_variable.d.ts +0 -346
  327. package/dist/src/ua_variable.js +0 -1721
  328. package/dist/src/ua_variable.js.map +0 -1
  329. package/dist/src/ua_variable_type.d.ts +0 -54
  330. package/dist/src/ua_variable_type.js +0 -555
  331. package/dist/src/ua_variable_type.js.map +0 -1
  332. package/dist/src/ua_view.d.ts +0 -16
  333. package/dist/src/ua_view.js +0 -42
  334. package/dist/src/ua_view.js.map +0 -1
  335. package/src/alarms_and_conditions/debug.log +0 -1
  336. package/test_helpers/test_fixtures/issue_849.xml +0 -3169
@@ -1,153 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UAObject = void 0;
4
- /**
5
- * @module node-opcua-address-space
6
- */
7
- const chalk = require("chalk");
8
- const node_opcua_assert_1 = require("node-opcua-assert");
9
- const node_opcua_basic_types_1 = require("node-opcua-basic-types");
10
- const node_opcua_data_model_1 = require("node-opcua-data-model");
11
- const node_opcua_data_model_2 = require("node-opcua-data-model");
12
- const node_opcua_data_value_1 = require("node-opcua-data-value");
13
- const node_opcua_date_time_1 = require("node-opcua-date-time");
14
- const node_opcua_nodeid_1 = require("node-opcua-nodeid");
15
- const node_opcua_status_code_1 = require("node-opcua-status-code");
16
- const node_opcua_variant_1 = require("node-opcua-variant");
17
- const base_node_1 = require("./base_node");
18
- const base_node_private_1 = require("./base_node_private");
19
- class UAObject extends base_node_1.BaseNode {
20
- constructor(options) {
21
- super(options);
22
- this.nodeClass = node_opcua_data_model_1.NodeClass.Object;
23
- this.eventNotifier = options.eventNotifier || 0;
24
- (0, node_opcua_assert_1.assert)(typeof this.eventNotifier === "number" && (0, node_opcua_basic_types_1.isValidByte)(this.eventNotifier));
25
- this.symbolicName = options.symbolicName || null;
26
- }
27
- get typeDefinitionObj() {
28
- return super.typeDefinitionObj;
29
- }
30
- readAttribute(context, attributeId) {
31
- const now = (0, node_opcua_date_time_1.getCurrentClock)();
32
- const options = {};
33
- switch (attributeId) {
34
- case node_opcua_data_model_2.AttributeIds.EventNotifier:
35
- (0, node_opcua_assert_1.assert)((0, node_opcua_basic_types_1.isValidByte)(this.eventNotifier));
36
- options.value = { dataType: node_opcua_variant_1.DataType.Byte, value: this.eventNotifier };
37
- options.serverTimestamp = now.timestamp;
38
- options.serverPicoseconds = now.picoseconds;
39
- options.statusCode = node_opcua_status_code_1.StatusCodes.Good;
40
- break;
41
- default:
42
- return base_node_1.BaseNode.prototype.readAttribute.call(this, context, attributeId);
43
- }
44
- return new node_opcua_data_value_1.DataValue(options);
45
- }
46
- clone(options, optionalFilter, extraInfo) {
47
- options = options || {};
48
- options = Object.assign(Object.assign({}, options), { eventNotifier: this.eventNotifier, symbolicName: this.symbolicName });
49
- const cloneObject = base_node_private_1._clone.call(this, UAObject, options, optionalFilter, extraInfo);
50
- // xx newObject.propagate_back_references();
51
- // xx newObject.install_extra_properties();
52
- return cloneObject;
53
- }
54
- /**
55
- * returns true if the object has some opcua methods
56
- */
57
- get hasMethods() {
58
- return this.getMethods().length > 0;
59
- }
60
- getMethodByName(methodName, namespaceIndex) {
61
- return super.getMethodByName(methodName, namespaceIndex);
62
- }
63
- getMethods() {
64
- return super.getMethods();
65
- }
66
- /**
67
- * Raise a transient Event
68
- */
69
- raiseEvent(eventType, data) {
70
- const addressSpace = this.addressSpace;
71
- if (typeof eventType === "string") {
72
- const eventTypeFound = addressSpace.findEventType(eventType);
73
- if (!eventTypeFound) {
74
- throw new Error("raiseEvent: eventType cannot find event Type " + eventType.toString());
75
- }
76
- eventType = eventTypeFound;
77
- if (!eventType || eventType.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
78
- throw new Error("eventType must exist and be an UAObjectType");
79
- }
80
- }
81
- else if (eventType instanceof node_opcua_nodeid_1.NodeId) {
82
- const eventTypeFound = addressSpace.findNode(eventType);
83
- if (!eventTypeFound) {
84
- throw new Error("raiseEvent: eventType cannot find event Type " + eventType.toString());
85
- }
86
- eventType = eventTypeFound;
87
- if (!eventType || eventType.nodeClass !== node_opcua_data_model_1.NodeClass.ObjectType) {
88
- throw new Error("eventType must exist and be an UAObjectType" + eventType.toString());
89
- }
90
- }
91
- eventType = eventType;
92
- let eventTypeNode = eventType;
93
- // istanbul ignore next
94
- if (!eventTypeNode) {
95
- throw new Error("UAObject#raiseEventType : Cannot find event type :" + eventType.toString());
96
- }
97
- // coerce EventType
98
- eventTypeNode = addressSpace.findEventType(eventType);
99
- const baseEventType = addressSpace.findEventType("BaseEventType");
100
- (0, node_opcua_assert_1.assert)(eventTypeNode.isSupertypeOf(baseEventType));
101
- data.$eventDataSource = eventTypeNode;
102
- data.sourceNode = data.sourceNode || { dataType: node_opcua_variant_1.DataType.NodeId, value: this.nodeId };
103
- const eventData1 = addressSpace.constructEventData(eventTypeNode, data);
104
- this._bubble_up_event(eventData1);
105
- }
106
- _bubble_up_event(eventData) {
107
- const addressSpace = this.addressSpace;
108
- const queue = [];
109
- // walk up the hasNotify / hasEventSource chain
110
- const m = {};
111
- // all events are notified to the server object
112
- // emit on server object
113
- const server = addressSpace.findNode("Server");
114
- if (server) {
115
- (0, node_opcua_assert_1.assert)(server.eventNotifier > 0x00, "Server must be an event notifier");
116
- server.emit("event", eventData);
117
- m[server.nodeId.toString()] = server;
118
- }
119
- else {
120
- // tslint:disable:no-console
121
- console.warn(chalk.yellow("Warning. ") +
122
- chalk.cyan("UAObject#raiseEvent") +
123
- chalk.red(" cannot find Server object on addressSpace"));
124
- }
125
- addInQueue(this);
126
- function addInQueue(obj) {
127
- const key = obj.nodeId.toString();
128
- if (!m[key]) {
129
- m[key] = obj;
130
- queue.push(obj);
131
- }
132
- }
133
- while (queue.length) {
134
- const obj = queue.pop();
135
- // emit on object
136
- obj.emit("event", eventData);
137
- const elements1 = obj.findReferencesAsObject("HasNotifier", false);
138
- elements1.forEach(addInQueue);
139
- const elements2 = obj.findReferencesAsObject("HasEventSource", false);
140
- elements2.forEach(addInQueue);
141
- }
142
- }
143
- _conditionRefresh(_cache) {
144
- base_node_private_1.apply_condition_refresh.call(this, _cache);
145
- }
146
- toString() {
147
- const options = new base_node_private_1.ToStringBuilder();
148
- base_node_private_1.UAObject_toString.call(this, options);
149
- return options.toString();
150
- }
151
- }
152
- exports.UAObject = UAObject;
153
- //# sourceMappingURL=ua_object.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ua_object.js","sourceRoot":"","sources":["../../src/ua_object.ts"],"names":[],"mappings":"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"}
@@ -1,49 +0,0 @@
1
- import { NodeClass } from "node-opcua-data-model";
2
- import { AttributeIds } from "node-opcua-data-model";
3
- import { DataValue } from "node-opcua-data-value";
4
- import { NodeId } from "node-opcua-nodeid";
5
- import { InstantiateObjectOptions, UAObject as UAObjectPublic, UAObjectType as UAObjectTypePublic } from "../source";
6
- import { BaseNode } from "./base_node";
7
- import { SessionContext } from "./session_context";
8
- import * as tools from "./tool_isSupertypeOf";
9
- export declare class UAObjectType extends BaseNode implements UAObjectTypePublic {
10
- readonly nodeClass = NodeClass.ObjectType;
11
- readonly isAbstract: boolean;
12
- /**
13
- * returns true if the object has some opcua methods
14
- */
15
- get hasMethods(): boolean;
16
- get subtypeOf(): NodeId | null;
17
- get subtypeOfObj(): UAObjectTypePublic | null;
18
- isSupertypeOf: tools.IsSupertypeOfFunc<UAObjectTypePublic>;
19
- constructor(options: any);
20
- readAttribute(context: SessionContext, attributeId: AttributeIds): DataValue;
21
- /**
22
- * instantiate an object of this UAObjectType
23
- * The instantiation takes care of object type inheritance when constructing inner properties and components.
24
- * @method instantiate
25
- * @param options
26
- * @param options.browseName
27
- * @param [options.description]
28
- * @param [options.organizedBy] the parent Folder holding this object
29
- * @param [options.componentOf] the parent Object holding this object
30
- * @param [options.notifierOf]
31
- * @param [options.eventSourceOf]
32
- * @param [options.optionals = [] name of the optional child to create
33
- * @param [options.modellingRule]
34
- * @param [options.encodingOf]
35
- *
36
- *
37
- * Note : HasComponent usage scope
38
- *
39
- * Source | Destination
40
- * -------------------+---------------------------
41
- * Object | Object, Variable,Method
42
- * ObjectType |
43
- * -------------------+---------------------------
44
- * DataVariable | Variable
45
- * DataVariableType |
46
- */
47
- instantiate(options: InstantiateObjectOptions): UAObjectPublic;
48
- toString(): string;
49
- }
@@ -1,124 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UAObjectType = void 0;
4
- /**
5
- * @module node-opcua-address-space
6
- */
7
- const node_opcua_assert_1 = require("node-opcua-assert");
8
- const node_opcua_data_model_1 = require("node-opcua-data-model");
9
- const node_opcua_data_model_2 = require("node-opcua-data-model");
10
- const node_opcua_data_value_1 = require("node-opcua-data-value");
11
- const node_opcua_status_code_1 = require("node-opcua-status-code");
12
- const utils = require("node-opcua-utils");
13
- const node_opcua_variant_1 = require("node-opcua-variant");
14
- const base_node_1 = require("./base_node");
15
- const base_node_private_1 = require("./base_node_private");
16
- const session_context_1 = require("./session_context");
17
- const tool_isSupertypeOf_1 = require("./tool_isSupertypeOf");
18
- const tools = require("./tool_isSupertypeOf");
19
- const ua_variable_type_1 = require("./ua_variable_type");
20
- class UAObjectType extends base_node_1.BaseNode {
21
- constructor(options) {
22
- super(options);
23
- this.nodeClass = node_opcua_data_model_1.NodeClass.ObjectType;
24
- this.isSupertypeOf = tools.construct_isSupertypeOf(UAObjectType);
25
- this.isAbstract = utils.isNullOrUndefined(options.isAbstract) ? false : options.isAbstract;
26
- }
27
- /**
28
- * returns true if the object has some opcua methods
29
- */
30
- get hasMethods() {
31
- return this.getMethods().length > 0;
32
- }
33
- get subtypeOf() {
34
- return tool_isSupertypeOf_1.get_subtypeOf.call(this);
35
- }
36
- get subtypeOfObj() {
37
- return tool_isSupertypeOf_1.get_subtypeOfObj.call(this);
38
- }
39
- readAttribute(context, attributeId) {
40
- (0, node_opcua_assert_1.assert)(context instanceof session_context_1.SessionContext);
41
- const options = {};
42
- switch (attributeId) {
43
- case node_opcua_data_model_2.AttributeIds.IsAbstract:
44
- options.value = {
45
- dataType: node_opcua_variant_1.DataType.Boolean,
46
- value: !!this.isAbstract
47
- };
48
- options.statusCode = node_opcua_status_code_1.StatusCodes.Good;
49
- break;
50
- default:
51
- return base_node_1.BaseNode.prototype.readAttribute.call(this, context, attributeId);
52
- }
53
- return new node_opcua_data_value_1.DataValue(options);
54
- }
55
- /**
56
- * instantiate an object of this UAObjectType
57
- * The instantiation takes care of object type inheritance when constructing inner properties and components.
58
- * @method instantiate
59
- * @param options
60
- * @param options.browseName
61
- * @param [options.description]
62
- * @param [options.organizedBy] the parent Folder holding this object
63
- * @param [options.componentOf] the parent Object holding this object
64
- * @param [options.notifierOf]
65
- * @param [options.eventSourceOf]
66
- * @param [options.optionals = [] name of the optional child to create
67
- * @param [options.modellingRule]
68
- * @param [options.encodingOf]
69
- *
70
- *
71
- * Note : HasComponent usage scope
72
- *
73
- * Source | Destination
74
- * -------------------+---------------------------
75
- * Object | Object, Variable,Method
76
- * ObjectType |
77
- * -------------------+---------------------------
78
- * DataVariable | Variable
79
- * DataVariableType |
80
- */
81
- instantiate(options) {
82
- const addressSpace = this.addressSpace;
83
- (0, node_opcua_assert_1.assert)(!this.isAbstract, "cannot instantiate abstract UAObjectType");
84
- (0, node_opcua_assert_1.assert)(options, "missing option object");
85
- (0, node_opcua_assert_1.assert)(typeof options.browseName === "string" || (options.browseName !== null && typeof options.browseName === "object"), "expecting a browse name");
86
- (0, node_opcua_assert_1.assert)(!options.hasOwnProperty("propertyOf"), "an Object shall not be a PropertyOf an other object");
87
- (0, node_opcua_assert_1.assert)(!options.hasOwnProperty("optional"), "do you mean optionals ?");
88
- (0, ua_variable_type_1.assertUnusedChildBrowseName)(addressSpace, options);
89
- const baseObjectType = addressSpace.findObjectType("BaseObjectType");
90
- (0, node_opcua_assert_1.assert)(baseObjectType, "BaseObjectType must be defined in the address space");
91
- const references = [];
92
- const copyAlsoModellingRules = (0, ua_variable_type_1.topMostParentIsObjectTypeOrVariableType)(addressSpace, options);
93
- const opts = {
94
- browseName: options.browseName,
95
- componentOf: options.componentOf,
96
- description: options.description || this.description,
97
- encodingOf: options.encodingOf,
98
- eventSourceOf: options.eventSourceOf,
99
- notifierOf: options.notifierOf,
100
- organizedBy: options.organizedBy,
101
- references,
102
- typeDefinition: this.nodeId,
103
- nodeId: options.nodeId,
104
- eventNotifier: options.eventNotifier === undefined ? 0 : options.eventNotifier,
105
- modellingRule: options.modellingRule
106
- };
107
- const namespace = options.namespace || this.addressSpace.getOwnNamespace();
108
- const instance = namespace.addObject(opts);
109
- (0, ua_variable_type_1.initialize_properties_and_components)(instance, baseObjectType, this, copyAlsoModellingRules, options.optionals);
110
- (0, node_opcua_assert_1.assert)(instance.typeDefinition.toString() === this.nodeId.toString());
111
- instance.install_extra_properties();
112
- if (this._postInstantiateFunc) {
113
- this._postInstantiateFunc(instance, this, options);
114
- }
115
- return instance;
116
- }
117
- toString() {
118
- const options = new base_node_private_1.ToStringBuilder();
119
- base_node_private_1.UAObjectType_toString.call(this, options);
120
- return options.toString();
121
- }
122
- }
123
- exports.UAObjectType = UAObjectType;
124
- //# sourceMappingURL=ua_object_type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ua_object_type.js","sourceRoot":"","sources":["../../src/ua_object_type.ts"],"names":[],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- /**
2
- * @module node-opcua-address-space
3
- */
4
- import { LocalizedTextOptions } from "node-opcua-data-model";
5
- import { LocalizedText, NodeClass } from "node-opcua-data-model";
6
- import { AttributeIds } from "node-opcua-data-model";
7
- import { DataValue } from "node-opcua-data-value";
8
- import { NodeId } from "node-opcua-nodeid";
9
- import { SessionContext, UAReferenceType as UAReferenceTypePublic } from "../source";
10
- import { BaseNode, InternalBaseNodeOptions } from "./base_node";
11
- import { Reference } from "./reference";
12
- export interface UAReferenceTypeOptions extends InternalBaseNodeOptions {
13
- isAbstract?: boolean;
14
- symmetric?: boolean;
15
- inverseName: null | string | LocalizedTextOptions;
16
- }
17
- export declare class UAReferenceType extends BaseNode implements UAReferenceTypePublic {
18
- readonly nodeClass = NodeClass.ReferenceType;
19
- readonly isAbstract: boolean;
20
- readonly symmetric: boolean;
21
- readonly inverseName: LocalizedText;
22
- get subtypeOfObj(): UAReferenceTypePublic | null;
23
- get subtypeOf(): NodeId | null;
24
- /**
25
- * returns true if self is a super type of baseType
26
- */
27
- isSupertypeOf: (baseType: UAReferenceType) => boolean;
28
- /**
29
- * @private
30
- */
31
- _slow_isSupertypeOf: (baseType: UAReferenceType) => boolean;
32
- constructor(options: UAReferenceTypeOptions);
33
- readAttribute(context: SessionContext | null, attributeId: AttributeIds): DataValue;
34
- toString(): string;
35
- install_extra_properties(): void;
36
- /**
37
- * returns a array of all ReferenceTypes in the addressSpace that are self or a subType of self
38
- * recursively
39
- */
40
- getAllSubtypes(): UAReferenceType[];
41
- checkHasSubtype(ref: Reference | NodeId): boolean;
42
- }
@@ -1,138 +0,0 @@
1
- "use strict";
2
- /**
3
- * @module node-opcua-address-space
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.UAReferenceType = void 0;
7
- const node_opcua_assert_1 = require("node-opcua-assert");
8
- const node_opcua_data_model_1 = require("node-opcua-data-model");
9
- const node_opcua_data_model_2 = require("node-opcua-data-model");
10
- const node_opcua_data_model_3 = require("node-opcua-data-model");
11
- const node_opcua_data_value_1 = require("node-opcua-data-value");
12
- const node_opcua_status_code_1 = require("node-opcua-status-code");
13
- const node_opcua_variant_1 = require("node-opcua-variant");
14
- const source_1 = require("../source");
15
- const base_node_1 = require("./base_node");
16
- const tools = require("./tool_isSupertypeOf");
17
- const tool_isSupertypeOf_1 = require("./tool_isSupertypeOf");
18
- const reference_1 = require("./reference");
19
- const base_node_private_1 = require("./base_node_private");
20
- const ReferenceTypeCounter = { count: 0 };
21
- function _internal_getAllSubtypes(referenceType) {
22
- const addressSpace = referenceType.addressSpace;
23
- const possibleReferenceTypes = [];
24
- const hasSubtypeReferenceType = addressSpace.findReferenceType("HasSubtype");
25
- function _findAllSubType(referenceTypeInner) {
26
- possibleReferenceTypes.push(referenceTypeInner);
27
- (0, node_opcua_assert_1.assert)(referenceTypeInner.nodeClass === node_opcua_data_model_2.NodeClass.ReferenceType);
28
- const references = referenceTypeInner.findReferences(hasSubtypeReferenceType, true);
29
- for (const _r of references) {
30
- const subType = addressSpace.findReferenceType(_r.nodeId);
31
- _findAllSubType(subType);
32
- }
33
- }
34
- _findAllSubType(referenceType);
35
- return possibleReferenceTypes;
36
- }
37
- function _getAllSubtypes(ref) {
38
- const _cache = (0, base_node_private_1.BaseNode_getCache)(ref);
39
- if (!_cache._allSubTypesVersion || _cache._allSubTypesVersion < ReferenceTypeCounter.count) {
40
- _cache._allSubTypes = null;
41
- }
42
- if (!_cache._allSubTypes) {
43
- _cache._allSubTypes = _internal_getAllSubtypes(ref);
44
- _cache._allSubTypesVersion = ReferenceTypeCounter.count;
45
- }
46
- return _cache._allSubTypes;
47
- }
48
- function _internal_getSubtypeIndex(referenceType) {
49
- const possibleReferenceTypes = _getAllSubtypes(referenceType);
50
- // create a index of reference type with browseName as key for faster search
51
- const keys = {};
52
- for (const refType of possibleReferenceTypes) {
53
- keys[refType.nodeId.toString()] = refType;
54
- }
55
- return keys;
56
- }
57
- function _getSubtypeIndex(referenceType) {
58
- const _cache = (0, base_node_private_1.BaseNode_getCache)(referenceType);
59
- if (!_cache._subtype_idx || _cache._subtype_idxVersion < ReferenceTypeCounter.count) {
60
- // the cache need to be invalidated
61
- _cache._subtype_idx = null;
62
- }
63
- if (!_cache._subtype_idx) {
64
- _cache._subtype_idx = _internal_getSubtypeIndex(referenceType);
65
- _cache._subtype_idxVersion = ReferenceTypeCounter.count;
66
- }
67
- return _cache._subtype_idx;
68
- }
69
- class UAReferenceType extends base_node_1.BaseNode {
70
- constructor(options) {
71
- super(options);
72
- this.nodeClass = node_opcua_data_model_2.NodeClass.ReferenceType;
73
- /**
74
- * returns true if self is a super type of baseType
75
- */
76
- this.isSupertypeOf = tools.construct_isSupertypeOf(UAReferenceType);
77
- /**
78
- * @private
79
- */
80
- this._slow_isSupertypeOf = tools.construct_slow_isSupertypeOf(UAReferenceType);
81
- this.isAbstract = options.isAbstract === undefined ? false : !!options.isAbstract;
82
- this.symmetric = options.symmetric === undefined ? false : !!options.symmetric;
83
- // Note: Inverse name is not required anymore in 1.0.4
84
- this.inverseName = (0, node_opcua_data_model_1.coerceLocalizedText)(options.inverseName || this.browseName.name);
85
- ReferenceTypeCounter.count += 1;
86
- }
87
- get subtypeOfObj() {
88
- return tool_isSupertypeOf_1.get_subtypeOfObj.call(this);
89
- }
90
- get subtypeOf() {
91
- return tool_isSupertypeOf_1.get_subtypeOf.call(this);
92
- }
93
- readAttribute(context, attributeId) {
94
- (0, node_opcua_assert_1.assert)(!context || context instanceof source_1.SessionContext);
95
- const options = {};
96
- switch (attributeId) {
97
- case node_opcua_data_model_3.AttributeIds.IsAbstract:
98
- options.value = { dataType: node_opcua_variant_1.DataType.Boolean, value: !!this.isAbstract };
99
- options.statusCode = node_opcua_status_code_1.StatusCodes.Good;
100
- break;
101
- case node_opcua_data_model_3.AttributeIds.Symmetric:
102
- options.value = { dataType: node_opcua_variant_1.DataType.Boolean, value: !!this.symmetric };
103
- options.statusCode = node_opcua_status_code_1.StatusCodes.Good;
104
- break;
105
- case node_opcua_data_model_3.AttributeIds.InverseName: // LocalizedText
106
- options.value = { dataType: node_opcua_variant_1.DataType.LocalizedText, value: this.inverseName };
107
- options.statusCode = node_opcua_status_code_1.StatusCodes.Good;
108
- break;
109
- default:
110
- return super.readAttribute(context, attributeId);
111
- }
112
- return new node_opcua_data_value_1.DataValue(options);
113
- }
114
- toString() {
115
- let str = "";
116
- str += this.isAbstract ? "A" : " ";
117
- str += this.symmetric ? "S" : " ";
118
- str += " " + this.browseName.toString() + "/" + this.inverseName.text + " ";
119
- str += this.nodeId.toString();
120
- return str;
121
- }
122
- install_extra_properties() { }
123
- /**
124
- * returns a array of all ReferenceTypes in the addressSpace that are self or a subType of self
125
- * recursively
126
- */
127
- getAllSubtypes() {
128
- return _getAllSubtypes(this);
129
- }
130
- checkHasSubtype(ref) {
131
- const _index = _getSubtypeIndex(this);
132
- const referenceTypeNodeId = ref instanceof reference_1.Reference ? ref.nodeId : ref;
133
- const _key = referenceTypeNodeId.toString();
134
- return !!_index[_key];
135
- }
136
- }
137
- exports.UAReferenceType = UAReferenceType;
138
- //# sourceMappingURL=ua_reference_type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ua_reference_type.js","sourceRoot":"","sources":["../../src/ua_reference_type.ts"],"names":[],"mappings":"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"}