node-opcua-address-space 2.183.1 → 2.184.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/helpers/adjust_browse_direction.ts +1 -1
- package/api/helpers/argument_list.ts +9 -9
- package/api/helpers/coerce_enum_value.ts +1 -0
- package/api/helpers/dump_tools.ts +1 -1
- package/api/index.ts +2 -1
- package/api/interfaces/data_access/ua_multistate_discrete_ex.ts +1 -1
- package/api/interfaces/nodeset_loader_options.ts +17 -0
- package/api/loader/decode_xml_extension_object.ts +1 -1
- package/api/loader/ensure_datatype_extracted.ts +73 -37
- package/api/loader/generateAddressSpaceRaw.ts +32 -22
- package/api/loader/load_nodeset2.ts +2 -2
- package/api/loader/namespace_post_step.ts +1 -1
- package/api/loader/narrow_instance_datatypes.ts +22 -9
- package/api/loader/nodeset_image_codec.ts +26 -12
- package/api/loader/nodeset_record_applier.ts +1 -1
- package/api/loader/nodeset_xml_producer.ts +8 -6
- package/api/loader/parsers/extension_object_parser.ts +3 -3
- package/api/pseudo_session.ts +1 -1
- package/bin/{nodeset_equivalence.js → nodeset_equivalence.cjs} +1 -1
- package/bin/{opcua-nodeset-image.js → opcua-nodeset-image.cjs} +1 -1
- package/bin/{opcua-nodeset-live.js → opcua-nodeset-live.cjs} +2 -2
- package/dist/api/address_space_public.d.ts +1 -0
- package/dist/api/address_space_public.d.ts.map +1 -0
- package/dist/api/address_space_public.js +2 -5
- package/dist/api/address_space_public.js.map +1 -1
- package/dist/api/address_space_ts.d.ts +1 -0
- package/dist/api/address_space_ts.d.ts.map +1 -0
- package/dist/api/address_space_ts.js +2 -5
- package/dist/api/address_space_ts.js.map +1 -1
- package/dist/api/continuation_points/continuation_point_manager.d.ts +1 -0
- package/dist/api/continuation_points/continuation_point_manager.d.ts.map +1 -0
- package/dist/api/continuation_points/continuation_point_manager.js +13 -17
- package/dist/api/continuation_points/continuation_point_manager.js.map +1 -1
- package/dist/api/helpers/adjust_browse_direction.d.ts +1 -0
- package/dist/api/helpers/adjust_browse_direction.d.ts.map +1 -0
- package/dist/api/helpers/adjust_browse_direction.js +2 -5
- package/dist/api/helpers/adjust_browse_direction.js.map +1 -1
- package/dist/api/helpers/argument_list.d.ts +1 -0
- package/dist/api/helpers/argument_list.d.ts.map +1 -0
- package/dist/api/helpers/argument_list.js +61 -69
- package/dist/api/helpers/argument_list.js.map +1 -1
- package/dist/api/helpers/call_helpers.d.ts +1 -0
- package/dist/api/helpers/call_helpers.d.ts.map +1 -0
- package/dist/api/helpers/call_helpers.js +25 -28
- package/dist/api/helpers/call_helpers.js.map +1 -1
- package/dist/api/helpers/coerce_enum_value.d.ts +1 -0
- package/dist/api/helpers/coerce_enum_value.d.ts.map +1 -0
- package/dist/api/helpers/coerce_enum_value.js +15 -17
- package/dist/api/helpers/coerce_enum_value.js.map +1 -1
- package/dist/api/helpers/dump_tools.d.ts +1 -0
- package/dist/api/helpers/dump_tools.d.ts.map +1 -0
- package/dist/api/helpers/dump_tools.js +19 -29
- package/dist/api/helpers/dump_tools.js.map +1 -1
- package/dist/api/helpers/ensure_secure_access.d.ts +1 -0
- package/dist/api/helpers/ensure_secure_access.d.ts.map +1 -0
- package/dist/api/helpers/ensure_secure_access.js +24 -28
- package/dist/api/helpers/ensure_secure_access.js.map +1 -1
- package/dist/api/helpers/make_optionals_map.d.ts +1 -0
- package/dist/api/helpers/make_optionals_map.d.ts.map +1 -0
- package/dist/api/helpers/make_optionals_map.js +1 -4
- package/dist/api/helpers/make_optionals_map.js.map +1 -1
- package/dist/api/helpers/multiform_func.d.ts +1 -0
- package/dist/api/helpers/multiform_func.d.ts.map +1 -0
- package/dist/api/helpers/multiform_func.js +4 -8
- package/dist/api/helpers/multiform_func.js.map +1 -1
- package/dist/api/helpers/resolve_opaque_on_address_space.d.ts +1 -0
- package/dist/api/helpers/resolve_opaque_on_address_space.d.ts.map +1 -0
- package/dist/api/helpers/resolve_opaque_on_address_space.js +10 -13
- package/dist/api/helpers/resolve_opaque_on_address_space.js.map +1 -1
- package/dist/api/index.d.ts +3 -1
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +93 -218
- package/dist/api/index.js.map +1 -1
- package/dist/api/interfaces/alarms_and_conditions/condition_info_i.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_info_i.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js +2 -5
- package/dist/api/interfaces/alarms_and_conditions/condition_info_i.js.map +1 -1
- package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/condition_snapshot.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/deviation_stuff.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/install_setpoint_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/install_setpoint_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_condition_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/promote_to_alarm_options.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/promote_to_alarm_options.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/promote_to_alarm_options.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_base_event_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_base_event_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_base_event_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_condition_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +1 -2
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts.map +1 -0
- package/dist/api/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +1 -2
- package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.d.ts +2 -1
- package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.d.ts.map +1 -0
- package/dist/api/interfaces/data_access/ua_multistate_discrete_ex.js +1 -2
- package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +1 -0
- package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts.map +1 -0
- package/dist/api/interfaces/data_access/ua_multistate_value_discrete_ex.js +1 -2
- package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.d.ts +1 -0
- package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.d.ts.map +1 -0
- package/dist/api/interfaces/data_access/ua_two_state_discrete_ex.js +1 -2
- package/dist/api/interfaces/data_access/ua_y_array_item_ex.d.ts +1 -0
- package/dist/api/interfaces/data_access/ua_y_array_item_ex.d.ts.map +1 -0
- package/dist/api/interfaces/data_access/ua_y_array_item_ex.js +1 -2
- package/dist/api/interfaces/extension_object_constructor.d.ts +1 -0
- package/dist/api/interfaces/extension_object_constructor.d.ts.map +1 -0
- package/dist/api/interfaces/extension_object_constructor.js +1 -2
- package/dist/api/interfaces/i_condition_variable_type_setter_options.d.ts +1 -0
- package/dist/api/interfaces/i_condition_variable_type_setter_options.d.ts.map +1 -0
- package/dist/api/interfaces/i_condition_variable_type_setter_options.js +1 -2
- package/dist/api/interfaces/i_set_state_options.d.ts +1 -0
- package/dist/api/interfaces/i_set_state_options.d.ts.map +1 -0
- package/dist/api/interfaces/i_set_state_options.js +1 -2
- package/dist/api/interfaces/nodeset_loader_options.d.ts +18 -0
- package/dist/api/interfaces/nodeset_loader_options.d.ts.map +1 -0
- package/dist/api/interfaces/nodeset_loader_options.js +1 -2
- package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +1 -0
- package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts.map +1 -0
- package/dist/api/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +1 -2
- package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.d.ts +1 -0
- package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.d.ts.map +1 -0
- package/dist/api/interfaces/state_machine/ua_finite_state_machine_type.js +1 -2
- package/dist/api/interfaces/state_machine/ua_program_state_machine_type.d.ts +1 -0
- package/dist/api/interfaces/state_machine/ua_program_state_machine_type.d.ts.map +1 -0
- package/dist/api/interfaces/state_machine/ua_program_state_machine_type.js +1 -2
- package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +1 -0
- package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts.map +1 -0
- package/dist/api/interfaces/state_machine/ua_shelved_state_machine_ex.js +1 -2
- package/dist/api/interfaces/state_machine/ua_state_machine_type.d.ts +1 -0
- package/dist/api/interfaces/state_machine/ua_state_machine_type.d.ts.map +1 -0
- package/dist/api/interfaces/state_machine/ua_state_machine_type.js +1 -2
- package/dist/api/interfaces/state_machine/ua_state_machine_type.js.map +1 -1
- package/dist/api/interfaces/state_machine/ua_transition_ex.d.ts +1 -0
- package/dist/api/interfaces/state_machine/ua_transition_ex.d.ts.map +1 -0
- package/dist/api/interfaces/state_machine/ua_transition_ex.js +1 -2
- package/dist/api/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +1 -0
- package/dist/api/interfaces/ua_subscription_diagnostics_variable_ex.d.ts.map +1 -0
- package/dist/api/interfaces/ua_subscription_diagnostics_variable_ex.js +1 -2
- package/dist/api/interfaces/ua_subscription_diagnostics_variable_ex.js.map +1 -1
- package/dist/api/loader/decode_xml_extension_object.d.ts +1 -0
- package/dist/api/loader/decode_xml_extension_object.d.ts.map +1 -0
- package/dist/api/loader/decode_xml_extension_object.js +13 -17
- package/dist/api/loader/decode_xml_extension_object.js.map +1 -1
- package/dist/api/loader/ensure_datatype_extracted.d.ts +1 -0
- package/dist/api/loader/ensure_datatype_extracted.d.ts.map +1 -0
- package/dist/api/loader/ensure_datatype_extracted.js +83 -52
- package/dist/api/loader/ensure_datatype_extracted.js.map +1 -1
- package/dist/api/loader/generateAddressSpaceRaw.d.ts +1 -0
- package/dist/api/loader/generateAddressSpaceRaw.d.ts.map +1 -0
- package/dist/api/loader/generateAddressSpaceRaw.js +76 -74
- package/dist/api/loader/generateAddressSpaceRaw.js.map +1 -1
- package/dist/api/loader/load_nodeset2.d.ts +1 -0
- package/dist/api/loader/load_nodeset2.d.ts.map +1 -0
- package/dist/api/loader/load_nodeset2.js +44 -51
- package/dist/api/loader/load_nodeset2.js.map +1 -1
- package/dist/api/loader/make_semver_compatible.d.ts +1 -0
- package/dist/api/loader/make_semver_compatible.d.ts.map +1 -0
- package/dist/api/loader/make_semver_compatible.js +1 -4
- package/dist/api/loader/make_semver_compatible.js.map +1 -1
- package/dist/api/loader/make_xml_extension_object_parser.d.ts +1 -0
- package/dist/api/loader/make_xml_extension_object_parser.d.ts.map +1 -0
- package/dist/api/loader/make_xml_extension_object_parser.js +37 -40
- package/dist/api/loader/make_xml_extension_object_parser.js.map +1 -1
- package/dist/api/loader/namespace_post_step.d.ts +1 -0
- package/dist/api/loader/namespace_post_step.d.ts.map +1 -0
- package/dist/api/loader/namespace_post_step.js +12 -17
- package/dist/api/loader/namespace_post_step.js.map +1 -1
- package/dist/api/loader/narrow_instance_datatypes.d.ts +1 -0
- package/dist/api/loader/narrow_instance_datatypes.d.ts.map +1 -0
- package/dist/api/loader/narrow_instance_datatypes.js +38 -28
- package/dist/api/loader/narrow_instance_datatypes.js.map +1 -1
- package/dist/api/loader/nodeset_builtin_formats.d.ts +1 -0
- package/dist/api/loader/nodeset_builtin_formats.d.ts.map +1 -0
- package/dist/api/loader/nodeset_builtin_formats.js +20 -25
- package/dist/api/loader/nodeset_builtin_formats.js.map +1 -1
- package/dist/api/loader/nodeset_format.d.ts +1 -0
- package/dist/api/loader/nodeset_format.d.ts.map +1 -0
- package/dist/api/loader/nodeset_format.js +4 -10
- package/dist/api/loader/nodeset_format.js.map +1 -1
- package/dist/api/loader/nodeset_image.d.ts +1 -0
- package/dist/api/loader/nodeset_image.d.ts.map +1 -0
- package/dist/api/loader/nodeset_image.js +38 -54
- package/dist/api/loader/nodeset_image.js.map +1 -1
- package/dist/api/loader/nodeset_image_codec.d.ts +1 -0
- package/dist/api/loader/nodeset_image_codec.d.ts.map +1 -0
- package/dist/api/loader/nodeset_image_codec.js +118 -116
- package/dist/api/loader/nodeset_image_codec.js.map +1 -1
- package/dist/api/loader/nodeset_image_store.d.ts +1 -0
- package/dist/api/loader/nodeset_image_store.d.ts.map +1 -0
- package/dist/api/loader/nodeset_image_store.js +5 -11
- package/dist/api/loader/nodeset_image_store.js.map +1 -1
- package/dist/api/loader/nodeset_record.d.ts +1 -0
- package/dist/api/loader/nodeset_record.d.ts.map +1 -0
- package/dist/api/loader/nodeset_record.js +3 -7
- package/dist/api/loader/nodeset_record.js.map +1 -1
- package/dist/api/loader/nodeset_record_applier.d.ts +1 -0
- package/dist/api/loader/nodeset_record_applier.d.ts.map +1 -0
- package/dist/api/loader/nodeset_record_applier.js +89 -97
- package/dist/api/loader/nodeset_record_applier.js.map +1 -1
- package/dist/api/loader/nodeset_records_to_xml.d.ts +1 -0
- package/dist/api/loader/nodeset_records_to_xml.d.ts.map +1 -0
- package/dist/api/loader/nodeset_records_to_xml.js +82 -88
- package/dist/api/loader/nodeset_records_to_xml.js.map +1 -1
- package/dist/api/loader/nodeset_source.d.ts +1 -0
- package/dist/api/loader/nodeset_source.d.ts.map +1 -0
- package/dist/api/loader/nodeset_source.js +14 -21
- package/dist/api/loader/nodeset_source.js.map +1 -1
- package/dist/api/loader/nodeset_source_helpers.d.ts +1 -0
- package/dist/api/loader/nodeset_source_helpers.d.ts.map +1 -0
- package/dist/api/loader/nodeset_source_helpers.js +2 -6
- package/dist/api/loader/nodeset_source_helpers.js.map +1 -1
- package/dist/api/loader/nodeset_to_image.d.ts +1 -0
- package/dist/api/loader/nodeset_to_image.d.ts.map +1 -0
- package/dist/api/loader/nodeset_to_image.js +12 -15
- package/dist/api/loader/nodeset_to_image.js.map +1 -1
- package/dist/api/loader/nodeset_xml_header.d.ts +1 -0
- package/dist/api/loader/nodeset_xml_header.d.ts.map +1 -0
- package/dist/api/loader/nodeset_xml_header.js +9 -14
- package/dist/api/loader/nodeset_xml_header.js.map +1 -1
- package/dist/api/loader/nodeset_xml_primitives.d.ts +1 -0
- package/dist/api/loader/nodeset_xml_primitives.d.ts.map +1 -0
- package/dist/api/loader/nodeset_xml_primitives.js +32 -53
- package/dist/api/loader/nodeset_xml_primitives.js.map +1 -1
- package/dist/api/loader/nodeset_xml_producer.d.ts +1 -0
- package/dist/api/loader/nodeset_xml_producer.d.ts.map +1 -0
- package/dist/api/loader/nodeset_xml_producer.js +49 -51
- package/dist/api/loader/nodeset_xml_producer.js.map +1 -1
- package/dist/api/loader/parsers/extension_object_parser.d.ts +1 -0
- package/dist/api/loader/parsers/extension_object_parser.d.ts.map +1 -0
- package/dist/api/loader/parsers/extension_object_parser.js +49 -57
- package/dist/api/loader/parsers/extension_object_parser.js.map +1 -1
- package/dist/api/loader/parsers/localized_text_parser.d.ts +1 -0
- package/dist/api/loader/parsers/localized_text_parser.d.ts.map +1 -0
- package/dist/api/loader/parsers/localized_text_parser.js +3 -6
- package/dist/api/loader/parsers/localized_text_parser.js.map +1 -1
- package/dist/api/loader/parsers/nodeid_parser.d.ts +1 -0
- package/dist/api/loader/parsers/nodeid_parser.d.ts.map +1 -0
- package/dist/api/loader/parsers/nodeid_parser.js +3 -7
- package/dist/api/loader/parsers/nodeid_parser.js.map +1 -1
- package/dist/api/loader/parsers/qualified_name_parser.d.ts +1 -0
- package/dist/api/loader/parsers/qualified_name_parser.d.ts.map +1 -0
- package/dist/api/loader/parsers/qualified_name_parser.js +5 -9
- package/dist/api/loader/parsers/qualified_name_parser.js.map +1 -1
- package/dist/api/loader/parsers/variant_parser.d.ts +1 -0
- package/dist/api/loader/parsers/variant_parser.d.ts.map +1 -0
- package/dist/api/loader/parsers/variant_parser.js +59 -63
- package/dist/api/loader/parsers/variant_parser.js.map +1 -1
- package/dist/api/loader/register_node_promoter.d.ts +1 -0
- package/dist/api/loader/register_node_promoter.d.ts.map +1 -0
- package/dist/api/loader/register_node_promoter.js +4 -7
- package/dist/api/loader/register_node_promoter.js.map +1 -1
- package/dist/api/namespace.d.ts +1 -0
- package/dist/api/namespace.d.ts.map +1 -0
- package/dist/api/namespace.js +1 -2
- package/dist/api/namespace_alarm_and_condition.d.ts +1 -0
- package/dist/api/namespace_alarm_and_condition.d.ts.map +1 -0
- package/dist/api/namespace_alarm_and_condition.js +1 -2
- package/dist/api/namespace_data_access.d.ts +1 -0
- package/dist/api/namespace_data_access.d.ts.map +1 -0
- package/dist/api/namespace_data_access.js +1 -2
- package/dist/api/namespace_machine_state.d.ts +1 -0
- package/dist/api/namespace_machine_state.d.ts.map +1 -0
- package/dist/api/namespace_machine_state.js +1 -2
- package/dist/api/namespace_of.d.ts +1 -0
- package/dist/api/namespace_of.d.ts.map +1 -0
- package/dist/api/namespace_of.js +1 -4
- package/dist/api/namespace_of.js.map +1 -1
- package/dist/api/pseudo_session.d.ts +1 -0
- package/dist/api/pseudo_session.d.ts.map +1 -0
- package/dist/api/pseudo_session.js +56 -62
- package/dist/api/pseudo_session.js.map +1 -1
- package/dist/api/session_context.d.ts +1 -0
- package/dist/api/session_context.d.ts.map +1 -0
- package/dist/api/session_context.js +60 -68
- package/dist/api/session_context.js.map +1 -1
- package/dist/api/set_namespace_meta_data.d.ts +1 -0
- package/dist/api/set_namespace_meta_data.d.ts.map +1 -0
- package/dist/api/set_namespace_meta_data.js +10 -13
- package/dist/api/set_namespace_meta_data.js.map +1 -1
- package/dist/api/ua_addin.d.ts +1 -0
- package/dist/api/ua_addin.d.ts.map +1 -0
- package/dist/api/ua_addin.js +9 -13
- package/dist/api/ua_addin.js.map +1 -1
- package/dist/api/ua_interface.d.ts +1 -0
- package/dist/api/ua_interface.d.ts.map +1 -0
- package/dist/api/ua_interface.js +5 -8
- package/dist/api/ua_interface.js.map +1 -1
- package/dist/api/ua_root_folder.d.ts +1 -0
- package/dist/api/ua_root_folder.d.ts.map +1 -0
- package/dist/api/ua_root_folder.js +1 -2
- package/dist/api/ua_two_state_variable_ex.d.ts +1 -0
- package/dist/api/ua_two_state_variable_ex.d.ts.map +1 -0
- package/dist/api/ua_two_state_variable_ex.js +1 -2
- package/dist/api/xml_writer.d.ts +1 -0
- package/dist/api/xml_writer.d.ts.map +1 -0
- package/dist/api/xml_writer.js +1 -2
- package/dist/impl/_instantiate_helpers.d.ts +1 -0
- package/dist/impl/_instantiate_helpers.d.ts.map +1 -0
- package/dist/impl/_instantiate_helpers.js +25 -31
- package/dist/impl/_instantiate_helpers.js.map +1 -1
- package/dist/impl/_mandatory_child_or_requested_optional_filter.d.ts +1 -0
- package/dist/impl/_mandatory_child_or_requested_optional_filter.d.ts.map +1 -0
- package/dist/impl/_mandatory_child_or_requested_optional_filter.js +16 -20
- package/dist/impl/_mandatory_child_or_requested_optional_filter.js.map +1 -1
- package/dist/impl/address_space.d.ts +40 -0
- package/dist/impl/address_space.d.ts.map +1 -0
- package/dist/impl/address_space.js +246 -189
- package/dist/impl/address_space.js.map +1 -1
- package/dist/impl/address_space_change_event_tools.d.ts +1 -0
- package/dist/impl/address_space_change_event_tools.d.ts.map +1 -0
- package/dist/impl/address_space_change_event_tools.js +31 -29
- package/dist/impl/address_space_change_event_tools.js.map +1 -1
- package/dist/impl/address_space_private.d.ts +2 -0
- package/dist/impl/address_space_private.d.ts.map +1 -0
- package/dist/impl/address_space_private.js +1 -2
- package/dist/impl/address_space_private.js.map +1 -1
- package/dist/impl/alarms_and_conditions/condition.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/condition.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/condition.js +1 -2
- package/dist/impl/alarms_and_conditions/condition.js.map +1 -1
- package/dist/impl/alarms_and_conditions/condition_info_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/condition_info_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/condition_info_impl.js +3 -7
- package/dist/impl/alarms_and_conditions/condition_info_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/condition_snapshot_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/condition_snapshot_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js +77 -81
- package/dist/impl/alarms_and_conditions/condition_snapshot_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/deviation_alarm_helper.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/deviation_alarm_helper.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js +14 -20
- package/dist/impl/alarms_and_conditions/deviation_alarm_helper.js.map +1 -1
- package/dist/impl/alarms_and_conditions/index.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/index.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/index.js +13 -29
- package/dist/impl/alarms_and_conditions/index.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +60 -65
- package/dist/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js +53 -59
- package/dist/impl/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_base_event_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_base_event_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_base_event_impl.js +12 -16
- package/dist/impl/alarms_and_conditions/ua_base_event_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +34 -39
- package/dist/impl/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_condition_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_condition_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_condition_impl.js +140 -148
- package/dist/impl/alarms_and_conditions/ua_condition_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js +6 -10
- package/dist/impl/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +18 -22
- package/dist/impl/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +3 -7
- package/dist/impl/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +14 -18
- package/dist/impl/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +2 -6
- package/dist/impl/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js +35 -39
- package/dist/impl/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +17 -21
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +27 -31
- package/dist/impl/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js +18 -22
- package/dist/impl/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -1
- package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +1 -0
- package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts.map +1 -0
- package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +3 -7
- package/dist/impl/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -1
- package/dist/impl/apply_condition_refresh.d.ts +1 -0
- package/dist/impl/apply_condition_refresh.d.ts.map +1 -0
- package/dist/impl/apply_condition_refresh.js +1 -4
- package/dist/impl/apply_condition_refresh.js.map +1 -1
- package/dist/impl/base_node_impl.d.ts +1 -0
- package/dist/impl/base_node_impl.d.ts.map +1 -0
- package/dist/impl/base_node_impl.js +279 -292
- package/dist/impl/base_node_impl.js.map +1 -1
- package/dist/impl/base_node_private.d.ts +1 -0
- package/dist/impl/base_node_private.d.ts.map +1 -0
- package/dist/impl/base_node_private.js +168 -199
- package/dist/impl/base_node_private.js.map +1 -1
- package/dist/impl/bulk_load_clock.d.ts +35 -0
- package/dist/impl/bulk_load_clock.d.ts.map +1 -0
- package/dist/impl/bulk_load_clock.js +58 -0
- package/dist/impl/bulk_load_clock.js.map +1 -0
- package/dist/impl/check_value_rank_compatibility.d.ts +1 -0
- package/dist/impl/check_value_rank_compatibility.d.ts.map +1 -0
- package/dist/impl/check_value_rank_compatibility.js +1 -4
- package/dist/impl/check_value_rank_compatibility.js.map +1 -1
- package/dist/impl/child_accessors.d.ts +1 -0
- package/dist/impl/child_accessors.d.ts.map +1 -0
- package/dist/impl/child_accessors.js +10 -20
- package/dist/impl/child_accessors.js.map +1 -1
- package/dist/impl/data_access/add_dataItem_stuff.d.ts +1 -0
- package/dist/impl/data_access/add_dataItem_stuff.d.ts.map +1 -0
- package/dist/impl/data_access/add_dataItem_stuff.js +6 -9
- package/dist/impl/data_access/add_dataItem_stuff.js.map +1 -1
- package/dist/impl/data_access/adjust_datavalue_status_code.d.ts +1 -0
- package/dist/impl/data_access/adjust_datavalue_status_code.d.ts.map +1 -0
- package/dist/impl/data_access/adjust_datavalue_status_code.js +9 -12
- package/dist/impl/data_access/adjust_datavalue_status_code.js.map +1 -1
- package/dist/impl/data_access/semantics_changed.d.ts +12 -0
- package/dist/impl/data_access/semantics_changed.d.ts.map +1 -0
- package/dist/impl/data_access/semantics_changed.js +44 -10
- package/dist/impl/data_access/semantics_changed.js.map +1 -1
- package/dist/impl/data_access/ua_multistate_discrete_impl.d.ts +2 -1
- package/dist/impl/data_access/ua_multistate_discrete_impl.d.ts.map +1 -0
- package/dist/impl/data_access/ua_multistate_discrete_impl.js +35 -41
- package/dist/impl/data_access/ua_multistate_discrete_impl.js.map +1 -1
- package/dist/impl/data_access/ua_multistate_value_discrete_impl.d.ts +1 -0
- package/dist/impl/data_access/ua_multistate_value_discrete_impl.d.ts.map +1 -0
- package/dist/impl/data_access/ua_multistate_value_discrete_impl.js +71 -78
- package/dist/impl/data_access/ua_multistate_value_discrete_impl.js.map +1 -1
- package/dist/impl/data_access/ua_two_state_discrete_impl.d.ts +1 -0
- package/dist/impl/data_access/ua_two_state_discrete_impl.d.ts.map +1 -0
- package/dist/impl/data_access/ua_two_state_discrete_impl.js +27 -36
- package/dist/impl/data_access/ua_two_state_discrete_impl.js.map +1 -1
- package/dist/impl/event_data.d.ts +1 -0
- package/dist/impl/event_data.d.ts.map +1 -0
- package/dist/impl/event_data.js +15 -19
- package/dist/impl/event_data.js.map +1 -1
- package/dist/impl/event_layout.d.ts +1 -0
- package/dist/impl/event_layout.d.ts.map +1 -0
- package/dist/impl/event_layout.js +12 -16
- package/dist/impl/event_layout.js.map +1 -1
- package/dist/impl/extension_object_array_node.d.ts +1 -0
- package/dist/impl/extension_object_array_node.d.ts.map +1 -0
- package/dist/impl/extension_object_array_node.js +47 -53
- package/dist/impl/extension_object_array_node.js.map +1 -1
- package/dist/impl/get_basic_datatype.d.ts +1 -0
- package/dist/impl/get_basic_datatype.d.ts.map +1 -0
- package/dist/impl/get_basic_datatype.js +6 -10
- package/dist/impl/get_basic_datatype.js.map +1 -1
- package/dist/impl/handle_hierarchy_parent.d.ts +1 -0
- package/dist/impl/handle_hierarchy_parent.d.ts.map +1 -0
- package/dist/impl/handle_hierarchy_parent.js +26 -30
- package/dist/impl/handle_hierarchy_parent.js.map +1 -1
- package/dist/impl/historical_access/address_space_historical_data_node.d.ts +1 -0
- package/dist/impl/historical_access/address_space_historical_data_node.d.ts.map +1 -0
- package/dist/impl/historical_access/address_space_historical_data_node.js +76 -84
- package/dist/impl/historical_access/address_space_historical_data_node.js.map +1 -1
- package/dist/impl/historical_access/read_processed_details_hook.d.ts +1 -0
- package/dist/impl/historical_access/read_processed_details_hook.d.ts.map +1 -0
- package/dist/impl/historical_access/read_processed_details_hook.js +1 -4
- package/dist/impl/historical_access/read_processed_details_hook.js.map +1 -1
- package/dist/impl/historizer_factory.d.ts +1 -0
- package/dist/impl/historizer_factory.d.ts.map +1 -0
- package/dist/impl/historizer_factory.js +1 -4
- package/dist/impl/historizer_factory.js.map +1 -1
- package/dist/impl/idx_iterator.d.ts +1 -0
- package/dist/impl/idx_iterator.d.ts.map +1 -0
- package/dist/impl/idx_iterator.js +1 -5
- package/dist/impl/idx_iterator.js.map +1 -1
- package/dist/impl/namespace_impl.d.ts +32 -0
- package/dist/impl/namespace_impl.d.ts.map +1 -0
- package/dist/impl/namespace_impl.js +418 -318
- package/dist/impl/namespace_impl.js.map +1 -1
- package/dist/impl/namespace_private.d.ts +3 -0
- package/dist/impl/namespace_private.d.ts.map +1 -0
- package/dist/impl/namespace_private.js +3 -6
- package/dist/impl/namespace_private.js.map +1 -1
- package/dist/impl/nodeid_manager.d.ts +11 -0
- package/dist/impl/nodeid_manager.d.ts.map +1 -0
- package/dist/impl/nodeid_manager.js +52 -44
- package/dist/impl/nodeid_manager.js.map +1 -1
- package/dist/impl/nodeset_tools/adjust_namespace_array.d.ts +1 -0
- package/dist/impl/nodeset_tools/adjust_namespace_array.d.ts.map +1 -0
- package/dist/impl/nodeset_tools/adjust_namespace_array.js +1 -4
- package/dist/impl/nodeset_tools/adjust_namespace_array.js.map +1 -1
- package/dist/impl/nodeset_tools/construct_namespace_dependency.d.ts +1 -0
- package/dist/impl/nodeset_tools/construct_namespace_dependency.d.ts.map +1 -0
- package/dist/impl/nodeset_tools/construct_namespace_dependency.js +28 -39
- package/dist/impl/nodeset_tools/construct_namespace_dependency.js.map +1 -1
- package/dist/impl/nodeset_tools/dump_to_bsd.d.ts +1 -0
- package/dist/impl/nodeset_tools/dump_to_bsd.d.ts.map +1 -0
- package/dist/impl/nodeset_tools/dump_to_bsd.js +14 -20
- package/dist/impl/nodeset_tools/dump_to_bsd.js.map +1 -1
- package/dist/impl/nodeset_tools/nodeset_to_records.d.ts +1 -0
- package/dist/impl/nodeset_tools/nodeset_to_records.d.ts.map +1 -0
- package/dist/impl/nodeset_tools/nodeset_to_records.js +125 -139
- package/dist/impl/nodeset_tools/nodeset_to_records.js.map +1 -1
- package/dist/impl/nodeset_tools/nodeset_to_xml.d.ts +1 -0
- package/dist/impl/nodeset_tools/nodeset_to_xml.d.ts.map +1 -0
- package/dist/impl/nodeset_tools/nodeset_to_xml.js +190 -202
- package/dist/impl/nodeset_tools/nodeset_to_xml.js.map +1 -1
- package/dist/impl/private_namespace.d.ts +1 -0
- package/dist/impl/private_namespace.d.ts.map +1 -0
- package/dist/impl/private_namespace.js +3 -8
- package/dist/impl/private_namespace.js.map +1 -1
- package/dist/impl/reference_impl.d.ts +1 -0
- package/dist/impl/reference_impl.d.ts.map +1 -0
- package/dist/impl/reference_impl.js +24 -37
- package/dist/impl/reference_impl.js.map +1 -1
- package/dist/impl/reference_type_version.d.ts +1 -0
- package/dist/impl/reference_type_version.d.ts.map +1 -0
- package/dist/impl/reference_type_version.js +2 -5
- package/dist/impl/reference_type_version.js.map +1 -1
- package/dist/impl/role_permissions.d.ts +1 -0
- package/dist/impl/role_permissions.d.ts.map +1 -0
- package/dist/impl/role_permissions.js +3 -6
- package/dist/impl/role_permissions.js.map +1 -1
- package/dist/impl/state_machine/finite_state_machine.d.ts +1 -0
- package/dist/impl/state_machine/finite_state_machine.d.ts.map +1 -0
- package/dist/impl/state_machine/finite_state_machine.js +123 -97
- package/dist/impl/state_machine/finite_state_machine.js.map +1 -1
- package/dist/impl/state_machine/ua_shelving_state_machine_ex.d.ts +1 -0
- package/dist/impl/state_machine/ua_shelving_state_machine_ex.d.ts.map +1 -0
- package/dist/impl/state_machine/ua_shelving_state_machine_ex.js +57 -62
- package/dist/impl/state_machine/ua_shelving_state_machine_ex.js.map +1 -1
- package/dist/impl/state_machine/ua_two_state_variable.d.ts +1 -0
- package/dist/impl/state_machine/ua_two_state_variable.d.ts.map +1 -0
- package/dist/impl/state_machine/ua_two_state_variable.js +56 -63
- package/dist/impl/state_machine/ua_two_state_variable.js.map +1 -1
- package/dist/impl/tool_isSubtypeOf.d.ts +1 -0
- package/dist/impl/tool_isSubtypeOf.d.ts.map +1 -0
- package/dist/impl/tool_isSubtypeOf.js +27 -34
- package/dist/impl/tool_isSubtypeOf.js.map +1 -1
- package/dist/impl/ua_condition_type.d.ts +1 -0
- package/dist/impl/ua_condition_type.d.ts.map +1 -0
- package/dist/impl/ua_condition_type.js +1 -2
- package/dist/impl/ua_data_type_impl.d.ts +1 -0
- package/dist/impl/ua_data_type_impl.d.ts.map +1 -0
- package/dist/impl/ua_data_type_impl.js +99 -83
- package/dist/impl/ua_data_type_impl.js.map +1 -1
- package/dist/impl/ua_method_impl.d.ts +3 -2
- package/dist/impl/ua_method_impl.d.ts.map +1 -0
- package/dist/impl/ua_method_impl.js +74 -78
- package/dist/impl/ua_method_impl.js.map +1 -1
- package/dist/impl/ua_object_impl.d.ts +1 -0
- package/dist/impl/ua_object_impl.d.ts.map +1 -0
- package/dist/impl/ua_object_impl.js +48 -51
- package/dist/impl/ua_object_impl.js.map +1 -1
- package/dist/impl/ua_object_type_impl.d.ts +1 -0
- package/dist/impl/ua_object_type_impl.d.ts.map +1 -0
- package/dist/impl/ua_object_type_impl.js +35 -39
- package/dist/impl/ua_object_type_impl.js.map +1 -1
- package/dist/impl/ua_reference_type_impl.d.ts +2 -1
- package/dist/impl/ua_reference_type_impl.d.ts.map +1 -0
- package/dist/impl/ua_reference_type_impl.js +41 -45
- package/dist/impl/ua_reference_type_impl.js.map +1 -1
- package/dist/impl/ua_variable_impl.d.ts +1 -0
- package/dist/impl/ua_variable_impl.d.ts.map +1 -0
- package/dist/impl/ua_variable_impl.js +373 -376
- package/dist/impl/ua_variable_impl.js.map +1 -1
- package/dist/impl/ua_variable_impl_ext_obj.d.ts +1 -0
- package/dist/impl/ua_variable_impl_ext_obj.d.ts.map +1 -0
- package/dist/impl/ua_variable_impl_ext_obj.js +79 -97
- package/dist/impl/ua_variable_impl_ext_obj.js.map +1 -1
- package/dist/impl/ua_variable_type_impl.d.ts +1 -0
- package/dist/impl/ua_variable_type_impl.d.ts.map +1 -0
- package/dist/impl/ua_variable_type_impl.js +77 -84
- package/dist/impl/ua_variable_type_impl.js.map +1 -1
- package/dist/impl/ua_view_impl.d.ts +1 -0
- package/dist/impl/ua_view_impl.d.ts.map +1 -0
- package/dist/impl/ua_view_impl.js +18 -22
- package/dist/impl/ua_view_impl.js.map +1 -1
- package/dist/impl/validate_data_type_correctness.d.ts +1 -0
- package/dist/impl/validate_data_type_correctness.d.ts.map +1 -0
- package/dist/impl/validate_data_type_correctness.js +24 -30
- package/dist/impl/validate_data_type_correctness.js.map +1 -1
- package/dist/tsconfig_base.tsbuildinfo +1 -1
- package/distHelpers/add_event_generator_object.d.ts +1 -0
- package/distHelpers/add_event_generator_object.d.ts.map +1 -0
- package/distHelpers/add_event_generator_object.js +8 -11
- package/distHelpers/add_event_generator_object.js.map +1 -1
- package/distHelpers/address_space_digest.d.ts +1 -0
- package/distHelpers/address_space_digest.d.ts.map +1 -0
- package/distHelpers/address_space_digest.js +1 -5
- package/distHelpers/address_space_digest.js.map +1 -1
- package/distHelpers/alarms_and_conditions_demo.d.ts +1 -0
- package/distHelpers/alarms_and_conditions_demo.d.ts.map +1 -0
- package/distHelpers/alarms_and_conditions_demo.js +8 -11
- package/distHelpers/alarms_and_conditions_demo.js.map +1 -1
- package/distHelpers/assertHasMatchingReference.d.ts +1 -0
- package/distHelpers/assertHasMatchingReference.d.ts.map +1 -0
- package/distHelpers/assertHasMatchingReference.js +6 -9
- package/distHelpers/assertHasMatchingReference.js.map +1 -1
- package/distHelpers/boiler_system.d.ts +1 -0
- package/distHelpers/boiler_system.d.ts.map +1 -0
- package/distHelpers/boiler_system.js +36 -40
- package/distHelpers/boiler_system.js.map +1 -1
- package/distHelpers/create_minimalist_address_space_nodeset.d.ts +1 -0
- package/distHelpers/create_minimalist_address_space_nodeset.d.ts.map +1 -0
- package/distHelpers/create_minimalist_address_space_nodeset.js +29 -35
- package/distHelpers/create_minimalist_address_space_nodeset.js.map +1 -1
- package/distHelpers/date_utils.d.ts +1 -0
- package/distHelpers/date_utils.d.ts.map +1 -0
- package/distHelpers/date_utils.js +1 -4
- package/distHelpers/date_utils.js.map +1 -1
- package/distHelpers/dump_statemachine.d.ts +1 -0
- package/distHelpers/dump_statemachine.d.ts.map +1 -0
- package/distHelpers/dump_statemachine.js +1 -2
- package/distHelpers/dump_statemachine.js.map +1 -1
- package/distHelpers/get_address_space_fixture.d.ts +1 -0
- package/distHelpers/get_address_space_fixture.d.ts.map +1 -0
- package/distHelpers/get_address_space_fixture.js +12 -18
- package/distHelpers/get_address_space_fixture.js.map +1 -1
- package/distHelpers/get_mini_address_space.d.ts +1 -0
- package/distHelpers/get_mini_address_space.d.ts.map +1 -0
- package/distHelpers/get_mini_address_space.js +12 -18
- package/distHelpers/get_mini_address_space.js.map +1 -1
- package/distHelpers/index.d.ts +1 -0
- package/distHelpers/index.d.ts.map +1 -0
- package/distHelpers/index.js +10 -26
- package/distHelpers/index.js.map +1 -1
- package/distHelpers/mock_session.d.ts +1 -0
- package/distHelpers/mock_session.d.ts.map +1 -0
- package/distHelpers/mock_session.js +11 -16
- package/distHelpers/mock_session.js.map +1 -1
- package/distNodeJS/address_space_digest.d.ts +1 -0
- package/distNodeJS/address_space_digest.d.ts.map +1 -0
- package/distNodeJS/address_space_digest.js +3 -6
- package/distNodeJS/address_space_digest.js.map +1 -1
- package/distNodeJS/generate_address_space.d.ts +1 -0
- package/distNodeJS/generate_address_space.d.ts.map +1 -0
- package/distNodeJS/generate_address_space.js +67 -97
- package/distNodeJS/generate_address_space.js.map +1 -1
- package/distNodeJS/index.d.ts +1 -0
- package/distNodeJS/index.d.ts.map +1 -0
- package/distNodeJS/index.js +3 -19
- package/distNodeJS/index.js.map +1 -1
- package/distNodeJS/nodeset_image_file_store.d.ts +1 -0
- package/distNodeJS/nodeset_image_file_store.d.ts.map +1 -0
- package/distNodeJS/nodeset_image_file_store.js +20 -28
- package/distNodeJS/nodeset_image_file_store.js.map +1 -1
- package/impl/_mandatory_child_or_requested_optional_filter.ts +3 -3
- package/impl/address_space.ts +75 -6
- package/impl/address_space_change_event_tools.ts +7 -0
- package/impl/address_space_private.ts +1 -0
- package/impl/alarms_and_conditions/condition_snapshot_impl.ts +1 -1
- package/impl/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +1 -1
- package/impl/alarms_and_conditions/ua_alarm_condition_impl.ts +1 -1
- package/impl/alarms_and_conditions/ua_condition_impl.ts +1 -1
- package/impl/bulk_load_clock.ts +65 -0
- package/impl/data_access/semantics_changed.ts +39 -1
- package/impl/data_access/ua_multistate_discrete_impl.ts +1 -1
- package/impl/extension_object_array_node.ts +5 -5
- package/impl/historical_access/address_space_historical_data_node.ts +2 -2
- package/impl/namespace_impl.ts +119 -2
- package/impl/namespace_private.ts +3 -0
- package/impl/nodeid_manager.ts +13 -0
- package/impl/nodeset_tools/construct_namespace_dependency.ts +4 -4
- package/impl/nodeset_tools/dump_to_bsd.ts +1 -1
- package/impl/nodeset_tools/nodeset_to_xml.ts +1 -1
- package/impl/state_machine/finite_state_machine.ts +56 -10
- package/impl/state_machine/ua_shelving_state_machine_ex.ts +1 -1
- package/impl/state_machine/ua_two_state_variable.ts +1 -1
- package/impl/tool_isSubtypeOf.ts +1 -1
- package/impl/ua_data_type_impl.ts +26 -5
- package/impl/ua_method_impl.ts +10 -6
- package/impl/ua_object_impl.ts +6 -2
- package/impl/ua_variable_impl.ts +15 -8
- package/impl/ua_variable_type_impl.ts +3 -3
- package/nodeJS.d.ts +1 -1
- package/nodeJS.js +1 -1
- package/package.json +42 -41
- package/source_nodejs/generate_address_space.ts +31 -14
- package/testHelpers.d.ts +1 -1
- package/testHelpers.js +1 -1
- /package/bin/{nodeset_tool_common.js → nodeset_tool_common.cjs} +0 -0
|
@@ -7,7 +7,7 @@ export function adjustBrowseDirection(
|
|
|
7
7
|
browseDirection: BrowseDirection | null | undefined,
|
|
8
8
|
defaultValue: BrowseDirection
|
|
9
9
|
): BrowseDirection {
|
|
10
|
-
|
|
10
|
+
/* c8 ignore next */
|
|
11
11
|
if (browseDirection === null || browseDirection === undefined) {
|
|
12
12
|
return defaultValue;
|
|
13
13
|
}
|
|
@@ -61,7 +61,7 @@ export function encode_ArgumentList(definition: ArgumentDef[], args: unknown[],
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
export function decode_ArgumentList(definition: ArgumentDef[], stream: BinaryStream): unknown[] {
|
|
64
|
-
|
|
64
|
+
/* c8 ignore next */
|
|
65
65
|
if (!Array.isArray(definition)) {
|
|
66
66
|
throw new Error(
|
|
67
67
|
"This BaseDataType cannot be decoded because it has no definition.\n" +
|
|
@@ -113,7 +113,7 @@ export function getMethodDeclaration_ArgumentList(
|
|
|
113
113
|
// find object in address space
|
|
114
114
|
const obj = addressSpace.findNode(objectId) as UAObject;
|
|
115
115
|
if (!obj) {
|
|
116
|
-
|
|
116
|
+
/* c8 ignore next */
|
|
117
117
|
doDebug && debugLog("cannot find node ", objectId.toString());
|
|
118
118
|
|
|
119
119
|
return { statusCode: StatusCodes.BadNodeIdUnknown };
|
|
@@ -135,7 +135,7 @@ export function getMethodDeclaration_ArgumentList(
|
|
|
135
135
|
// return {statusCode: StatusCodes.BadMethodInvalid};
|
|
136
136
|
return { statusCode: StatusCodes.Good, methodDeclaration: objectMethod };
|
|
137
137
|
}
|
|
138
|
-
|
|
138
|
+
/* c8 ignore next */
|
|
139
139
|
if (methodDeclaration.nodeClass !== NodeClass.Method) {
|
|
140
140
|
throw new Error("Expecting a Method here");
|
|
141
141
|
}
|
|
@@ -186,9 +186,9 @@ export function isArgumentValid(addressSpace: IAddressSpace, argDefinition: Argu
|
|
|
186
186
|
const argDefDataType = addressSpace.findDataType(argDefinition.dataType);
|
|
187
187
|
const argDataType = addressSpace.findDataType(resolveNodeId(arg.dataType));
|
|
188
188
|
|
|
189
|
-
|
|
189
|
+
/* c8 ignore next */
|
|
190
190
|
if (!argDefDataType) {
|
|
191
|
-
|
|
191
|
+
/* c8 ignore next */
|
|
192
192
|
doDebug && debugLog("dataType ", argDefinition.dataType.toString(), "doesn't exist");
|
|
193
193
|
return false;
|
|
194
194
|
}
|
|
@@ -202,7 +202,7 @@ export function isArgumentValid(addressSpace: IAddressSpace, argDefinition: Argu
|
|
|
202
202
|
return false;
|
|
203
203
|
}
|
|
204
204
|
|
|
205
|
-
|
|
205
|
+
/* c8 ignore next */
|
|
206
206
|
if (!argDataType) {
|
|
207
207
|
doDebug && debugLog(" cannot find dataType ", arg.dataType, resolveNodeId(arg.dataType));
|
|
208
208
|
doDebug && debugLog(" arg = ", arg.toString());
|
|
@@ -210,7 +210,7 @@ export function isArgumentValid(addressSpace: IAddressSpace, argDefinition: Argu
|
|
|
210
210
|
return false;
|
|
211
211
|
}
|
|
212
212
|
|
|
213
|
-
|
|
213
|
+
/* c8 ignore next */
|
|
214
214
|
if (doDebug) {
|
|
215
215
|
doDebug && debugLog(" checking argDefDataType ", argDefDataType.toString());
|
|
216
216
|
doDebug && debugLog(" checking argDataType ", argDataType.toString());
|
|
@@ -262,7 +262,7 @@ export function verifyArguments_ArgumentList(
|
|
|
262
262
|
});
|
|
263
263
|
|
|
264
264
|
if (methodInputArguments.length > inputArguments.length) {
|
|
265
|
-
|
|
265
|
+
/* c8 ignore next */
|
|
266
266
|
doDebug &&
|
|
267
267
|
debugLog(
|
|
268
268
|
"verifyArguments_ArgumentList " +
|
|
@@ -278,7 +278,7 @@ export function verifyArguments_ArgumentList(
|
|
|
278
278
|
}
|
|
279
279
|
|
|
280
280
|
if (methodInputArguments.length < inputArguments.length) {
|
|
281
|
-
|
|
281
|
+
/* c8 ignore next */
|
|
282
282
|
doDebug &&
|
|
283
283
|
debugLog(
|
|
284
284
|
" verifyArguments_ArgumentList " +
|
|
@@ -14,6 +14,7 @@ export function coerceEnumValues(enumValues: EnumValueTypeOptionsLike[] | { [key
|
|
|
14
14
|
assert(Object.hasOwn(en, "value"));
|
|
15
15
|
assert(Object.hasOwn(en, "displayName"));
|
|
16
16
|
return new EnumValueType({
|
|
17
|
+
description: en.description !== undefined ? coerceLocalizedText(en.description) : null,
|
|
17
18
|
displayName: coerceLocalizedText(en.displayName),
|
|
18
19
|
value: coerceInt64(en.value || 0)
|
|
19
20
|
});
|
|
@@ -11,7 +11,7 @@ import { BrowseDescription, type BrowseDescriptionOptions, type ReferenceDescrip
|
|
|
11
11
|
import { resolveReferenceType } from "../../impl/reference_impl.js";
|
|
12
12
|
|
|
13
13
|
export function referenceTypeToString(addressSpace: IAddressSpace, referenceTypeId: NodeIdLike | null): string {
|
|
14
|
-
|
|
14
|
+
/* c8 ignore next */
|
|
15
15
|
if (!referenceTypeId) {
|
|
16
16
|
return "<null> ";
|
|
17
17
|
} else {
|
package/api/index.ts
CHANGED
|
@@ -98,8 +98,9 @@ export {
|
|
|
98
98
|
} from "../impl/historical_access/read_processed_details_hook.js";
|
|
99
99
|
/** @internal */
|
|
100
100
|
export { isNonEmptyQualifiedName, NamespaceImpl } from "../impl/namespace_impl.js";
|
|
101
|
+
export type { ConstructNodeIdOptions } from "../impl/nodeid_manager.js";
|
|
101
102
|
/** How node ids are assigned within a namespace. */
|
|
102
|
-
export {
|
|
103
|
+
export { NamespaceOptions, NodeIdManager } from "../impl/nodeid_manager.js";
|
|
103
104
|
/** Rewrites the server's namespace array to match the namespaces actually loaded. */
|
|
104
105
|
export { adjustNamespaceArray } from "../impl/nodeset_tools/adjust_namespace_array.js";
|
|
105
106
|
export * from "../impl/nodeset_tools/construct_namespace_dependency.js";
|
|
@@ -17,7 +17,7 @@ import type { DTEnumValue, UADiscreteItem, UADiscreteItem_Base, UAMultiStateDisc
|
|
|
17
17
|
import type { StatusCode } from "node-opcua-status-code";
|
|
18
18
|
import type { ISetStateOptions } from "../i_set_state_options.js";
|
|
19
19
|
|
|
20
|
-
export { UAMultiStateDiscrete } from "node-opcua-nodeset-ua";
|
|
20
|
+
export type { UAMultiStateDiscrete } from "node-opcua-nodeset-ua";
|
|
21
21
|
|
|
22
22
|
export interface UAMultiStateDiscreteEx<T, DT extends DataType> extends UAVariableT<T, DT>, UAMultiStateDiscrete_Base<T, DT> {
|
|
23
23
|
//------------ helpers ------------------
|
|
@@ -55,4 +55,21 @@ export interface NodeSetLoaderOptions {
|
|
|
55
55
|
* @default undefined (no store)
|
|
56
56
|
*/
|
|
57
57
|
imageStore?: NodesetImageStore | boolean;
|
|
58
|
+
/**
|
|
59
|
+
* accept a sibling `<name>.ndjson.gz` on the strength of the source length it records,
|
|
60
|
+
* without reading and hashing the XML to prove it.
|
|
61
|
+
*
|
|
62
|
+
* Validating a sibling image costs a read and a SHA-256 of the whole document — around
|
|
63
|
+
* 30 ms of the ~110 ms it takes to replay the standard nodeset, spent proving that a file
|
|
64
|
+
* nobody edited has not changed. This skips that: the recorded source length against the
|
|
65
|
+
* file size becomes the whole check, and the XML is never read. The image's schema, trailer
|
|
66
|
+
* and node count are still verified.
|
|
67
|
+
*
|
|
68
|
+
* What it gives up is precise: an XML edited in place to exactly the same byte length,
|
|
69
|
+
* beside an image built from the earlier content, is replayed from the stale image. For the
|
|
70
|
+
* nodesets a package ships — immutable, installed once — that cannot happen. For files a
|
|
71
|
+
* user edits it can, so leave this off there.
|
|
72
|
+
* @default false
|
|
73
|
+
*/
|
|
74
|
+
trustSiblingImages?: boolean;
|
|
58
75
|
}
|
|
@@ -14,7 +14,7 @@ const _errorLog = make_errorLog("decode_xml_extension_object");
|
|
|
14
14
|
function encodingNodeIdToDataTypeNode(addressSpace: IAddressSpace, encodingNodeId: NodeId): UADataType {
|
|
15
15
|
const encodingNode = addressSpace.findNode(encodingNodeId);
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
/* c8 ignore next */
|
|
18
18
|
if (!encodingNode) {
|
|
19
19
|
throw new Error(`findDataTypeNode: Cannot find encoding NodeId${encodingNodeId.toString()}`);
|
|
20
20
|
}
|
|
@@ -55,64 +55,100 @@ export async function ensureDatatypeExtracted(addressSpace: IAddressSpace): Prom
|
|
|
55
55
|
const addressSpacePriv = addressSpace as AddressSpacePrivateWithDataTypeManager;
|
|
56
56
|
|
|
57
57
|
if (!addressSpacePriv.$$extraDataTypeManager) {
|
|
58
|
-
|
|
58
|
+
addressSpacePriv.$$extraDataTypeManager = new ExtraDataTypeManager();
|
|
59
|
+
}
|
|
60
|
+
const dataTypeManager = addressSpacePriv.$$extraDataTypeManager;
|
|
59
61
|
|
|
60
|
-
|
|
62
|
+
const namespaceArray = addressSpace.getNamespaceArray().map((n: INamespace) => n.namespaceUri);
|
|
61
63
|
|
|
62
|
-
|
|
64
|
+
doDebug && debugLog("INamespace Array = ", namespaceArray.join("\n "));
|
|
63
65
|
|
|
64
|
-
|
|
66
|
+
dataTypeManager.setNamespaceArray(namespaceArray);
|
|
65
67
|
|
|
66
|
-
|
|
68
|
+
const factories: DataTypeFactory[] = [getStandardDataTypeFactory()];
|
|
67
69
|
|
|
68
|
-
|
|
70
|
+
// A namespace with no factory is one this call has not seen yet: the first call sees them
|
|
71
|
+
// all, and a later one sees a namespace registered since, or one emptied by
|
|
72
|
+
// `deleteNamespace` and populated again - `deleteNamespace` drops that namespace's factory
|
|
73
|
+
// precisely so that its structures are extracted afresh rather than colliding with the
|
|
74
|
+
// schemas of the previous load. When every namespace already has one there is nothing to
|
|
75
|
+
// extract and this returns as fast as it always did.
|
|
76
|
+
let hasNewFactory = false;
|
|
69
77
|
|
|
70
|
-
|
|
78
|
+
for (let namespaceIndex = 1; namespaceIndex < namespaceArray.length; namespaceIndex++) {
|
|
79
|
+
const namespace = addressSpace.getNamespace(namespaceIndex);
|
|
71
80
|
|
|
72
|
-
|
|
73
|
-
|
|
81
|
+
if (dataTypeManager.hasDataTypeFactory(namespaceIndex)) {
|
|
82
|
+
factories.push(dataTypeManager.getDataTypeFactory(namespaceIndex));
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
74
85
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
86
|
+
// NOTE: a DataTypeFactory chains POSITIONALLY — to every factory built
|
|
87
|
+
// before it, not to the namespaces it actually depends on. That over-couples
|
|
88
|
+
// namespaces, and it matters now that `deleteNamespace` exists: dropping a
|
|
89
|
+
// namespace leaves everything loaded after it holding a discarded factory,
|
|
90
|
+
// so the factory, its schemas and its ExtensionObject constructors stay
|
|
91
|
+
// alive. A consumer that registers its own namespace BEFORE its dependencies
|
|
92
|
+
// is chained through by every one of them, and leaks a factory per reload.
|
|
93
|
+
//
|
|
94
|
+
// The dependency-correct computation exists below, under `if (doDebug)`,
|
|
95
|
+
// with its result assigned to a variable nobody reads. Using it is NOT a
|
|
96
|
+
// drop-in: `constructNamespaceDependency` walks values and throws on an
|
|
97
|
+
// ExtensionObject with a null schema (`construct_namespace_dependency.ts`,
|
|
98
|
+
// `exploreExtensionObject`). Being debug-only, it has never had to survive
|
|
99
|
+
// the hot path — calling it on every load breaks server writes with
|
|
100
|
+
// `TypeError: Cannot read properties of null (reading 'schema')`.
|
|
101
|
+
//
|
|
102
|
+
// So the fix is two changes, not one: harden that walk, then switch the
|
|
103
|
+
// chain. Deliberately left for its own change, with its own tests, rather
|
|
104
|
+
// than smuggled into this one.
|
|
105
|
+
if (doDebug) {
|
|
106
|
+
const priorityTable = constructNamespacePriorityTable(addressSpace).priorityTable;
|
|
107
|
+
debugLog("namespaceIndex = ", namespaceIndex);
|
|
108
|
+
debugLog("namespace = ", namespace.namespaceUri);
|
|
109
|
+
debugLog("factories = ", factories.map((f) => f.targetNamespace).join(" "));
|
|
110
|
+
// find dependent namespaces
|
|
111
|
+
let dependency = constructNamespaceDependency(namespace);
|
|
112
|
+
// remove last element that is my namespace
|
|
113
|
+
dependency = dependency.filter((ns) => ns.index !== namespaceIndex);
|
|
114
|
+
const dependFactories = dependency.map((ns) => {
|
|
115
|
+
const df = factories[ns.index];
|
|
116
|
+
if (!df) {
|
|
117
|
+
debugLog("namespaceIndex = ", namespaceIndex);
|
|
118
|
+
debugLog("namespace = ", namespace.namespaceUri);
|
|
119
|
+
debugLog("priorityTable", priorityTable);
|
|
120
|
+
debugLog(dependency.map((ns) => `${ns.index} ${ns.namespaceUri}`).join("\n"));
|
|
121
|
+
throw new Error(`Cannot find factory for namespace ${ns.namespaceUri}`);
|
|
122
|
+
}
|
|
123
|
+
return df;
|
|
124
|
+
});
|
|
125
|
+
// getStandardDataTypeFactory()
|
|
126
|
+
|
|
127
|
+
const _dataTypeFactory1 = new DataTypeFactory(dependFactories);
|
|
128
|
+
}
|
|
129
|
+
const dataTypeFactory1 = new DataTypeFactory([...factories]);
|
|
130
|
+
dataTypeFactory1.targetNamespace = namespace.namespaceUri;
|
|
95
131
|
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
const dataTypeFactory1 = new DataTypeFactory([...factories]);
|
|
99
|
-
dataTypeFactory1.targetNamespace = namespace.namespaceUri;
|
|
132
|
+
factories.push(dataTypeFactory1);
|
|
100
133
|
|
|
101
|
-
|
|
134
|
+
dataTypeManager.registerDataTypeFactory(namespaceIndex, dataTypeFactory1);
|
|
135
|
+
hasNewFactory = true;
|
|
136
|
+
}
|
|
102
137
|
|
|
103
|
-
|
|
104
|
-
}
|
|
138
|
+
if (hasNewFactory) {
|
|
105
139
|
// inject simple types
|
|
106
140
|
|
|
107
141
|
// now extract structure and enumeration from old form
|
|
108
142
|
const session = new PseudoSession(addressSpace);
|
|
109
143
|
|
|
144
|
+
// the extraction skips a dataType whose factory already knows it, so the namespaces that
|
|
145
|
+
// were extracted by an earlier call are walked but not rebuilt
|
|
110
146
|
await populateDataTypeManager(session, dataTypeManager, DataTypeExtractStrategy.Auto);
|
|
111
147
|
|
|
112
148
|
// turn old <=103 structure to have valid DataTypeDefinition
|
|
113
149
|
fixDefinition103(addressSpace, namespaceArray, dataTypeManager);
|
|
114
150
|
}
|
|
115
|
-
return
|
|
151
|
+
return dataTypeManager;
|
|
116
152
|
}
|
|
117
153
|
|
|
118
154
|
export function ensureDatatypeExtractedWithCallback(addressSpace: IAddressSpace, callback: CallbackT<ExtraDataTypeManager>): void {
|
|
@@ -2,6 +2,7 @@ import type { IAddressSpace, RequiredModel } from "node-opcua-address-space-base
|
|
|
2
2
|
import { checkDebugFlag, make_debugLog, make_errorLog } from "node-opcua-debug";
|
|
3
3
|
import type { CallbackT } from "node-opcua-status-code";
|
|
4
4
|
import semver from "semver";
|
|
5
|
+
import { beginBulkLoadClock, endBulkLoadClock } from "../../impl/bulk_load_clock.js";
|
|
5
6
|
import type { NamespacePrivate } from "../../impl/namespace_private.js";
|
|
6
7
|
import { adjustNamespaceArray } from "../../impl/nodeset_tools/adjust_namespace_array.js";
|
|
7
8
|
import type { NodeSetLoaderOptions } from "../interfaces/nodeset_loader_options.js";
|
|
@@ -341,32 +342,41 @@ export async function generateAddressSpaceRaw(
|
|
|
341
342
|
}
|
|
342
343
|
}
|
|
343
344
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
345
|
+
// Everything this load creates is stamped with ONE clock reading rather than one apiece:
|
|
346
|
+
// see impl/bulk_load_clock.ts. Scoped to this address space and reference counted, so a
|
|
347
|
+
// load of another address space, or a write to one that is not loading, is unaffected.
|
|
348
|
+
// `finally` matters: a load that throws must not leave the clock frozen.
|
|
349
|
+
beginBulkLoadClock(addressSpace);
|
|
350
|
+
try {
|
|
351
|
+
for (let index = 0; index < order.length; index++) {
|
|
352
|
+
const nodesetIndex = order[index];
|
|
353
|
+
const nodeset = nodesetDesc[nodesetIndex];
|
|
354
|
+
// c8 ignore next
|
|
355
|
+
doDebug && debugLog(" loading ", nodesetIndex, nodeset.reader.name);
|
|
356
|
+
try {
|
|
357
|
+
if (nodeset.format.name === NDJSON_IMAGE_FORMAT) {
|
|
358
|
+
// an image is already the cache: replaying it through the cache would be storing
|
|
359
|
+
// a copy of what was just read
|
|
360
|
+
try {
|
|
361
|
+
await nodesetLoader.addRecords(nodeset.format.records(nodeset.document));
|
|
362
|
+
} finally {
|
|
363
|
+
releaseInflatedImageLines(await nodeset.document.rawBytes());
|
|
364
|
+
}
|
|
365
|
+
} else {
|
|
366
|
+
await loadThroughCache(nodesetLoader, nodeset.format, nodeset.document, nodeset.reader, store);
|
|
357
367
|
}
|
|
358
|
-
}
|
|
359
|
-
|
|
368
|
+
} catch (err) {
|
|
369
|
+
const cause = err instanceof Error ? err.message : String(err);
|
|
370
|
+
const message = `generateAddressSpace: loading nodeset ${nodeset.reader.name} failed: ${cause}`;
|
|
371
|
+
errorLog(message);
|
|
372
|
+
throw new Error(message, { cause: err });
|
|
360
373
|
}
|
|
361
|
-
} catch (err) {
|
|
362
|
-
const cause = err instanceof Error ? err.message : String(err);
|
|
363
|
-
const message = `generateAddressSpace: loading nodeset ${nodeset.reader.name} failed: ${cause}`;
|
|
364
|
-
errorLog(message);
|
|
365
|
-
throw new Error(message, { cause: err });
|
|
366
374
|
}
|
|
367
|
-
}
|
|
368
375
|
|
|
369
|
-
|
|
376
|
+
await nodesetLoader.terminate();
|
|
377
|
+
} finally {
|
|
378
|
+
endBulkLoadClock(addressSpace);
|
|
379
|
+
}
|
|
370
380
|
adjustNamespaceArray(addressSpace);
|
|
371
381
|
// however process them in series
|
|
372
382
|
}
|
|
@@ -177,7 +177,7 @@ export class NodeSetLoader {
|
|
|
177
177
|
dataType: DataType.String,
|
|
178
178
|
value: addressSpace1.getNamespaceArray().map((ns) => ns.namespaceUri)
|
|
179
179
|
});
|
|
180
|
-
|
|
180
|
+
/* c8 ignore next */
|
|
181
181
|
if (doDebug) {
|
|
182
182
|
debugLog(
|
|
183
183
|
"addressSpace NS = ",
|
|
@@ -208,7 +208,7 @@ export class NodeSetLoader {
|
|
|
208
208
|
try {
|
|
209
209
|
await task(addressSpace1);
|
|
210
210
|
} catch (err) {
|
|
211
|
-
|
|
211
|
+
/* c8 ignore next */
|
|
212
212
|
if (types.isNativeError(err)) {
|
|
213
213
|
errorLog(
|
|
214
214
|
`[NODE-OPCUA-W36] generateAddressSpace: post-loading task failed during "${stage}" and was skipped: ${err.message}`
|
|
@@ -40,7 +40,7 @@ export async function promoteObjectAndVariablesInNamespace(namespace: INamespace
|
|
|
40
40
|
|
|
41
41
|
promoter.promoter(a as UAVariable & UAObject);
|
|
42
42
|
const after = a.constructor.name;
|
|
43
|
-
|
|
43
|
+
/* c8 ignore next */
|
|
44
44
|
if (doDebug) {
|
|
45
45
|
debugLog(`promoting ${a.browseName.toString()} from ${before} to ${after}`);
|
|
46
46
|
}
|
|
@@ -50,7 +50,13 @@ function typeDefinitionOf(addressSpace: IAddressSpace, node: UAInstance): UAType
|
|
|
50
50
|
* walks the chain once per member
|
|
51
51
|
*/
|
|
52
52
|
class DeclarationIndex {
|
|
53
|
-
|
|
53
|
+
/**
|
|
54
|
+
* per type, the answer for each browse name asked of it. Keyed on the type node itself
|
|
55
|
+
* rather than on a `${nodeId}|${browseName}` string: a sweep asks this thousands of times,
|
|
56
|
+
* and building that key rendered a NodeId to text, rendered a QualifiedName to text and
|
|
57
|
+
* joined them — on every hit as much as on every miss.
|
|
58
|
+
*/
|
|
59
|
+
private readonly cache = new Map<BaseNode, Map<string, BaseNode | null>>();
|
|
54
60
|
/** absent from a standard nodeset older than 1.04: then no type has interfaces to look into */
|
|
55
61
|
private readonly hasInterface: UAReferenceType | null;
|
|
56
62
|
private readonly hasModellingRule: UAReferenceType;
|
|
@@ -76,22 +82,29 @@ class DeclarationIndex {
|
|
|
76
82
|
}
|
|
77
83
|
|
|
78
84
|
public find(type: UAType, browseName: QualifiedName): BaseNode | null {
|
|
79
|
-
|
|
80
|
-
|
|
85
|
+
let perType = this.cache.get(type);
|
|
86
|
+
if (!perType) {
|
|
87
|
+
perType = new Map<string, BaseNode | null>();
|
|
88
|
+
this.cache.set(type, perType);
|
|
89
|
+
}
|
|
90
|
+
// the browse name still needs a key, but only the one string, and only on a miss for
|
|
91
|
+
// this type; `toString` renders the namespace index with it, so two names that differ
|
|
92
|
+
// only by namespace do not collide
|
|
93
|
+
const key = browseName.toString();
|
|
94
|
+
const cached = perType.get(key);
|
|
81
95
|
if (cached !== undefined) {
|
|
82
96
|
return cached;
|
|
83
97
|
}
|
|
84
|
-
const found = this.walk(type, browseName, new Set<
|
|
85
|
-
|
|
98
|
+
const found = this.walk(type, browseName, new Set<BaseNode>());
|
|
99
|
+
perType.set(key, found);
|
|
86
100
|
return found;
|
|
87
101
|
}
|
|
88
102
|
|
|
89
|
-
private walk(type: UAType, browseName: QualifiedName, visited: Set<
|
|
90
|
-
|
|
91
|
-
if (visited.has(typeKey)) {
|
|
103
|
+
private walk(type: UAType, browseName: QualifiedName, visited: Set<BaseNode>): BaseNode | null {
|
|
104
|
+
if (visited.has(type)) {
|
|
92
105
|
return null;
|
|
93
106
|
}
|
|
94
|
-
visited.add(
|
|
107
|
+
visited.add(type);
|
|
95
108
|
const child = type.getChildByName(browseName);
|
|
96
109
|
if (child) {
|
|
97
110
|
return child;
|
|
@@ -588,6 +588,8 @@ const OPTIONAL_PLAIN: Array<keyof NodesetNodeRecord & keyof NodesetImageNode> =
|
|
|
588
588
|
"accessLevel",
|
|
589
589
|
"userAccessLevel"
|
|
590
590
|
];
|
|
591
|
+
/** the same keys, for the reader, which asks of a key the image carries whether it is one of these */
|
|
592
|
+
const OPTIONAL_PLAIN_SET = new Set<string>(OPTIONAL_PLAIN);
|
|
591
593
|
|
|
592
594
|
export function encodeNode(record: NodesetNodeRecord): NodesetImageNode {
|
|
593
595
|
const out: NodesetImageNode = {
|
|
@@ -650,24 +652,36 @@ export function decodeNode(json: NodesetImageNode): NodesetNodeRecord {
|
|
|
650
652
|
if (typeof json.nodeClass !== "number" || !(json.nodeClass in NodeClass)) {
|
|
651
653
|
throw new NodesetImageError(`not a node record: ${JSON.stringify(json).slice(0, 80)}`);
|
|
652
654
|
}
|
|
655
|
+
// a sized array filled in place: a nodeset carries twenty thousand references, and `map` over
|
|
656
|
+
// the encoded ones allocated a closure per node and grew the array as it went
|
|
657
|
+
const encoded = json.references || [];
|
|
658
|
+
const references: NodesetReferenceRecord[] = new Array(encoded.length);
|
|
659
|
+
for (let i = 0; i < encoded.length; i++) {
|
|
660
|
+
const r = encoded[i];
|
|
661
|
+
references[i] = {
|
|
662
|
+
isForward: r[0] === 1,
|
|
663
|
+
referenceType: decodeNodeId(r[1]),
|
|
664
|
+
nodeId: decodeNodeId(r[2]),
|
|
665
|
+
inverseDeclared: r.length === 3
|
|
666
|
+
};
|
|
667
|
+
}
|
|
653
668
|
const record: NodesetNodeRecord = {
|
|
654
669
|
kind: "node",
|
|
655
670
|
nodeClass: json.nodeClass,
|
|
656
671
|
nodeId: decodeNodeId(json.nodeId),
|
|
657
672
|
browseName: decodeQualifiedName(json.browseName),
|
|
658
|
-
references
|
|
659
|
-
(r): NodesetReferenceRecord => ({
|
|
660
|
-
isForward: r[0] === 1,
|
|
661
|
-
referenceType: decodeNodeId(r[1]),
|
|
662
|
-
nodeId: decodeNodeId(r[2]),
|
|
663
|
-
inverseDeclared: r.length === 3
|
|
664
|
-
})
|
|
665
|
-
)
|
|
673
|
+
references
|
|
666
674
|
};
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
675
|
+
// the keys the writer actually emitted, not the nineteen it might have: a node carries a
|
|
676
|
+
// handful of them, and probing for each of the nineteen was most of this loop's work
|
|
677
|
+
const plain = json as unknown as Record<string, unknown>;
|
|
678
|
+
const out = record as unknown as Record<string, unknown>;
|
|
679
|
+
for (const key in plain) {
|
|
680
|
+
if (OPTIONAL_PLAIN_SET.has(key)) {
|
|
681
|
+
const v = plain[key];
|
|
682
|
+
if (v !== undefined) {
|
|
683
|
+
out[key] = v;
|
|
684
|
+
}
|
|
671
685
|
}
|
|
672
686
|
}
|
|
673
687
|
// an absent displayName is the browse name: what the writer left out because it was the same
|
|
@@ -289,7 +289,7 @@ export class NodesetRecordApplier implements NodesetRecordConsumer {
|
|
|
289
289
|
}
|
|
290
290
|
found.add(namespaceUri);
|
|
291
291
|
const namespace = this.addressSpace.getNamespace(namespaceUri);
|
|
292
|
-
|
|
292
|
+
/* c8 ignore next */
|
|
293
293
|
if (!namespace) {
|
|
294
294
|
throw new Error(
|
|
295
295
|
`cannot find namespace for ${namespaceUri}\nplease make sure to initialize your address space with the corresponding nodeset files`
|
|
@@ -58,14 +58,12 @@ export function makeXmlNodesetRecordReader(): XmlNodesetRecordReader {
|
|
|
58
58
|
const models: NodesetModelRecord[] = [];
|
|
59
59
|
const aliases: Record<string, NodeId> = Object.create(null);
|
|
60
60
|
let headerEmitted = false;
|
|
61
|
-
// every id string of the file resolved once: "i=47" alone appears tens of thousands of times
|
|
61
|
+
// every id string of the file resolved once: "i=47" alone appears tens of thousands of times.
|
|
62
|
+
// The aliases are seeded into the same table as they are declared — an alias is just another
|
|
63
|
+
// spelling of an id — so the fifty thousand lookups a document costs are one probe, not two.
|
|
62
64
|
const ids = new Map<string, NodeId>();
|
|
63
65
|
|
|
64
66
|
function nodeIdOf(text: string): NodeId {
|
|
65
|
-
const alias = aliases[text];
|
|
66
|
-
if (alias) {
|
|
67
|
-
return alias;
|
|
68
|
-
}
|
|
69
67
|
let nodeId = ids.get(text);
|
|
70
68
|
if (!nodeId) {
|
|
71
69
|
nodeId = resolveNodeId(text);
|
|
@@ -108,7 +106,11 @@ export function makeXmlNodesetRecordReader(): XmlNodesetRecordReader {
|
|
|
108
106
|
|
|
109
107
|
const state_Alias = {
|
|
110
108
|
finish(this: State) {
|
|
111
|
-
|
|
109
|
+
const name = this.attrs.Alias;
|
|
110
|
+
const nodeId = resolveNodeId(this.text);
|
|
111
|
+
aliases[name] = nodeId;
|
|
112
|
+
// the alias table still travels in the header record; the id table is what nodeIdOf reads
|
|
113
|
+
ids.set(name, nodeId);
|
|
112
114
|
}
|
|
113
115
|
};
|
|
114
116
|
|
|
@@ -313,12 +313,12 @@ export function makeExtensionObjectParser<T>(
|
|
|
313
313
|
}
|
|
314
314
|
break;
|
|
315
315
|
default: {
|
|
316
|
-
|
|
316
|
+
/* c8 ignore next */
|
|
317
317
|
if (!this._cloneFragment) {
|
|
318
318
|
// the XML file is probably not exposing standard UA extension object correctly.
|
|
319
319
|
// this has been seen in some generated xml files using the dataType nodeId instead of the default encoding
|
|
320
320
|
// nodeid
|
|
321
|
-
|
|
321
|
+
/* c8 ignore next */
|
|
322
322
|
doDebug &&
|
|
323
323
|
errorLog(
|
|
324
324
|
"[NODE-OPCUA-E12] standard OPCUA Extension object from (namespace=0) has a invalid TypeId",
|
|
@@ -332,7 +332,7 @@ export function makeExtensionObjectParser<T>(
|
|
|
332
332
|
// the "Default Xml" encoding nodeId
|
|
333
333
|
const xmlEncodingNodeId = typeDefinitionId;
|
|
334
334
|
if (typeDefinitionId.isEmpty()) {
|
|
335
|
-
|
|
335
|
+
/* c8 ignore next */
|
|
336
336
|
doDebug && debugLog(`xmlEncodingNodeId is empty for ${typeDefinitionId.toString()}`);
|
|
337
337
|
break;
|
|
338
338
|
}
|
package/api/pseudo_session.ts
CHANGED
|
@@ -62,7 +62,7 @@ export function innerBrowse(
|
|
|
62
62
|
// handle continuation points
|
|
63
63
|
results = results.map((result: BrowseResult, _index) => {
|
|
64
64
|
assert(!result.continuationPoint);
|
|
65
|
-
|
|
65
|
+
/* c8 ignore next */
|
|
66
66
|
if (!engine.continuationPointManager) {
|
|
67
67
|
return new BrowseResult({ statusCode: StatusCodes.BadNoContinuationPoints });
|
|
68
68
|
}
|
|
@@ -73,7 +73,7 @@ const {
|
|
|
73
73
|
xmlNodesetRecords
|
|
74
74
|
} = require("../dist/api/index.js");
|
|
75
75
|
const { digestAddressSpace } = require("../distNodeJS/index.js");
|
|
76
|
-
const { asFile, dependencyChain } = require("./nodeset_tool_common.
|
|
76
|
+
const { asFile, dependencyChain } = require("./nodeset_tool_common.cjs");
|
|
77
77
|
|
|
78
78
|
const usage = () => {
|
|
79
79
|
console.error("usage: opcua-nodeset-live equivalence <file.xml>... [--require <file.xml>]... [--dump <dir>] [--quiet]");
|
|
@@ -27,7 +27,7 @@ const path = require("node:path");
|
|
|
27
27
|
const { performance } = require("node:perf_hooks");
|
|
28
28
|
const { readNodesetImageInfo, recordsToNodeset2XML } = require("../dist/api/index.js");
|
|
29
29
|
const { nodesetFileToImage } = require("../distNodeJS/index.js");
|
|
30
|
-
const { imageFileOf, kb, recordsOfFile } = require("./nodeset_tool_common.
|
|
30
|
+
const { imageFileOf, kb, recordsOfFile } = require("./nodeset_tool_common.cjs");
|
|
31
31
|
|
|
32
32
|
const usage = () => {
|
|
33
33
|
console.error("usage: opcua-nodeset-image build <file.xml>... [--out <dir>]");
|
|
@@ -31,8 +31,8 @@ const {
|
|
|
31
31
|
nodesetFileToImage,
|
|
32
32
|
readNodeSet2XmlFile
|
|
33
33
|
} = require("../distNodeJS/index.js");
|
|
34
|
-
const { asFile, dependencyChain, imageFileOf, kb } = require("./nodeset_tool_common.
|
|
35
|
-
const { equivalence } = require("./nodeset_equivalence.
|
|
34
|
+
const { asFile, dependencyChain, imageFileOf, kb } = require("./nodeset_tool_common.cjs");
|
|
35
|
+
const { equivalence } = require("./nodeset_equivalence.cjs");
|
|
36
36
|
|
|
37
37
|
const usage = () => {
|
|
38
38
|
console.error("usage: opcua-nodeset-live verify <file.xml>... [--require <file.xml>]...");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address_space_public.d.ts","sourceRoot":"","sources":["../../api/address_space_public.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;;;GAKG;AACH,MAAM,WAAW,YAAa,SAAQ,aAAa;IAC/C,eAAe,IAAI,SAAS,CAAC;IAC7B,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACnD,UAAU,EAAE,YAAY,CAAC;IAEzB;;;;;;;OAOG;IACH,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC3D;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACpC,mCAAmC;IACnC,MAAM,IAAI,YAAY,CAAC;IAEvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,kBAAkB,CAAC;CAC1C;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,EAAE,uBAA0C,CAAC"}
|