node-opcua-address-space 2.74.0 → 2.76.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (361) hide show
  1. package/dist/source/address_space_ts.d.ts +118 -118
  2. package/dist/source/address_space_ts.js +17 -17
  3. package/dist/source/continuation_points/continuation_point_manager.d.ts +32 -32
  4. package/dist/source/continuation_points/continuation_point_manager.js +195 -195
  5. package/dist/source/helpers/adjust_browse_direction.d.ts +5 -5
  6. package/dist/source/helpers/adjust_browse_direction.js +11 -11
  7. package/dist/source/helpers/argument_list.d.ts +33 -33
  8. package/dist/source/helpers/argument_list.js +258 -257
  9. package/dist/source/helpers/argument_list.js.map +1 -1
  10. package/dist/source/helpers/call_helpers.d.ts +6 -6
  11. package/dist/source/helpers/call_helpers.js +70 -70
  12. package/dist/source/helpers/coerce_enum_value.d.ts +6 -6
  13. package/dist/source/helpers/coerce_enum_value.js +33 -33
  14. package/dist/source/helpers/dump_tools.d.ts +14 -14
  15. package/dist/source/helpers/dump_tools.js +78 -78
  16. package/dist/source/helpers/ensure_secure_access.d.ts +9 -9
  17. package/dist/source/helpers/ensure_secure_access.js +76 -76
  18. package/dist/source/helpers/make_optionals_map.d.ts +21 -21
  19. package/dist/source/helpers/make_optionals_map.js +29 -29
  20. package/dist/source/helpers/multiform_func.d.ts +11 -11
  21. package/dist/source/helpers/multiform_func.js +75 -73
  22. package/dist/source/helpers/multiform_func.js.map +1 -1
  23. package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +3 -3
  24. package/dist/source/helpers/resolve_opaque_on_address_space.js +36 -36
  25. package/dist/source/index.d.ts +56 -58
  26. package/dist/source/index.js +83 -87
  27. package/dist/source/index.js.map +1 -1
  28. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +19 -19
  29. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +2 -2
  30. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +193 -199
  31. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js +2 -9
  32. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js.map +1 -1
  33. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +12 -14
  34. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js +2 -2
  35. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +10 -6
  36. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js +2 -2
  37. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -7
  38. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +2 -2
  39. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +7 -7
  40. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js +2 -2
  41. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +4 -0
  42. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +3 -0
  43. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +1 -0
  44. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -4
  45. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +2 -2
  46. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +9 -9
  47. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +2 -2
  48. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +4 -0
  49. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +3 -0
  50. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +1 -0
  51. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +4 -0
  52. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +3 -0
  53. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +1 -0
  54. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +20 -5
  55. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +2 -2
  56. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +23 -23
  57. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +2 -2
  58. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +32 -32
  59. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +2 -2
  60. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +19 -15
  61. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +2 -2
  62. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +42 -42
  63. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js +2 -2
  64. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +7 -7
  65. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +25 -25
  66. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -5
  67. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +2 -2
  68. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +20 -20
  69. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +2 -2
  70. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +26 -26
  71. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +2 -2
  72. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +8 -10
  73. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +2 -2
  74. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -10
  75. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +2 -2
  76. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +21 -21
  77. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js +2 -2
  78. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +24 -24
  79. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js +2 -2
  80. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +12 -12
  81. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js +2 -2
  82. package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +8 -8
  83. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js +2 -2
  84. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -12
  85. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +2 -2
  86. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -49
  87. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js +2 -2
  88. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -11
  89. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js +2 -2
  90. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +30 -30
  91. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js +2 -2
  92. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +222 -222
  93. package/dist/source/interfaces/state_machine/ua_state_machine_type.js +2 -2
  94. package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +6 -6
  95. package/dist/source/interfaces/state_machine/ua_transition_ex.js +2 -2
  96. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +8 -8
  97. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +2 -2
  98. package/dist/source/loader/decode_xml_extension_object.d.ts +6 -6
  99. package/dist/source/loader/decode_xml_extension_object.js +71 -71
  100. package/dist/source/loader/ensure_datatype_extracted.d.ts +5 -5
  101. package/dist/source/loader/ensure_datatype_extracted.js +45 -45
  102. package/dist/source/loader/generateAddressSpaceRaw.d.ts +10 -10
  103. package/dist/source/loader/generateAddressSpaceRaw.js +45 -45
  104. package/dist/source/loader/load_nodeset2.d.ts +16 -16
  105. package/dist/source/loader/load_nodeset2.js +1461 -1461
  106. package/dist/source/loader/make_semver_compatible.d.ts +6 -6
  107. package/dist/source/loader/make_semver_compatible.js +25 -25
  108. package/dist/source/loader/make_xml_extension_object_parser.d.ts +28 -28
  109. package/dist/source/loader/make_xml_extension_object_parser.js +325 -325
  110. package/dist/source/loader/namespace_post_step.d.ts +10 -6
  111. package/dist/source/loader/namespace_post_step.js +61 -47
  112. package/dist/source/loader/namespace_post_step.js.map +1 -1
  113. package/dist/source/loader/register_node_promoter.d.ts +2 -3
  114. package/dist/source/loader/register_node_promoter.js +9 -9
  115. package/dist/source/loader/register_node_promoter.js.map +1 -1
  116. package/dist/source/namespace.d.ts +6 -6
  117. package/dist/source/namespace.js +2 -2
  118. package/dist/source/namespace_alarm_and_condition.d.ts +32 -24
  119. package/dist/source/namespace_alarm_and_condition.js +2 -2
  120. package/dist/source/namespace_data_access.d.ts +42 -42
  121. package/dist/source/namespace_data_access.js +2 -2
  122. package/dist/source/namespace_machine_state.d.ts +7 -7
  123. package/dist/source/namespace_machine_state.js +2 -2
  124. package/dist/source/pseudo_session.d.ts +55 -55
  125. package/dist/source/pseudo_session.js +203 -203
  126. package/dist/source/session_context.d.ts +111 -111
  127. package/dist/source/session_context.js +265 -265
  128. package/dist/source/set_namespace_meta_data.d.ts +2 -2
  129. package/dist/source/set_namespace_meta_data.js +59 -59
  130. package/dist/source/ua_root_folder.d.ts +9 -9
  131. package/dist/source/ua_root_folder.js +2 -2
  132. package/dist/source/ua_two_state_variable_ex.d.ts +23 -23
  133. package/dist/source/ua_two_state_variable_ex.js +2 -2
  134. package/dist/source/xml_writer.d.ts +9 -9
  135. package/dist/source/xml_writer.js +2 -2
  136. package/dist/src/address_space.d.ts +392 -392
  137. package/dist/src/address_space.js +1392 -1387
  138. package/dist/src/address_space.js.map +1 -1
  139. package/dist/src/address_space_change_event_tools.d.ts +6 -6
  140. package/dist/src/address_space_change_event_tools.js +149 -149
  141. package/dist/src/address_space_private.d.ts +43 -43
  142. package/dist/src/address_space_private.js +2 -2
  143. package/dist/src/alarms_and_conditions/condition.d.ts +5 -5
  144. package/dist/src/alarms_and_conditions/condition.js +78 -78
  145. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +26 -26
  146. package/dist/src/alarms_and_conditions/condition_info_impl.js +54 -54
  147. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +222 -231
  148. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +657 -666
  149. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +1 -1
  150. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +9 -8
  151. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +61 -46
  152. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +1 -1
  153. package/dist/src/alarms_and_conditions/index.d.ts +16 -18
  154. package/dist/src/alarms_and_conditions/index.js +32 -34
  155. package/dist/src/alarms_and_conditions/index.js.map +1 -1
  156. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +44 -44
  157. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -244
  158. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +93 -93
  159. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +419 -416
  160. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
  161. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +26 -26
  162. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +38 -38
  163. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +44 -36
  164. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +183 -118
  165. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -1
  166. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +153 -153
  167. package/dist/src/alarms_and_conditions/ua_condition_impl.js +1028 -1024
  168. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -1
  169. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +14 -14
  170. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +34 -34
  171. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +24 -26
  172. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +56 -56
  173. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -1
  174. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +11 -11
  175. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +11 -11
  176. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +23 -23
  177. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -86
  178. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -1
  179. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +11 -11
  180. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +7 -7
  181. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +79 -79
  182. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +250 -250
  183. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -1
  184. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +24 -24
  185. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +50 -50
  186. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -1
  187. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +19 -19
  188. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +162 -162
  189. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -1
  190. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +46 -46
  191. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +166 -161
  192. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -1
  193. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -18
  194. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +17 -17
  195. package/dist/src/apply_condition_refresh.d.ts +6 -6
  196. package/dist/src/apply_condition_refresh.js +27 -27
  197. package/dist/src/base_node_impl.d.ts +281 -281
  198. package/dist/src/base_node_impl.js +1395 -1395
  199. package/dist/src/base_node_private.d.ts +61 -61
  200. package/dist/src/base_node_private.js +705 -705
  201. package/dist/src/data_access/add_dataItem_stuff.d.ts +11 -11
  202. package/dist/src/data_access/add_dataItem_stuff.js +61 -61
  203. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.d.ts +1 -1
  204. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js +34 -34
  205. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +32 -32
  206. package/dist/src/data_access/ua_multistate_discrete_impl.js +130 -130
  207. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +51 -51
  208. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +249 -249
  209. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +25 -25
  210. package/dist/src/data_access/ua_two_state_discrete_impl.js +153 -153
  211. package/dist/src/event_data.d.ts +34 -29
  212. package/dist/src/event_data.js +64 -95
  213. package/dist/src/event_data.js.map +1 -1
  214. package/dist/src/extension_object_array_node.d.ts +61 -61
  215. package/dist/src/extension_object_array_node.js +276 -276
  216. package/dist/src/historical_access/address_space_historical_data_node.d.ts +26 -26
  217. package/dist/src/historical_access/address_space_historical_data_node.js +630 -630
  218. package/dist/src/index_current.d.ts +43 -44
  219. package/dist/src/index_current.js +74 -75
  220. package/dist/src/index_current.js.map +1 -1
  221. package/dist/src/namespace_impl.d.ts +461 -458
  222. package/dist/src/namespace_impl.js +1732 -1732
  223. package/dist/src/namespace_impl.js.map +1 -1
  224. package/dist/src/namespace_private.d.ts +21 -21
  225. package/dist/src/namespace_private.js +32 -32
  226. package/dist/src/nodeid_manager.d.ts +36 -36
  227. package/dist/src/nodeid_manager.js +197 -197
  228. package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +2 -2
  229. package/dist/src/nodeset_tools/adjust_namespace_array.js +13 -13
  230. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +2 -2
  231. package/dist/src/nodeset_tools/construct_namespace_dependency.js +83 -83
  232. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +2 -2
  233. package/dist/src/nodeset_tools/nodeset_to_xml.js +1155 -1155
  234. package/dist/src/nodeset_tools/typedictionary_to_xml.d.ts +2 -2
  235. package/dist/src/nodeset_tools/typedictionary_to_xml.js +154 -154
  236. package/dist/src/reference_impl.d.ts +43 -43
  237. package/dist/src/reference_impl.js +139 -139
  238. package/dist/src/role_permissions.d.ts +2 -2
  239. package/dist/src/role_permissions.js +10 -10
  240. package/dist/src/state_machine/finite_state_machine.d.ts +67 -67
  241. package/dist/src/state_machine/finite_state_machine.js +353 -353
  242. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +38 -38
  243. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +250 -250
  244. package/dist/src/state_machine/ua_two_state_variable.d.ts +61 -61
  245. package/dist/src/state_machine/ua_two_state_variable.js +331 -331
  246. package/dist/src/state_machine/ua_two_state_variable.js.map +1 -1
  247. package/dist/src/tool_isSupertypeOf.d.ts +17 -17
  248. package/dist/src/tool_isSupertypeOf.js +108 -108
  249. package/dist/src/ua_condition_type.d.ts +8 -8
  250. package/dist/src/ua_condition_type.js +2 -2
  251. package/dist/src/ua_data_type_impl.d.ts +93 -93
  252. package/dist/src/ua_data_type_impl.js +371 -371
  253. package/dist/src/ua_method_impl.d.ts +41 -41
  254. package/dist/src/ua_method_impl.js +208 -208
  255. package/dist/src/ua_object_impl.d.ts +35 -35
  256. package/dist/src/ua_object_impl.js +161 -162
  257. package/dist/src/ua_object_impl.js.map +1 -1
  258. package/dist/src/ua_object_type_impl.d.ts +48 -48
  259. package/dist/src/ua_object_type_impl.js +124 -124
  260. package/dist/src/ua_reference_type_impl.d.ts +43 -43
  261. package/dist/src/ua_reference_type_impl.js +139 -139
  262. package/dist/src/ua_variable_impl.d.ts +351 -351
  263. package/dist/src/ua_variable_impl.js +1604 -1604
  264. package/dist/src/ua_variable_impl_ext_obj.d.ts +17 -17
  265. package/dist/src/ua_variable_impl_ext_obj.js +437 -437
  266. package/dist/src/ua_variable_type_impl.d.ts +62 -62
  267. package/dist/src/ua_variable_type_impl.js +570 -570
  268. package/dist/src/ua_view_impl.d.ts +19 -19
  269. package/dist/src/ua_view_impl.js +43 -43
  270. package/distHelpers/add_event_generator_object.d.ts +3 -3
  271. package/distHelpers/add_event_generator_object.js +64 -65
  272. package/distHelpers/add_event_generator_object.js.map +1 -1
  273. package/distHelpers/alarms_and_conditions_demo.d.ts +9 -9
  274. package/distHelpers/alarms_and_conditions_demo.js +115 -114
  275. package/distHelpers/alarms_and_conditions_demo.js.map +1 -1
  276. package/distHelpers/assertHasMatchingReference.d.ts +19 -19
  277. package/distHelpers/assertHasMatchingReference.js +40 -40
  278. package/distHelpers/boiler_system.d.ts +113 -113
  279. package/distHelpers/boiler_system.js +395 -395
  280. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +5 -5
  281. package/distHelpers/create_minimalist_address_space_nodeset.js +171 -171
  282. package/distHelpers/date_utils.d.ts +3 -3
  283. package/distHelpers/date_utils.js +9 -9
  284. package/distHelpers/dump_statemachine.js +127 -127
  285. package/distHelpers/get_address_space_fixture.d.ts +1 -1
  286. package/distHelpers/get_address_space_fixture.js +30 -30
  287. package/distHelpers/get_mini_address_space.d.ts +7 -7
  288. package/distHelpers/get_mini_address_space.js +36 -36
  289. package/distHelpers/index.d.ts +12 -12
  290. package/distHelpers/index.js +28 -28
  291. package/distHelpers/mock_session.d.ts +14 -14
  292. package/distHelpers/mock_session.js +25 -25
  293. package/distNodeJS/generate_address_space.d.ts +4 -4
  294. package/distNodeJS/generate_address_space.js +41 -41
  295. package/distNodeJS/index.d.ts +1 -1
  296. package/distNodeJS/index.js +17 -17
  297. package/generate.js +1 -1
  298. package/package.json +36 -37
  299. package/source/helpers/argument_list.ts +2 -0
  300. package/source/helpers/multiform_func.ts +5 -3
  301. package/source/index.ts +0 -2
  302. package/source/interfaces/alarms_and_conditions/condition_snapshot.ts +12 -30
  303. package/source/interfaces/alarms_and_conditions/deviation_stuff.ts +8 -6
  304. package/source/interfaces/alarms_and_conditions/install_setpoint_options.ts +9 -0
  305. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +4 -0
  306. package/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +2 -2
  307. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +4 -0
  308. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +4 -0
  309. package/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +16 -1
  310. package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +5 -0
  311. package/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +1 -0
  312. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +1 -2
  313. package/source/loader/namespace_post_step.ts +26 -3
  314. package/source/loader/register_node_promoter.ts +5 -4
  315. package/source/namespace_alarm_and_condition.ts +48 -23
  316. package/src/address_space.ts +22 -16
  317. package/src/alarms_and_conditions/condition.ts +1 -1
  318. package/src/alarms_and_conditions/condition_snapshot_impl.ts +95 -102
  319. package/src/alarms_and_conditions/deviation_alarm_helper.ts +33 -18
  320. package/src/alarms_and_conditions/index.ts +0 -2
  321. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +4 -1
  322. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +106 -49
  323. package/src/alarms_and_conditions/ua_condition_impl.ts +9 -6
  324. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +5 -6
  325. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +1 -1
  326. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +6 -8
  327. package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +5 -3
  328. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +3 -3
  329. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +30 -26
  330. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +1 -1
  331. package/src/event_data.ts +47 -77
  332. package/src/index_current.ts +0 -1
  333. package/src/namespace_impl.ts +47 -26
  334. package/src/state_machine/ua_two_state_variable.ts +2 -3
  335. package/src/ua_object_impl.ts +1 -2
  336. package/test_helpers/add_event_generator_object.ts +0 -1
  337. package/test_helpers/alarms_and_conditions_demo.ts +4 -1
  338. package/dist/source/helpers/check_event_clause.d.ts +0 -17
  339. package/dist/source/helpers/check_event_clause.js +0 -53
  340. package/dist/source/helpers/check_event_clause.js.map +0 -1
  341. package/dist/src/alarms_and_conditions/check_where_clause.d.ts +0 -4
  342. package/dist/src/alarms_and_conditions/check_where_clause.js +0 -110
  343. package/dist/src/alarms_and_conditions/check_where_clause.js.map +0 -1
  344. package/dist/src/alarms_and_conditions/condition_info.d.ts +0 -27
  345. package/dist/src/alarms_and_conditions/condition_info.js +0 -55
  346. package/dist/src/alarms_and_conditions/condition_info.js.map +0 -1
  347. package/dist/src/alarms_and_conditions/condition_snapshot.d.ts +0 -233
  348. package/dist/src/alarms_and_conditions/condition_snapshot.js +0 -667
  349. package/dist/src/alarms_and_conditions/condition_snapshot.js.map +0 -1
  350. package/dist/src/alarms_and_conditions/extract_event_fields.d.ts +0 -10
  351. package/dist/src/alarms_and_conditions/extract_event_fields.js +0 -90
  352. package/dist/src/alarms_and_conditions/extract_event_fields.js.map +0 -1
  353. package/dist/src/data_access/ua_multistate_value_discrete.d.ts +0 -51
  354. package/dist/src/data_access/ua_multistate_value_discrete.js +0 -250
  355. package/dist/src/data_access/ua_multistate_value_discrete.js.map +0 -1
  356. package/dist/src/data_access/ua_two_state_discrete.d.ts +0 -25
  357. package/dist/src/data_access/ua_two_state_discrete.js +0 -154
  358. package/dist/src/data_access/ua_two_state_discrete.js.map +0 -1
  359. package/source/helpers/check_event_clause.ts +0 -55
  360. package/src/alarms_and_conditions/check_where_clause.ts +0 -147
  361. package/src/alarms_and_conditions/extract_event_fields.ts +0 -103
@@ -1,11 +1,11 @@
1
- /**
2
- * @module node-opcua-address-space.DataAccess
3
- */
4
- import { UAVariable, ModellingRuleType } from "node-opcua-address-space-base";
5
- interface add_dataItem_stuffOptions {
6
- definition?: string;
7
- valuePrecision?: number;
8
- modellingRule?: ModellingRuleType;
9
- }
10
- export declare function add_dataItem_stuff(variable: UAVariable, options: add_dataItem_stuffOptions): void;
11
- export {};
1
+ /**
2
+ * @module node-opcua-address-space.DataAccess
3
+ */
4
+ import { UAVariable, ModellingRuleType } from "node-opcua-address-space-base";
5
+ interface add_dataItem_stuffOptions {
6
+ definition?: string;
7
+ valuePrecision?: number;
8
+ modellingRule?: ModellingRuleType;
9
+ }
10
+ export declare function add_dataItem_stuff(variable: UAVariable, options: add_dataItem_stuffOptions): void;
11
+ export {};
@@ -1,62 +1,62 @@
1
- "use strict";
2
- /**
3
- * @module node-opcua-address-space.DataAccess
4
- */
5
- // Release 1.02 5 OPC Unified Architecture, Part 8
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.add_dataItem_stuff = void 0;
8
- // HasProperty Variable Definition String PropertyType Optional
9
- // HasProperty Variable ValuePrecision Double PropertyType Optional
10
- // Clients may read or write DataItems, or monitor them for value changes. The services needed for
11
- // these operations are specified in Part 4. Changes are defined as a change in status (quality) or a
12
- // change in value that exceeds a client - defined range called a Deadband. To detect the value change,
13
- // the difference between the current value and the last reported value is compared to the Deadband.
14
- // Definition is a vendor - specific, human readable string that specifies how the value of this DataItem is
15
- // calculated. Definition is non - localized and will often contain an equation that can be parsed by
16
- // certain clients.
17
- // Example: Definition ::= “(TempA – 25) + TempB”
18
- // ValuePrecision specifies the maximum precision that the server can maintain for the item based on
19
- // restrictions in the target environment.
20
- // ValuePrecision can be used for the following DataTypes:
21
- // * For Float and Double values it specifies the number of digits after the decimal place.
22
- // * For DateTime values it indicates the minimum time difference in nanoseconds. For example,
23
- // a ValuePrecision of 20 000 000 defines a precision of 20 ms.
24
- // The ValuePrecision Property is an approximation that is intended to prov ide guidance to a Client. A
25
- // Server is expected to silently round any value with more precision that it supports. This implies that
26
- // a Client may encounter cases where the value read back from a Server differs from the value that it
27
- // wrote to the Server. This difference shall be no more than the difference suggested by this Property
28
- const node_opcua_assert_1 = require("node-opcua-assert");
29
- const node_opcua_variant_1 = require("node-opcua-variant");
30
- const definition_Description = "Definition is a vendor - specific," + " human readable string that specifies how the value of this DataItem is calculated.";
31
- const valuePrecision_Description = "";
32
- function add_dataItem_stuff(variable, options) {
33
- const addressSpace = variable.addressSpace;
34
- const namespace = addressSpace.getNamespace(variable.nodeId.namespace);
35
- if (Object.prototype.hasOwnProperty.call(options, "definition") && options.definition !== undefined) {
36
- namespace.addVariable({
37
- browseName: { name: "Definition", namespaceIndex: 0 },
38
- dataType: "String",
39
- description: definition_Description,
40
- minimumSamplingInterval: 0,
41
- modellingRule: options.modellingRule ? "Mandatory" : undefined,
42
- propertyOf: variable,
43
- typeDefinition: "PropertyType",
44
- value: new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.String, value: options.definition })
45
- });
46
- }
47
- if (Object.prototype.hasOwnProperty.call(options, "valuePrecision") && options.valuePrecision !== undefined) {
48
- (0, node_opcua_assert_1.assert)(typeof options.valuePrecision === "number");
49
- namespace.addVariable({
50
- browseName: { name: "ValuePrecision", namespaceIndex: 0 },
51
- dataType: "Double",
52
- description: valuePrecision_Description,
53
- minimumSamplingInterval: 0,
54
- modellingRule: options.modellingRule ? "Mandatory" : undefined,
55
- propertyOf: variable,
56
- typeDefinition: "PropertyType",
57
- value: new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.Double, value: options.valuePrecision })
58
- });
59
- }
60
- }
61
- exports.add_dataItem_stuff = add_dataItem_stuff;
1
+ "use strict";
2
+ /**
3
+ * @module node-opcua-address-space.DataAccess
4
+ */
5
+ // Release 1.02 5 OPC Unified Architecture, Part 8
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.add_dataItem_stuff = void 0;
8
+ // HasProperty Variable Definition String PropertyType Optional
9
+ // HasProperty Variable ValuePrecision Double PropertyType Optional
10
+ // Clients may read or write DataItems, or monitor them for value changes. The services needed for
11
+ // these operations are specified in Part 4. Changes are defined as a change in status (quality) or a
12
+ // change in value that exceeds a client - defined range called a Deadband. To detect the value change,
13
+ // the difference between the current value and the last reported value is compared to the Deadband.
14
+ // Definition is a vendor - specific, human readable string that specifies how the value of this DataItem is
15
+ // calculated. Definition is non - localized and will often contain an equation that can be parsed by
16
+ // certain clients.
17
+ // Example: Definition ::= “(TempA – 25) + TempB”
18
+ // ValuePrecision specifies the maximum precision that the server can maintain for the item based on
19
+ // restrictions in the target environment.
20
+ // ValuePrecision can be used for the following DataTypes:
21
+ // * For Float and Double values it specifies the number of digits after the decimal place.
22
+ // * For DateTime values it indicates the minimum time difference in nanoseconds. For example,
23
+ // a ValuePrecision of 20 000 000 defines a precision of 20 ms.
24
+ // The ValuePrecision Property is an approximation that is intended to prov ide guidance to a Client. A
25
+ // Server is expected to silently round any value with more precision that it supports. This implies that
26
+ // a Client may encounter cases where the value read back from a Server differs from the value that it
27
+ // wrote to the Server. This difference shall be no more than the difference suggested by this Property
28
+ const node_opcua_assert_1 = require("node-opcua-assert");
29
+ const node_opcua_variant_1 = require("node-opcua-variant");
30
+ const definition_Description = "Definition is a vendor - specific," + " human readable string that specifies how the value of this DataItem is calculated.";
31
+ const valuePrecision_Description = "";
32
+ function add_dataItem_stuff(variable, options) {
33
+ const addressSpace = variable.addressSpace;
34
+ const namespace = addressSpace.getNamespace(variable.nodeId.namespace);
35
+ if (Object.prototype.hasOwnProperty.call(options, "definition") && options.definition !== undefined) {
36
+ namespace.addVariable({
37
+ browseName: { name: "Definition", namespaceIndex: 0 },
38
+ dataType: "String",
39
+ description: definition_Description,
40
+ minimumSamplingInterval: 0,
41
+ modellingRule: options.modellingRule ? "Mandatory" : undefined,
42
+ propertyOf: variable,
43
+ typeDefinition: "PropertyType",
44
+ value: new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.String, value: options.definition })
45
+ });
46
+ }
47
+ if (Object.prototype.hasOwnProperty.call(options, "valuePrecision") && options.valuePrecision !== undefined) {
48
+ (0, node_opcua_assert_1.assert)(typeof options.valuePrecision === "number");
49
+ namespace.addVariable({
50
+ browseName: { name: "ValuePrecision", namespaceIndex: 0 },
51
+ dataType: "Double",
52
+ description: valuePrecision_Description,
53
+ minimumSamplingInterval: 0,
54
+ modellingRule: options.modellingRule ? "Mandatory" : undefined,
55
+ propertyOf: variable,
56
+ typeDefinition: "PropertyType",
57
+ value: new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.Double, value: options.valuePrecision })
58
+ });
59
+ }
60
+ }
61
+ exports.add_dataItem_stuff = add_dataItem_stuff;
62
62
  //# sourceMappingURL=add_dataItem_stuff.js.map
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,35 +1,35 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /**
4
- * @module node-opcua-address-space.DataAccess
5
- */
6
- const node_opcua_assert_1 = require("node-opcua-assert");
7
- const node_opcua_status_code_1 = require("node-opcua-status-code");
8
- const node_opcua_variant_1 = require("node-opcua-variant");
9
- const ua_variable_impl_1 = require("../ua_variable_impl");
10
- function validate_value_range(range, variant) {
11
- if (variant.value < range.low || variant.value > range.high) {
12
- return false;
13
- }
14
- return true;
15
- }
16
- function checkVariantCompatibilityUAAnalogItem(value) {
17
- (0, node_opcua_assert_1.assert)(value instanceof node_opcua_variant_1.Variant);
18
- // test dataType
19
- if (!this._validate_DataType(value.dataType)) {
20
- return node_opcua_status_code_1.StatusCodes.BadTypeMismatch;
21
- }
22
- const analogItem = this;
23
- // AnalogDataItem
24
- if (analogItem.instrumentRange) {
25
- if (!validate_value_range(analogItem.instrumentRange.readValue().value.value, value)) {
26
- return node_opcua_status_code_1.StatusCodes.BadOutOfRange;
27
- }
28
- }
29
- return node_opcua_status_code_1.StatusCodes.Good;
30
- }
31
- /**
32
- * extend default checkVariantCompatibility on base class with this one
33
- */
34
- ua_variable_impl_1.UAVariableImpl.prototype.checkVariantCompatibility = checkVariantCompatibilityUAAnalogItem;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /**
4
+ * @module node-opcua-address-space.DataAccess
5
+ */
6
+ const node_opcua_assert_1 = require("node-opcua-assert");
7
+ const node_opcua_status_code_1 = require("node-opcua-status-code");
8
+ const node_opcua_variant_1 = require("node-opcua-variant");
9
+ const ua_variable_impl_1 = require("../ua_variable_impl");
10
+ function validate_value_range(range, variant) {
11
+ if (variant.value < range.low || variant.value > range.high) {
12
+ return false;
13
+ }
14
+ return true;
15
+ }
16
+ function checkVariantCompatibilityUAAnalogItem(value) {
17
+ (0, node_opcua_assert_1.assert)(value instanceof node_opcua_variant_1.Variant);
18
+ // test dataType
19
+ if (!this._validate_DataType(value.dataType)) {
20
+ return node_opcua_status_code_1.StatusCodes.BadTypeMismatch;
21
+ }
22
+ const analogItem = this;
23
+ // AnalogDataItem
24
+ if (analogItem.instrumentRange) {
25
+ if (!validate_value_range(analogItem.instrumentRange.readValue().value.value, value)) {
26
+ return node_opcua_status_code_1.StatusCodes.BadOutOfRange;
27
+ }
28
+ }
29
+ return node_opcua_status_code_1.StatusCodes.Good;
30
+ }
31
+ /**
32
+ * extend default checkVariantCompatibility on base class with this one
33
+ */
34
+ ua_variable_impl_1.UAVariableImpl.prototype.checkVariantCompatibility = checkVariantCompatibilityUAAnalogItem;
35
35
  //# sourceMappingURL=check_variant_compatibility_ua_analog_item.js.map
@@ -1,32 +1,32 @@
1
- import { LocalizedText } from "node-opcua-data-model";
2
- import { StatusCode } from "node-opcua-status-code";
3
- import { DataType, Variant } from "node-opcua-variant";
4
- import { INamespace, UAVariable, UAProperty } from "node-opcua-address-space-base";
5
- import { UAMultiStateDiscrete_Base } from "node-opcua-nodeset-ua";
6
- import { UAVariableImpl } from "../ua_variable_impl";
7
- import { AddMultiStateDiscreteOptions } from "../../source/address_space_ts";
8
- export { UAMultiStateDiscrete } from "node-opcua-nodeset-ua";
9
- export interface UAMultiStateDiscreteEx<T, DT extends DataType> extends UAMultiStateDiscrete_Base<T, DT> {
10
- getValue(): number;
11
- getValueAsString(): string;
12
- getIndex(value: string): number;
13
- setValue(value: string | number): void;
14
- checkVariantCompatibility(value: Variant): StatusCode;
15
- }
16
- export interface UAMultiStateDiscreteImpl<T, DT extends DataType> {
17
- enumStrings: UAProperty<LocalizedText[], DataType.LocalizedText>;
18
- }
19
- /**
20
- * @class UAMultiStateDiscrete
21
- */
22
- export declare class UAMultiStateDiscreteImpl<T, DT extends DataType> extends UAVariableImpl implements UAMultiStateDiscreteEx<T, DT> {
23
- getValue(): number;
24
- getValueAsString(): string;
25
- getIndex(value: string): number;
26
- setValue(value: string | number): void;
27
- checkVariantCompatibility(value: Variant): StatusCode;
28
- _post_initialize(): void;
29
- clone<T, DT extends DataType>(options1: any, optionalFilter: any, extraInfo: any): UAMultiStateDiscreteImpl<T, DT>;
30
- }
31
- export declare function promoteToMultiStateDiscrete<T, DT extends DataType>(node: UAVariable): UAMultiStateDiscreteImpl<T, DT>;
32
- export declare function _addMultiStateDiscrete<T, DT extends DataType>(namespace: INamespace, options: AddMultiStateDiscreteOptions): UAMultiStateDiscreteImpl<T, DT>;
1
+ import { LocalizedText } from "node-opcua-data-model";
2
+ import { StatusCode } from "node-opcua-status-code";
3
+ import { DataType, Variant } from "node-opcua-variant";
4
+ import { INamespace, UAVariable, UAProperty } from "node-opcua-address-space-base";
5
+ import { UAMultiStateDiscrete_Base } from "node-opcua-nodeset-ua";
6
+ import { UAVariableImpl } from "../ua_variable_impl";
7
+ import { AddMultiStateDiscreteOptions } from "../../source/address_space_ts";
8
+ export { UAMultiStateDiscrete } from "node-opcua-nodeset-ua";
9
+ export interface UAMultiStateDiscreteEx<T, DT extends DataType> extends UAMultiStateDiscrete_Base<T, DT> {
10
+ getValue(): number;
11
+ getValueAsString(): string;
12
+ getIndex(value: string): number;
13
+ setValue(value: string | number): void;
14
+ checkVariantCompatibility(value: Variant): StatusCode;
15
+ }
16
+ export interface UAMultiStateDiscreteImpl<T, DT extends DataType> {
17
+ enumStrings: UAProperty<LocalizedText[], DataType.LocalizedText>;
18
+ }
19
+ /**
20
+ * @class UAMultiStateDiscrete
21
+ */
22
+ export declare class UAMultiStateDiscreteImpl<T, DT extends DataType> extends UAVariableImpl implements UAMultiStateDiscreteEx<T, DT> {
23
+ getValue(): number;
24
+ getValueAsString(): string;
25
+ getIndex(value: string): number;
26
+ setValue(value: string | number): void;
27
+ checkVariantCompatibility(value: Variant): StatusCode;
28
+ _post_initialize(): void;
29
+ clone<T, DT extends DataType>(options1: any, optionalFilter: any, extraInfo: any): UAMultiStateDiscreteImpl<T, DT>;
30
+ }
31
+ export declare function promoteToMultiStateDiscrete<T, DT extends DataType>(node: UAVariable): UAMultiStateDiscreteImpl<T, DT>;
32
+ export declare function _addMultiStateDiscrete<T, DT extends DataType>(namespace: INamespace, options: AddMultiStateDiscreteOptions): UAMultiStateDiscreteImpl<T, DT>;
@@ -1,131 +1,131 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports._addMultiStateDiscrete = exports.promoteToMultiStateDiscrete = exports.UAMultiStateDiscreteImpl = void 0;
4
- /**
5
- * @module node-opcua-address-space.DataAccess
6
- */
7
- const node_opcua_assert_1 = require("node-opcua-assert");
8
- const node_opcua_constants_1 = require("node-opcua-constants");
9
- const node_opcua_data_model_1 = require("node-opcua-data-model");
10
- const node_opcua_status_code_1 = require("node-opcua-status-code");
11
- const node_opcua_variant_1 = require("node-opcua-variant");
12
- const register_node_promoter_1 = require("../../source/loader/register_node_promoter");
13
- const ua_variable_impl_1 = require("../ua_variable_impl");
14
- const add_dataItem_stuff_1 = require("./add_dataItem_stuff");
15
- /**
16
- * @class UAMultiStateDiscrete
17
- */
18
- class UAMultiStateDiscreteImpl extends ua_variable_impl_1.UAVariableImpl {
19
- getValue() {
20
- return this.readValue().value.value;
21
- }
22
- getValueAsString() {
23
- const index = this.getValue();
24
- const arr = this.enumStrings.readValue().value.value;
25
- (0, node_opcua_assert_1.assert)(Array.isArray(arr));
26
- return arr[index].text ? arr[index].text.toString() : "????";
27
- }
28
- getIndex(value) {
29
- const arr = this.enumStrings.readValue().value.value;
30
- (0, node_opcua_assert_1.assert)(Array.isArray(arr));
31
- const index = arr.findIndex((a) => a.text === value);
32
- return index;
33
- }
34
- setValue(value) {
35
- if (typeof value === "string") {
36
- const index = this.getIndex(value);
37
- if (index < 0) {
38
- throw new Error("UAMultiStateDiscrete#setValue invalid multi state value provided : " + value);
39
- }
40
- return this.setValue(index);
41
- }
42
- const arrayEnumStrings = this.enumStrings.readValue().value.value;
43
- if (value >= arrayEnumStrings.length) {
44
- throw new Error("UAMultiStateDiscrete#setValue BadOutOfRange " + value);
45
- }
46
- (0, node_opcua_assert_1.assert)(isFinite(value));
47
- return this.setValueFromSource(new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.UInt32, value }));
48
- }
49
- checkVariantCompatibility(value) {
50
- if (!this._validate_DataType(value.dataType)) {
51
- return node_opcua_status_code_1.StatusCodes.BadTypeMismatch;
52
- }
53
- if (this.enumStrings) {
54
- const arrayEnumStrings = this.enumStrings.readValue().value.value;
55
- // MultiStateDiscreteType
56
- (0, node_opcua_assert_1.assert)(value.dataType === node_opcua_variant_1.DataType.UInt32);
57
- if (value.value >= arrayEnumStrings.length) {
58
- return node_opcua_status_code_1.StatusCodes.BadOutOfRange;
59
- }
60
- }
61
- return node_opcua_status_code_1.StatusCodes.Good;
62
- }
63
- _post_initialize() {
64
- /* empty */
65
- }
66
- clone(options1, optionalFilter, extraInfo) {
67
- const variable1 = ua_variable_impl_1.UAVariableImpl.prototype.clone.call(this, options1, optionalFilter, extraInfo);
68
- return promoteToMultiStateDiscrete(variable1);
69
- }
70
- }
71
- exports.UAMultiStateDiscreteImpl = UAMultiStateDiscreteImpl;
72
- function promoteToMultiStateDiscrete(node) {
73
- if (node instanceof UAMultiStateDiscreteImpl) {
74
- return node; // already promoted
75
- }
76
- Object.setPrototypeOf(node, UAMultiStateDiscreteImpl.prototype);
77
- (0, node_opcua_assert_1.assert)(node instanceof UAMultiStateDiscreteImpl, "should now be a State Machine");
78
- const _node = node;
79
- _node._post_initialize();
80
- (0, node_opcua_assert_1.assert)(_node.enumStrings.browseName.toString() === "EnumStrings");
81
- const handler = _node.handle_semantic_changed.bind(_node);
82
- _node.enumStrings.on("value_changed", handler);
83
- _node.install_extra_properties();
84
- return node;
85
- }
86
- exports.promoteToMultiStateDiscrete = promoteToMultiStateDiscrete;
87
- (0, register_node_promoter_1.registerNodePromoter)(node_opcua_constants_1.VariableTypeIds.MultiStateDiscreteType, promoteToMultiStateDiscrete);
88
- function _addMultiStateDiscrete(namespace, options) {
89
- const addressSpace = namespace.addressSpace;
90
- (0, node_opcua_assert_1.assert)(Object.prototype.hasOwnProperty.call(options, "enumStrings"));
91
- (0, node_opcua_assert_1.assert)(!Object.prototype.hasOwnProperty.call(options, "ValuePrecision"));
92
- const multiStateDiscreteType = addressSpace.findVariableType("MultiStateDiscreteType");
93
- if (!multiStateDiscreteType) {
94
- throw new Error("Cannot find MultiStateDiscreteType");
95
- }
96
- // todo : if options.typeDefinition is specified, check that type is SubTypeOf MultiStateDiscreteType
97
- options.value = options.value === undefined ? 0 : options.value;
98
- let value;
99
- if (typeof options.value === "number") {
100
- value = new node_opcua_variant_1.Variant({
101
- dataType: node_opcua_variant_1.DataType.UInt32,
102
- value: options.value
103
- });
104
- }
105
- else {
106
- value = options.value;
107
- }
108
- const variable = namespace.addVariable(Object.assign(Object.assign({}, options), { dataType: "Number", typeDefinition: multiStateDiscreteType.nodeId, value, valueRank: -2 }));
109
- (0, add_dataItem_stuff_1.add_dataItem_stuff)(variable, options);
110
- const enumStrings = options.enumStrings.map((value) => {
111
- return (0, node_opcua_data_model_1.coerceLocalizedText)(value);
112
- });
113
- const enumStringsNode = namespace.addVariable({
114
- accessLevel: "CurrentRead",
115
- browseName: { name: "EnumStrings", namespaceIndex: 0 },
116
- dataType: "LocalizedText",
117
- minimumSamplingInterval: 0,
118
- modellingRule: options.modellingRule ? "Mandatory" : undefined,
119
- propertyOf: variable,
120
- typeDefinition: "PropertyType",
121
- userAccessLevel: "CurrentRead",
122
- value: new node_opcua_variant_1.Variant({
123
- arrayType: node_opcua_variant_1.VariantArrayType.Array,
124
- dataType: node_opcua_variant_1.DataType.LocalizedText,
125
- value: enumStrings
126
- })
127
- });
128
- return promoteToMultiStateDiscrete(variable);
129
- }
130
- exports._addMultiStateDiscrete = _addMultiStateDiscrete;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports._addMultiStateDiscrete = exports.promoteToMultiStateDiscrete = exports.UAMultiStateDiscreteImpl = void 0;
4
+ /**
5
+ * @module node-opcua-address-space.DataAccess
6
+ */
7
+ const node_opcua_assert_1 = require("node-opcua-assert");
8
+ const node_opcua_constants_1 = require("node-opcua-constants");
9
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
10
+ const node_opcua_status_code_1 = require("node-opcua-status-code");
11
+ const node_opcua_variant_1 = require("node-opcua-variant");
12
+ const register_node_promoter_1 = require("../../source/loader/register_node_promoter");
13
+ const ua_variable_impl_1 = require("../ua_variable_impl");
14
+ const add_dataItem_stuff_1 = require("./add_dataItem_stuff");
15
+ /**
16
+ * @class UAMultiStateDiscrete
17
+ */
18
+ class UAMultiStateDiscreteImpl extends ua_variable_impl_1.UAVariableImpl {
19
+ getValue() {
20
+ return this.readValue().value.value;
21
+ }
22
+ getValueAsString() {
23
+ const index = this.getValue();
24
+ const arr = this.enumStrings.readValue().value.value;
25
+ (0, node_opcua_assert_1.assert)(Array.isArray(arr));
26
+ return arr[index].text ? arr[index].text.toString() : "????";
27
+ }
28
+ getIndex(value) {
29
+ const arr = this.enumStrings.readValue().value.value;
30
+ (0, node_opcua_assert_1.assert)(Array.isArray(arr));
31
+ const index = arr.findIndex((a) => a.text === value);
32
+ return index;
33
+ }
34
+ setValue(value) {
35
+ if (typeof value === "string") {
36
+ const index = this.getIndex(value);
37
+ if (index < 0) {
38
+ throw new Error("UAMultiStateDiscrete#setValue invalid multi state value provided : " + value);
39
+ }
40
+ return this.setValue(index);
41
+ }
42
+ const arrayEnumStrings = this.enumStrings.readValue().value.value;
43
+ if (value >= arrayEnumStrings.length) {
44
+ throw new Error("UAMultiStateDiscrete#setValue BadOutOfRange " + value);
45
+ }
46
+ (0, node_opcua_assert_1.assert)(isFinite(value));
47
+ return this.setValueFromSource(new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.UInt32, value }));
48
+ }
49
+ checkVariantCompatibility(value) {
50
+ if (!this._validate_DataType(value.dataType)) {
51
+ return node_opcua_status_code_1.StatusCodes.BadTypeMismatch;
52
+ }
53
+ if (this.enumStrings) {
54
+ const arrayEnumStrings = this.enumStrings.readValue().value.value;
55
+ // MultiStateDiscreteType
56
+ (0, node_opcua_assert_1.assert)(value.dataType === node_opcua_variant_1.DataType.UInt32);
57
+ if (value.value >= arrayEnumStrings.length) {
58
+ return node_opcua_status_code_1.StatusCodes.BadOutOfRange;
59
+ }
60
+ }
61
+ return node_opcua_status_code_1.StatusCodes.Good;
62
+ }
63
+ _post_initialize() {
64
+ /* empty */
65
+ }
66
+ clone(options1, optionalFilter, extraInfo) {
67
+ const variable1 = ua_variable_impl_1.UAVariableImpl.prototype.clone.call(this, options1, optionalFilter, extraInfo);
68
+ return promoteToMultiStateDiscrete(variable1);
69
+ }
70
+ }
71
+ exports.UAMultiStateDiscreteImpl = UAMultiStateDiscreteImpl;
72
+ function promoteToMultiStateDiscrete(node) {
73
+ if (node instanceof UAMultiStateDiscreteImpl) {
74
+ return node; // already promoted
75
+ }
76
+ Object.setPrototypeOf(node, UAMultiStateDiscreteImpl.prototype);
77
+ (0, node_opcua_assert_1.assert)(node instanceof UAMultiStateDiscreteImpl, "should now be a State Machine");
78
+ const _node = node;
79
+ _node._post_initialize();
80
+ (0, node_opcua_assert_1.assert)(_node.enumStrings.browseName.toString() === "EnumStrings");
81
+ const handler = _node.handle_semantic_changed.bind(_node);
82
+ _node.enumStrings.on("value_changed", handler);
83
+ _node.install_extra_properties();
84
+ return node;
85
+ }
86
+ exports.promoteToMultiStateDiscrete = promoteToMultiStateDiscrete;
87
+ (0, register_node_promoter_1.registerNodePromoter)(node_opcua_constants_1.VariableTypeIds.MultiStateDiscreteType, promoteToMultiStateDiscrete);
88
+ function _addMultiStateDiscrete(namespace, options) {
89
+ const addressSpace = namespace.addressSpace;
90
+ (0, node_opcua_assert_1.assert)(Object.prototype.hasOwnProperty.call(options, "enumStrings"));
91
+ (0, node_opcua_assert_1.assert)(!Object.prototype.hasOwnProperty.call(options, "ValuePrecision"));
92
+ const multiStateDiscreteType = addressSpace.findVariableType("MultiStateDiscreteType");
93
+ if (!multiStateDiscreteType) {
94
+ throw new Error("Cannot find MultiStateDiscreteType");
95
+ }
96
+ // todo : if options.typeDefinition is specified, check that type is SubTypeOf MultiStateDiscreteType
97
+ options.value = options.value === undefined ? 0 : options.value;
98
+ let value;
99
+ if (typeof options.value === "number") {
100
+ value = new node_opcua_variant_1.Variant({
101
+ dataType: node_opcua_variant_1.DataType.UInt32,
102
+ value: options.value
103
+ });
104
+ }
105
+ else {
106
+ value = options.value;
107
+ }
108
+ const variable = namespace.addVariable(Object.assign(Object.assign({}, options), { dataType: "Number", typeDefinition: multiStateDiscreteType.nodeId, value, valueRank: -2 }));
109
+ (0, add_dataItem_stuff_1.add_dataItem_stuff)(variable, options);
110
+ const enumStrings = options.enumStrings.map((value) => {
111
+ return (0, node_opcua_data_model_1.coerceLocalizedText)(value);
112
+ });
113
+ const enumStringsNode = namespace.addVariable({
114
+ accessLevel: "CurrentRead",
115
+ browseName: { name: "EnumStrings", namespaceIndex: 0 },
116
+ dataType: "LocalizedText",
117
+ minimumSamplingInterval: 0,
118
+ modellingRule: options.modellingRule ? "Mandatory" : undefined,
119
+ propertyOf: variable,
120
+ typeDefinition: "PropertyType",
121
+ userAccessLevel: "CurrentRead",
122
+ value: new node_opcua_variant_1.Variant({
123
+ arrayType: node_opcua_variant_1.VariantArrayType.Array,
124
+ dataType: node_opcua_variant_1.DataType.LocalizedText,
125
+ value: enumStrings
126
+ })
127
+ });
128
+ return promoteToMultiStateDiscrete(variable);
129
+ }
130
+ exports._addMultiStateDiscrete = _addMultiStateDiscrete;
131
131
  //# sourceMappingURL=ua_multistate_discrete_impl.js.map