node-opcua-address-space 2.180.0 → 2.181.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.
- package/api/address_space_public.ts +63 -0
- package/api/address_space_ts.ts +129 -0
- package/api/continuation_points/continuation_point_manager.ts +271 -0
- package/api/helpers/argument_list.ts +310 -0
- package/api/helpers/call_helpers.ts +100 -0
- package/api/helpers/coerce_enum_value.ts +33 -0
- package/api/helpers/dump_tools.ts +90 -0
- package/api/helpers/ensure_secure_access.ts +78 -0
- package/api/helpers/multiform_func.ts +78 -0
- package/api/helpers/resolve_opaque_on_address_space.ts +26 -0
- package/api/index.ts +210 -0
- package/api/interfaces/alarms_and_conditions/condition_info_i.ts +60 -0
- package/api/interfaces/alarms_and_conditions/condition_snapshot.ts +236 -0
- package/api/interfaces/alarms_and_conditions/deviation_stuff.ts +16 -0
- package/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +8 -0
- package/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +6 -0
- package/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +6 -0
- package/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +13 -0
- package/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +6 -0
- package/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +6 -0
- package/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +21 -0
- package/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +28 -0
- package/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +72 -0
- package/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +36 -0
- package/api/interfaces/alarms_and_conditions/ua_condition_ex.ts +55 -0
- package/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +17 -0
- package/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +21 -0
- package/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +21 -0
- package/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +26 -0
- package/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +29 -0
- package/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +25 -0
- package/api/interfaces/data_access/ua_multistate_discrete_ex.ts +57 -0
- package/api/interfaces/data_access/ua_multistate_value_discrete_ex.ts +31 -0
- package/api/interfaces/data_access/ua_two_state_discrete_ex.ts +15 -0
- package/api/interfaces/nodeset_loader_options.ts +58 -0
- package/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +20 -0
- package/api/interfaces/state_machine/ua_finite_state_machine_type.ts +50 -0
- package/api/interfaces/state_machine/ua_program_state_machine_type.ts +14 -0
- package/api/interfaces/state_machine/ua_shelved_state_machine_ex.ts +35 -0
- package/api/interfaces/state_machine/ua_state_machine_type.ts +288 -0
- package/api/loader/decode_xml_extension_object.ts +80 -0
- package/api/loader/ensure_datatype_extracted.ts +122 -0
- package/api/loader/generateAddressSpaceRaw.ts +470 -0
- package/api/loader/load_nodeset2.ts +278 -0
- package/api/loader/make_xml_extension_object_parser.ts +518 -0
- package/api/loader/namespace_post_step.ts +68 -0
- package/api/loader/nodeset_image.ts +451 -0
- package/api/loader/nodeset_image_codec.ts +576 -0
- package/api/loader/nodeset_image_store.ts +78 -0
- package/api/loader/nodeset_record.ts +141 -0
- package/api/loader/nodeset_record_applier.ts +889 -0
- package/api/loader/nodeset_source.ts +367 -0
- package/api/loader/nodeset_source_helpers.ts +50 -0
- package/api/loader/nodeset_to_image.ts +29 -0
- package/api/loader/nodeset_xml_producer.ts +383 -0
- package/api/loader/parsers/extension_object_parser.ts +374 -0
- package/api/loader/parsers/variant_parser.ts +363 -0
- package/api/loader/register_node_promoter.ts +6 -0
- package/api/namespace.ts +25 -0
- package/api/namespace_alarm_and_condition.ts +78 -0
- package/api/namespace_data_access.ts +92 -0
- package/api/namespace_machine_state.ts +20 -0
- package/api/pseudo_session.ts +415 -0
- package/api/session_context.ts +729 -0
- package/api/ua_interface.ts +38 -0
- package/api/ua_two_state_variable_ex.ts +36 -0
- package/bin/opcua-nodeset-image.js +192 -0
- package/dist/api/address_space_public.d.ts +57 -0
- package/dist/api/address_space_public.js +19 -0
- package/dist/api/address_space_public.js.map +1 -0
- package/dist/api/address_space_ts.d.ts +79 -0
- package/dist/api/address_space_ts.js +13 -0
- package/dist/api/address_space_ts.js.map +1 -0
- package/dist/api/continuation_points/continuation_point_manager.js +230 -0
- package/dist/api/continuation_points/continuation_point_manager.js.map +1 -0
- package/dist/api/helpers/adjust_browse_direction.js.map +1 -0
- package/dist/api/helpers/argument_list.js +263 -0
- package/dist/api/helpers/argument_list.js.map +1 -0
- package/dist/api/helpers/call_helpers.js +80 -0
- package/dist/api/helpers/call_helpers.js.map +1 -0
- package/dist/api/helpers/coerce_enum_value.d.ts +6 -0
- package/dist/api/helpers/coerce_enum_value.js.map +1 -0
- package/dist/api/helpers/dump_tools.js +81 -0
- package/dist/api/helpers/dump_tools.js.map +1 -0
- package/dist/api/helpers/ensure_secure_access.d.ts +19 -0
- package/dist/api/helpers/ensure_secure_access.js +67 -0
- package/dist/api/helpers/ensure_secure_access.js.map +1 -0
- package/dist/api/helpers/make_optionals_map.js.map +1 -0
- package/dist/api/helpers/multiform_func.js +75 -0
- package/dist/api/helpers/multiform_func.js.map +1 -0
- package/dist/api/helpers/resolve_opaque_on_address_space.js +25 -0
- package/dist/api/helpers/resolve_opaque_on_address_space.js.map +1 -0
- package/dist/api/index.d.ts +113 -0
- package/dist/api/index.js +234 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_info_i.d.ts +54 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js +28 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.d.ts +151 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.d.ts +12 -0
- package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/install_setpoint_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +4 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +10 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +4 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +4 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +20 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +21 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +56 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +19 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +44 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +4 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +19 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +25 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +8 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +1 -0
- package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.d.ts +44 -0
- package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.js.map +1 -0
- package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +22 -0
- package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +1 -0
- package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.d.ts +13 -0
- package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.js.map +1 -0
- package/dist/api/interfaces/data_access/ua_y_array_item_ex.js.map +1 -0
- package/dist/api/interfaces/extension_object_constructor.js.map +1 -0
- package/dist/api/interfaces/i_condition_variable_type_setter_options.js.map +1 -0
- package/dist/api/interfaces/i_set_state_options.js.map +1 -0
- package/dist/api/interfaces/nodeset_loader_options.d.ts +56 -0
- package/dist/api/interfaces/nodeset_loader_options.js.map +1 -0
- package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -0
- package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +1 -0
- package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -0
- package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.js.map +1 -0
- package/dist/api/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -0
- package/dist/api/interfaces/state_machine/ua_program_state_machine_type.js.map +1 -0
- package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +29 -0
- package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +1 -0
- package/dist/api/interfaces/state_machine/ua_state_machine_type.d.ts +236 -0
- package/dist/api/interfaces/state_machine/ua_state_machine_type.js.map +1 -0
- package/dist/api/interfaces/state_machine/ua_transition_ex.js.map +1 -0
- package/dist/api/interfaces/ua_subscription_diagnostics_variable_ex.js.map +1 -0
- package/dist/api/loader/decode_xml_extension_object.d.ts +6 -0
- package/dist/api/loader/decode_xml_extension_object.js +69 -0
- package/dist/api/loader/decode_xml_extension_object.js.map +1 -0
- package/dist/api/loader/ensure_datatype_extracted.js +88 -0
- package/dist/api/loader/ensure_datatype_extracted.js.map +1 -0
- package/dist/api/loader/generateAddressSpaceRaw.d.ts +64 -0
- package/dist/api/loader/generateAddressSpaceRaw.js +379 -0
- package/dist/api/loader/generateAddressSpaceRaw.js.map +1 -0
- package/dist/api/loader/load_nodeset2.d.ts +38 -0
- package/dist/api/loader/load_nodeset2.js +245 -0
- package/dist/api/loader/load_nodeset2.js.map +1 -0
- package/dist/api/loader/make_semver_compatible.js.map +1 -0
- package/dist/api/loader/make_xml_extension_object_parser.js +417 -0
- package/dist/api/loader/make_xml_extension_object_parser.js.map +1 -0
- package/dist/api/loader/namespace_post_step.js +57 -0
- package/dist/api/loader/namespace_post_step.js.map +1 -0
- package/dist/api/loader/nodeset_image.d.ts +94 -0
- package/dist/api/loader/nodeset_image.js +406 -0
- package/dist/api/loader/nodeset_image.js.map +1 -0
- package/dist/api/loader/nodeset_image_codec.d.ts +104 -0
- package/dist/api/loader/nodeset_image_codec.js +489 -0
- package/dist/api/loader/nodeset_image_codec.js.map +1 -0
- package/dist/api/loader/nodeset_image_store.d.ts +27 -0
- package/dist/api/loader/nodeset_image_store.js +72 -0
- package/dist/api/loader/nodeset_image_store.js.map +1 -0
- package/dist/api/loader/nodeset_record.d.ts +125 -0
- package/dist/api/loader/nodeset_record.js +26 -0
- package/dist/api/loader/nodeset_record.js.map +1 -0
- package/dist/api/loader/nodeset_record_applier.d.ts +106 -0
- package/dist/api/loader/nodeset_record_applier.js +731 -0
- package/dist/api/loader/nodeset_record_applier.js.map +1 -0
- package/dist/api/loader/nodeset_source.d.ts +124 -0
- package/dist/api/loader/nodeset_source.js +307 -0
- package/dist/api/loader/nodeset_source.js.map +1 -0
- package/dist/api/loader/nodeset_source_helpers.d.ts +27 -0
- package/dist/api/loader/nodeset_source_helpers.js +30 -0
- package/dist/api/loader/nodeset_source_helpers.js.map +1 -0
- package/dist/api/loader/nodeset_to_image.d.ts +13 -0
- package/dist/api/loader/nodeset_to_image.js +30 -0
- package/dist/api/loader/nodeset_to_image.js.map +1 -0
- package/dist/api/loader/nodeset_xml_producer.d.ts +16 -0
- package/dist/api/loader/nodeset_xml_producer.js +349 -0
- package/dist/api/loader/nodeset_xml_producer.js.map +1 -0
- package/dist/api/loader/parsers/extension_object_parser.js +274 -0
- package/dist/api/loader/parsers/extension_object_parser.js.map +1 -0
- package/dist/api/loader/parsers/localized_text_parser.js.map +1 -0
- package/dist/api/loader/parsers/nodeid_parser.js.map +1 -0
- package/dist/api/loader/parsers/qualified_name_parser.js.map +1 -0
- package/dist/api/loader/parsers/variant_parser.d.ts +42 -0
- package/dist/api/loader/parsers/variant_parser.js +294 -0
- package/dist/api/loader/parsers/variant_parser.js.map +1 -0
- package/dist/api/loader/register_node_promoter.d.ts +2 -0
- package/dist/api/loader/register_node_promoter.js +9 -0
- package/dist/api/loader/register_node_promoter.js.map +1 -0
- package/dist/api/namespace.d.ts +18 -0
- package/dist/api/namespace.js.map +1 -0
- package/dist/api/namespace_alarm_and_condition.d.ts +33 -0
- package/dist/api/namespace_alarm_and_condition.js.map +1 -0
- package/dist/api/namespace_data_access.d.ts +67 -0
- package/dist/api/namespace_data_access.js.map +1 -0
- package/dist/api/namespace_machine_state.d.ts +8 -0
- package/dist/api/namespace_machine_state.js.map +1 -0
- package/dist/api/pseudo_session.d.ts +74 -0
- package/dist/api/pseudo_session.js +308 -0
- package/dist/api/pseudo_session.js.map +1 -0
- package/dist/api/session_context.d.ts +242 -0
- package/dist/api/session_context.js.map +1 -0
- package/dist/api/set_namespace_meta_data.js.map +1 -0
- package/dist/api/ua_addin.js.map +1 -0
- package/dist/api/ua_interface.js +25 -0
- package/dist/api/ua_interface.js.map +1 -0
- package/dist/api/ua_root_folder.js.map +1 -0
- package/dist/api/ua_two_state_variable_ex.d.ts +24 -0
- package/dist/api/ua_two_state_variable_ex.js.map +1 -0
- package/dist/api/xml_writer.js.map +1 -0
- package/dist/impl/_instantiate_helpers.js +99 -0
- package/dist/impl/_instantiate_helpers.js.map +1 -0
- package/dist/impl/_mandatory_child_or_requested_optional_filter.js +82 -0
- package/dist/impl/_mandatory_child_or_requested_optional_filter.js.map +1 -0
- package/dist/impl/address_space.d.ts +379 -0
- package/dist/impl/address_space.js +1383 -0
- package/dist/impl/address_space.js.map +1 -0
- package/dist/impl/address_space_change_event_tools.d.ts +6 -0
- package/dist/impl/address_space_change_event_tools.js.map +1 -0
- package/dist/impl/address_space_private.d.ts +48 -0
- package/dist/impl/address_space_private.js.map +1 -0
- package/dist/impl/alarms_and_conditions/condition.js.map +1 -0
- package/dist/impl/alarms_and_conditions/condition_info_impl.d.ts +19 -0
- package/dist/impl/alarms_and_conditions/condition_info_impl.js +39 -0
- package/dist/impl/alarms_and_conditions/condition_info_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/condition_snapshot_impl.d.ts +271 -0
- package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js +700 -0
- package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/deviation_alarm_helper.d.ts +12 -0
- package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js +66 -0
- package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js.map +1 -0
- package/dist/impl/alarms_and_conditions/index.d.ts +16 -0
- package/dist/impl/alarms_and_conditions/index.js +33 -0
- package/dist/impl/alarms_and_conditions/index.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +54 -0
- package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -0
- package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.d.ts +105 -0
- package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js +428 -0
- package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_base_event_impl.d.ts +36 -0
- package/dist/impl/alarms_and_conditions/ua_base_event_impl.js +32 -0
- package/dist/impl/alarms_and_conditions/ua_base_event_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +47 -0
- package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +204 -0
- package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_condition_impl.d.ts +152 -0
- package/dist/impl/alarms_and_conditions/ua_condition_impl.js +1016 -0
- package/dist/impl/alarms_and_conditions/ua_condition_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +22 -0
- package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js +41 -0
- package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +30 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +54 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +12 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +13 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +28 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +10 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +8 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.d.ts +49 -0
- package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js +207 -0
- package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +28 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +54 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +38 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +172 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +44 -0
- package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js +164 -0
- package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -0
- package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +18 -0
- package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -0
- package/dist/impl/apply_condition_refresh.d.ts +4 -0
- package/dist/impl/apply_condition_refresh.js +29 -0
- package/dist/impl/apply_condition_refresh.js.map +1 -0
- package/dist/impl/base_node_impl.d.ts +347 -0
- package/dist/impl/base_node_impl.js +1768 -0
- package/dist/impl/base_node_impl.js.map +1 -0
- package/dist/impl/base_node_private.d.ts +138 -0
- package/dist/impl/base_node_private.js +1028 -0
- package/dist/impl/base_node_private.js.map +1 -0
- package/dist/impl/check_value_rank_compatibility.js.map +1 -0
- package/dist/impl/child_accessors.d.ts +43 -0
- package/dist/impl/child_accessors.js +222 -0
- package/dist/impl/child_accessors.js.map +1 -0
- package/dist/impl/data_access/add_dataItem_stuff.js.map +1 -0
- package/dist/impl/data_access/adjust_datavalue_status_code.d.ts +7 -0
- package/dist/impl/data_access/adjust_datavalue_status_code.js.map +1 -0
- package/dist/impl/data_access/ua_multistate_discrete_impl.d.ts +38 -0
- package/dist/impl/data_access/ua_multistate_discrete_impl.js +143 -0
- package/dist/impl/data_access/ua_multistate_discrete_impl.js.map +1 -0
- package/dist/impl/data_access/ua_multistate_value_discrete_impl.d.ts +61 -0
- package/dist/impl/data_access/ua_multistate_value_discrete_impl.js +303 -0
- package/dist/impl/data_access/ua_multistate_value_discrete_impl.js.map +1 -0
- package/dist/impl/data_access/ua_two_state_discrete_impl.d.ts +30 -0
- package/dist/impl/data_access/ua_two_state_discrete_impl.js +164 -0
- package/dist/impl/data_access/ua_two_state_discrete_impl.js.map +1 -0
- package/dist/impl/event_data.d.ts +27 -0
- package/dist/impl/event_data.js +73 -0
- package/dist/impl/event_data.js.map +1 -0
- package/dist/impl/event_layout.d.ts +40 -0
- package/dist/impl/event_layout.js +103 -0
- package/dist/impl/event_layout.js.map +1 -0
- package/dist/impl/extension_object_array_node.d.ts +41 -0
- package/dist/impl/extension_object_array_node.js +274 -0
- package/dist/impl/extension_object_array_node.js.map +1 -0
- package/dist/impl/get_basic_datatype.js.map +1 -0
- package/dist/impl/handle_hierarchy_parent.d.ts +33 -0
- package/dist/impl/handle_hierarchy_parent.js +103 -0
- package/dist/impl/handle_hierarchy_parent.js.map +1 -0
- package/dist/impl/historical_access/address_space_historical_data_node.d.ts +21 -0
- package/dist/impl/historical_access/address_space_historical_data_node.js +658 -0
- package/dist/impl/historical_access/address_space_historical_data_node.js.map +1 -0
- package/dist/impl/historizer_factory.d.ts +18 -0
- package/dist/impl/historizer_factory.js +16 -0
- package/dist/impl/historizer_factory.js.map +1 -0
- package/dist/impl/idx_iterator.js.map +1 -0
- package/dist/impl/namespace_impl.d.ts +469 -0
- package/dist/impl/namespace_impl.js +1845 -0
- package/dist/impl/namespace_impl.js.map +1 -0
- package/dist/impl/namespace_private.d.ts +25 -0
- package/dist/impl/namespace_private.js.map +1 -0
- package/dist/impl/nodeid_manager.js +249 -0
- package/dist/impl/nodeid_manager.js.map +1 -0
- package/dist/impl/nodeset_tools/adjust_namespace_array.js.map +1 -0
- package/dist/impl/nodeset_tools/construct_namespace_dependency.d.ts +37 -0
- package/dist/impl/nodeset_tools/construct_namespace_dependency.js +352 -0
- package/dist/impl/nodeset_tools/construct_namespace_dependency.js.map +1 -0
- package/dist/impl/nodeset_tools/dump_to_bsd.d.ts +10 -0
- package/dist/impl/nodeset_tools/dump_to_bsd.js +176 -0
- package/dist/impl/nodeset_tools/dump_to_bsd.js.map +1 -0
- package/dist/impl/nodeset_tools/nodeset_to_records.d.ts +67 -0
- package/dist/impl/nodeset_tools/nodeset_to_records.js +773 -0
- package/dist/impl/nodeset_tools/nodeset_to_records.js.map +1 -0
- package/dist/impl/nodeset_tools/nodeset_to_xml.d.ts +28 -0
- package/dist/impl/nodeset_tools/nodeset_to_xml.js +1132 -0
- package/dist/impl/nodeset_tools/nodeset_to_xml.js.map +1 -0
- package/dist/impl/private_namespace.d.ts +5 -0
- package/dist/impl/private_namespace.js.map +1 -0
- package/dist/impl/reference_impl.d.ts +82 -0
- package/dist/impl/reference_impl.js +207 -0
- package/dist/impl/reference_impl.js.map +1 -0
- package/dist/impl/reference_type_version.d.ts +22 -0
- package/dist/impl/reference_type_version.js +22 -0
- package/dist/impl/reference_type_version.js.map +1 -0
- package/dist/impl/role_permissions.js.map +1 -0
- package/dist/impl/state_machine/finite_state_machine.d.ts +81 -0
- package/dist/impl/state_machine/finite_state_machine.js +573 -0
- package/dist/impl/state_machine/finite_state_machine.js.map +1 -0
- package/dist/impl/state_machine/ua_shelving_state_machine_ex.d.ts +64 -0
- package/dist/impl/state_machine/ua_shelving_state_machine_ex.js +249 -0
- package/dist/impl/state_machine/ua_shelving_state_machine_ex.js.map +1 -0
- package/dist/impl/state_machine/ua_two_state_variable.d.ts +55 -0
- package/dist/impl/state_machine/ua_two_state_variable.js +323 -0
- package/dist/impl/state_machine/ua_two_state_variable.js.map +1 -0
- package/dist/impl/tool_isSubtypeOf.d.ts +18 -0
- package/dist/impl/tool_isSubtypeOf.js +138 -0
- package/dist/impl/tool_isSubtypeOf.js.map +1 -0
- package/dist/impl/ua_condition_type.js.map +1 -0
- package/dist/impl/ua_data_type_impl.d.ts +87 -0
- package/dist/impl/ua_data_type_impl.js +391 -0
- package/dist/impl/ua_data_type_impl.js.map +1 -0
- package/dist/impl/ua_method_impl.d.ts +48 -0
- package/dist/impl/ua_method_impl.js +281 -0
- package/dist/impl/ua_method_impl.js.map +1 -0
- package/dist/impl/ua_object_impl.d.ts +38 -0
- package/dist/impl/ua_object_impl.js +214 -0
- package/dist/impl/ua_object_impl.js.map +1 -0
- package/dist/impl/ua_object_type_impl.d.ts +55 -0
- package/dist/impl/ua_object_type_impl.js +131 -0
- package/dist/impl/ua_object_type_impl.js.map +1 -0
- package/dist/impl/ua_reference_type_impl.d.ts +42 -0
- package/dist/impl/ua_reference_type_impl.js +157 -0
- package/dist/impl/ua_reference_type_impl.js.map +1 -0
- package/dist/impl/ua_variable_impl.d.ts +391 -0
- package/dist/impl/ua_variable_impl.js +2001 -0
- package/dist/impl/ua_variable_impl.js.map +1 -0
- package/dist/impl/ua_variable_impl_ext_obj.d.ts +23 -0
- package/dist/impl/ua_variable_impl_ext_obj.js +753 -0
- package/dist/impl/ua_variable_impl_ext_obj.js.map +1 -0
- package/dist/impl/ua_variable_type_impl.d.ts +79 -0
- package/dist/impl/ua_variable_type_impl.js +279 -0
- package/dist/impl/ua_variable_type_impl.js.map +1 -0
- package/dist/impl/ua_view_impl.d.ts +18 -0
- package/dist/impl/ua_view_impl.js +45 -0
- package/dist/impl/ua_view_impl.js.map +1 -0
- package/dist/impl/validate_data_type_correctness.d.ts +6 -0
- package/dist/impl/validate_data_type_correctness.js +123 -0
- package/dist/impl/validate_data_type_correctness.js.map +1 -0
- package/dist/tsconfig_base.tsbuildinfo +1 -1
- package/distHelpers/address_space_digest.d.ts +4 -0
- package/distHelpers/address_space_digest.js +9 -0
- package/distHelpers/address_space_digest.js.map +1 -0
- package/distHelpers/alarms_and_conditions_demo.d.ts +1 -1
- package/distHelpers/assertHasMatchingReference.d.ts +1 -1
- package/distHelpers/boiler_system.d.ts +1 -1
- package/distHelpers/boiler_system.js +3 -3
- package/distHelpers/boiler_system.js.map +1 -1
- package/distHelpers/create_minimalist_address_space_nodeset.d.ts +1 -1
- package/distHelpers/get_address_space_fixture.js +38 -22
- package/distHelpers/get_address_space_fixture.js.map +1 -1
- package/distHelpers/get_mini_address_space.d.ts +1 -1
- package/distHelpers/get_mini_address_space.js +7 -7
- package/distHelpers/get_mini_address_space.js.map +1 -1
- package/distHelpers/index.d.ts +9 -9
- package/distHelpers/index.js +9 -9
- package/distHelpers/index.js.map +1 -1
- package/distHelpers/mock_session.d.ts +1 -1
- package/distHelpers/mock_session.js +2 -2
- package/distHelpers/mock_session.js.map +1 -1
- package/distNodeJS/address_space_digest.d.ts +13 -0
- package/distNodeJS/address_space_digest.js +31 -0
- package/distNodeJS/address_space_digest.js.map +1 -0
- package/distNodeJS/generate_address_space.d.ts +35 -2
- package/distNodeJS/generate_address_space.js +201 -7
- package/distNodeJS/generate_address_space.js.map +1 -1
- package/distNodeJS/index.d.ts +3 -1
- package/distNodeJS/index.js +3 -1
- package/distNodeJS/index.js.map +1 -1
- package/distNodeJS/nodeset_image_file_store.d.ts +29 -0
- package/distNodeJS/nodeset_image_file_store.js +120 -0
- package/distNodeJS/nodeset_image_file_store.js.map +1 -0
- package/impl/_instantiate_helpers.ts +197 -0
- package/impl/_mandatory_child_or_requested_optional_filter.ts +100 -0
- package/impl/address_space.ts +1572 -0
- package/impl/address_space_change_event_tools.ts +177 -0
- package/impl/address_space_private.ts +100 -0
- package/impl/alarms_and_conditions/condition_info_impl.ts +45 -0
- package/impl/alarms_and_conditions/condition_snapshot_impl.ts +793 -0
- package/impl/alarms_and_conditions/deviation_alarm_helper.ts +73 -0
- package/impl/alarms_and_conditions/index.ts +16 -0
- package/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +351 -0
- package/impl/alarms_and_conditions/ua_alarm_condition_impl.ts +515 -0
- package/impl/alarms_and_conditions/ua_base_event_impl.ts +61 -0
- package/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +246 -0
- package/impl/alarms_and_conditions/ua_condition_impl.ts +1286 -0
- package/impl/alarms_and_conditions/ua_discrete_alarm_impl.ts +60 -0
- package/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +95 -0
- package/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +21 -0
- package/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +112 -0
- package/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +25 -0
- package/impl/alarms_and_conditions/ua_limit_alarm_impl.ts +265 -0
- package/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +94 -0
- package/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +232 -0
- package/impl/alarms_and_conditions/ua_off_normal_alarm_impl.ts +216 -0
- package/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +26 -0
- package/impl/apply_condition_refresh.ts +56 -0
- package/impl/base_node_impl.ts +2165 -0
- package/impl/base_node_private.ts +1420 -0
- package/impl/child_accessors.ts +239 -0
- package/impl/data_access/adjust_datavalue_status_code.ts +36 -0
- package/impl/data_access/ua_multistate_discrete_impl.ts +198 -0
- package/impl/data_access/ua_multistate_value_discrete_impl.ts +384 -0
- package/impl/data_access/ua_two_state_discrete_impl.ts +195 -0
- package/impl/event_data.ts +80 -0
- package/impl/event_layout.ts +141 -0
- package/impl/extension_object_array_node.ts +343 -0
- package/impl/handle_hierarchy_parent.ts +133 -0
- package/impl/historical_access/address_space_historical_data_node.ts +849 -0
- package/impl/historizer_factory.ts +17 -0
- package/impl/namespace_impl.ts +2323 -0
- package/impl/namespace_private.ts +68 -0
- package/impl/nodeid_manager.ts +293 -0
- package/impl/nodeset_tools/construct_namespace_dependency.ts +381 -0
- package/impl/nodeset_tools/dump_to_bsd.ts +210 -0
- package/impl/nodeset_tools/nodeset_to_records.ts +846 -0
- package/impl/nodeset_tools/nodeset_to_xml.ts +1326 -0
- package/impl/private_namespace.ts +21 -0
- package/impl/reference_impl.ts +244 -0
- package/impl/reference_type_version.ts +19 -0
- package/impl/state_machine/finite_state_machine.ts +676 -0
- package/impl/state_machine/ua_shelving_state_machine_ex.ts +356 -0
- package/impl/state_machine/ua_two_state_variable.ts +421 -0
- package/impl/tool_isSubtypeOf.ts +168 -0
- package/impl/ua_data_type_impl.ts +486 -0
- package/impl/ua_method_impl.ts +364 -0
- package/impl/ua_object_impl.ts +278 -0
- package/impl/ua_object_type_impl.ts +179 -0
- package/impl/ua_reference_type_impl.ts +179 -0
- package/impl/ua_variable_impl.ts +2559 -0
- package/impl/ua_variable_impl_ext_obj.ts +904 -0
- package/impl/ua_variable_type_impl.ts +390 -0
- package/impl/ua_view_impl.ts +53 -0
- package/impl/validate_data_type_correctness.ts +142 -0
- package/package.json +49 -44
- package/source_nodejs/address_space_digest.ts +35 -0
- package/source_nodejs/generate_address_space.ts +181 -8
- package/source_nodejs/index.ts +3 -1
- package/source_nodejs/nodeset_image_file_store.ts +127 -0
- package/dist/source/address_space_ts.d.ts +0 -128
- package/dist/source/address_space_ts.js +0 -23
- package/dist/source/address_space_ts.js.map +0 -1
- package/dist/source/continuation_points/continuation_point_manager.js +0 -230
- package/dist/source/continuation_points/continuation_point_manager.js.map +0 -1
- package/dist/source/helpers/adjust_browse_direction.js.map +0 -1
- package/dist/source/helpers/argument_list.js +0 -263
- package/dist/source/helpers/argument_list.js.map +0 -1
- package/dist/source/helpers/call_helpers.js +0 -80
- package/dist/source/helpers/call_helpers.js.map +0 -1
- package/dist/source/helpers/coerce_enum_value.d.ts +0 -6
- package/dist/source/helpers/coerce_enum_value.js.map +0 -1
- package/dist/source/helpers/dump_tools.js +0 -81
- package/dist/source/helpers/dump_tools.js.map +0 -1
- package/dist/source/helpers/ensure_secure_access.d.ts +0 -9
- package/dist/source/helpers/ensure_secure_access.js +0 -58
- package/dist/source/helpers/ensure_secure_access.js.map +0 -1
- package/dist/source/helpers/make_optionals_map.js.map +0 -1
- package/dist/source/helpers/multiform_func.js +0 -75
- package/dist/source/helpers/multiform_func.js.map +0 -1
- package/dist/source/helpers/resolve_opaque_on_address_space.js +0 -25
- package/dist/source/helpers/resolve_opaque_on_address_space.js.map +0 -1
- package/dist/source/index.d.ts +0 -66
- package/dist/source/index.js +0 -97
- package/dist/source/index.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +0 -21
- package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +0 -3
- package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +0 -150
- package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +0 -12
- package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +0 -7
- package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +0 -4
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +0 -4
- package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +0 -10
- package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +0 -4
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +0 -4
- package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +0 -20
- package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +0 -21
- package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +0 -33
- package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +0 -19
- package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +0 -44
- package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +0 -4
- package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +0 -5
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +0 -19
- package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +0 -25
- package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +0 -8
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js.map +0 -1
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +0 -10
- package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js.map +0 -1
- package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +0 -44
- package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js.map +0 -1
- package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +0 -22
- package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js.map +0 -1
- package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +0 -13
- package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js.map +0 -1
- package/dist/source/interfaces/data_access/ua_y_array_item_ex.js.map +0 -1
- package/dist/source/interfaces/extension_object_constructor.js.map +0 -1
- package/dist/source/interfaces/i_condition_variable_type_setter_options.js.map +0 -1
- package/dist/source/interfaces/i_set_state_options.js.map +0 -1
- package/dist/source/interfaces/nodeset_loader_options.d.ts +0 -37
- package/dist/source/interfaces/nodeset_loader_options.js.map +0 -1
- package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +0 -12
- package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js.map +0 -1
- package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +0 -49
- package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js.map +0 -1
- package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +0 -11
- package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js.map +0 -1
- package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +0 -29
- package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js.map +0 -1
- package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +0 -236
- package/dist/source/interfaces/state_machine/ua_state_machine_type.js.map +0 -1
- package/dist/source/interfaces/state_machine/ua_transition_ex.js.map +0 -1
- package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js.map +0 -1
- package/dist/source/loader/decode_xml_extension_object.d.ts +0 -6
- package/dist/source/loader/decode_xml_extension_object.js +0 -69
- package/dist/source/loader/decode_xml_extension_object.js.map +0 -1
- package/dist/source/loader/ensure_datatype_extracted.js +0 -88
- package/dist/source/loader/ensure_datatype_extracted.js.map +0 -1
- package/dist/source/loader/generateAddressSpaceRaw.d.ts +0 -29
- package/dist/source/loader/generateAddressSpaceRaw.js +0 -188
- package/dist/source/loader/generateAddressSpaceRaw.js.map +0 -1
- package/dist/source/loader/load_nodeset2.d.ts +0 -15
- package/dist/source/loader/load_nodeset2.js +0 -1047
- package/dist/source/loader/load_nodeset2.js.map +0 -1
- package/dist/source/loader/make_semver_compatible.js.map +0 -1
- package/dist/source/loader/make_xml_extension_object_parser.js +0 -422
- package/dist/source/loader/make_xml_extension_object_parser.js.map +0 -1
- package/dist/source/loader/namespace_post_step.js +0 -57
- package/dist/source/loader/namespace_post_step.js.map +0 -1
- package/dist/source/loader/parsers/extension_object_parser.js +0 -274
- package/dist/source/loader/parsers/extension_object_parser.js.map +0 -1
- package/dist/source/loader/parsers/localized_text_parser.js.map +0 -1
- package/dist/source/loader/parsers/nodeid_parser.js.map +0 -1
- package/dist/source/loader/parsers/qualified_name_parser.js.map +0 -1
- package/dist/source/loader/parsers/variant_parser.d.ts +0 -35
- package/dist/source/loader/parsers/variant_parser.js +0 -331
- package/dist/source/loader/parsers/variant_parser.js.map +0 -1
- package/dist/source/loader/register_node_promoter.d.ts +0 -2
- package/dist/source/loader/register_node_promoter.js +0 -9
- package/dist/source/loader/register_node_promoter.js.map +0 -1
- package/dist/source/namespace.d.ts +0 -6
- package/dist/source/namespace.js.map +0 -1
- package/dist/source/namespace_alarm_and_condition.d.ts +0 -33
- package/dist/source/namespace_alarm_and_condition.js.map +0 -1
- package/dist/source/namespace_data_access.d.ts +0 -67
- package/dist/source/namespace_data_access.js.map +0 -1
- package/dist/source/namespace_machine_state.d.ts +0 -8
- package/dist/source/namespace_machine_state.js.map +0 -1
- package/dist/source/pseudo_session.d.ts +0 -74
- package/dist/source/pseudo_session.js +0 -308
- package/dist/source/pseudo_session.js.map +0 -1
- package/dist/source/session_context.d.ts +0 -241
- package/dist/source/session_context.js.map +0 -1
- package/dist/source/set_namespace_meta_data.js.map +0 -1
- package/dist/source/ua_addin.js.map +0 -1
- package/dist/source/ua_interface.js +0 -25
- package/dist/source/ua_interface.js.map +0 -1
- package/dist/source/ua_root_folder.js.map +0 -1
- package/dist/source/ua_two_state_variable_ex.d.ts +0 -24
- package/dist/source/ua_two_state_variable_ex.js.map +0 -1
- package/dist/source/xml_writer.js.map +0 -1
- package/dist/src/_instantiate_helpers.js +0 -99
- package/dist/src/_instantiate_helpers.js.map +0 -1
- package/dist/src/_mandatory_child_or_requested_optional_filter.js +0 -82
- package/dist/src/_mandatory_child_or_requested_optional_filter.js.map +0 -1
- package/dist/src/address_space.d.ts +0 -369
- package/dist/src/address_space.js +0 -1416
- package/dist/src/address_space.js.map +0 -1
- package/dist/src/address_space_change_event_tools.d.ts +0 -6
- package/dist/src/address_space_change_event_tools.js.map +0 -1
- package/dist/src/address_space_private.d.ts +0 -45
- package/dist/src/address_space_private.js.map +0 -1
- package/dist/src/alarms_and_conditions/condition.js.map +0 -1
- package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +0 -18
- package/dist/src/alarms_and_conditions/condition_info_impl.js +0 -38
- package/dist/src/alarms_and_conditions/condition_info_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +0 -269
- package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +0 -699
- package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +0 -12
- package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +0 -66
- package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +0 -1
- package/dist/src/alarms_and_conditions/index.d.ts +0 -16
- package/dist/src/alarms_and_conditions/index.js +0 -33
- package/dist/src/alarms_and_conditions/index.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +0 -42
- package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +0 -243
- package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +0 -80
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +0 -415
- package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +0 -18
- package/dist/src/alarms_and_conditions/ua_base_event_impl.js +0 -33
- package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +0 -44
- package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +0 -203
- package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +0 -104
- package/dist/src/alarms_and_conditions/ua_condition_impl.js +0 -1017
- package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +0 -19
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +0 -39
- package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +0 -25
- package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +0 -55
- package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +0 -11
- package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +0 -12
- package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +0 -23
- package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +0 -87
- package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +0 -10
- package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +0 -8
- package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +0 -26
- package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +0 -208
- package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +0 -23
- package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +0 -55
- package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +0 -27
- package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +0 -173
- package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +0 -43
- package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +0 -168
- package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +0 -1
- package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +0 -18
- package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +0 -18
- package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +0 -1
- package/dist/src/apply_condition_refresh.d.ts +0 -4
- package/dist/src/apply_condition_refresh.js +0 -27
- package/dist/src/apply_condition_refresh.js.map +0 -1
- package/dist/src/base_node_impl.d.ts +0 -287
- package/dist/src/base_node_impl.js +0 -1538
- package/dist/src/base_node_impl.js.map +0 -1
- package/dist/src/base_node_private.d.ts +0 -87
- package/dist/src/base_node_private.js +0 -925
- package/dist/src/base_node_private.js.map +0 -1
- package/dist/src/check_value_rank_compatibility.js.map +0 -1
- package/dist/src/data_access/add_dataItem_stuff.js.map +0 -1
- package/dist/src/data_access/adjust_datavalue_status_code.d.ts +0 -7
- package/dist/src/data_access/adjust_datavalue_status_code.js.map +0 -1
- package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +0 -35
- package/dist/src/data_access/ua_multistate_discrete_impl.js +0 -142
- package/dist/src/data_access/ua_multistate_discrete_impl.js.map +0 -1
- package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +0 -51
- package/dist/src/data_access/ua_multistate_value_discrete_impl.js +0 -302
- package/dist/src/data_access/ua_multistate_value_discrete_impl.js.map +0 -1
- package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +0 -20
- package/dist/src/data_access/ua_two_state_discrete_impl.js +0 -163
- package/dist/src/data_access/ua_two_state_discrete_impl.js.map +0 -1
- package/dist/src/event_data.d.ts +0 -18
- package/dist/src/event_data.js +0 -70
- package/dist/src/event_data.js.map +0 -1
- package/dist/src/extension_object_array_node.d.ts +0 -34
- package/dist/src/extension_object_array_node.js +0 -262
- package/dist/src/extension_object_array_node.js.map +0 -1
- package/dist/src/get_basic_datatype.js.map +0 -1
- package/dist/src/historical_access/address_space_historical_data_node.d.ts +0 -21
- package/dist/src/historical_access/address_space_historical_data_node.js +0 -654
- package/dist/src/historical_access/address_space_historical_data_node.js.map +0 -1
- package/dist/src/idx_iterator.js.map +0 -1
- package/dist/src/index_current.d.ts +0 -50
- package/dist/src/index_current.js +0 -82
- package/dist/src/index_current.js.map +0 -1
- package/dist/src/namespace_impl.d.ts +0 -450
- package/dist/src/namespace_impl.js +0 -1876
- package/dist/src/namespace_impl.js.map +0 -1
- package/dist/src/namespace_private.d.ts +0 -31
- package/dist/src/namespace_private.js.map +0 -1
- package/dist/src/nodeid_manager.js +0 -249
- package/dist/src/nodeid_manager.js.map +0 -1
- package/dist/src/nodeset_tools/adjust_namespace_array.js.map +0 -1
- package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +0 -33
- package/dist/src/nodeset_tools/construct_namespace_dependency.js +0 -347
- package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +0 -1
- package/dist/src/nodeset_tools/dump_to_bsd.d.ts +0 -2
- package/dist/src/nodeset_tools/dump_to_bsd.js +0 -164
- package/dist/src/nodeset_tools/dump_to_bsd.js.map +0 -1
- package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +0 -12
- package/dist/src/nodeset_tools/nodeset_to_xml.js +0 -1381
- package/dist/src/nodeset_tools/nodeset_to_xml.js.map +0 -1
- package/dist/src/private_namespace.d.ts +0 -5
- package/dist/src/private_namespace.js.map +0 -1
- package/dist/src/reference_impl.d.ts +0 -43
- package/dist/src/reference_impl.js +0 -152
- package/dist/src/reference_impl.js.map +0 -1
- package/dist/src/role_permissions.js.map +0 -1
- package/dist/src/state_machine/finite_state_machine.d.ts +0 -70
- package/dist/src/state_machine/finite_state_machine.js +0 -574
- package/dist/src/state_machine/finite_state_machine.js.map +0 -1
- package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +0 -39
- package/dist/src/state_machine/ua_shelving_state_machine_ex.js +0 -249
- package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +0 -1
- package/dist/src/state_machine/ua_two_state_variable.d.ts +0 -55
- package/dist/src/state_machine/ua_two_state_variable.js +0 -323
- package/dist/src/state_machine/ua_two_state_variable.js.map +0 -1
- package/dist/src/tool_isSubtypeOf.d.ts +0 -18
- package/dist/src/tool_isSubtypeOf.js +0 -130
- package/dist/src/tool_isSubtypeOf.js.map +0 -1
- package/dist/src/ua_condition_type.js.map +0 -1
- package/dist/src/ua_data_type_impl.d.ts +0 -87
- package/dist/src/ua_data_type_impl.js +0 -393
- package/dist/src/ua_data_type_impl.js.map +0 -1
- package/dist/src/ua_method_impl.d.ts +0 -48
- package/dist/src/ua_method_impl.js +0 -280
- package/dist/src/ua_method_impl.js.map +0 -1
- package/dist/src/ua_object_impl.d.ts +0 -38
- package/dist/src/ua_object_impl.js +0 -214
- package/dist/src/ua_object_impl.js.map +0 -1
- package/dist/src/ua_object_type_impl.d.ts +0 -55
- package/dist/src/ua_object_type_impl.js +0 -131
- package/dist/src/ua_object_type_impl.js.map +0 -1
- package/dist/src/ua_reference_type_impl.d.ts +0 -42
- package/dist/src/ua_reference_type_impl.js +0 -146
- package/dist/src/ua_reference_type_impl.js.map +0 -1
- package/dist/src/ua_variable_impl.d.ts +0 -379
- package/dist/src/ua_variable_impl.js +0 -1940
- package/dist/src/ua_variable_impl.js.map +0 -1
- package/dist/src/ua_variable_impl_ext_obj.d.ts +0 -23
- package/dist/src/ua_variable_impl_ext_obj.js +0 -752
- package/dist/src/ua_variable_impl_ext_obj.js.map +0 -1
- package/dist/src/ua_variable_type_impl.d.ts +0 -79
- package/dist/src/ua_variable_type_impl.js +0 -276
- package/dist/src/ua_variable_type_impl.js.map +0 -1
- package/dist/src/ua_view_impl.d.ts +0 -18
- package/dist/src/ua_view_impl.js +0 -45
- package/dist/src/ua_view_impl.js.map +0 -1
- package/dist/src/validate_data_type_correctness.d.ts +0 -6
- package/dist/src/validate_data_type_correctness.js +0 -106
- package/dist/src/validate_data_type_correctness.js.map +0 -1
- package/source/address_space_ts.ts +0 -220
- package/source/continuation_points/continuation_point_manager.ts +0 -271
- package/source/helpers/argument_list.ts +0 -310
- package/source/helpers/call_helpers.ts +0 -100
- package/source/helpers/coerce_enum_value.ts +0 -33
- package/source/helpers/dump_tools.ts +0 -90
- package/source/helpers/ensure_secure_access.ts +0 -57
- package/source/helpers/multiform_func.ts +0 -78
- package/source/helpers/resolve_opaque_on_address_space.ts +0 -26
- package/source/index.ts +0 -72
- package/source/interfaces/alarms_and_conditions/condition_info_i.ts +0 -24
- package/source/interfaces/alarms_and_conditions/condition_snapshot.ts +0 -235
- package/source/interfaces/alarms_and_conditions/deviation_stuff.ts +0 -16
- package/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +0 -8
- package/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +0 -6
- package/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +0 -6
- package/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +0 -13
- package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +0 -6
- package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +0 -6
- package/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +0 -21
- package/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +0 -28
- package/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +0 -43
- package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +0 -36
- package/source/interfaces/alarms_and_conditions/ua_condition_ex.ts +0 -55
- package/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +0 -17
- package/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +0 -21
- package/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +0 -21
- package/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +0 -26
- package/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +0 -29
- package/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +0 -25
- package/source/interfaces/data_access/ua_multistate_discrete_ex.ts +0 -57
- package/source/interfaces/data_access/ua_multistate_value_discrete_ex.ts +0 -31
- package/source/interfaces/data_access/ua_two_state_discrete_ex.ts +0 -15
- package/source/interfaces/nodeset_loader_options.ts +0 -38
- package/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +0 -20
- package/source/interfaces/state_machine/ua_finite_state_machine_type.ts +0 -50
- package/source/interfaces/state_machine/ua_program_state_machine_type.ts +0 -14
- package/source/interfaces/state_machine/ua_shelved_state_machine_ex.ts +0 -35
- package/source/interfaces/state_machine/ua_state_machine_type.ts +0 -288
- package/source/loader/decode_xml_extension_object.ts +0 -80
- package/source/loader/ensure_datatype_extracted.ts +0 -122
- package/source/loader/generateAddressSpaceRaw.ts +0 -219
- package/source/loader/load_nodeset2.ts +0 -1275
- package/source/loader/make_xml_extension_object_parser.ts +0 -524
- package/source/loader/namespace_post_step.ts +0 -68
- package/source/loader/parsers/extension_object_parser.ts +0 -374
- package/source/loader/parsers/variant_parser.ts +0 -433
- package/source/loader/register_node_promoter.ts +0 -6
- package/source/namespace.ts +0 -7
- package/source/namespace_alarm_and_condition.ts +0 -78
- package/source/namespace_data_access.ts +0 -92
- package/source/namespace_machine_state.ts +0 -20
- package/source/pseudo_session.ts +0 -415
- package/source/session_context.ts +0 -725
- package/source/ua_interface.ts +0 -38
- package/source/ua_two_state_variable_ex.ts +0 -36
- package/src/_instantiate_helpers.ts +0 -197
- package/src/_mandatory_child_or_requested_optional_filter.ts +0 -100
- package/src/address_space.ts +0 -1631
- package/src/address_space_change_event_tools.ts +0 -177
- package/src/address_space_private.ts +0 -96
- package/src/alarms_and_conditions/condition_info_impl.ts +0 -44
- package/src/alarms_and_conditions/condition_snapshot_impl.ts +0 -792
- package/src/alarms_and_conditions/deviation_alarm_helper.ts +0 -73
- package/src/alarms_and_conditions/index.ts +0 -16
- package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +0 -331
- package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +0 -479
- package/src/alarms_and_conditions/ua_base_event_impl.ts +0 -42
- package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +0 -244
- package/src/alarms_and_conditions/ua_condition_impl.ts +0 -1261
- package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +0 -57
- package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +0 -94
- package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +0 -20
- package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +0 -109
- package/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +0 -25
- package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +0 -244
- package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +0 -88
- package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +0 -223
- package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +0 -218
- package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +0 -26
- package/src/apply_condition_refresh.ts +0 -29
- package/src/base_node_impl.ts +0 -1907
- package/src/base_node_private.ts +0 -1287
- package/src/data_access/adjust_datavalue_status_code.ts +0 -36
- package/src/data_access/ua_multistate_discrete_impl.ts +0 -189
- package/src/data_access/ua_multistate_value_discrete_impl.ts +0 -369
- package/src/data_access/ua_two_state_discrete_impl.ts +0 -184
- package/src/event_data.ts +0 -83
- package/src/extension_object_array_node.ts +0 -331
- package/src/historical_access/address_space_historical_data_node.ts +0 -842
- package/src/index_current.ts +0 -51
- package/src/namespace_impl.ts +0 -2380
- package/src/namespace_private.ts +0 -77
- package/src/nodeid_manager.ts +0 -293
- package/src/nodeset_tools/construct_namespace_dependency.ts +0 -375
- package/src/nodeset_tools/dump_to_bsd.ts +0 -201
- package/src/nodeset_tools/nodeset_to_xml.ts +0 -1652
- package/src/private_namespace.ts +0 -21
- package/src/reference_impl.ts +0 -171
- package/src/state_machine/finite_state_machine.ts +0 -668
- package/src/state_machine/ua_shelving_state_machine_ex.ts +0 -330
- package/src/state_machine/ua_two_state_variable.ts +0 -421
- package/src/tool_isSubtypeOf.ts +0 -160
- package/src/ua_data_type_impl.ts +0 -483
- package/src/ua_method_impl.ts +0 -362
- package/src/ua_object_impl.ts +0 -278
- package/src/ua_object_type_impl.ts +0 -179
- package/src/ua_reference_type_impl.ts +0 -170
- package/src/ua_variable_impl.ts +0 -2489
- package/src/ua_variable_impl_ext_obj.ts +0 -903
- package/src/ua_variable_type_impl.ts +0 -385
- package/src/ua_view_impl.ts +0 -53
- package/src/validate_data_type_correctness.ts +0 -124
- /package/{source → api}/helpers/adjust_browse_direction.ts +0 -0
- /package/{source → api}/helpers/make_optionals_map.ts +0 -0
- /package/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.ts +0 -0
- /package/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.ts +0 -0
- /package/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.ts +0 -0
- /package/{source → api}/interfaces/data_access/ua_y_array_item_ex.ts +0 -0
- /package/{source → api}/interfaces/extension_object_constructor.ts +0 -0
- /package/{source → api}/interfaces/i_condition_variable_type_setter_options.ts +0 -0
- /package/{source → api}/interfaces/i_set_state_options.ts +0 -0
- /package/{source → api}/interfaces/state_machine/ua_transition_ex.ts +0 -0
- /package/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.ts +0 -0
- /package/{source → api}/loader/make_semver_compatible.ts +0 -0
- /package/{source → api}/loader/parsers/localized_text_parser.ts +0 -0
- /package/{source → api}/loader/parsers/nodeid_parser.ts +0 -0
- /package/{source → api}/loader/parsers/qualified_name_parser.ts +0 -0
- /package/{source → api}/set_namespace_meta_data.ts +0 -0
- /package/{source → api}/ua_addin.ts +0 -0
- /package/{source → api}/ua_root_folder.ts +0 -0
- /package/{source → api}/xml_writer.ts +0 -0
- /package/dist/{source → api}/continuation_points/continuation_point_manager.d.ts +0 -0
- /package/dist/{source → api}/helpers/adjust_browse_direction.d.ts +0 -0
- /package/dist/{source → api}/helpers/adjust_browse_direction.js +0 -0
- /package/dist/{source → api}/helpers/argument_list.d.ts +0 -0
- /package/dist/{source → api}/helpers/call_helpers.d.ts +0 -0
- /package/dist/{source → api}/helpers/coerce_enum_value.js +0 -0
- /package/dist/{source → api}/helpers/dump_tools.d.ts +0 -0
- /package/dist/{source → api}/helpers/make_optionals_map.d.ts +0 -0
- /package/dist/{source → api}/helpers/make_optionals_map.js +0 -0
- /package/dist/{source → api}/helpers/multiform_func.d.ts +0 -0
- /package/dist/{source → api}/helpers/resolve_opaque_on_address_space.d.ts +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/condition_snapshot.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/deviation_stuff.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/install_setpoint_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_condition_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.d.ts +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_base_event_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_condition_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +0 -0
- /package/dist/{source → api}/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +0 -0
- /package/dist/{source → api}/interfaces/data_access/ua_multistate_discrete_ex.js +0 -0
- /package/dist/{source → api}/interfaces/data_access/ua_multistate_value_discrete_ex.js +0 -0
- /package/dist/{source → api}/interfaces/data_access/ua_two_state_discrete_ex.js +0 -0
- /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.d.ts +0 -0
- /package/dist/{source → api}/interfaces/data_access/ua_y_array_item_ex.js +0 -0
- /package/dist/{source → api}/interfaces/extension_object_constructor.d.ts +0 -0
- /package/dist/{source → api}/interfaces/extension_object_constructor.js +0 -0
- /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.d.ts +0 -0
- /package/dist/{source → api}/interfaces/i_condition_variable_type_setter_options.js +0 -0
- /package/dist/{source → api}/interfaces/i_set_state_options.d.ts +0 -0
- /package/dist/{source → api}/interfaces/i_set_state_options.js +0 -0
- /package/dist/{source → api}/interfaces/nodeset_loader_options.js +0 -0
- /package/dist/{source → api}/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +0 -0
- /package/dist/{source → api}/interfaces/state_machine/ua_finite_state_machine_type.js +0 -0
- /package/dist/{source → api}/interfaces/state_machine/ua_program_state_machine_type.js +0 -0
- /package/dist/{source → api}/interfaces/state_machine/ua_shelved_state_machine_ex.js +0 -0
- /package/dist/{source → api}/interfaces/state_machine/ua_state_machine_type.js +0 -0
- /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.d.ts +0 -0
- /package/dist/{source → api}/interfaces/state_machine/ua_transition_ex.js +0 -0
- /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +0 -0
- /package/dist/{source → api}/interfaces/ua_subscription_diagnostics_variable_ex.js +0 -0
- /package/dist/{source → api}/loader/ensure_datatype_extracted.d.ts +0 -0
- /package/dist/{source → api}/loader/make_semver_compatible.d.ts +0 -0
- /package/dist/{source → api}/loader/make_semver_compatible.js +0 -0
- /package/dist/{source → api}/loader/make_xml_extension_object_parser.d.ts +0 -0
- /package/dist/{source → api}/loader/namespace_post_step.d.ts +0 -0
- /package/dist/{source → api}/loader/parsers/extension_object_parser.d.ts +0 -0
- /package/dist/{source → api}/loader/parsers/localized_text_parser.d.ts +0 -0
- /package/dist/{source → api}/loader/parsers/localized_text_parser.js +0 -0
- /package/dist/{source → api}/loader/parsers/nodeid_parser.d.ts +0 -0
- /package/dist/{source → api}/loader/parsers/nodeid_parser.js +0 -0
- /package/dist/{source → api}/loader/parsers/qualified_name_parser.d.ts +0 -0
- /package/dist/{source → api}/loader/parsers/qualified_name_parser.js +0 -0
- /package/dist/{source → api}/namespace.js +0 -0
- /package/dist/{source → api}/namespace_alarm_and_condition.js +0 -0
- /package/dist/{source → api}/namespace_data_access.js +0 -0
- /package/dist/{source → api}/namespace_machine_state.js +0 -0
- /package/dist/{source → api}/session_context.js +0 -0
- /package/dist/{source → api}/set_namespace_meta_data.d.ts +0 -0
- /package/dist/{source → api}/set_namespace_meta_data.js +0 -0
- /package/dist/{source → api}/ua_addin.d.ts +0 -0
- /package/dist/{source → api}/ua_addin.js +0 -0
- /package/dist/{source → api}/ua_interface.d.ts +0 -0
- /package/dist/{source → api}/ua_root_folder.d.ts +0 -0
- /package/dist/{source → api}/ua_root_folder.js +0 -0
- /package/dist/{source → api}/ua_two_state_variable_ex.js +0 -0
- /package/dist/{source → api}/xml_writer.d.ts +0 -0
- /package/dist/{source → api}/xml_writer.js +0 -0
- /package/dist/{src → impl}/_instantiate_helpers.d.ts +0 -0
- /package/dist/{src → impl}/_mandatory_child_or_requested_optional_filter.d.ts +0 -0
- /package/dist/{src → impl}/address_space_change_event_tools.js +0 -0
- /package/dist/{src → impl}/address_space_private.js +0 -0
- /package/dist/{src → impl}/alarms_and_conditions/condition.d.ts +0 -0
- /package/dist/{src → impl}/alarms_and_conditions/condition.js +0 -0
- /package/dist/{src → impl}/check_value_rank_compatibility.d.ts +0 -0
- /package/dist/{src → impl}/check_value_rank_compatibility.js +0 -0
- /package/dist/{src → impl}/data_access/add_dataItem_stuff.d.ts +0 -0
- /package/dist/{src → impl}/data_access/add_dataItem_stuff.js +0 -0
- /package/dist/{src → impl}/data_access/adjust_datavalue_status_code.js +0 -0
- /package/dist/{src → impl}/get_basic_datatype.d.ts +0 -0
- /package/dist/{src → impl}/get_basic_datatype.js +0 -0
- /package/dist/{src → impl}/idx_iterator.d.ts +0 -0
- /package/dist/{src → impl}/idx_iterator.js +0 -0
- /package/dist/{src → impl}/namespace_private.js +0 -0
- /package/dist/{src → impl}/nodeid_manager.d.ts +0 -0
- /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.d.ts +0 -0
- /package/dist/{src → impl}/nodeset_tools/adjust_namespace_array.js +0 -0
- /package/dist/{src → impl}/private_namespace.js +0 -0
- /package/dist/{src → impl}/role_permissions.d.ts +0 -0
- /package/dist/{src → impl}/role_permissions.js +0 -0
- /package/dist/{src → impl}/ua_condition_type.d.ts +0 -0
- /package/dist/{src → impl}/ua_condition_type.js +0 -0
- /package/{src → impl}/alarms_and_conditions/condition.ts +0 -0
- /package/{src → impl}/check_value_rank_compatibility.ts +0 -0
- /package/{src → impl}/data_access/add_dataItem_stuff.ts +0 -0
- /package/{src → impl}/get_basic_datatype.ts +0 -0
- /package/{src → impl}/idx_iterator.ts +0 -0
- /package/{src → impl}/nodeset_tools/adjust_namespace_array.ts +0 -0
- /package/{src → impl}/role_permissions.ts +0 -0
- /package/{src → impl}/ua_condition_type.ts +0 -0
|
@@ -1,1538 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @module node-opcua-address-space
|
|
4
|
-
*/
|
|
5
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
-
};
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.BaseNodeImpl = void 0;
|
|
10
|
-
exports.makeAttributeEventName = makeAttributeEventName;
|
|
11
|
-
exports.getReferenceType = getReferenceType;
|
|
12
|
-
const node_util_1 = require("node:util");
|
|
13
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
14
|
-
const node_opcua_address_space_base_1 = require("node-opcua-address-space-base");
|
|
15
|
-
const node_opcua_assert_1 = require("node-opcua-assert");
|
|
16
|
-
const node_opcua_constants_1 = require("node-opcua-constants");
|
|
17
|
-
const node_opcua_data_model_1 = require("node-opcua-data-model");
|
|
18
|
-
const node_opcua_data_value_1 = require("node-opcua-data-value");
|
|
19
|
-
const node_opcua_debug_1 = require("node-opcua-debug");
|
|
20
|
-
const node_opcua_nodeid_1 = require("node-opcua-nodeid");
|
|
21
|
-
const node_opcua_status_code_1 = require("node-opcua-status-code");
|
|
22
|
-
const node_opcua_types_1 = require("node-opcua-types");
|
|
23
|
-
const node_opcua_utils_1 = require("node-opcua-utils");
|
|
24
|
-
const node_opcua_variant_1 = require("node-opcua-variant");
|
|
25
|
-
const dump_tools_1 = require("../source/helpers/dump_tools");
|
|
26
|
-
const session_context_1 = require("../source/session_context");
|
|
27
|
-
const address_space_change_event_tools_1 = require("./address_space_change_event_tools");
|
|
28
|
-
const base_node_private_1 = require("./base_node_private");
|
|
29
|
-
const reference_impl_1 = require("./reference_impl");
|
|
30
|
-
const role_permissions_1 = require("./role_permissions");
|
|
31
|
-
const doDebug = false;
|
|
32
|
-
const warningLog = (0, node_opcua_debug_1.make_warningLog)(__filename);
|
|
33
|
-
const errorLog = (0, node_opcua_debug_1.make_errorLog)(__filename);
|
|
34
|
-
const debugLog = (0, node_opcua_debug_1.make_debugLog)(__filename);
|
|
35
|
-
const HasEventSourceReferenceType = (0, node_opcua_nodeid_1.resolveNodeId)("HasEventSource");
|
|
36
|
-
const HasNotifierReferenceType = (0, node_opcua_nodeid_1.resolveNodeId)("HasNotifier");
|
|
37
|
-
function defaultBrowseFilterFunc(_context) {
|
|
38
|
-
return true;
|
|
39
|
-
}
|
|
40
|
-
function _get_QualifiedBrowseName(browseName) {
|
|
41
|
-
return (0, node_opcua_data_model_1.coerceQualifiedName)(browseName) || "";
|
|
42
|
-
}
|
|
43
|
-
function _is_valid_BrowseDirection(browseDirection) {
|
|
44
|
-
return (browseDirection === node_opcua_data_model_1.BrowseDirection.Forward ||
|
|
45
|
-
browseDirection === node_opcua_data_model_1.BrowseDirection.Inverse ||
|
|
46
|
-
browseDirection === node_opcua_data_model_1.BrowseDirection.Both);
|
|
47
|
-
}
|
|
48
|
-
function makeAttributeEventName(attributeId) {
|
|
49
|
-
const attributeName = node_opcua_data_model_1.attributeNameById[attributeId];
|
|
50
|
-
return `${attributeName}_changed`;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Base class for all Node classes
|
|
54
|
-
*
|
|
55
|
-
* BaseNode is the base class for all the OPCUA objects in the address space
|
|
56
|
-
* It provides attributes and a set of references to other nodes.
|
|
57
|
-
* see:
|
|
58
|
-
* {{#crossLink "UAObject"}}{{/crossLink}},
|
|
59
|
-
* {{#crossLink "UAVariable"}}{{/crossLink}},
|
|
60
|
-
* {{#crossLink "Reference"}}{{/crossLink}},
|
|
61
|
-
* {{#crossLink "UAMethod"}}{{/crossLink}},
|
|
62
|
-
* {{#crossLink "UAView"}}{{/crossLink}},
|
|
63
|
-
* {{#crossLink "UAObjectType"}}{{/crossLink}},
|
|
64
|
-
* {{#crossLink "UADataType"}}{{/crossLink}},
|
|
65
|
-
* {{#crossLink "UAVariableType"}}{{/crossLink}},
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*/
|
|
69
|
-
class BaseNodeImpl extends node_opcua_address_space_base_1.TypedEventEmitter {
|
|
70
|
-
static makeAttributeEventName(attributeId) {
|
|
71
|
-
return makeAttributeEventName(attributeId);
|
|
72
|
-
}
|
|
73
|
-
_accessRestrictions;
|
|
74
|
-
_rolePermissions;
|
|
75
|
-
// public onFirstBrowseAction?: (this: BaseNode<T>) => Promise<void>;
|
|
76
|
-
get addressSpace() {
|
|
77
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
78
|
-
// c8 ignore next
|
|
79
|
-
if (!_private) {
|
|
80
|
-
throw new Error(`Internal error , cannot extract private data from ${this.browseName.toString()}`);
|
|
81
|
-
}
|
|
82
|
-
return _private.__address_space;
|
|
83
|
-
}
|
|
84
|
-
get addressSpacePrivate() {
|
|
85
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
86
|
-
// c8 ignore next
|
|
87
|
-
if (!_private) {
|
|
88
|
-
throw new Error(`Internal error , cannot extract private data from ${this.browseName.toString()}`);
|
|
89
|
-
}
|
|
90
|
-
return _private.__address_space;
|
|
91
|
-
}
|
|
92
|
-
get displayName() {
|
|
93
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
94
|
-
return _private._displayName;
|
|
95
|
-
}
|
|
96
|
-
setDisplayName(value) {
|
|
97
|
-
if (!Array.isArray(value)) {
|
|
98
|
-
this.setDisplayName([value]);
|
|
99
|
-
return;
|
|
100
|
-
}
|
|
101
|
-
this._setDisplayName(value);
|
|
102
|
-
/**
|
|
103
|
-
* fires when the displayName is changed.
|
|
104
|
-
* @event DisplayName_changed
|
|
105
|
-
* @param dataValue {DataValue}
|
|
106
|
-
*/
|
|
107
|
-
this._notifyAttributeChange(node_opcua_data_model_1.AttributeIds.DisplayName);
|
|
108
|
-
}
|
|
109
|
-
get description() {
|
|
110
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
111
|
-
return _private._description || new node_opcua_data_model_1.LocalizedText({ text: "" });
|
|
112
|
-
}
|
|
113
|
-
setDescription(value) {
|
|
114
|
-
this._setDescription(value);
|
|
115
|
-
/**
|
|
116
|
-
* fires when the description attribute is changed.
|
|
117
|
-
* @event Description_changed
|
|
118
|
-
* @param dataValue {DataValue}
|
|
119
|
-
*/
|
|
120
|
-
this._notifyAttributeChange(node_opcua_data_model_1.AttributeIds.Description);
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* returns the nodeId of this node's Type Definition
|
|
124
|
-
*/
|
|
125
|
-
get typeDefinition() {
|
|
126
|
-
const _cache = (0, base_node_private_1.BaseNode_getCache)(this);
|
|
127
|
-
if (!_cache.typeDefinition) {
|
|
128
|
-
const has_type_definition_ref = this.findReference("HasTypeDefinition", true);
|
|
129
|
-
let nodeId = has_type_definition_ref ? has_type_definition_ref.nodeId : null;
|
|
130
|
-
if (!nodeId) {
|
|
131
|
-
switch (this.nodeClass) {
|
|
132
|
-
case node_opcua_data_model_1.NodeClass.Object:
|
|
133
|
-
nodeId = (0, node_opcua_nodeid_1.coerceNodeId)(node_opcua_constants_1.ObjectTypeIds.BaseObjectType);
|
|
134
|
-
break;
|
|
135
|
-
case node_opcua_data_model_1.NodeClass.Variable:
|
|
136
|
-
nodeId = (0, node_opcua_nodeid_1.coerceNodeId)(node_opcua_constants_1.VariableTypeIds.BaseVariableType);
|
|
137
|
-
break;
|
|
138
|
-
default:
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
_cache.typeDefinition = nodeId;
|
|
142
|
-
}
|
|
143
|
-
return _cache.typeDefinition;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* returns the nodeId of this node's Type Definition
|
|
147
|
-
*/
|
|
148
|
-
get typeDefinitionObj() {
|
|
149
|
-
const _cache = (0, base_node_private_1.BaseNode_getCache)(this);
|
|
150
|
-
if (undefined === _cache.typeDefinitionObj) {
|
|
151
|
-
const nodeId = this.typeDefinition;
|
|
152
|
-
_cache.typeDefinitionObj = nodeId ? this.addressSpace.findNode(nodeId) : null;
|
|
153
|
-
}
|
|
154
|
-
if (!_cache.typeDefinitionObj) {
|
|
155
|
-
warningLog(this.nodeClass, "cannot find typeDefinitionObj ", this.browseName.toString(), this.nodeId.toString(), node_opcua_data_model_1.NodeClass[this.nodeClass]);
|
|
156
|
-
}
|
|
157
|
-
return _cache.typeDefinitionObj;
|
|
158
|
-
}
|
|
159
|
-
get parentNodeId() {
|
|
160
|
-
const parent = this.parent;
|
|
161
|
-
return parent ? parent.nodeId : undefined;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* namespace index
|
|
165
|
-
*/
|
|
166
|
-
get namespaceIndex() {
|
|
167
|
-
return this.nodeId.namespace;
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
|
-
* namespace uri
|
|
171
|
-
*/
|
|
172
|
-
get namespaceUri() {
|
|
173
|
-
return this.addressSpace.getNamespaceUri(this.namespaceIndex);
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* the parent node
|
|
177
|
-
*/
|
|
178
|
-
get parent() {
|
|
179
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
180
|
-
if (_private._parent === undefined) {
|
|
181
|
-
// never been set before
|
|
182
|
-
_private._parent = _setup_parent_item.call(this, _private._referenceIdx);
|
|
183
|
-
}
|
|
184
|
-
return _private._parent || null;
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* @property modellingRule
|
|
188
|
-
* @type {String|undefined}
|
|
189
|
-
*/
|
|
190
|
-
get modellingRule() {
|
|
191
|
-
const r = this.findReferencesAsObject("HasModellingRule");
|
|
192
|
-
if (!r || r.length === 0) {
|
|
193
|
-
return null; /// "? modellingRule missing ?"; // consider "Mandatory"
|
|
194
|
-
}
|
|
195
|
-
const r0 = r[0];
|
|
196
|
-
return r0.browseName.toString();
|
|
197
|
-
}
|
|
198
|
-
nodeClass = node_opcua_data_model_1.NodeClass.Unspecified;
|
|
199
|
-
nodeId;
|
|
200
|
-
browseName;
|
|
201
|
-
_postInstantiateFunc;
|
|
202
|
-
/**
|
|
203
|
-
* @internal
|
|
204
|
-
* @param options
|
|
205
|
-
*/
|
|
206
|
-
constructor(options) {
|
|
207
|
-
super();
|
|
208
|
-
(0, node_opcua_assert_1.assert)(this.nodeClass === node_opcua_data_model_1.NodeClass.Unspecified, "must not be specify a nodeClass");
|
|
209
|
-
(0, node_opcua_assert_1.assert)(options.addressSpace); // expecting an address space
|
|
210
|
-
(0, node_opcua_assert_1.assert)(options.browseName instanceof node_opcua_data_model_1.QualifiedName, "Expecting a valid QualifiedName");
|
|
211
|
-
(0, node_opcua_assert_1.assert)(options.nodeId instanceof node_opcua_nodeid_1.NodeId, "Expecting a valid NodeId");
|
|
212
|
-
options.references = options.references || [];
|
|
213
|
-
const _private = (0, base_node_private_1.BaseNode_initPrivate)(this);
|
|
214
|
-
_private.__address_space = options.addressSpace;
|
|
215
|
-
this.nodeId = (0, node_opcua_nodeid_1.resolveNodeId)(options.nodeId);
|
|
216
|
-
// QualifiedName
|
|
217
|
-
/**
|
|
218
|
-
* the node browseName
|
|
219
|
-
* @property browseName
|
|
220
|
-
* @type QualifiedName
|
|
221
|
-
* @static
|
|
222
|
-
*/
|
|
223
|
-
this.browseName = _get_QualifiedBrowseName(options.browseName);
|
|
224
|
-
// re-use browseName as displayName if displayName is missing
|
|
225
|
-
options.displayName = options.displayName || this.browseName.name?.toString();
|
|
226
|
-
if (options.description === undefined) {
|
|
227
|
-
options.description = null;
|
|
228
|
-
}
|
|
229
|
-
this._setDisplayName(options.displayName || "");
|
|
230
|
-
this._setDescription(options.description);
|
|
231
|
-
// user defined filter function for browsing
|
|
232
|
-
const _browseFilter = options.browseFilter || defaultBrowseFilterFunc;
|
|
233
|
-
(0, node_opcua_assert_1.assert)(typeof _browseFilter === "function");
|
|
234
|
-
_private._browseFilter = _browseFilter;
|
|
235
|
-
// normalize reference type
|
|
236
|
-
// this will convert any referenceType expressed with its inverseName into
|
|
237
|
-
// its normal name and fix the isForward flag accordingly.
|
|
238
|
-
// ( e.g "ComponentOf" isForward:true => "HasComponent", isForward:false)
|
|
239
|
-
for (const reference of options.references) {
|
|
240
|
-
this.__addReference(reference);
|
|
241
|
-
}
|
|
242
|
-
this._accessRestrictions = options.accessRestrictions;
|
|
243
|
-
this._rolePermissions = (0, role_permissions_1.coerceRolePermissions)(options.rolePermissions);
|
|
244
|
-
}
|
|
245
|
-
getDisplayName(_locale) {
|
|
246
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
247
|
-
return _private._displayName[0].text || "";
|
|
248
|
-
}
|
|
249
|
-
get namespace() {
|
|
250
|
-
return this.addressSpacePrivate.getNamespace(this.nodeId.namespace);
|
|
251
|
-
}
|
|
252
|
-
// ---------------------------------------------------------------------------------------------------
|
|
253
|
-
// Finders
|
|
254
|
-
// ---------------------------------------------------------------------------------------------------
|
|
255
|
-
findReferencesEx(referenceType, browseDirection) {
|
|
256
|
-
browseDirection = browseDirection !== undefined ? browseDirection : node_opcua_data_model_1.BrowseDirection.Forward;
|
|
257
|
-
(0, node_opcua_assert_1.assert)(_is_valid_BrowseDirection(browseDirection));
|
|
258
|
-
(0, node_opcua_assert_1.assert)(browseDirection !== node_opcua_data_model_1.BrowseDirection.Both);
|
|
259
|
-
const referenceTypeNode = this._coerceReferenceType(referenceType);
|
|
260
|
-
if (!referenceTypeNode) {
|
|
261
|
-
// note: when loading nodeset2.xml files, reference type may not exit yet
|
|
262
|
-
// throw new Error("expecting valid reference name " + strReference);
|
|
263
|
-
return [];
|
|
264
|
-
}
|
|
265
|
-
const isForward = browseDirection === node_opcua_data_model_1.BrowseDirection.Forward;
|
|
266
|
-
const results = [];
|
|
267
|
-
const process = (referenceIdx) => {
|
|
268
|
-
for (const ref of referenceIdx.values()) {
|
|
269
|
-
if (ref.isForward === isForward && referenceTypeNode && referenceTypeNode.checkHasSubtype(ref.referenceType)) {
|
|
270
|
-
results.push(ref);
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
};
|
|
274
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
275
|
-
process(_private._referenceIdx);
|
|
276
|
-
process(_private._back_referenceIdx);
|
|
277
|
-
return results;
|
|
278
|
-
}
|
|
279
|
-
findReferences_no_cache(referenceTypeNode, isForward = true) {
|
|
280
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
281
|
-
const result = [];
|
|
282
|
-
for (const ref of _private._referenceIdx.values()) {
|
|
283
|
-
if (ref.isForward === isForward) {
|
|
284
|
-
if ((0, node_opcua_nodeid_1.sameNodeId)(ref.referenceType, referenceTypeNode.nodeId)) {
|
|
285
|
-
result.push(ref);
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
for (const ref of _private._back_referenceIdx.values()) {
|
|
290
|
-
if (ref.isForward === isForward) {
|
|
291
|
-
if ((0, node_opcua_nodeid_1.sameNodeId)(ref.referenceType, referenceTypeNode.nodeId)) {
|
|
292
|
-
result.push(ref);
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
return result;
|
|
297
|
-
}
|
|
298
|
-
findReferences(referenceType, isForward = true) {
|
|
299
|
-
const _cache = (0, base_node_private_1.BaseNode_getCache)(this);
|
|
300
|
-
const referenceTypeNode = this._coerceReferenceType(referenceType);
|
|
301
|
-
if (!referenceTypeNode) {
|
|
302
|
-
// note: when loading nodeset2.xml files, reference type may not exit yet
|
|
303
|
-
// throw new Error("expecting valid reference name " + strReference);
|
|
304
|
-
return [];
|
|
305
|
-
}
|
|
306
|
-
_cache._ref = _cache._ref || new Map();
|
|
307
|
-
const hash = `r|${referenceTypeNode.nodeId.toString()}|${isForward ? "f" : "b"}`;
|
|
308
|
-
if (_cache._ref.has(hash)) {
|
|
309
|
-
return _cache._ref.get(hash) || [];
|
|
310
|
-
}
|
|
311
|
-
// c8 ignore next
|
|
312
|
-
if (doDebug && !this.addressSpace.findReferenceType(referenceTypeNode.nodeId)) {
|
|
313
|
-
throw new Error(`expecting valid reference name ${referenceType}`);
|
|
314
|
-
}
|
|
315
|
-
const result = this.findReferences_no_cache(referenceTypeNode, isForward);
|
|
316
|
-
_cache._ref.set(hash, result);
|
|
317
|
-
return result;
|
|
318
|
-
}
|
|
319
|
-
findReference(strReference, isForward) {
|
|
320
|
-
const refs = this.findReferences(strReference, isForward);
|
|
321
|
-
if (refs.length !== 1 && refs.length !== 0) {
|
|
322
|
-
throw new Error("findReference: expecting only one or zero element here");
|
|
323
|
-
}
|
|
324
|
-
return refs[0] || null;
|
|
325
|
-
}
|
|
326
|
-
findReferencesExAsObject(referenceType, browseDirection) {
|
|
327
|
-
const references = this.findReferencesEx(referenceType, browseDirection);
|
|
328
|
-
return _asObject(references, this.addressSpace);
|
|
329
|
-
}
|
|
330
|
-
findReferencesAsObject(referenceType, isForward) {
|
|
331
|
-
const references = this.findReferences(referenceType, isForward);
|
|
332
|
-
return _asObject(references, this.addressSpace);
|
|
333
|
-
}
|
|
334
|
-
/**
|
|
335
|
-
* return an array with the Aggregates of this object.
|
|
336
|
-
*/
|
|
337
|
-
getAggregates() {
|
|
338
|
-
return this.findReferencesExAsObject("Aggregates", node_opcua_data_model_1.BrowseDirection.Forward);
|
|
339
|
-
}
|
|
340
|
-
/**
|
|
341
|
-
* return an array with the components of this object.
|
|
342
|
-
*/
|
|
343
|
-
getComponents() {
|
|
344
|
-
return this.findReferencesExAsObject("HasComponent", node_opcua_data_model_1.BrowseDirection.Forward);
|
|
345
|
-
}
|
|
346
|
-
/**
|
|
347
|
-
* return a array with the properties of this object.
|
|
348
|
-
*/
|
|
349
|
-
getProperties() {
|
|
350
|
-
return this.findReferencesExAsObject("HasProperty", node_opcua_data_model_1.BrowseDirection.Forward);
|
|
351
|
-
}
|
|
352
|
-
static _hasChild = new node_opcua_nodeid_1.NodeId(node_opcua_nodeid_1.NodeIdType.NUMERIC, node_opcua_constants_1.ReferenceTypeIds.HasChild);
|
|
353
|
-
getChildren() {
|
|
354
|
-
// return this.findReferencesExAsObject(BaseNodeImpl._hasChild, BrowseDirection.Forward);
|
|
355
|
-
const _cache = (0, base_node_private_1.BaseNode_getCache)(this);
|
|
356
|
-
if (!_cache._children) {
|
|
357
|
-
_cache._children = this.findReferencesExAsObject(BaseNodeImpl._hasChild, node_opcua_data_model_1.BrowseDirection.Forward);
|
|
358
|
-
}
|
|
359
|
-
return _cache._children;
|
|
360
|
-
}
|
|
361
|
-
/**
|
|
362
|
-
* return a array with the notifiers of this object.
|
|
363
|
-
* only reference of exact type HasNotifier are returned.
|
|
364
|
-
*/
|
|
365
|
-
getNotifiers() {
|
|
366
|
-
return this.findReferencesAsObject(HasNotifierReferenceType, true);
|
|
367
|
-
}
|
|
368
|
-
/**
|
|
369
|
-
* return a array with the event source of this object.
|
|
370
|
-
* only reference of exact type HasEventSource are returned.
|
|
371
|
-
*/
|
|
372
|
-
getEventSources() {
|
|
373
|
-
return this.findReferencesAsObject(HasEventSourceReferenceType, true);
|
|
374
|
-
}
|
|
375
|
-
/**
|
|
376
|
-
* return a array of the objects for which this node is an EventSource
|
|
377
|
-
*/
|
|
378
|
-
getEventSourceOfs() {
|
|
379
|
-
return this.findReferencesAsObject(HasEventSourceReferenceType, false);
|
|
380
|
-
}
|
|
381
|
-
getComponentByName(browseName, namespaceIndex) {
|
|
382
|
-
const components = this.getComponents();
|
|
383
|
-
const select = _filter_by_browse_name(components, browseName, namespaceIndex);
|
|
384
|
-
(0, node_opcua_assert_1.assert)(select.length <= 1, "BaseNode#getComponentByName found duplicated reference");
|
|
385
|
-
if (select.length === 1) {
|
|
386
|
-
const component = select[0];
|
|
387
|
-
if (component.nodeClass === node_opcua_data_model_1.NodeClass.Method) {
|
|
388
|
-
warningLog("please use getMethodByName to retrieve a method");
|
|
389
|
-
return null;
|
|
390
|
-
}
|
|
391
|
-
(0, node_opcua_assert_1.assert)(component.nodeClass === node_opcua_data_model_1.NodeClass.Variable || component.nodeClass === node_opcua_data_model_1.NodeClass.Object);
|
|
392
|
-
return component;
|
|
393
|
-
}
|
|
394
|
-
else {
|
|
395
|
-
return null;
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
getPropertyByName(browseName, namespaceIndex) {
|
|
399
|
-
const properties = this.getProperties();
|
|
400
|
-
const select = _filter_by_browse_name(properties, browseName, namespaceIndex);
|
|
401
|
-
(0, node_opcua_assert_1.assert)(select.length <= 1, "BaseNode#getPropertyByName found duplicated reference");
|
|
402
|
-
if (select.length === 1 && select[0].nodeClass !== node_opcua_data_model_1.NodeClass.Variable) {
|
|
403
|
-
throw new Error("Expecting a property to be of nodeClass==NodeClass.Variable");
|
|
404
|
-
}
|
|
405
|
-
return select.length === 1 ? select[0] : null;
|
|
406
|
-
}
|
|
407
|
-
getFolderElementByName(browseName, namespaceIndex) {
|
|
408
|
-
const elements = this.getFolderElements();
|
|
409
|
-
const select = _filter_by_browse_name(elements, browseName, namespaceIndex);
|
|
410
|
-
return select.length === 1 ? select[0] : null;
|
|
411
|
-
}
|
|
412
|
-
/**
|
|
413
|
-
* returns the list of nodes that this folder object organizes
|
|
414
|
-
*/
|
|
415
|
-
getFolderElements() {
|
|
416
|
-
return this.findReferencesExAsObject("Organizes", node_opcua_data_model_1.BrowseDirection.Forward);
|
|
417
|
-
}
|
|
418
|
-
/**
|
|
419
|
-
* returns the list of methods that this object provides
|
|
420
|
-
* @return an array with Method objects.
|
|
421
|
-
*
|
|
422
|
-
*
|
|
423
|
-
* Note: internally, methods are special types of components
|
|
424
|
-
*/
|
|
425
|
-
getMethods() {
|
|
426
|
-
const components = this.getComponents();
|
|
427
|
-
return components.filter((obj) => obj.nodeClass === node_opcua_data_model_1.NodeClass.Method);
|
|
428
|
-
}
|
|
429
|
-
/**
|
|
430
|
-
* returns the method exposed by this object and with the given nodeId
|
|
431
|
-
*/
|
|
432
|
-
getMethodById(nodeId) {
|
|
433
|
-
const methods = this.getMethods();
|
|
434
|
-
const found = methods.find((m) => m.nodeId.toString() === nodeId.toString());
|
|
435
|
-
return found || null;
|
|
436
|
-
}
|
|
437
|
-
getMethodByName(methodName, namespaceIndex) {
|
|
438
|
-
const methods = this.getMethods();
|
|
439
|
-
const select = _filter_by_browse_name(methods, methodName, namespaceIndex);
|
|
440
|
-
(0, node_opcua_assert_1.assert)(select.length <= 1, "BaseNode#getMethodByName found duplicated reference");
|
|
441
|
-
return select.length === 1 ? select[0] : null;
|
|
442
|
-
}
|
|
443
|
-
getWriteMask() {
|
|
444
|
-
return 0;
|
|
445
|
-
}
|
|
446
|
-
getUserWriteMask() {
|
|
447
|
-
return 0;
|
|
448
|
-
}
|
|
449
|
-
readAttribute(context, attributeId, indexRange, dataEncoding) {
|
|
450
|
-
indexRange;
|
|
451
|
-
dataEncoding;
|
|
452
|
-
(0, node_opcua_assert_1.assert)(!context || context instanceof session_context_1.SessionContext);
|
|
453
|
-
const options = {};
|
|
454
|
-
options.statusCode = node_opcua_status_code_1.StatusCodes.Good;
|
|
455
|
-
switch (attributeId) {
|
|
456
|
-
case node_opcua_data_model_1.AttributeIds.NodeId: // NodeId
|
|
457
|
-
options.value = { dataType: node_opcua_variant_1.DataType.NodeId, value: this.nodeId };
|
|
458
|
-
break;
|
|
459
|
-
case node_opcua_data_model_1.AttributeIds.NodeClass: // NodeClass
|
|
460
|
-
(0, node_opcua_assert_1.assert)(Number.isFinite(this.nodeClass));
|
|
461
|
-
options.value = { dataType: node_opcua_variant_1.DataType.Int32, value: this.nodeClass };
|
|
462
|
-
break;
|
|
463
|
-
case node_opcua_data_model_1.AttributeIds.BrowseName: // QualifiedName
|
|
464
|
-
(0, node_opcua_assert_1.assert)(this.browseName instanceof node_opcua_data_model_1.QualifiedName);
|
|
465
|
-
options.value = { dataType: node_opcua_variant_1.DataType.QualifiedName, value: this.browseName };
|
|
466
|
-
break;
|
|
467
|
-
case node_opcua_data_model_1.AttributeIds.DisplayName: // LocalizedText
|
|
468
|
-
options.value = { dataType: node_opcua_variant_1.DataType.LocalizedText, value: this.displayName[0] };
|
|
469
|
-
break;
|
|
470
|
-
case node_opcua_data_model_1.AttributeIds.Description: // LocalizedText
|
|
471
|
-
options.value = { dataType: node_opcua_variant_1.DataType.LocalizedText, value: this.description };
|
|
472
|
-
break;
|
|
473
|
-
case node_opcua_data_model_1.AttributeIds.WriteMask:
|
|
474
|
-
options.value = { dataType: node_opcua_variant_1.DataType.UInt32, value: this.getWriteMask() };
|
|
475
|
-
break;
|
|
476
|
-
case node_opcua_data_model_1.AttributeIds.UserWriteMask:
|
|
477
|
-
options.value = { dataType: node_opcua_variant_1.DataType.UInt32, value: this.getUserWriteMask() };
|
|
478
|
-
break;
|
|
479
|
-
case node_opcua_data_model_1.AttributeIds.AccessRestrictions:
|
|
480
|
-
return this._readAccessRestrictions(context);
|
|
481
|
-
case node_opcua_data_model_1.AttributeIds.RolePermissions:
|
|
482
|
-
return this._readRolePermissions(context);
|
|
483
|
-
case node_opcua_data_model_1.AttributeIds.UserRolePermissions:
|
|
484
|
-
return this._readUserRolePermissions(context);
|
|
485
|
-
default:
|
|
486
|
-
options.value = null;
|
|
487
|
-
options.statusCode = node_opcua_status_code_1.StatusCodes.BadAttributeIdInvalid;
|
|
488
|
-
break;
|
|
489
|
-
}
|
|
490
|
-
// xx options.serverTimestamp = new Date();
|
|
491
|
-
return new node_opcua_data_value_1.DataValue(options);
|
|
492
|
-
}
|
|
493
|
-
writeAttribute(context, writeValue, callback) {
|
|
494
|
-
context = context || session_context_1.SessionContext.defaultContext;
|
|
495
|
-
(0, node_opcua_assert_1.assert)(context instanceof session_context_1.SessionContext);
|
|
496
|
-
(0, node_opcua_assert_1.assert)(typeof callback === "function");
|
|
497
|
-
if (writeValue.attributeId === undefined ||
|
|
498
|
-
writeValue.attributeId <= 0 ||
|
|
499
|
-
writeValue.attributeId > node_opcua_data_model_1.AttributeIds.AccessLevelEx) {
|
|
500
|
-
callback(null, node_opcua_status_code_1.StatusCodes.BadAttributeIdInvalid);
|
|
501
|
-
return;
|
|
502
|
-
}
|
|
503
|
-
if (!this.canUserWriteAttribute(context, writeValue.attributeId)) {
|
|
504
|
-
callback(null, node_opcua_status_code_1.StatusCodes.BadUserAccessDenied);
|
|
505
|
-
return;
|
|
506
|
-
}
|
|
507
|
-
// by default Node is read-only,
|
|
508
|
-
// this method needs to be overridden to change the behavior
|
|
509
|
-
callback(null, node_opcua_status_code_1.StatusCodes.BadNotWritable);
|
|
510
|
-
}
|
|
511
|
-
fullName() {
|
|
512
|
-
if (this.parentNodeId) {
|
|
513
|
-
const parent = this.addressSpace.findNode(this.parentNodeId);
|
|
514
|
-
// c8 ignore next
|
|
515
|
-
if (parent) {
|
|
516
|
-
return `${parent.fullName()}.${this.browseName.toString()}`;
|
|
517
|
-
}
|
|
518
|
-
else {
|
|
519
|
-
return `NOT YET REGISTERED${this.parentNodeId.toString()}.${this.browseName.toString()}`;
|
|
520
|
-
}
|
|
521
|
-
}
|
|
522
|
-
return this.browseName.toString();
|
|
523
|
-
}
|
|
524
|
-
ownReferences() {
|
|
525
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
526
|
-
return [..._private._referenceIdx.values()];
|
|
527
|
-
}
|
|
528
|
-
/**
|
|
529
|
-
*
|
|
530
|
-
* @param relativePathElement
|
|
531
|
-
* @param isLast
|
|
532
|
-
* @return {NodeId[]}
|
|
533
|
-
*/
|
|
534
|
-
browseNodeByTargetName(relativePathElement, isLast) {
|
|
535
|
-
relativePathElement.targetName = relativePathElement.targetName || new node_opcua_data_model_1.QualifiedName({});
|
|
536
|
-
// part 4.0 v1.03 $7.26 RelativePath
|
|
537
|
-
// The BrowseName of the target node.
|
|
538
|
-
// The final element may have an empty targetName. In this situation all targets of the references identified by
|
|
539
|
-
// the referenceTypeId are the targets of the RelativePath.
|
|
540
|
-
// The targetName shall be specified for all other elements.
|
|
541
|
-
// The current path cannot be followed any further if no targets with the specified BrowseName exist.
|
|
542
|
-
(0, node_opcua_assert_1.assert)(relativePathElement.targetName instanceof node_opcua_data_model_1.QualifiedName);
|
|
543
|
-
(0, node_opcua_assert_1.assert)(relativePathElement.targetName.namespaceIndex >= 0);
|
|
544
|
-
(0, node_opcua_assert_1.assert)((relativePathElement.targetName.name?.length || 0) > 0);
|
|
545
|
-
// The type of reference to follow from the current node.
|
|
546
|
-
// The current path cannot be followed any further if the referenceTypeId is not available on the Node instance.
|
|
547
|
-
// If not specified then all References are included and the parameter includeSubtypes is ignored.
|
|
548
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(relativePathElement, "referenceTypeId"));
|
|
549
|
-
// Indicates whether the inverse Reference should be followed.
|
|
550
|
-
// The inverse reference is followed if this value is TRUE.
|
|
551
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(relativePathElement, "isInverse"));
|
|
552
|
-
// Indicates whether subtypes of the ReferenceType should be followed.
|
|
553
|
-
// Subtypes are included if this value is TRUE.
|
|
554
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(relativePathElement, "includeSubtypes"));
|
|
555
|
-
const references = this.allReferences();
|
|
556
|
-
const _check_reference = (reference) => {
|
|
557
|
-
if (relativePathElement.referenceTypeId.isEmpty()) {
|
|
558
|
-
return true;
|
|
559
|
-
}
|
|
560
|
-
(0, node_opcua_assert_1.assert)(relativePathElement.referenceTypeId instanceof node_opcua_nodeid_1.NodeId);
|
|
561
|
-
if ((relativePathElement.isInverse && reference.isForward) ||
|
|
562
|
-
(!relativePathElement.isInverse && !reference.isForward)) {
|
|
563
|
-
return false;
|
|
564
|
-
}
|
|
565
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(reference, "isForward"));
|
|
566
|
-
const referenceType = resolveReferenceType(this.addressSpace, reference);
|
|
567
|
-
const referenceTypeId = referenceType.nodeId;
|
|
568
|
-
if ((0, node_opcua_nodeid_1.sameNodeId)(relativePathElement.referenceTypeId, referenceTypeId)) {
|
|
569
|
-
return true;
|
|
570
|
-
}
|
|
571
|
-
if (relativePathElement.includeSubtypes) {
|
|
572
|
-
const baseType = this.addressSpace.findReferenceType(relativePathElement.referenceTypeId);
|
|
573
|
-
if (baseType && referenceType.isSubtypeOf(baseType)) {
|
|
574
|
-
return true;
|
|
575
|
-
}
|
|
576
|
-
}
|
|
577
|
-
return false;
|
|
578
|
-
};
|
|
579
|
-
const nodeIdsMap = {};
|
|
580
|
-
let nodeIds = [];
|
|
581
|
-
for (const reference of references) {
|
|
582
|
-
if (!_check_reference(reference)) {
|
|
583
|
-
continue;
|
|
584
|
-
}
|
|
585
|
-
const obj = resolveReferenceNode(this.addressSpace, reference);
|
|
586
|
-
// c8 ignore next
|
|
587
|
-
if (!obj) {
|
|
588
|
-
throw new Error(` cannot find node with id ${reference.nodeId.toString()}`);
|
|
589
|
-
}
|
|
590
|
-
if ((0, node_util_1.isDeepStrictEqual)(obj.browseName, relativePathElement.targetName)) {
|
|
591
|
-
// compare QualifiedName
|
|
592
|
-
const key = obj.nodeId.toString();
|
|
593
|
-
if (!Object.hasOwn(nodeIdsMap, key)) {
|
|
594
|
-
nodeIds.push(obj.nodeId);
|
|
595
|
-
nodeIdsMap[key] = obj;
|
|
596
|
-
}
|
|
597
|
-
}
|
|
598
|
-
}
|
|
599
|
-
if (nodeIds.length === 0 && (this.nodeClass === node_opcua_data_model_1.NodeClass.ObjectType || this.nodeClass === node_opcua_data_model_1.NodeClass.VariableType)) {
|
|
600
|
-
const nodeType = this;
|
|
601
|
-
if (nodeType.subtypeOf) {
|
|
602
|
-
// browsing also InstanceDeclarations included in base type
|
|
603
|
-
const baseType = this.addressSpace.findNode(nodeType.subtypeOf);
|
|
604
|
-
const n = baseType.browseNodeByTargetName(relativePathElement, isLast);
|
|
605
|
-
nodeIds = [].concat(nodeIds, n);
|
|
606
|
-
}
|
|
607
|
-
}
|
|
608
|
-
return nodeIds;
|
|
609
|
-
}
|
|
610
|
-
/**
|
|
611
|
-
* browse the node to extract information requested in browseDescription
|
|
612
|
-
* and returns an array with reference descriptions
|
|
613
|
-
*
|
|
614
|
-
*
|
|
615
|
-
*
|
|
616
|
-
*/
|
|
617
|
-
browseNode(browseDescription, context) {
|
|
618
|
-
(0, node_opcua_assert_1.assert)(Number.isFinite(browseDescription.nodeClassMask));
|
|
619
|
-
const do_debug = false;
|
|
620
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
621
|
-
const addressSpace = this.addressSpace;
|
|
622
|
-
const referenceTypeId = normalize_referenceTypeId(addressSpace, browseDescription.referenceTypeId);
|
|
623
|
-
(0, node_opcua_assert_1.assert)(referenceTypeId instanceof node_opcua_nodeid_1.NodeId);
|
|
624
|
-
const browseDirection = browseDescription.browseDirection !== undefined ? browseDescription.browseDirection : node_opcua_data_model_1.BrowseDirection.Both;
|
|
625
|
-
// get all possible references
|
|
626
|
-
let references = this.allReferences();
|
|
627
|
-
/* c8 ignore next */
|
|
628
|
-
if (do_debug) {
|
|
629
|
-
// c8 ignore next
|
|
630
|
-
doDebug && debugLog("all references :", this.nodeId.toString(), this.browseName.toString());
|
|
631
|
-
(0, dump_tools_1.dumpReferences)(addressSpace, _private._referenceIdx.values());
|
|
632
|
-
}
|
|
633
|
-
// filter out references not matching referenceType
|
|
634
|
-
references = _filter_by_referenceType.call(this, browseDescription, references, referenceTypeId);
|
|
635
|
-
references = _filter_by_direction(references, browseDirection);
|
|
636
|
-
references = _filter_by_nodeClass.call(this, references, browseDescription.nodeClassMask);
|
|
637
|
-
references = _filter_by_userFilter.call(this, references, context);
|
|
638
|
-
if (context) {
|
|
639
|
-
references = _filter_by_context(this, references, context);
|
|
640
|
-
}
|
|
641
|
-
const referenceDescriptions = (0, base_node_private_1._constructReferenceDescription)(addressSpace, references, browseDescription.resultMask);
|
|
642
|
-
/* c8 ignore next */
|
|
643
|
-
if (do_debug) {
|
|
644
|
-
(0, dump_tools_1.dumpReferenceDescriptions)(this.addressSpace, referenceDescriptions);
|
|
645
|
-
}
|
|
646
|
-
return referenceDescriptions;
|
|
647
|
-
}
|
|
648
|
-
allReferences() {
|
|
649
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
650
|
-
return [..._private._referenceIdx.values(), ..._private._back_referenceIdx.values()];
|
|
651
|
-
}
|
|
652
|
-
/**
|
|
653
|
-
* @param reference
|
|
654
|
-
* @param reference.referenceType {String}
|
|
655
|
-
* @param [reference.isForward = true] {Boolean}
|
|
656
|
-
* @param reference.nodeId {Node|NodeId|String}
|
|
657
|
-
*
|
|
658
|
-
* @example
|
|
659
|
-
*
|
|
660
|
-
* view.addReference({ referenceType: "Organizes", nodeId: myDevice });
|
|
661
|
-
*
|
|
662
|
-
* or
|
|
663
|
-
*
|
|
664
|
-
* myDevice1.addReference({ referenceType: "OrganizedBy", nodeId: view });
|
|
665
|
-
*/
|
|
666
|
-
addReference(reference) {
|
|
667
|
-
const referenceNode = this.__addReference(reference);
|
|
668
|
-
const addressSpace = this.addressSpace;
|
|
669
|
-
if (!resolveReferenceType(addressSpace, referenceNode)) {
|
|
670
|
-
throw new Error(`BaseNode#addReference : invalid reference ${reference.toString()}`);
|
|
671
|
-
}
|
|
672
|
-
_propagate_ref.call(this, addressSpace, referenceNode);
|
|
673
|
-
this.install_extra_properties();
|
|
674
|
-
(0, address_space_change_event_tools_1._handle_add_reference_change_event)(this, referenceNode.nodeId);
|
|
675
|
-
}
|
|
676
|
-
removeReference(referenceOpts) {
|
|
677
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
678
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(referenceOpts, "referenceType"));
|
|
679
|
-
// xx isForward is optional : assert(Object.prototype.hasOwnProperty.call(reference,"isForward"));
|
|
680
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(referenceOpts, "nodeId"));
|
|
681
|
-
const addressSpace = this.addressSpace;
|
|
682
|
-
const reference = addressSpace.normalizeReferenceTypes([referenceOpts])?.[0];
|
|
683
|
-
const h = reference.hash;
|
|
684
|
-
const relatedNode = addressSpace.findNode(reference.nodeId);
|
|
685
|
-
// c8 ignore next
|
|
686
|
-
if (!relatedNode) {
|
|
687
|
-
return;
|
|
688
|
-
}
|
|
689
|
-
const backwardReference = new reference_impl_1.ReferenceImpl({
|
|
690
|
-
isForward: !reference.isForward,
|
|
691
|
-
nodeId: this.nodeId,
|
|
692
|
-
referenceType: reference.referenceType
|
|
693
|
-
});
|
|
694
|
-
if (_private._referenceIdx.has(h)) {
|
|
695
|
-
_private._referenceIdx.delete(h);
|
|
696
|
-
base_node_private_1.BaseNode_remove_backward_reference.call(relatedNode, backwardReference);
|
|
697
|
-
(0, base_node_private_1._remove_HierarchicalReference)(this, reference);
|
|
698
|
-
this.uninstall_extra_properties(reference);
|
|
699
|
-
this._clear_caches();
|
|
700
|
-
}
|
|
701
|
-
else if (_private._back_referenceIdx.has(h)) {
|
|
702
|
-
relatedNode.removeReference(backwardReference);
|
|
703
|
-
}
|
|
704
|
-
else {
|
|
705
|
-
// A back reference of a massively used type was never installed: _propagate_ref
|
|
706
|
-
// skips HasTypeDefinition and HasModellingRule deliberately, "because there are
|
|
707
|
-
// too many". Removal has to mirror that, or detaching any node asks its type
|
|
708
|
-
// definition to drop a reference it never held - which is where the hundred-odd
|
|
709
|
-
// "Cannot find reference to remove: ns=0;i=40" lines per run came from. The
|
|
710
|
-
// absence is the designed state, not a fault worth reporting.
|
|
711
|
-
const referenceType = resolveReferenceType(addressSpace, reference);
|
|
712
|
-
if (!reference.isForward && referenceType && _is_massively_used_reference(referenceType)) {
|
|
713
|
-
return;
|
|
714
|
-
}
|
|
715
|
-
warningLog(`Cannot find reference to remove: ${reference.toString()}`);
|
|
716
|
-
}
|
|
717
|
-
}
|
|
718
|
-
/**
|
|
719
|
-
*
|
|
720
|
-
*/
|
|
721
|
-
resolveNodeId(nodeId) {
|
|
722
|
-
return this.addressSpace.resolveNodeId(nodeId);
|
|
723
|
-
}
|
|
724
|
-
install_extra_properties() {
|
|
725
|
-
const addressSpace = this.addressSpace;
|
|
726
|
-
if (addressSpace.isFrugal) {
|
|
727
|
-
// skipping
|
|
728
|
-
return;
|
|
729
|
-
}
|
|
730
|
-
install_components_as_object_properties(this);
|
|
731
|
-
// Only this node is new, so only this node has to appear on the parent.
|
|
732
|
-
// Re-walking every child the parent already has made building a folder
|
|
733
|
-
// of N children cost O(N^2) - measured at 7.2s for 3000 children, of
|
|
734
|
-
// which 4.1s was spent re-installing properties that were already there.
|
|
735
|
-
const self = this;
|
|
736
|
-
function install_extra_properties_on_parent(ref) {
|
|
737
|
-
const node = reference_impl_1.ReferenceImpl.resolveReferenceNode(addressSpace, ref);
|
|
738
|
-
install_child_as_object_property(node, self);
|
|
739
|
-
}
|
|
740
|
-
// make sure parent have extra properties updated
|
|
741
|
-
const parentComponents = this.findReferencesEx("HasComponent", node_opcua_data_model_1.BrowseDirection.Inverse);
|
|
742
|
-
const parentSubfolders = this.findReferencesEx("Organizes", node_opcua_data_model_1.BrowseDirection.Inverse);
|
|
743
|
-
const parentProperties = this.findReferencesEx("HasProperty", node_opcua_data_model_1.BrowseDirection.Inverse);
|
|
744
|
-
for (const p of parentComponents) {
|
|
745
|
-
install_extra_properties_on_parent(p);
|
|
746
|
-
}
|
|
747
|
-
for (const p of parentSubfolders) {
|
|
748
|
-
install_extra_properties_on_parent(p);
|
|
749
|
-
}
|
|
750
|
-
for (const p of parentProperties) {
|
|
751
|
-
install_extra_properties_on_parent(p);
|
|
752
|
-
}
|
|
753
|
-
}
|
|
754
|
-
uninstall_extra_properties(reference) {
|
|
755
|
-
const addressSpace = this.addressSpace;
|
|
756
|
-
if (addressSpace.isFrugal) {
|
|
757
|
-
// skipping
|
|
758
|
-
return;
|
|
759
|
-
}
|
|
760
|
-
if (!reference.isForward) {
|
|
761
|
-
const parentNode = resolveReferenceNode(addressSpace, reference);
|
|
762
|
-
// uninstall backward
|
|
763
|
-
parentNode.uninstall_extra_properties({
|
|
764
|
-
isForward: true,
|
|
765
|
-
nodeId: this.nodeId,
|
|
766
|
-
referenceType: reference.referenceType
|
|
767
|
-
});
|
|
768
|
-
}
|
|
769
|
-
const childNode = resolveReferenceNode(addressSpace, reference);
|
|
770
|
-
const name = (0, node_opcua_utils_1.lowerFirstLetter)(childNode.browseName.name || "");
|
|
771
|
-
if (Object.hasOwn(reservedNames, name)) {
|
|
772
|
-
// c8 ignore next
|
|
773
|
-
if (doDebug) {
|
|
774
|
-
debugLog(chalk_1.default.bgWhite.red(`Ignoring reserved keyword ${name}`));
|
|
775
|
-
}
|
|
776
|
-
return;
|
|
777
|
-
}
|
|
778
|
-
/* c8 ignore next */
|
|
779
|
-
if (!Object.hasOwn(this, name)) {
|
|
780
|
-
return;
|
|
781
|
-
}
|
|
782
|
-
Object.defineProperty(this, name, {
|
|
783
|
-
value: undefined
|
|
784
|
-
});
|
|
785
|
-
}
|
|
786
|
-
toString() {
|
|
787
|
-
const options = new base_node_private_1.ToStringBuilder();
|
|
788
|
-
base_node_private_1.BaseNode_toString.call(this, options);
|
|
789
|
-
return options.toString();
|
|
790
|
-
}
|
|
791
|
-
toJSON() {
|
|
792
|
-
return {
|
|
793
|
-
nodeId: this.nodeId.toString(),
|
|
794
|
-
nodeClass: node_opcua_data_model_1.NodeClass[this.nodeClass],
|
|
795
|
-
browseName: this.browseName.toString(),
|
|
796
|
-
displayName: this.displayName.length ? this.displayName[0].text : ""
|
|
797
|
-
};
|
|
798
|
-
}
|
|
799
|
-
[Symbol.for("nodejs.util.inspect.custom")]() {
|
|
800
|
-
return this.toString();
|
|
801
|
-
}
|
|
802
|
-
/**
|
|
803
|
-
* @property isFalseSubStateOf
|
|
804
|
-
* @type {BaseNode|null}
|
|
805
|
-
*/
|
|
806
|
-
get isFalseSubStateOf() {
|
|
807
|
-
const r = this.findReferencesAsObject("HasFalseSubState", false);
|
|
808
|
-
if (!r || r.length === 0) {
|
|
809
|
-
return null;
|
|
810
|
-
}
|
|
811
|
-
(0, node_opcua_assert_1.assert)(r.length === 1);
|
|
812
|
-
return r[0];
|
|
813
|
-
}
|
|
814
|
-
/**
|
|
815
|
-
* @property isTrueSubStateOf
|
|
816
|
-
* @type {BaseNode|null}
|
|
817
|
-
*/
|
|
818
|
-
get isTrueSubStateOf() {
|
|
819
|
-
const r = this.findReferencesAsObject("HasTrueSubState", false);
|
|
820
|
-
if (!r || r.length === 0) {
|
|
821
|
-
return null;
|
|
822
|
-
}
|
|
823
|
-
(0, node_opcua_assert_1.assert)(r.length === 1);
|
|
824
|
-
return r[0];
|
|
825
|
-
}
|
|
826
|
-
/**
|
|
827
|
-
* @return {UAStateVariable[]} return an array with the SubStates of this object.
|
|
828
|
-
*/
|
|
829
|
-
getFalseSubStates() {
|
|
830
|
-
return this.findReferencesAsObject("HasFalseSubState");
|
|
831
|
-
}
|
|
832
|
-
/**
|
|
833
|
-
|
|
834
|
-
* @return {UAStateVariable[]} return an array with the SubStates of this object.
|
|
835
|
-
*/
|
|
836
|
-
getTrueSubStates() {
|
|
837
|
-
return this.findReferencesAsObject("HasTrueSubState");
|
|
838
|
-
}
|
|
839
|
-
findHierarchicalReferences() {
|
|
840
|
-
return this.findReferencesEx("HierarchicalReferences", node_opcua_data_model_1.BrowseDirection.Forward);
|
|
841
|
-
}
|
|
842
|
-
//
|
|
843
|
-
getChildByName(browseName, namespaceIndex) {
|
|
844
|
-
var childrenMap = (0, base_node_private_1._get_HierarchicalReference)(this);
|
|
845
|
-
const select = _select_by_browse_name(childrenMap, browseName, namespaceIndex);
|
|
846
|
-
if (select.length === 0) {
|
|
847
|
-
return null;
|
|
848
|
-
}
|
|
849
|
-
const ref = select[0];
|
|
850
|
-
const r = this.addressSpace.findReferenceType(ref.referenceType);
|
|
851
|
-
if (!r)
|
|
852
|
-
return null;
|
|
853
|
-
const hasChild = this.addressSpace.findReferenceType("HasChild");
|
|
854
|
-
if (!hasChild) {
|
|
855
|
-
return null; // too early, bmy be namespace 0 is still loading
|
|
856
|
-
}
|
|
857
|
-
if (r.isSubtypeOf(hasChild)) {
|
|
858
|
-
return ref.node || null;
|
|
859
|
-
}
|
|
860
|
-
return null;
|
|
861
|
-
}
|
|
862
|
-
getNodeVersion() {
|
|
863
|
-
return this.getChildByName("NodeVersion", 0);
|
|
864
|
-
/*
|
|
865
|
-
const cache = BaseNode_getCache(this);
|
|
866
|
-
if (cache._versionNode == undefined) {
|
|
867
|
-
cache._versionNode = this.getChildByName("NodeVersion", 0) as UAProperty<string, DataType.String> | null;
|
|
868
|
-
}
|
|
869
|
-
return cache._versionNode as UAProperty<UAString, DataType.String> | null;
|
|
870
|
-
*/
|
|
871
|
-
}
|
|
872
|
-
get nodeVersion() {
|
|
873
|
-
return this.getNodeVersion() || undefined;
|
|
874
|
-
}
|
|
875
|
-
set nodeVersion(_n) {
|
|
876
|
-
(0, node_opcua_assert_1.assert)(false);
|
|
877
|
-
}
|
|
878
|
-
get toStateNode() {
|
|
879
|
-
const nodes = this.findReferencesAsObject("ToState", true);
|
|
880
|
-
(0, node_opcua_assert_1.assert)(nodes.length <= 1);
|
|
881
|
-
return nodes.length === 1 ? nodes[0] : null;
|
|
882
|
-
}
|
|
883
|
-
get fromStateNode() {
|
|
884
|
-
const nodes = this.findReferencesAsObject("FromState", true);
|
|
885
|
-
(0, node_opcua_assert_1.assert)(nodes.length <= 1);
|
|
886
|
-
return nodes.length === 1 ? nodes[0] : null;
|
|
887
|
-
}
|
|
888
|
-
/**
|
|
889
|
-
* this methods propagates the forward references to the pointed node
|
|
890
|
-
* by inserting backward references to the counter part node
|
|
891
|
-
* @private
|
|
892
|
-
*/
|
|
893
|
-
propagate_back_references() {
|
|
894
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
895
|
-
if (this.addressSpace.suspendBackReference) {
|
|
896
|
-
// this indicates that the base node is constructed from an xml definition
|
|
897
|
-
// propagate_back_references will be called later once the file has been completely processed.
|
|
898
|
-
return;
|
|
899
|
-
}
|
|
900
|
-
const addressSpace = this.addressSpace;
|
|
901
|
-
for (const reference of _private._referenceIdx.values()) {
|
|
902
|
-
_propagate_ref.call(this, addressSpace, reference);
|
|
903
|
-
}
|
|
904
|
-
}
|
|
905
|
-
/**
|
|
906
|
-
* the dispose method should be called when the node is no longer used, to release
|
|
907
|
-
* back pointer to the address space and clear caches.
|
|
908
|
-
*
|
|
909
|
-
* @private
|
|
910
|
-
*/
|
|
911
|
-
dispose() {
|
|
912
|
-
this.emit("dispose");
|
|
913
|
-
this.removeAllListeners();
|
|
914
|
-
this._clear_caches();
|
|
915
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
916
|
-
for (const ref of _private._back_referenceIdx.values()) {
|
|
917
|
-
ref.dispose();
|
|
918
|
-
}
|
|
919
|
-
for (const ref of _private._referenceIdx.values()) {
|
|
920
|
-
ref.dispose();
|
|
921
|
-
}
|
|
922
|
-
(0, base_node_private_1.BaseNode_removePrivate)(this);
|
|
923
|
-
}
|
|
924
|
-
isDisposed() {
|
|
925
|
-
return !this.addressSpacePrivate;
|
|
926
|
-
}
|
|
927
|
-
// c8 ignore next
|
|
928
|
-
dumpXML(xmlWriter) {
|
|
929
|
-
console.error(" This ", node_opcua_data_model_1.NodeClass[this.nodeClass]);
|
|
930
|
-
(0, node_opcua_assert_1.assert)(false, "BaseNode#dumpXML NOT IMPLEMENTED !");
|
|
931
|
-
(0, node_opcua_assert_1.assert)(xmlWriter);
|
|
932
|
-
}
|
|
933
|
-
/**
|
|
934
|
-
* Undo the effect of propagate_back_references
|
|
935
|
-
*/
|
|
936
|
-
unpropagate_back_references() {
|
|
937
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
938
|
-
const addressSpace = this.addressSpace;
|
|
939
|
-
for (const reference of _private._referenceIdx.values()) {
|
|
940
|
-
// filter out non Hierarchical References
|
|
941
|
-
const referenceType = resolveReferenceType(addressSpace, reference);
|
|
942
|
-
// c8 ignore next
|
|
943
|
-
if (!referenceType) {
|
|
944
|
-
console.error(chalk_1.default.red(" ERROR"), " cannot find reference ", reference.referenceType, reference.toString());
|
|
945
|
-
}
|
|
946
|
-
const related_node = resolveReferenceNode(addressSpace, reference);
|
|
947
|
-
if (related_node) {
|
|
948
|
-
(0, node_opcua_assert_1.assert)(reference.nodeId.toString() !== this.nodeId.toString());
|
|
949
|
-
base_node_private_1.BaseNode_remove_backward_reference.call(related_node, new reference_impl_1.ReferenceImpl({
|
|
950
|
-
isForward: !reference.isForward,
|
|
951
|
-
nodeId: this.nodeId,
|
|
952
|
-
referenceType: reference.referenceType
|
|
953
|
-
}));
|
|
954
|
-
} // else addressSpace may be incomplete
|
|
955
|
-
}
|
|
956
|
-
}
|
|
957
|
-
installPostInstallFunc(f) {
|
|
958
|
-
if (!f) {
|
|
959
|
-
// nothing to do
|
|
960
|
-
return;
|
|
961
|
-
}
|
|
962
|
-
function chain(f1, f2) {
|
|
963
|
-
return function chainingFunc(...args) {
|
|
964
|
-
if (f1) {
|
|
965
|
-
f1.apply(this, args);
|
|
966
|
-
}
|
|
967
|
-
if (f2) {
|
|
968
|
-
f2.apply(this, args);
|
|
969
|
-
}
|
|
970
|
-
};
|
|
971
|
-
}
|
|
972
|
-
this._postInstantiateFunc = chain.call(this, this._postInstantiateFunc, f);
|
|
973
|
-
}
|
|
974
|
-
_on_child_added(childNode) {
|
|
975
|
-
// this._clear_caches();
|
|
976
|
-
// return;
|
|
977
|
-
const cache = (0, base_node_private_1.BaseNode_getCache)(this);
|
|
978
|
-
const tmpV = cache._versionNode;
|
|
979
|
-
const tmpC = cache._children;
|
|
980
|
-
this._clear_caches();
|
|
981
|
-
const newCache = (0, base_node_private_1.BaseNode_getCache)(this);
|
|
982
|
-
newCache._versionNode = tmpV;
|
|
983
|
-
newCache._children = tmpC;
|
|
984
|
-
if (newCache._children) {
|
|
985
|
-
newCache._children?.push(childNode);
|
|
986
|
-
}
|
|
987
|
-
}
|
|
988
|
-
_on_child_removed(_obj) {
|
|
989
|
-
// obj; // unused;
|
|
990
|
-
this._clear_caches();
|
|
991
|
-
}
|
|
992
|
-
/**
|
|
993
|
-
* @private
|
|
994
|
-
* @param reference
|
|
995
|
-
*/
|
|
996
|
-
_add_backward_reference(reference) {
|
|
997
|
-
base_node_private_1.BaseNode_add_backward_reference.call(this, reference);
|
|
998
|
-
}
|
|
999
|
-
_coerceReferenceType(referenceType) {
|
|
1000
|
-
let result = null;
|
|
1001
|
-
if (typeof referenceType === "string") {
|
|
1002
|
-
result = this.addressSpace.findReferenceType(referenceType);
|
|
1003
|
-
/* c8 ignore next */
|
|
1004
|
-
if (!result) {
|
|
1005
|
-
errorLog("referenceType ", referenceType, " cannot be found");
|
|
1006
|
-
throw new Error(`Cannot coerce reference with name ${referenceType}`);
|
|
1007
|
-
}
|
|
1008
|
-
}
|
|
1009
|
-
else if (referenceType instanceof node_opcua_nodeid_1.NodeId) {
|
|
1010
|
-
result = this.addressSpace.findNode(referenceType);
|
|
1011
|
-
if (!result) {
|
|
1012
|
-
return null;
|
|
1013
|
-
}
|
|
1014
|
-
}
|
|
1015
|
-
else {
|
|
1016
|
-
result = referenceType;
|
|
1017
|
-
}
|
|
1018
|
-
(0, node_opcua_assert_1.assert)(result, "reference must exists");
|
|
1019
|
-
(0, node_opcua_assert_1.assert)(result.nodeClass === node_opcua_data_model_1.NodeClass.ReferenceType);
|
|
1020
|
-
return result;
|
|
1021
|
-
}
|
|
1022
|
-
__addReference(referenceOpts) {
|
|
1023
|
-
const addressSpace = this.addressSpace;
|
|
1024
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
1025
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(referenceOpts, "referenceType"));
|
|
1026
|
-
// xx isForward is optional : assert(Object.prototype.hasOwnProperty.call(reference,"isForward"));
|
|
1027
|
-
(0, node_opcua_assert_1.assert)(Object.hasOwn(referenceOpts, "nodeId"));
|
|
1028
|
-
const reference = addressSpace.normalizeReferenceTypes([referenceOpts])[0];
|
|
1029
|
-
(0, node_opcua_assert_1.assert)(reference instanceof reference_impl_1.ReferenceImpl);
|
|
1030
|
-
const h = reference.hash;
|
|
1031
|
-
(0, node_opcua_assert_1.assert)(!_private._back_referenceIdx.has(h), "reference exists already in _back_references");
|
|
1032
|
-
(0, node_opcua_assert_1.assert)(!_private._referenceIdx.has(h), "reference exists already in _references");
|
|
1033
|
-
_private._referenceIdx.set(h, reference);
|
|
1034
|
-
(0, base_node_private_1._handle_HierarchicalReference)(this, reference);
|
|
1035
|
-
this._clear_caches();
|
|
1036
|
-
return reference;
|
|
1037
|
-
}
|
|
1038
|
-
_setDisplayName(displayName) {
|
|
1039
|
-
const displayNames = Array.isArray(displayName) ? displayName : [displayName];
|
|
1040
|
-
const _displayNames = displayNames.map(node_opcua_data_model_1.coerceLocalizedText);
|
|
1041
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
1042
|
-
_private._displayName = _displayNames;
|
|
1043
|
-
}
|
|
1044
|
-
_setDescription(description) {
|
|
1045
|
-
const __description = (0, node_opcua_data_model_1.coerceLocalizedText)(description);
|
|
1046
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
1047
|
-
_private._description = __description || new node_opcua_data_model_1.LocalizedText({ text: "" });
|
|
1048
|
-
}
|
|
1049
|
-
_notifyAttributeChange(attributeId) {
|
|
1050
|
-
const event_name = BaseNodeImpl.makeAttributeEventName(attributeId);
|
|
1051
|
-
this.emit(event_name, this.readAttribute(session_context_1.SessionContext.defaultContext, attributeId));
|
|
1052
|
-
}
|
|
1053
|
-
_clear_caches() {
|
|
1054
|
-
(0, base_node_private_1.BaseNode_clearCache)(this);
|
|
1055
|
-
}
|
|
1056
|
-
canUserWriteAttribute(context, attributeId) {
|
|
1057
|
-
// the Client is allowed to write to Attributes other than the Value,
|
|
1058
|
-
// Historizing or RolePermissions Attribute
|
|
1059
|
-
if (!context)
|
|
1060
|
-
return true;
|
|
1061
|
-
if (attributeId === node_opcua_data_model_1.AttributeIds.Historizing) {
|
|
1062
|
-
return context.checkPermission(this, node_opcua_types_1.PermissionType.WriteHistorizing);
|
|
1063
|
-
}
|
|
1064
|
-
if (attributeId === node_opcua_data_model_1.AttributeIds.RolePermissions) {
|
|
1065
|
-
return context.checkPermission(this, node_opcua_types_1.PermissionType.WriteRolePermissions);
|
|
1066
|
-
}
|
|
1067
|
-
if (attributeId === node_opcua_data_model_1.AttributeIds.Value) {
|
|
1068
|
-
return context.checkPermission(this, node_opcua_types_1.PermissionType.Write);
|
|
1069
|
-
}
|
|
1070
|
-
return context.checkPermission(this, node_opcua_types_1.PermissionType.WriteAttribute);
|
|
1071
|
-
}
|
|
1072
|
-
_readAccessRestrictions(_context) {
|
|
1073
|
-
// https://reference.opcfoundation.org/v104/Core/docs/Part3/8.56/
|
|
1074
|
-
if (this.accessRestrictions === undefined) {
|
|
1075
|
-
return new node_opcua_data_value_1.DataValue({ statusCode: node_opcua_status_code_1.StatusCodes.BadAttributeIdInvalid });
|
|
1076
|
-
}
|
|
1077
|
-
return new node_opcua_data_value_1.DataValue({
|
|
1078
|
-
statusCode: node_opcua_status_code_1.StatusCodes.Good,
|
|
1079
|
-
value: {
|
|
1080
|
-
dataType: node_opcua_variant_1.DataType.UInt16,
|
|
1081
|
-
value: this.accessRestrictions
|
|
1082
|
-
}
|
|
1083
|
-
});
|
|
1084
|
-
}
|
|
1085
|
-
_readRolePermissions(context) {
|
|
1086
|
-
// https://reference.opcfoundation.org/v104/Core/docs/Part3/4.8.3/
|
|
1087
|
-
// to do check that current user can read permission
|
|
1088
|
-
if (context && !context.checkPermission(this, node_opcua_types_1.PermissionType.ReadRolePermissions)) {
|
|
1089
|
-
return new node_opcua_data_value_1.DataValue({
|
|
1090
|
-
statusCode: node_opcua_status_code_1.StatusCodes.BadSecurityModeInsufficient
|
|
1091
|
-
});
|
|
1092
|
-
}
|
|
1093
|
-
if (this.rolePermissions === undefined) {
|
|
1094
|
-
// to do : If not specified, the value of DefaultUserRolePermissions Property from
|
|
1095
|
-
// the Namespace Metadata Object associated with the Node is used instead.
|
|
1096
|
-
return new node_opcua_data_value_1.DataValue({
|
|
1097
|
-
statusCode: node_opcua_status_code_1.StatusCodes.BadAttributeIdInvalid
|
|
1098
|
-
});
|
|
1099
|
-
}
|
|
1100
|
-
const rolePermissions = this.rolePermissions.map(({ roleId, permissions }) => {
|
|
1101
|
-
return new node_opcua_types_1.RolePermissionType({
|
|
1102
|
-
roleId: toRoleNodeId(roleId),
|
|
1103
|
-
permissions
|
|
1104
|
-
});
|
|
1105
|
-
});
|
|
1106
|
-
return new node_opcua_data_value_1.DataValue({
|
|
1107
|
-
statusCode: node_opcua_status_code_1.StatusCodes.Good,
|
|
1108
|
-
value: {
|
|
1109
|
-
dataType: node_opcua_variant_1.DataType.ExtensionObject,
|
|
1110
|
-
arrayType: node_opcua_variant_1.VariantArrayType.Array,
|
|
1111
|
-
value: rolePermissions
|
|
1112
|
-
}
|
|
1113
|
-
});
|
|
1114
|
-
}
|
|
1115
|
-
_readUserRolePermissions(context) {
|
|
1116
|
-
const allUserCanSeeTheirOwnRolePermissions = true;
|
|
1117
|
-
if (!allUserCanSeeTheirOwnRolePermissions) {
|
|
1118
|
-
// to do check that current user can read permission
|
|
1119
|
-
if (context && !context.checkPermission(this, node_opcua_types_1.PermissionType.ReadRolePermissions)) {
|
|
1120
|
-
return new node_opcua_data_value_1.DataValue({
|
|
1121
|
-
statusCode: node_opcua_status_code_1.StatusCodes.BadSecurityModeInsufficient
|
|
1122
|
-
});
|
|
1123
|
-
}
|
|
1124
|
-
}
|
|
1125
|
-
if (this.rolePermissions === undefined) {
|
|
1126
|
-
// to do : If not specified, the value of DefaultUserRolePermissions Property from
|
|
1127
|
-
// the Namespace Metadata Object associated with the Node is used instead.
|
|
1128
|
-
return new node_opcua_data_value_1.DataValue({
|
|
1129
|
-
statusCode: node_opcua_status_code_1.StatusCodes.BadAttributeIdInvalid
|
|
1130
|
-
});
|
|
1131
|
-
}
|
|
1132
|
-
const context1 = context === null ? session_context_1.SessionContext.defaultContext : context;
|
|
1133
|
-
// for the time being get user Permission
|
|
1134
|
-
const rolePermissions = this.rolePermissions
|
|
1135
|
-
.map(({ roleId, permissions }) => {
|
|
1136
|
-
return new node_opcua_types_1.RolePermissionType({
|
|
1137
|
-
roleId: toRoleNodeId(roleId),
|
|
1138
|
-
permissions
|
|
1139
|
-
});
|
|
1140
|
-
})
|
|
1141
|
-
.filter(({ roleId }) => context1.currentUserHasRole(roleId));
|
|
1142
|
-
return new node_opcua_data_value_1.DataValue({
|
|
1143
|
-
statusCode: node_opcua_status_code_1.StatusCodes.Good,
|
|
1144
|
-
value: {
|
|
1145
|
-
dataType: node_opcua_variant_1.DataType.ExtensionObject,
|
|
1146
|
-
arrayType: node_opcua_variant_1.VariantArrayType.Array,
|
|
1147
|
-
value: rolePermissions
|
|
1148
|
-
}
|
|
1149
|
-
});
|
|
1150
|
-
}
|
|
1151
|
-
/**
|
|
1152
|
-
*
|
|
1153
|
-
* @param rolePermissions
|
|
1154
|
-
*/
|
|
1155
|
-
setRolePermissions(rolePermissions) {
|
|
1156
|
-
this._rolePermissions = (0, role_permissions_1.coerceRolePermissions)(rolePermissions);
|
|
1157
|
-
}
|
|
1158
|
-
getRolePermissions(inherited) {
|
|
1159
|
-
if (this.rolePermissions === undefined && inherited) {
|
|
1160
|
-
return this.namespace.getDefaultRolePermissions();
|
|
1161
|
-
}
|
|
1162
|
-
return this._rolePermissions || null;
|
|
1163
|
-
}
|
|
1164
|
-
get rolePermissions() {
|
|
1165
|
-
return this._rolePermissions || undefined;
|
|
1166
|
-
}
|
|
1167
|
-
setAccessRestrictions(accessRestrictions) {
|
|
1168
|
-
this._accessRestrictions = accessRestrictions;
|
|
1169
|
-
}
|
|
1170
|
-
get accessRestrictions() {
|
|
1171
|
-
return this._accessRestrictions;
|
|
1172
|
-
}
|
|
1173
|
-
getAccessRestrictions(inherited) {
|
|
1174
|
-
if (this._accessRestrictions === undefined && inherited) {
|
|
1175
|
-
return this.namespace.getDefaultAccessRestrictions();
|
|
1176
|
-
}
|
|
1177
|
-
return this._accessRestrictions || node_opcua_data_model_1.AccessRestrictionsFlag.None;
|
|
1178
|
-
}
|
|
1179
|
-
}
|
|
1180
|
-
exports.BaseNodeImpl = BaseNodeImpl;
|
|
1181
|
-
function toRoleNodeId(s) {
|
|
1182
|
-
if (typeof s === "string") {
|
|
1183
|
-
return (0, node_opcua_nodeid_1.resolveNodeId)(session_context_1.WellKnownRolesNodeId[s]);
|
|
1184
|
-
}
|
|
1185
|
-
return (0, node_opcua_nodeid_1.coerceNodeId)(s);
|
|
1186
|
-
}
|
|
1187
|
-
let displayWarning = true;
|
|
1188
|
-
function toString_ReferenceDescription(ref, options) {
|
|
1189
|
-
const addressSpace = options.addressSpace;
|
|
1190
|
-
const refNode = addressSpace.findNode(ref.referenceType);
|
|
1191
|
-
if (!refNode) {
|
|
1192
|
-
return `Unknown Ref : ${ref}`;
|
|
1193
|
-
}
|
|
1194
|
-
const r = new reference_impl_1.ReferenceImpl({
|
|
1195
|
-
isForward: ref.isForward,
|
|
1196
|
-
nodeId: ref.nodeId,
|
|
1197
|
-
referenceType: refNode.nodeId
|
|
1198
|
-
});
|
|
1199
|
-
const str = r.toString(options);
|
|
1200
|
-
r.dispose();
|
|
1201
|
-
return str;
|
|
1202
|
-
}
|
|
1203
|
-
function _setup_parent_item(referencesMap) {
|
|
1204
|
-
let references = referencesMap.values();
|
|
1205
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(this);
|
|
1206
|
-
(0, node_opcua_assert_1.assert)(!_private._parent, "_setup_parent_item has been already called");
|
|
1207
|
-
const addressSpace = this.addressSpace;
|
|
1208
|
-
if (referencesMap.size > 0) {
|
|
1209
|
-
references = this.findReferencesEx("Aggregates", node_opcua_data_model_1.BrowseDirection.Inverse);
|
|
1210
|
-
if (references.length >= 1) {
|
|
1211
|
-
// c8 ignore next
|
|
1212
|
-
if (references.length > 1) {
|
|
1213
|
-
if (displayWarning) {
|
|
1214
|
-
const options = { addressSpace };
|
|
1215
|
-
warningLog(" More than one Aggregates reference have been found for parent of object");
|
|
1216
|
-
warningLog(" object node id:", this.nodeId.toString(), chalk_1.default.cyan(this.browseName.toString()));
|
|
1217
|
-
warningLog(" browseResults:");
|
|
1218
|
-
warningLog(references.map((f) => toString_ReferenceDescription(f, options)).join("\n"));
|
|
1219
|
-
warningLog(" first one will be used as parent");
|
|
1220
|
-
// xx assert(browseResults.length === 1);
|
|
1221
|
-
displayWarning = false;
|
|
1222
|
-
}
|
|
1223
|
-
}
|
|
1224
|
-
return reference_impl_1.ReferenceImpl.resolveReferenceNode(addressSpace, references[0]);
|
|
1225
|
-
}
|
|
1226
|
-
}
|
|
1227
|
-
return null;
|
|
1228
|
-
}
|
|
1229
|
-
function toObject(addressSpace, reference) {
|
|
1230
|
-
const obj = resolveReferenceNode(addressSpace, reference);
|
|
1231
|
-
// c8 ignore next
|
|
1232
|
-
if (doDebug && !obj) {
|
|
1233
|
-
// c8 ignore next
|
|
1234
|
-
doDebug &&
|
|
1235
|
-
debugLog(chalk_1.default.red(" Warning : object with nodeId ") +
|
|
1236
|
-
chalk_1.default.cyan(reference.nodeId.toString()) +
|
|
1237
|
-
chalk_1.default.red(" cannot be found in the address space !"));
|
|
1238
|
-
}
|
|
1239
|
-
return obj;
|
|
1240
|
-
}
|
|
1241
|
-
function _asObject(references, addressSpace) {
|
|
1242
|
-
return references.map((a) => toObject(addressSpace, a)).filter((o) => !!o);
|
|
1243
|
-
}
|
|
1244
|
-
function _select_by_browse_name(map, browseName, namespaceIndex) {
|
|
1245
|
-
if ((namespaceIndex === null || namespaceIndex === undefined) && typeof browseName === "string") {
|
|
1246
|
-
// no namespace specified and needed
|
|
1247
|
-
const result = map.get(browseName);
|
|
1248
|
-
if (result) {
|
|
1249
|
-
if (Array.isArray(result)) {
|
|
1250
|
-
return result;
|
|
1251
|
-
}
|
|
1252
|
-
return [result];
|
|
1253
|
-
}
|
|
1254
|
-
}
|
|
1255
|
-
else {
|
|
1256
|
-
const _browseName = (0, node_opcua_data_model_1.coerceQualifiedName)(typeof browseName === "string" ? { name: browseName, namespaceIndex } : browseName);
|
|
1257
|
-
// c8 ignore next
|
|
1258
|
-
if (!_browseName) {
|
|
1259
|
-
return [];
|
|
1260
|
-
}
|
|
1261
|
-
const result = map.get(_browseName.name || "");
|
|
1262
|
-
if (result) {
|
|
1263
|
-
if (Array.isArray(result)) {
|
|
1264
|
-
// only select the one with the matching namepsace index
|
|
1265
|
-
return result.filter((t) => t.node.browseName.namespaceIndex === _browseName.namespaceIndex);
|
|
1266
|
-
}
|
|
1267
|
-
else {
|
|
1268
|
-
if (result.node.browseName.namespaceIndex === _browseName.namespaceIndex) {
|
|
1269
|
-
return [result];
|
|
1270
|
-
}
|
|
1271
|
-
return [];
|
|
1272
|
-
}
|
|
1273
|
-
}
|
|
1274
|
-
}
|
|
1275
|
-
return [];
|
|
1276
|
-
}
|
|
1277
|
-
function _filter_by_browse_name(components, browseName, namespaceIndex) {
|
|
1278
|
-
let select = [];
|
|
1279
|
-
if ((namespaceIndex === null || namespaceIndex === undefined) && typeof browseName === "string") {
|
|
1280
|
-
select = components.filter((c) => c.browseName.name === browseName);
|
|
1281
|
-
if (select && select.length > 1) {
|
|
1282
|
-
warningLog("Multiple children exist with name ", browseName, " please specify a namespace index");
|
|
1283
|
-
}
|
|
1284
|
-
}
|
|
1285
|
-
else {
|
|
1286
|
-
const _browseName = (0, node_opcua_data_model_1.coerceQualifiedName)(typeof browseName === "string" ? { name: browseName, namespaceIndex } : browseName);
|
|
1287
|
-
if (!_browseName) {
|
|
1288
|
-
return [];
|
|
1289
|
-
}
|
|
1290
|
-
select = components.filter((c) => c.browseName.name === _browseName.name && c.browseName.namespaceIndex === _browseName.namespaceIndex);
|
|
1291
|
-
}
|
|
1292
|
-
return select;
|
|
1293
|
-
}
|
|
1294
|
-
let displayWarningReferencePointingToItSelf = true;
|
|
1295
|
-
function _is_massively_used_reference(referenceType) {
|
|
1296
|
-
const name = referenceType.browseName.toString();
|
|
1297
|
-
return name === "HasTypeDefinition" || name === "HasModellingRule";
|
|
1298
|
-
}
|
|
1299
|
-
function _propagate_ref(addressSpace, reference) {
|
|
1300
|
-
// filter out non Hierarchical References
|
|
1301
|
-
const referenceType = reference_impl_1.ReferenceImpl.resolveReferenceType(addressSpace, reference);
|
|
1302
|
-
// c8 ignore next
|
|
1303
|
-
if (!referenceType) {
|
|
1304
|
-
errorLog(chalk_1.default.red(" ERROR"), " cannot find reference ", reference.referenceType, reference.toString());
|
|
1305
|
-
}
|
|
1306
|
-
// ------------------------------- Filter out back reference when reference type
|
|
1307
|
-
// is HasTypeDefinition, HasModellingRule, etc ...
|
|
1308
|
-
//
|
|
1309
|
-
// var referenceNode = Reference.resolveReferenceNode(addressSpace,reference);
|
|
1310
|
-
// ignore propagation on back reference to UAVariableType or UAObject Type reference
|
|
1311
|
-
// because there are too many !
|
|
1312
|
-
if (!referenceType || _is_massively_used_reference(referenceType)) {
|
|
1313
|
-
return;
|
|
1314
|
-
}
|
|
1315
|
-
const related_node = resolveReferenceNode(addressSpace, reference);
|
|
1316
|
-
if (related_node) {
|
|
1317
|
-
// verify that reference doesn't point to object it this (see mantis 3099)
|
|
1318
|
-
if ((0, node_opcua_nodeid_1.sameNodeId)(reference.nodeId, this.nodeId)) {
|
|
1319
|
-
// c8 ignore next
|
|
1320
|
-
if (displayWarningReferencePointingToItSelf) {
|
|
1321
|
-
// this could happen with method
|
|
1322
|
-
warningLog(" Warning: a Reference is pointing to source ", this.nodeId.toString(), this.browseName.toString(), ". Is this intentional ?");
|
|
1323
|
-
displayWarningReferencePointingToItSelf = false;
|
|
1324
|
-
}
|
|
1325
|
-
}
|
|
1326
|
-
related_node._add_backward_reference(new reference_impl_1.ReferenceImpl({
|
|
1327
|
-
_referenceType: getReferenceType(reference),
|
|
1328
|
-
isForward: !reference.isForward,
|
|
1329
|
-
node: this,
|
|
1330
|
-
nodeId: this.nodeId,
|
|
1331
|
-
referenceType: reference.referenceType
|
|
1332
|
-
}));
|
|
1333
|
-
} // else addressSpace may be incomplete and under construction (while loading a nodeset.xml file for instance)
|
|
1334
|
-
}
|
|
1335
|
-
function nodeid_is_nothing(nodeid) {
|
|
1336
|
-
return nodeid.value === 0 && nodeid.namespace === 0;
|
|
1337
|
-
}
|
|
1338
|
-
/**
|
|
1339
|
-
|
|
1340
|
-
* @param addressSpace {IAddressSpace}
|
|
1341
|
-
* @param referenceTypeId {String|NodeId|null} : the referenceType either as a string or a nodeId
|
|
1342
|
-
* @return {NodeId}
|
|
1343
|
-
*/
|
|
1344
|
-
function normalize_referenceTypeId(addressSpace, referenceTypeId) {
|
|
1345
|
-
if (!referenceTypeId) {
|
|
1346
|
-
return (0, node_opcua_nodeid_1.makeNodeId)(0);
|
|
1347
|
-
}
|
|
1348
|
-
if (typeof referenceTypeId === "string") {
|
|
1349
|
-
const ref = addressSpace.findReferenceType(referenceTypeId);
|
|
1350
|
-
if (ref) {
|
|
1351
|
-
return ref.nodeId;
|
|
1352
|
-
}
|
|
1353
|
-
}
|
|
1354
|
-
let nodeId;
|
|
1355
|
-
try {
|
|
1356
|
-
nodeId = addressSpace.resolveNodeId(referenceTypeId);
|
|
1357
|
-
}
|
|
1358
|
-
catch (err) {
|
|
1359
|
-
errorLog("cannot normalize_referenceTypeId", referenceTypeId);
|
|
1360
|
-
throw err;
|
|
1361
|
-
}
|
|
1362
|
-
(0, node_opcua_assert_1.assert)(nodeId);
|
|
1363
|
-
return nodeId;
|
|
1364
|
-
}
|
|
1365
|
-
const resolveReferenceNode = reference_impl_1.ReferenceImpl.resolveReferenceNode;
|
|
1366
|
-
const resolveReferenceType = reference_impl_1.ReferenceImpl.resolveReferenceType;
|
|
1367
|
-
function _filter_by_referenceType(browseDescription, references, referenceTypeId) {
|
|
1368
|
-
// make sure we have a valid referenceTypeId if not null
|
|
1369
|
-
if (!nodeid_is_nothing(referenceTypeId)) {
|
|
1370
|
-
(0, node_opcua_assert_1.assert)(referenceTypeId instanceof node_opcua_nodeid_1.NodeId);
|
|
1371
|
-
const referenceType = this.addressSpace.findNode(referenceTypeId);
|
|
1372
|
-
(0, node_opcua_debug_1.dumpIf)(!referenceType, referenceTypeId);
|
|
1373
|
-
// c8 ignore next
|
|
1374
|
-
if (!referenceType || referenceType.nodeClass !== node_opcua_data_model_1.NodeClass.ReferenceType) {
|
|
1375
|
-
throw new Error("Cannot find reference type");
|
|
1376
|
-
}
|
|
1377
|
-
if (!browseDescription.includeSubtypes && referenceType.isAbstract) {
|
|
1378
|
-
warningLog("filter by reference will skip all reference as referenceType is abstract and includeSubtypes is false");
|
|
1379
|
-
}
|
|
1380
|
-
references = references.filter((reference) => {
|
|
1381
|
-
const ref = resolveReferenceType(this.addressSpace, reference);
|
|
1382
|
-
// c8 ignore next
|
|
1383
|
-
if (!ref) {
|
|
1384
|
-
throw new Error(`Cannot find reference type ${reference.toString()}`);
|
|
1385
|
-
}
|
|
1386
|
-
// unknown type ... this may happen when the address space is not fully build
|
|
1387
|
-
(0, node_opcua_assert_1.assert)(ref.nodeClass === node_opcua_data_model_1.NodeClass.ReferenceType);
|
|
1388
|
-
const isSameType = (0, node_opcua_nodeid_1.sameNodeId)(ref.nodeId, referenceType.nodeId);
|
|
1389
|
-
if (isSameType) {
|
|
1390
|
-
return true;
|
|
1391
|
-
}
|
|
1392
|
-
if (browseDescription.includeSubtypes) {
|
|
1393
|
-
return ref.isSubtypeOf(referenceType);
|
|
1394
|
-
}
|
|
1395
|
-
else {
|
|
1396
|
-
return false;
|
|
1397
|
-
}
|
|
1398
|
-
});
|
|
1399
|
-
}
|
|
1400
|
-
return references;
|
|
1401
|
-
}
|
|
1402
|
-
function forwardOnly(reference) {
|
|
1403
|
-
return reference.isForward;
|
|
1404
|
-
}
|
|
1405
|
-
function reverseOnly(reference) {
|
|
1406
|
-
return !reference.isForward;
|
|
1407
|
-
}
|
|
1408
|
-
function _filter_by_direction(references, browseDirection) {
|
|
1409
|
-
if (browseDirection === node_opcua_data_model_1.BrowseDirection.Both) {
|
|
1410
|
-
return references;
|
|
1411
|
-
}
|
|
1412
|
-
if (browseDirection === node_opcua_data_model_1.BrowseDirection.Forward) {
|
|
1413
|
-
return references.filter(forwardOnly);
|
|
1414
|
-
}
|
|
1415
|
-
else {
|
|
1416
|
-
return references.filter(reverseOnly);
|
|
1417
|
-
}
|
|
1418
|
-
}
|
|
1419
|
-
/*
|
|
1420
|
-
function _filter_by_context(node: BaseNode, references: Reference[], context: SessionContext): Reference[] {
|
|
1421
|
-
if (!context.isBrowseAccessRestricted(node)) {
|
|
1422
|
-
return references;
|
|
1423
|
-
}
|
|
1424
|
-
// browse access is restricted for forward
|
|
1425
|
-
return [];
|
|
1426
|
-
}
|
|
1427
|
-
*/
|
|
1428
|
-
function _filter_by_context(node, references, context) {
|
|
1429
|
-
const addressSpace = node.addressSpace;
|
|
1430
|
-
return references.filter((reference) => !context.isBrowseAccessRestricted(resolveReferenceNode(addressSpace, reference)));
|
|
1431
|
-
}
|
|
1432
|
-
function _filter_by_nodeClass(references, nodeClassMask) {
|
|
1433
|
-
(0, node_opcua_assert_1.assert)(Number.isFinite(nodeClassMask));
|
|
1434
|
-
if (nodeClassMask === 0) {
|
|
1435
|
-
return references;
|
|
1436
|
-
}
|
|
1437
|
-
const addressSpace = this.addressSpace;
|
|
1438
|
-
return references.filter((reference) => {
|
|
1439
|
-
const obj = resolveReferenceNode(addressSpace, reference);
|
|
1440
|
-
if (!obj) {
|
|
1441
|
-
return false;
|
|
1442
|
-
}
|
|
1443
|
-
const nodeClassName = node_opcua_data_model_1.NodeClass[obj.nodeClass];
|
|
1444
|
-
const value = (0, node_opcua_data_model_1.makeNodeClassMask)(nodeClassName);
|
|
1445
|
-
return (value & nodeClassMask) === value;
|
|
1446
|
-
});
|
|
1447
|
-
}
|
|
1448
|
-
function _filter_by_userFilter(references, context) {
|
|
1449
|
-
const addressSpace = this.addressSpace;
|
|
1450
|
-
return references.filter((reference) => {
|
|
1451
|
-
const obj = resolveReferenceNode(addressSpace, reference);
|
|
1452
|
-
// c8 ignore next
|
|
1453
|
-
if (!obj) {
|
|
1454
|
-
return false;
|
|
1455
|
-
}
|
|
1456
|
-
const _private = (0, base_node_private_1.BaseNode_getPrivate)(obj);
|
|
1457
|
-
// c8 ignore next
|
|
1458
|
-
if (!_private._browseFilter) {
|
|
1459
|
-
throw Error("Internal error : cannot find browseFilter");
|
|
1460
|
-
}
|
|
1461
|
-
const filter1 = _private._browseFilter.call(obj, context);
|
|
1462
|
-
return filter1;
|
|
1463
|
-
});
|
|
1464
|
-
}
|
|
1465
|
-
const reservedNames = {
|
|
1466
|
-
__description: 0,
|
|
1467
|
-
__displayName: 0,
|
|
1468
|
-
browseName: 0,
|
|
1469
|
-
description: 0,
|
|
1470
|
-
displayName: 0,
|
|
1471
|
-
nodeClass: 0,
|
|
1472
|
-
nodeId: 0,
|
|
1473
|
-
typeDefinition: 0
|
|
1474
|
-
};
|
|
1475
|
-
/*
|
|
1476
|
-
* install hierarchical references as javascript properties
|
|
1477
|
-
* Components/Properties/Organizes
|
|
1478
|
-
*/
|
|
1479
|
-
/**
|
|
1480
|
-
* Expose a single child of `parentObj` as a JavaScript property on it.
|
|
1481
|
-
*
|
|
1482
|
-
* Split out of {@link install_components_as_object_properties} so that adding
|
|
1483
|
-
* one child does not have to re-walk every child the parent already has: that
|
|
1484
|
-
* made building a large folder quadratic. See
|
|
1485
|
-
* {@link BaseNodeImpl.install_extra_properties}.
|
|
1486
|
-
*/
|
|
1487
|
-
function install_child_as_object_property(parentObj, child) {
|
|
1488
|
-
// the parent may be unresolvable while a nodeset is still loading, which is
|
|
1489
|
-
// why the whole-parent form guarded it too
|
|
1490
|
-
if (!parentObj || !child) {
|
|
1491
|
-
return;
|
|
1492
|
-
}
|
|
1493
|
-
// assumption: we ignore namespace here .
|
|
1494
|
-
const name = (0, node_opcua_utils_1.lowerFirstLetter)(child.browseName.name || "");
|
|
1495
|
-
if (Object.hasOwn(reservedNames, name)) {
|
|
1496
|
-
// ignore reserved names
|
|
1497
|
-
if (doDebug) {
|
|
1498
|
-
debugLog(chalk_1.default.bgWhite.red(`Ignoring reserved keyword ${name}`));
|
|
1499
|
-
}
|
|
1500
|
-
return;
|
|
1501
|
-
}
|
|
1502
|
-
// ignore reserved names
|
|
1503
|
-
doDebug && debugLog(`Installing property ${name}`, " on ", parentObj.browseName.toString());
|
|
1504
|
-
const hasProperty = Object.hasOwn(parentObj, name);
|
|
1505
|
-
if (hasProperty &&
|
|
1506
|
-
parentObj[name] !== null &&
|
|
1507
|
-
parentObj[name] !== undefined) {
|
|
1508
|
-
return;
|
|
1509
|
-
}
|
|
1510
|
-
Object.defineProperty(parentObj, name, {
|
|
1511
|
-
configurable: true, // set to true, so we can undefine later
|
|
1512
|
-
enumerable: true,
|
|
1513
|
-
// xx writable: false,
|
|
1514
|
-
get() {
|
|
1515
|
-
return child;
|
|
1516
|
-
}
|
|
1517
|
-
// value: child
|
|
1518
|
-
});
|
|
1519
|
-
}
|
|
1520
|
-
function install_components_as_object_properties(parentObj) {
|
|
1521
|
-
if (!parentObj) {
|
|
1522
|
-
return;
|
|
1523
|
-
}
|
|
1524
|
-
const addressSpace = parentObj.addressSpace;
|
|
1525
|
-
const hierarchicalRefs = parentObj.findHierarchicalReferences();
|
|
1526
|
-
for (const reference of hierarchicalRefs) {
|
|
1527
|
-
install_child_as_object_property(parentObj, reference_impl_1.ReferenceImpl.resolveReferenceNode(addressSpace, reference));
|
|
1528
|
-
}
|
|
1529
|
-
}
|
|
1530
|
-
function getReferenceType(reference) {
|
|
1531
|
-
const r = reference._referenceType;
|
|
1532
|
-
// c8 ignore next
|
|
1533
|
-
if (!r) {
|
|
1534
|
-
throw new Error("Internal error : cannot find referenceType");
|
|
1535
|
-
}
|
|
1536
|
-
return r;
|
|
1537
|
-
}
|
|
1538
|
-
//# sourceMappingURL=base_node_impl.js.map
|