From e10fa389ce3c4d42deadfec8bf08c2fbb1a88d79 Mon Sep 17 00:00:00 2001 From: "Emma@Rory&" Date: Fri, 15 Sep 2023 09:55:36 +0200 Subject: Refactors --- .editorconfig | 1667 +------------------- .gitignore | 7 + .gitmodules | 3 + .../.idea/codeStyles/codeStyleConfig.xml | 5 + .idea/.idea.MatrixRoomUtils/.idea/vcs.xml | 1 - ArcaneLibs | 1 + LibMatrix | 2 +- MatrixRoomUtils.Desktop/App.axaml.cs | 1 - .../Components/RoomListEntry.axaml.cs | 4 +- MatrixRoomUtils.Desktop/FileStorageProvider.cs | 1 + MatrixRoomUtils.Desktop/MRUStorageWrapper.cs | 7 +- MatrixRoomUtils.Desktop/MainWindow.axaml.cs | 1 - .../MatrixRoomUtils.Desktop.csproj | 13 +- MatrixRoomUtils.Desktop/RoomInfo.cs | 3 +- .../MatrixRoomUtils.Web.Server.csproj | 1 + MatrixRoomUtils.Web/Classes/MRUStorageWrapper.cs | 27 +- .../DefaultRoomCreationTemplate.cs | 27 +- MatrixRoomUtils.Web/Classes/RoomInfo.cs | 3 +- MatrixRoomUtils.Web/Classes/UserAuth.cs | 15 + MatrixRoomUtils.Web/MatrixRoomUtils.Web.csproj | 10 +- MatrixRoomUtils.Web/Pages/About.razor | 1 - MatrixRoomUtils.Web/Pages/DebugTools.razor | 6 +- MatrixRoomUtils.Web/Pages/DevOptions.razor | 1 + MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor | 22 +- MatrixRoomUtils.Web/Pages/Index.razor | 55 +- MatrixRoomUtils.Web/Pages/Index.razor.css | 25 + MatrixRoomUtils.Web/Pages/InvalidSession.razor | 7 +- .../Pages/KnownHomeserverList.razor | 8 +- MatrixRoomUtils.Web/Pages/LoginPage.razor | 56 +- MatrixRoomUtils.Web/Pages/MediaLocator.razor | 1 + MatrixRoomUtils.Web/Pages/ModalTest.razor | 4 +- MatrixRoomUtils.Web/Pages/Rooms/Create.razor | 22 +- MatrixRoomUtils.Web/Pages/Rooms/Index.razor | 10 +- MatrixRoomUtils.Web/Pages/Rooms/PolicyList.razor | 28 +- MatrixRoomUtils.Web/Pages/Rooms/Space.razor | 2 +- MatrixRoomUtils.Web/Pages/Rooms/StateEditor.razor | 3 +- MatrixRoomUtils.Web/Pages/Rooms/StateViewer.razor | 3 +- MatrixRoomUtils.Web/Pages/Rooms/Timeline.razor | 8 +- MatrixRoomUtils.Web/Pages/SpaceDebug.razor | 114 ++ MatrixRoomUtils.Web/Shared/InlineUserItem.razor | 9 +- MatrixRoomUtils.Web/Shared/ModalWindow.razor | 86 - MatrixRoomUtils.Web/Shared/ModalWindow.razor.css | 70 - MatrixRoomUtils.Web/Shared/RoomList.razor | 5 +- .../RoomListComponents/RoomListCategory.razor | 15 +- .../Shared/RoomListComponents/RoomListSpace.razor | 2 +- MatrixRoomUtils.Web/Shared/RoomListItem.razor | 15 +- .../Shared/SimpleComponents/DictionaryEditor.razor | 38 - .../Shared/SimpleComponents/FancyTextBox.razor | 29 - .../Shared/SimpleComponents/FancyTextBox.razor.css | 5 - .../Shared/SimpleComponents/LinkButton.razor | 20 - .../Shared/SimpleComponents/StringListEditor.razor | 29 - .../Shared/SimpleComponents/ToggleSlider.razor | 72 - .../TimelineComponents/BaseTimelineItem.razor | 3 +- .../TimelineComponents/TimelineMemberItem.razor | 10 +- .../TimelineComponents/TimelineMessageItem.razor | 1 + .../TimelineRoomCreateItem.razor | 5 +- .../TimelineComponents/TimelineUnknownItem.razor | 1 + MatrixRoomUtils.Web/Shared/UserListItem.razor | 2 +- MatrixRoomUtils.Web/_Imports.razor | 2 +- MatrixRoomUtils.sln | 101 +- MatrixRoomUtils.sln.DotSettings.user | 7 +- MxApiExtensions | 2 +- deploy.sh | 2 +- flake.lock | 16 +- flake.nix | 111 +- 65 files changed, 503 insertions(+), 2330 deletions(-) create mode 100644 .idea/.idea.MatrixRoomUtils/.idea/codeStyles/codeStyleConfig.xml create mode 160000 ArcaneLibs create mode 100644 MatrixRoomUtils.Web/Classes/UserAuth.cs create mode 100644 MatrixRoomUtils.Web/Pages/Index.razor.css create mode 100644 MatrixRoomUtils.Web/Pages/SpaceDebug.razor delete mode 100644 MatrixRoomUtils.Web/Shared/ModalWindow.razor delete mode 100644 MatrixRoomUtils.Web/Shared/ModalWindow.razor.css delete mode 100644 MatrixRoomUtils.Web/Shared/SimpleComponents/DictionaryEditor.razor delete mode 100644 MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor delete mode 100644 MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor.css delete mode 100644 MatrixRoomUtils.Web/Shared/SimpleComponents/LinkButton.razor delete mode 100644 MatrixRoomUtils.Web/Shared/SimpleComponents/StringListEditor.razor delete mode 100644 MatrixRoomUtils.Web/Shared/SimpleComponents/ToggleSlider.razor diff --git a/.editorconfig b/.editorconfig index 35fa20d..501ee68 100644 --- a/.editorconfig +++ b/.editorconfig @@ -6,6 +6,7 @@ trim_trailing_whitespace = true insert_final_newline = true indent_style = space indent_size = 4 +tab_width = 4 # Microsoft .NET properties csharp_indent_braces = false @@ -468,30 +469,7 @@ resharper_can_use_global_alias = true resharper_configure_await_analysis_mode = disabled resharper_continuous_indent_multiplier = 1 resharper_continuous_line_indent = single -resharper_cpp_align_multiline_argument = true -resharper_cpp_align_multiline_binary_expressions_chain = false -resharper_cpp_align_multiline_calls_chain = true -resharper_cpp_align_multiline_extends_list = true -resharper_cpp_align_multiline_for_stmt = true -resharper_cpp_align_multiline_parameter = true -resharper_cpp_align_multiple_declaration = true -resharper_cpp_allow_far_alignment = false -resharper_cpp_anonymous_method_declaration_braces = next_line -resharper_cpp_case_block_braces = next_line_shifted_2 -resharper_cpp_empty_block_style = multiline -resharper_cpp_indent_switch_labels = false -resharper_cpp_insert_final_newline = true -resharper_cpp_invocable_declaration_braces = next_line -resharper_cpp_keep_blank_lines_in_code = 2 -resharper_cpp_keep_blank_lines_in_declarations = 2 -resharper_cpp_max_line_length = 180 -resharper_cpp_new_line_before_while = true -resharper_cpp_other_braces = next_line -resharper_cpp_space_after_unary_operator = false -resharper_cpp_space_around_binary_operator = true -resharper_cpp_type_declaration_braces = next_line -resharper_cpp_wrap_lines = true -resharper_csharp_align_multiline_argument = false +public virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualresharper_csharp_align_multiline_argument = false resharper_csharp_align_multiline_binary_expressions_chain = true resharper_csharp_align_multiline_calls_chain = false resharper_csharp_align_multiline_expression = false @@ -867,24 +845,7 @@ resharper_use_indents_from_main_language_in_file = true resharper_use_indent_from_previous_element = true resharper_use_indent_from_vs = false resharper_use_roslyn_logic_for_evident_types = false -resharper_vb_align_multiline_argument = true -resharper_vb_align_multiline_expression = true -resharper_vb_align_multiline_parameter = true -resharper_vb_align_multiple_declaration = true -resharper_vb_allow_far_alignment = false -resharper_vb_insert_final_newline = false -resharper_vb_keep_blank_lines_in_code = 2 -resharper_vb_keep_blank_lines_in_declarations = 2 -resharper_vb_max_line_length = 180 -resharper_vb_place_field_attribute_on_same_line = true -resharper_vb_place_method_attribute_on_same_line = false -resharper_vb_place_type_attribute_on_same_line = false -resharper_vb_prefer_qualified_reference = false -resharper_vb_space_after_unary_operator = true -resharper_vb_space_around_multiplicative_op = false -resharper_vb_stick_comment = true -resharper_vb_wrap_lines = true -resharper_wrap_after_binary_opsign = true +public virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualresharper_wrap_after_binary_opsign = true resharper_wrap_after_declaration_lpar = false resharper_wrap_after_dot = false resharper_wrap_after_dot_in_method_calls = false @@ -1113,1536 +1074,7 @@ resharper_convert_to_vb_auto_property_with_private_setter_highlighting = hint resharper_convert_type_check_pattern_to_null_check_highlighting = warning resharper_convert_type_check_to_null_check_highlighting = warning resharper_co_variant_array_conversion_highlighting = warning -resharper_cpp_abstract_class_without_specifier_highlighting = warning -resharper_cpp_abstract_final_class_highlighting = warning -resharper_cpp_abstract_virtual_function_call_in_ctor_highlighting = error -resharper_cpp_access_specifier_with_no_declarations_highlighting = suggestion -resharper_cpp_assigned_value_is_never_used_highlighting = warning -resharper_cpp_awaiter_type_is_not_class_highlighting = warning -resharper_cpp_bad_angle_brackets_spaces_highlighting = none -resharper_cpp_bad_braces_spaces_highlighting = none -resharper_cpp_bad_child_statement_indent_highlighting = none -resharper_cpp_bad_colon_spaces_highlighting = none -resharper_cpp_bad_comma_spaces_highlighting = none -resharper_cpp_bad_control_braces_indent_highlighting = none -resharper_cpp_bad_control_braces_line_breaks_highlighting = none -resharper_cpp_bad_declaration_braces_indent_highlighting = none -resharper_cpp_bad_declaration_braces_line_breaks_highlighting = none -resharper_cpp_bad_empty_braces_line_breaks_highlighting = none -resharper_cpp_bad_expression_braces_indent_highlighting = none -resharper_cpp_bad_expression_braces_line_breaks_highlighting = none -resharper_cpp_bad_indent_highlighting = none -resharper_cpp_bad_list_line_breaks_highlighting = none -resharper_cpp_bad_member_access_spaces_highlighting = none -resharper_cpp_bad_namespace_braces_indent_highlighting = none -resharper_cpp_bad_parens_line_breaks_highlighting = none -resharper_cpp_bad_parens_spaces_highlighting = none -resharper_cpp_bad_semicolon_spaces_highlighting = none -resharper_cpp_bad_spaces_after_keyword_highlighting = none -resharper_cpp_bad_square_brackets_spaces_highlighting = none -resharper_cpp_bad_switch_braces_indent_highlighting = none -resharper_cpp_bad_symbol_spaces_highlighting = none -resharper_cpp_boolean_increment_expression_highlighting = warning -resharper_cpp_boost_format_bad_code_highlighting = warning -resharper_cpp_boost_format_legacy_code_highlighting = suggestion -resharper_cpp_boost_format_mixed_args_highlighting = error -resharper_cpp_boost_format_too_few_args_highlighting = error -resharper_cpp_boost_format_too_many_args_highlighting = warning -resharper_cpp_clang_tidy_abseil_cleanup_ctad_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_addition_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_comparison_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_conversion_cast_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_division_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_factory_float_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_factory_scale_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_subtraction_highlighting = none -resharper_cpp_clang_tidy_abseil_duration_unnecessary_conversion_highlighting = none -resharper_cpp_clang_tidy_abseil_faster_strsplit_delimiter_highlighting = none -resharper_cpp_clang_tidy_abseil_no_internal_dependencies_highlighting = none -resharper_cpp_clang_tidy_abseil_no_namespace_highlighting = none -resharper_cpp_clang_tidy_abseil_redundant_strcat_calls_highlighting = none -resharper_cpp_clang_tidy_abseil_string_find_startswith_highlighting = none -resharper_cpp_clang_tidy_abseil_string_find_str_contains_highlighting = none -resharper_cpp_clang_tidy_abseil_str_cat_append_highlighting = none -resharper_cpp_clang_tidy_abseil_time_comparison_highlighting = none -resharper_cpp_clang_tidy_abseil_time_subtraction_highlighting = none -resharper_cpp_clang_tidy_abseil_upgrade_duration_conversions_highlighting = none -resharper_cpp_clang_tidy_altera_id_dependent_backward_branch_highlighting = none -resharper_cpp_clang_tidy_altera_kernel_name_restriction_highlighting = none -resharper_cpp_clang_tidy_altera_single_work_item_barrier_highlighting = none -resharper_cpp_clang_tidy_altera_struct_pack_align_highlighting = none -resharper_cpp_clang_tidy_altera_unroll_loops_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_accept4_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_accept_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_creat_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_dup_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_epoll_create1_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_epoll_create_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_fopen_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_inotify_init1_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_inotify_init_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_memfd_create_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_open_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_pipe2_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_pipe_highlighting = none -resharper_cpp_clang_tidy_android_cloexec_socket_highlighting = none -resharper_cpp_clang_tidy_android_comparison_in_temp_failure_retry_highlighting = none -resharper_cpp_clang_tidy_boost_use_to_string_highlighting = suggestion -resharper_cpp_clang_tidy_bugprone_argument_comment_highlighting = suggestion -resharper_cpp_clang_tidy_bugprone_assert_side_effect_highlighting = warning -resharper_cpp_clang_tidy_bugprone_assignment_in_if_condition_highlighting = none -resharper_cpp_clang_tidy_bugprone_bad_signal_to_kill_thread_highlighting = warning -resharper_cpp_clang_tidy_bugprone_bool_pointer_implicit_conversion_highlighting = none -resharper_cpp_clang_tidy_bugprone_branch_clone_highlighting = warning -resharper_cpp_clang_tidy_bugprone_copy_constructor_init_highlighting = warning -resharper_cpp_clang_tidy_bugprone_dangling_handle_highlighting = warning -resharper_cpp_clang_tidy_bugprone_dynamic_static_initializers_highlighting = warning -resharper_cpp_clang_tidy_bugprone_easily_swappable_parameters_highlighting = none -resharper_cpp_clang_tidy_bugprone_exception_escape_highlighting = none -resharper_cpp_clang_tidy_bugprone_fold_init_type_highlighting = warning -resharper_cpp_clang_tidy_bugprone_forwarding_reference_overload_highlighting = warning -resharper_cpp_clang_tidy_bugprone_forward_declaration_namespace_highlighting = warning -resharper_cpp_clang_tidy_bugprone_implicit_widening_of_multiplication_result_highlighting = warning -resharper_cpp_clang_tidy_bugprone_inaccurate_erase_highlighting = warning -resharper_cpp_clang_tidy_bugprone_incorrect_roundings_highlighting = warning -resharper_cpp_clang_tidy_bugprone_infinite_loop_highlighting = warning -resharper_cpp_clang_tidy_bugprone_integer_division_highlighting = warning -resharper_cpp_clang_tidy_bugprone_lambda_function_name_highlighting = warning -resharper_cpp_clang_tidy_bugprone_macro_parentheses_highlighting = warning -resharper_cpp_clang_tidy_bugprone_macro_repeated_side_effects_highlighting = warning -resharper_cpp_clang_tidy_bugprone_misplaced_operator_in_strlen_in_alloc_highlighting = warning -resharper_cpp_clang_tidy_bugprone_misplaced_pointer_arithmetic_in_alloc_highlighting = warning -resharper_cpp_clang_tidy_bugprone_misplaced_widening_cast_highlighting = warning -resharper_cpp_clang_tidy_bugprone_move_forwarding_reference_highlighting = warning -resharper_cpp_clang_tidy_bugprone_multiple_statement_macro_highlighting = warning -resharper_cpp_clang_tidy_bugprone_narrowing_conversions_highlighting = warning -resharper_cpp_clang_tidy_bugprone_not_null_terminated_result_highlighting = warning -resharper_cpp_clang_tidy_bugprone_no_escape_highlighting = warning -resharper_cpp_clang_tidy_bugprone_parent_virtual_call_highlighting = warning -resharper_cpp_clang_tidy_bugprone_posix_return_highlighting = warning -resharper_cpp_clang_tidy_bugprone_redundant_branch_condition_highlighting = warning -resharper_cpp_clang_tidy_bugprone_reserved_identifier_highlighting = warning -resharper_cpp_clang_tidy_bugprone_shared_ptr_array_mismatch_highlighting = warning -resharper_cpp_clang_tidy_bugprone_signal_handler_highlighting = warning -resharper_cpp_clang_tidy_bugprone_signed_char_misuse_highlighting = warning -resharper_cpp_clang_tidy_bugprone_sizeof_container_highlighting = warning -resharper_cpp_clang_tidy_bugprone_sizeof_expression_highlighting = warning -resharper_cpp_clang_tidy_bugprone_spuriously_wake_up_functions_highlighting = warning -resharper_cpp_clang_tidy_bugprone_stringview_nullptr_highlighting = warning -resharper_cpp_clang_tidy_bugprone_string_constructor_highlighting = warning -resharper_cpp_clang_tidy_bugprone_string_integer_assignment_highlighting = warning -resharper_cpp_clang_tidy_bugprone_string_literal_with_embedded_nul_highlighting = warning -resharper_cpp_clang_tidy_bugprone_suspicious_enum_usage_highlighting = warning -resharper_cpp_clang_tidy_bugprone_suspicious_include_highlighting = warning -resharper_cpp_clang_tidy_bugprone_suspicious_memory_comparison_highlighting = warning -resharper_cpp_clang_tidy_bugprone_suspicious_memset_usage_highlighting = warning -resharper_cpp_clang_tidy_bugprone_suspicious_missing_comma_highlighting = warning -resharper_cpp_clang_tidy_bugprone_suspicious_semicolon_highlighting = warning -resharper_cpp_clang_tidy_bugprone_suspicious_string_compare_highlighting = warning -resharper_cpp_clang_tidy_bugprone_swapped_arguments_highlighting = warning -resharper_cpp_clang_tidy_bugprone_terminating_continue_highlighting = warning -resharper_cpp_clang_tidy_bugprone_throw_keyword_missing_highlighting = warning -resharper_cpp_clang_tidy_bugprone_too_small_loop_variable_highlighting = warning -resharper_cpp_clang_tidy_bugprone_unchecked_optional_access_highlighting = warning -resharper_cpp_clang_tidy_bugprone_undefined_memory_manipulation_highlighting = warning -resharper_cpp_clang_tidy_bugprone_undelegated_constructor_highlighting = warning -resharper_cpp_clang_tidy_bugprone_unhandled_exception_at_new_highlighting = none -resharper_cpp_clang_tidy_bugprone_unhandled_self_assignment_highlighting = warning -resharper_cpp_clang_tidy_bugprone_unused_raii_highlighting = warning -resharper_cpp_clang_tidy_bugprone_unused_return_value_highlighting = warning -resharper_cpp_clang_tidy_bugprone_use_after_move_highlighting = warning -resharper_cpp_clang_tidy_bugprone_virtual_near_miss_highlighting = suggestion -resharper_cpp_clang_tidy_cert_con36_c_highlighting = none -resharper_cpp_clang_tidy_cert_con54_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_dcl03_c_highlighting = none -resharper_cpp_clang_tidy_cert_dcl16_c_highlighting = none -resharper_cpp_clang_tidy_cert_dcl21_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_dcl37_c_highlighting = none -resharper_cpp_clang_tidy_cert_dcl50_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_dcl51_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_dcl54_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_dcl58_cpp_highlighting = warning -resharper_cpp_clang_tidy_cert_dcl59_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_env33_c_highlighting = none -resharper_cpp_clang_tidy_cert_err09_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_err33_c_highlighting = warning -resharper_cpp_clang_tidy_cert_err34_c_highlighting = suggestion -resharper_cpp_clang_tidy_cert_err52_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_err58_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_err60_cpp_highlighting = warning -resharper_cpp_clang_tidy_cert_err61_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_exp42_c_highlighting = none -resharper_cpp_clang_tidy_cert_fio38_c_highlighting = none -resharper_cpp_clang_tidy_cert_flp30_c_highlighting = warning -resharper_cpp_clang_tidy_cert_flp37_c_highlighting = none -resharper_cpp_clang_tidy_cert_mem57_cpp_highlighting = warning -resharper_cpp_clang_tidy_cert_msc30_c_highlighting = none -resharper_cpp_clang_tidy_cert_msc32_c_highlighting = none -resharper_cpp_clang_tidy_cert_msc50_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_msc51_cpp_highlighting = warning -resharper_cpp_clang_tidy_cert_oop11_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_oop54_cpp_highlighting = none -resharper_cpp_clang_tidy_cert_oop57_cpp_highlighting = warning -resharper_cpp_clang_tidy_cert_oop58_cpp_highlighting = warning -resharper_cpp_clang_tidy_cert_pos44_c_highlighting = none -resharper_cpp_clang_tidy_cert_pos47_c_highlighting = none -resharper_cpp_clang_tidy_cert_sig30_c_highlighting = none -resharper_cpp_clang_tidy_cert_str34_c_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_api_modeling_errno_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_api_modeling_google_g_test_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_api_modeling_llvm_cast_value_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_api_modeling_llvm_return_value_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_api_modeling_std_c_library_functions_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_api_modeling_trust_nonnull_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_api_modeling_trust_returns_nonnull_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_builtin_builtin_functions_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_builtin_no_return_functions_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_call_and_message_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_call_and_message_modeling_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_divide_zero_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_dynamic_type_propagation_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_nonnil_string_constants_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_non_null_param_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_null_dereference_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_stack_address_escape_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_stack_addr_escape_base_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_undefined_binary_operator_result_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_uninitialized_array_subscript_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_uninitialized_assign_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_uninitialized_branch_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_uninitialized_captured_block_variable_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_uninitialized_undef_return_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_core_vla_size_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_inner_pointer_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_move_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_new_delete_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_new_delete_leaks_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_placement_new_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_pure_virtual_call_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_self_assignment_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_smart_ptr_modeling_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_string_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_cplusplus_virtual_call_modeling_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_deadcode_dead_stores_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_fuchsia_handle_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_nullability_nullability_base_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_nullability_nullable_dereferenced_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_nullability_nullable_passed_to_nonnull_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_nullability_nullable_returned_from_nonnull_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_nullability_null_passed_to_nonnull_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_nullability_null_returned_from_nonnull_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_cplusplus_uninitialized_object_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_cplusplus_virtual_call_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_mpi_mpi_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_osx_cocoa_localizability_empty_localization_context_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_osx_cocoa_localizability_non_localized_string_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_osx_os_object_c_style_cast_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_performance_gcd_antipattern_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_performance_padding_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_optin_portability_unix_api_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_api_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_at_sync_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_autorelease_write_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_class_release_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_dealloc_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_incompatible_method_types_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_loops_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_missing_super_call_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_nil_arg_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_non_nil_return_value_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_ns_autorelease_pool_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_ns_error_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_obj_c_generics_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_retain_count_base_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_retain_count_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_run_loop_autorelease_leak_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_self_init_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_super_dealloc_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_unused_ivars_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_cocoa_variadic_method_types_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_core_foundation_cf_error_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_core_foundation_cf_number_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_core_foundation_cf_retain_release_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_core_foundation_containers_out_of_bounds_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_core_foundation_containers_pointer_sized_values_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_mig_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_ns_or_cf_error_deref_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_number_object_conversion_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_obj_c_property_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_os_object_retain_count_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_osx_sec_keychain_api_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_float_loop_counter_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_bcmp_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_bcopy_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_bzero_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_decode_value_of_obj_c_type_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_deprecated_or_unsafe_buffer_handling_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_getpw_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_gets_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_mkstemp_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_mktemp_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_rand_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_security_syntax_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_strcpy_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_unchecked_return_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_security_insecure_api_vfork_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_api_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_cstring_bad_size_arg_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_cstring_c_string_modeling_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_cstring_null_arg_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_dynamic_memory_modeling_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_malloc_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_malloc_sizeof_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_mismatched_deallocator_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_unix_vfork_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_valist_copy_to_self_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_valist_uninitialized_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_valist_unterminated_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_valist_valist_base_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_webkit_no_uncounted_member_checker_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_webkit_ref_cntbl_base_virtual_dtor_highlighting = none -resharper_cpp_clang_tidy_clang_analyzer_webkit_uncounted_lambda_captures_checker_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_absolute_value_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_abstract_final_class_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_abstract_vbase_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_address_of_packed_member_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_address_of_temporary_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_aix_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_align_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_alloca_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_alloca_with_align_alignof_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_always_inline_coroutine_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_ambiguous_delete_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ambiguous_ellipsis_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ambiguous_macro_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ambiguous_member_template_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ambiguous_reversed_operator_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_analyzer_incompatible_plugin_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_anonymous_pack_parens_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_anon_enum_enum_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_arc_bridge_casts_disallowed_in_nonarc_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_arc_maybe_repeated_use_of_weak_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_arc_non_pod_memaccess_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_arc_perform_selector_leaks_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_arc_repeated_use_of_weak_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_arc_retain_cycles_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_arc_unsafe_retained_assign_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_argument_outside_range_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_argument_undefined_behaviour_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_array_bounds_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_array_bounds_pointer_arithmetic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_array_parameter_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_asm_operand_widths_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_assign_enum_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_assume_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_atimport_in_framework_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_atomic_access_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_atomic_alignment_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_atomic_implicit_seq_cst_highlighting = suggestion -resharper_cpp_clang_tidy_clang_diagnostic_atomic_memory_ordering_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_atomic_property_with_user_defined_accessor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_attribute_packed_for_bitfield_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_attribute_warning_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_at_protocol_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_auto_disable_vptr_sanitizer_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_auto_import_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_auto_storage_class_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_auto_var_id_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_availability_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_avr_rtlib_linking_quirks_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_backslash_newline_escape_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bad_function_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_binding_in_condition_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bind_to_temporary_copy_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bitfield_constant_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bitfield_enum_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bitfield_width_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bitwise_conditional_parentheses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bitwise_instead_of_logical_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bitwise_op_parentheses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bit_int_extension_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_block_capture_autoreleasing_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bool_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bool_operation_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_braced_scalar_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_branch_protection_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_bridge_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_builtin_assume_aligned_alignment_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_builtin_macro_redefined_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_builtin_memcpy_chk_size_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_builtin_requires_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_c11_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_c2x_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_c99_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_c99_designator_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_c99_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_called_once_parameter_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_call_to_pure_virtual_from_ctor_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cast_align_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cast_calling_convention_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cast_function_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cast_of_sel_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cast_qual_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cast_qual_unrelated_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cf_string_literal_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_char_subscripts_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_clang_cl_pch_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_class_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_class_varargs_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cmse_union_leak_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_comma_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_comment_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_compare_distinct_pointer_types_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_completion_handler_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_complex_component_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_compound_token_split_by_macro_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_compound_token_split_by_space_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_compound_token_split_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_concepts_ts_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_conditional_type_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_conditional_uninitialized_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_config_macros_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_constant_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_constant_evaluated_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_constant_logical_operand_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_constexpr_not_const_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_consumed_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_coroutine_missing_unhandled_exception_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_covered_switch_default_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_compat_deprecated_writable_strings_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_compat_reserved_user_defined_literal_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_extra_semi_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_inline_namespace_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_long_long_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp11_narrowing_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp14_attribute_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp14_binary_literal_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp14_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp14_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp14_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp17_attribute_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp17_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp17_compat_mangling_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp17_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp17_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp20_attribute_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp20_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp20_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp20_designator_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp20_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp2a_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp2a_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp2b_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_compat_bind_to_temporary_copy_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_compat_extra_semi_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_compat_local_type_template_args_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_compat_unnamed_type_template_args_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_cpp11_compat_binary_literal_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_cpp11_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_cpp11_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_cpp11_cpp14_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_cpp11_cpp14_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_cpp11_cpp14_cpp17_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp98_cpp11_cpp14_cpp17_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cpp_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cstring_format_directive_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ctad_maybe_unsupported_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_ctu_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_cuda_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_custom_atomic_properties_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_cxx_attribute_extension_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dangling_else_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dangling_field_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dangling_gsl_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dangling_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dangling_initializer_list_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_darwin_sdk_settings_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_date_time_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dealloc_in_category_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_debug_compression_unavailable_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_declaration_after_statement_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_defaulted_function_deleted_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_delegating_ctor_cycles_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_delete_abstract_non_virtual_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_delete_incomplete_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_delete_non_abstract_non_virtual_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_delete_non_virtual_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_delimited_escape_sequence_extension_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_altivec_src_compat_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_anon_enum_enum_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_array_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_attributes_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_builtins_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_comma_subscript_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_copy_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_copy_with_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_copy_with_user_provided_copy_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_copy_with_user_provided_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_coroutine_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_declarations_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_dynamic_exception_spec_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_enum_compare_conditional_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_enum_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_enum_enum_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_enum_float_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_experimental_coroutine_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_implementations_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_increment_bool_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_non_prototype_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_objc_isa_usage_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_objc_pointer_introspection_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_objc_pointer_introspection_perform_selector_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_pragma_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_register_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_static_analyzer_flag_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_this_capture_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecated_volatile_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_deprecate_lax_vec_conv_all_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_direct_ivar_access_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_disabled_macro_expansion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_distributed_object_modifiers_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_division_by_zero_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dllexport_explicit_instantiation_decl_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dllimport_static_field_def_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dll_attribute_on_redeclaration_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_documentation_deprecated_sync_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_documentation_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_documentation_html_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_documentation_pedantic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_documentation_unknown_command_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_dollar_in_identifier_extension_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_double_promotion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dtor_name_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dtor_typedef_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_duplicate_decl_specifier_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_duplicate_enum_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_duplicate_method_arg_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_duplicate_method_match_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_duplicate_protocol_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dynamic_class_memaccess_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_dynamic_exception_spec_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_embedded_directive_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_empty_body_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_empty_decomposition_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_empty_init_stmt_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_empty_translation_unit_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_encode_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_enum_compare_conditional_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_enum_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_enum_compare_switch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_enum_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_enum_enum_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_enum_float_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_enum_too_large_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_error_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_exceptions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_excess_initializers_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_exit_time_destructors_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_expansion_to_defined_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_explicit_initialize_call_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_explicit_ownership_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_export_unnamed_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_export_using_directive_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_extern_c_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_extern_initializer_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_extra_qualification_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_extra_semi_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_extra_semi_stmt_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_extra_tokens_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_final_dtor_non_final_class_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_final_macro_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_fixed_enum_extension_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_fixed_point_overflow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_flag_enum_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_flexible_array_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_float_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_float_equal_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_float_overflow_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_float_zero_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_extra_args_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_insufficient_args_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_invalid_specifier_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_nonliteral_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_non_iso_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_pedantic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_security_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_type_confusion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_format_zero_length_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_fortify_source_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_for_loop_analysis_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_four_char_constants_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_framework_include_private_from_public_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_frame_address_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_frame_larger_than_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_free_nonheap_object_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_function_def_in_objc_container_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_function_multiversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_future_attribute_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gcc_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_global_constructors_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_global_isel_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_alignof_expression_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_anonymous_struct_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_gnu_array_member_paren_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_auto_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_binary_literal_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_case_range_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_complex_integer_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_compound_literal_initializer_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_conditional_omitted_operand_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_designator_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_empty_initializer_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_empty_struct_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_flexible_array_initializer_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_flexible_array_union_member_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_folding_constant_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_imaginary_constant_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_include_next_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_inline_cpp_without_extern_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_label_as_value_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_line_marker_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_null_pointer_arithmetic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_pointer_arith_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_redeclared_enum_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_statement_expression_from_macro_expansion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_statement_expression_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_static_float_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_string_literal_operator_template_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_union_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_variable_sized_type_not_at_end_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gnu_zero_variadic_macro_arguments_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_gpu_maybe_wrong_side_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_header_guard_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_header_hygiene_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_hip_only_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_hlsl_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_idiomatic_parentheses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ignored_attributes_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_ignored_availability_without_sdk_settings_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_ignored_optimization_argument_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ignored_pragmas_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ignored_pragma_intrinsic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ignored_pragma_optimize_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_ignored_qualifiers_highlighting = suggestion -resharper_cpp_clang_tidy_clang_diagnostic_ignored_reference_qualifiers_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicitly_unsigned_literal_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_atomic_properties_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_const_int_float_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_conversion_floating_point_to_bool_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_exception_spec_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_fallthrough_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_fallthrough_per_function_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_fixed_point_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_float_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_function_declaration_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_int_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_int_float_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_int_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_implicit_retain_self_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_import_preprocessor_directive_pedantic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_inaccessible_base_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_include_next_absolute_path_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_include_next_outside_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_exception_spec_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_function_pointer_types_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_library_redeclaration_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_ms_struct_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_pointer_types_discards_qualifiers_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_pointer_types_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_property_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incompatible_sysroot_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incomplete_framework_module_declaration_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incomplete_implementation_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incomplete_module_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incomplete_setjmp_declaration_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_incomplete_umbrella_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_inconsistent_dllimport_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_inconsistent_missing_destructor_override_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_inconsistent_missing_override_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_increment_bool_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_independent_class_attribute_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_infinite_recursion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_initializer_overrides_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_injected_class_name_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_inline_asm_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_inline_namespace_reopened_noninline_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_inline_new_delete_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_instantiation_after_specialization_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_integer_overflow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_interrupt_service_routine_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_int_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_int_in_bool_context_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_int_to_pointer_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_int_to_void_pointer_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_constexpr_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_iboutlet_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_initializer_from_system_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_ios_deployment_target_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_noreturn_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_no_builtin_names_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_offsetof_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_or_nonexistent_directory_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_partial_specialization_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_pp_token_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_source_encoding_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_token_paste_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_invalid_utf8_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_jump_seh_finally_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_keyword_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_keyword_macro_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_knr_promoted_parameter_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_language_extension_token_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_large_by_value_copy_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_linker_warnings_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_literal_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_literal_range_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_local_type_template_args_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_logical_not_parentheses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_logical_op_parentheses_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_long_long_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_macro_redefined_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_main_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_main_return_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_malformed_warning_check_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_many_braces_around_scalar_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_max_tokens_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_max_unsigned_zero_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_memset_transposed_args_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_memsize_comparison_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_method_signatures_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_abstract_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_anon_tag_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_charize_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_comment_paste_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_const_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_cpp_macro_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_default_arg_redefinition_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_drectve_section_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_end_of_file_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_enum_forward_reference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_enum_value_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_exception_spec_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_exists_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_explicit_constructor_call_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_extra_qualification_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_fixed_enum_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_flexible_array_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_goto_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_inaccessible_base_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_include_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_mutable_reference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_pure_definition_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_redeclare_static_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_sealed_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_static_assert_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_template_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_template_shadow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_union_member_reference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_unqualified_friend_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_using_decl_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_microsoft_void_pseudo_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_misexpect_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_misleading_indentation_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_mismatched_new_delete_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_mismatched_parameter_types_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_mismatched_return_types_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_mismatched_tags_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_braces_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_constinit_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_declarations_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_exception_spec_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_field_initializers_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_method_return_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_noescape_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_noreturn_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_prototypes_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_missing_prototype_for_cc_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_selector_name_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_sysroot_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_missing_variable_declarations_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_misspelled_assumption_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_modules_ambiguous_internal_linkage_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_modules_import_nested_redundant_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_module_conflict_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_module_file_config_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_module_file_extension_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_module_import_in_extern_c_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_msvc_not_found_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_multichar_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_multiple_move_vbase_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nested_anon_types_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_newline_eof_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_new_returns_null_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_noderef_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nonnull_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nonportable_include_path_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_nonportable_system_include_path_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_nonportable_vector_initialization_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nontrivial_memaccess_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_non_c_typedef_for_linkage_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_non_literal_null_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_non_modular_include_in_framework_module_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_non_modular_include_in_module_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_non_pod_varargs_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_non_power_of_two_alignment_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_non_virtual_dtor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nsconsumed_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nsreturns_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ns_object_attribute_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nullability_completeness_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nullability_completeness_on_arrays_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nullability_declspec_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nullability_extension_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nullability_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nullability_inferred_on_nested_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_nullable_to_nonnull_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_null_arithmetic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_null_character_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_null_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_null_dereference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_null_pointer_arithmetic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_null_pointer_subtraction_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_odr_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_old_style_cast_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_opencl_unsupported_rgba_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_openmp51_extensions_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_openmp_clauses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_openmp_loop_form_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_openmp_mapping_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_openmp_target_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_option_ignored_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_ordered_compare_function_pointers_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_out_of_line_declaration_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_out_of_scope_function_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_overlength_strings_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_overloaded_shift_op_parentheses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_overloaded_virtual_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_override_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_override_module_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_overriding_method_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_overriding_t_option_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_over_aligned_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_packed_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_padded_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_parentheses_equality_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_parentheses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pass_failed_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pch_date_time_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pedantic_core_features_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pedantic_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pedantic_macros_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pessimizing_move_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_arith_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_bool_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_integer_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_sign_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_to_enum_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_to_int_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pointer_type_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_poison_system_directories_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_potentially_evaluated_expression_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pragmas_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pragma_clang_attribute_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pragma_messages_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pragma_once_outside_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pragma_pack_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pragma_pack_suspicious_include_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pragma_system_header_outside_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_predefined_identifier_outside_function_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_pre_c2x_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_c2x_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp14_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp14_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp17_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp17_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp20_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp20_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp2b_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_cpp2b_compat_pedantic_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_pre_openmp51_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_private_extern_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_private_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_private_module_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_profile_instr_missing_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_profile_instr_out_of_date_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_profile_instr_unprofiled_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_property_access_dot_syntax_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_property_attribute_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_protocol_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_protocol_property_synthesis_ambiguity_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_psabi_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_qualified_void_return_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_quoted_include_in_framework_header_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_range_loop_analysis_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_range_loop_bind_reference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_range_loop_construct_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_readonly_iboutlet_property_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_receiver_expr_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_receiver_forward_class_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_redeclared_class_member_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_redundant_consteval_if_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_redundant_move_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_redundant_parens_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_register_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reinterpret_base_class_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reorder_ctor_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reorder_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reorder_init_list_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_requires_super_attribute_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reserved_identifier_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reserved_id_macro_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reserved_macro_identifier_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_reserved_user_defined_literal_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_restrict_expansion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_retained_language_linkage_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_return_stack_address_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_return_std_move_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_return_type_c_linkage_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_return_type_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_rewrite_not_bool_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sarif_format_unstable_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_section_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_selector_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_selector_type_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_self_assign_field_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_self_assign_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_self_assign_overloaded_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_self_move_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_semicolon_before_method_body_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sentinel_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_serialized_diagnostics_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shadow_field_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shadow_field_in_constructor_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_shadow_field_in_constructor_modified_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_shadow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shadow_ivar_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shadow_uncaptured_local_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_shift_count_negative_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shift_count_overflow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shift_negative_value_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shift_op_parentheses_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shift_overflow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shift_sign_overflow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_shorten64_to32_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_signed_enum_bitfield_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_signed_unsigned_wchar_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sign_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sign_conversion_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_sizeof_array_argument_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sizeof_array_decay_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sizeof_array_div_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sizeof_pointer_div_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sizeof_pointer_memaccess_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_slash_u_filename_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_slh_asm_goto_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_sometimes_uninitialized_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_source_uses_openmp_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_spirv_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_spir_compat_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_static_float_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_static_inline_explicit_instantiation_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_static_in_inline_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_static_local_in_inline_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_static_self_init_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_stdlibcxx_not_found_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_strict_prototypes_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_strict_selector_match_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_string_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_string_concatenation_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_string_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_string_plus_char_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_string_plus_int_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_strlcpy_strlcat_size_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_strncat_size_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_suggest_destructor_override_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_suggest_override_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_super_class_method_mismatch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_suspicious_bzero_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_switch_bool_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_switch_enum_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_switch_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_sync_fetch_and_nand_semantics_changed_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_target_clones_mixed_specifiers_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_tautological_bitwise_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_constant_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_constant_in_range_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_constant_out_of_range_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_objc_bool_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_overlap_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_pointer_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_type_limit_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_undefined_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_unsigned_char_zero_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_unsigned_enum_zero_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tautological_unsigned_zero_compare_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_tautological_value_range_compare_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_tentative_definition_incomplete_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_thread_safety_analysis_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_thread_safety_attributes_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_thread_safety_beta_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_thread_safety_negative_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_thread_safety_precise_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_thread_safety_reference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_thread_safety_verbose_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_trigraphs_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_typedef_redefinition_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_typename_missing_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_type_safety_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unable_to_open_stats_file_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unaligned_access_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unaligned_qualifier_implicit_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unavailable_declarations_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undeclared_selector_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undefined_bool_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undefined_func_template_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undefined_inline_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undefined_internal_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undefined_internal_type_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undefined_reinterpret_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undefined_var_template_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undef_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_undef_prefix_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_underaligned_exception_object_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unevaluated_expression_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unguarded_availability_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unguarded_availability_new_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unicode_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unicode_homoglyph_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unicode_whitespace_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unicode_zero_width_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_uninitialized_const_reference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_uninitialized_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unknown_argument_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unknown_attributes_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unknown_cuda_version_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unknown_directives_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unknown_escape_sequence_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unknown_pragmas_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unknown_sanitizers_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unknown_warning_option_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unnamed_type_template_args_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unneeded_internal_declaration_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unneeded_member_function_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unqualified_std_cast_call_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unreachable_code_break_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unreachable_code_fallthrough_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unreachable_code_generic_assoc_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unreachable_code_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unreachable_code_loop_increment_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unreachable_code_return_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsequenced_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_abi_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_abs_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_availability_guard_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_cb_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_dll_base_class_template_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_friend_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_gpopt_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_nan_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_target_opt_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unsupported_visibility_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unusable_partial_specialization_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_but_set_parameter_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unused_but_set_variable_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unused_comparison_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_const_variable_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_exception_parameter_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_function_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_getter_return_value_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_label_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_lambda_capture_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unused_local_typedef_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unused_macros_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_member_function_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_parameter_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unused_private_field_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_property_ivar_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_result_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unused_template_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_value_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_unused_variable_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_unused_volatile_lvalue_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_used_but_marked_unused_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_user_defined_literals_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_user_defined_warnings_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_varargs_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_variadic_macros_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_vector_conversion_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_vec_elem_size_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_vexing_parse_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_visibility_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_vla_extension_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_vla_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_void_pointer_to_enum_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_void_pointer_to_int_cast_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_void_ptr_dereference_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_warnings_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_wasm_exception_spec_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_weak_template_vtables_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_weak_vtables_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_writable_strings_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_xor_used_as_pow_highlighting = warning -resharper_cpp_clang_tidy_clang_diagnostic_zero_as_null_pointer_constant_highlighting = none -resharper_cpp_clang_tidy_clang_diagnostic_zero_length_array_highlighting = warning -resharper_cpp_clang_tidy_concurrency_mt_unsafe_highlighting = warning -resharper_cpp_clang_tidy_concurrency_thread_canceltype_asynchronous_highlighting = warning -resharper_cpp_clang_tidy_cppcoreguidelines_avoid_c_arrays_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_avoid_goto_highlighting = warning -resharper_cpp_clang_tidy_cppcoreguidelines_avoid_magic_numbers_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_avoid_non_const_global_variables_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_c_copy_assignment_signature_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_explicit_virtual_functions_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_init_variables_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_interfaces_global_init_highlighting = warning -resharper_cpp_clang_tidy_cppcoreguidelines_macro_usage_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_narrowing_conversions_highlighting = warning -resharper_cpp_clang_tidy_cppcoreguidelines_non_private_member_variables_in_classes_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_no_malloc_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_owning_memory_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_prefer_member_initializer_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_bounds_array_to_pointer_decay_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_bounds_constant_array_index_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_bounds_pointer_arithmetic_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_type_const_cast_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_type_cstyle_cast_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_type_member_init_highlighting = warning -resharper_cpp_clang_tidy_cppcoreguidelines_pro_type_reinterpret_cast_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_type_static_cast_downcast_highlighting = suggestion -resharper_cpp_clang_tidy_cppcoreguidelines_pro_type_union_access_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_pro_type_vararg_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_slicing_highlighting = none -resharper_cpp_clang_tidy_cppcoreguidelines_special_member_functions_highlighting = suggestion -resharper_cpp_clang_tidy_cppcoreguidelines_virtual_class_destructor_highlighting = none -resharper_cpp_clang_tidy_darwin_avoid_spinlock_highlighting = none -resharper_cpp_clang_tidy_darwin_dispatch_once_nonstatic_highlighting = none -resharper_cpp_clang_tidy_fuchsia_default_arguments_calls_highlighting = none -resharper_cpp_clang_tidy_fuchsia_default_arguments_declarations_highlighting = none -resharper_cpp_clang_tidy_fuchsia_header_anon_namespaces_highlighting = none -resharper_cpp_clang_tidy_fuchsia_multiple_inheritance_highlighting = none -resharper_cpp_clang_tidy_fuchsia_overloaded_operator_highlighting = none -resharper_cpp_clang_tidy_fuchsia_statically_constructed_objects_highlighting = none -resharper_cpp_clang_tidy_fuchsia_trailing_return_highlighting = none -resharper_cpp_clang_tidy_fuchsia_virtual_inheritance_highlighting = none -resharper_cpp_clang_tidy_google_build_explicit_make_pair_highlighting = none -resharper_cpp_clang_tidy_google_build_namespaces_highlighting = none -resharper_cpp_clang_tidy_google_build_using_namespace_highlighting = none -resharper_cpp_clang_tidy_google_default_arguments_highlighting = none -resharper_cpp_clang_tidy_google_explicit_constructor_highlighting = none -resharper_cpp_clang_tidy_google_global_names_in_headers_highlighting = none -resharper_cpp_clang_tidy_google_objc_avoid_nsobject_new_highlighting = none -resharper_cpp_clang_tidy_google_objc_avoid_throwing_exception_highlighting = none -resharper_cpp_clang_tidy_google_objc_function_naming_highlighting = none -resharper_cpp_clang_tidy_google_objc_global_variable_declaration_highlighting = none -resharper_cpp_clang_tidy_google_readability_avoid_underscore_in_googletest_name_highlighting = none -resharper_cpp_clang_tidy_google_readability_braces_around_statements_highlighting = none -resharper_cpp_clang_tidy_google_readability_casting_highlighting = none -resharper_cpp_clang_tidy_google_readability_function_size_highlighting = none -resharper_cpp_clang_tidy_google_readability_namespace_comments_highlighting = none -resharper_cpp_clang_tidy_google_readability_todo_highlighting = none -resharper_cpp_clang_tidy_google_runtime_int_highlighting = none -resharper_cpp_clang_tidy_google_runtime_operator_highlighting = warning -resharper_cpp_clang_tidy_google_upgrade_googletest_case_highlighting = suggestion -resharper_cpp_clang_tidy_hicpp_avoid_c_arrays_highlighting = none -resharper_cpp_clang_tidy_hicpp_avoid_goto_highlighting = warning -resharper_cpp_clang_tidy_hicpp_braces_around_statements_highlighting = none -resharper_cpp_clang_tidy_hicpp_deprecated_headers_highlighting = none -resharper_cpp_clang_tidy_hicpp_exception_baseclass_highlighting = suggestion -resharper_cpp_clang_tidy_hicpp_explicit_conversions_highlighting = none -resharper_cpp_clang_tidy_hicpp_function_size_highlighting = none -resharper_cpp_clang_tidy_hicpp_invalid_access_moved_highlighting = none -resharper_cpp_clang_tidy_hicpp_member_init_highlighting = none -resharper_cpp_clang_tidy_hicpp_move_const_arg_highlighting = none -resharper_cpp_clang_tidy_hicpp_multiway_paths_covered_highlighting = warning -resharper_cpp_clang_tidy_hicpp_named_parameter_highlighting = none -resharper_cpp_clang_tidy_hicpp_new_delete_operators_highlighting = none -resharper_cpp_clang_tidy_hicpp_noexcept_move_highlighting = none -resharper_cpp_clang_tidy_hicpp_no_array_decay_highlighting = none -resharper_cpp_clang_tidy_hicpp_no_assembler_highlighting = none -resharper_cpp_clang_tidy_hicpp_no_malloc_highlighting = none -resharper_cpp_clang_tidy_hicpp_signed_bitwise_highlighting = none -resharper_cpp_clang_tidy_hicpp_special_member_functions_highlighting = none -resharper_cpp_clang_tidy_hicpp_static_assert_highlighting = none -resharper_cpp_clang_tidy_hicpp_undelegated_constructor_highlighting = none -resharper_cpp_clang_tidy_hicpp_uppercase_literal_suffix_highlighting = none -resharper_cpp_clang_tidy_hicpp_use_auto_highlighting = none -resharper_cpp_clang_tidy_hicpp_use_emplace_highlighting = none -resharper_cpp_clang_tidy_hicpp_use_equals_default_highlighting = none -resharper_cpp_clang_tidy_hicpp_use_equals_delete_highlighting = none -resharper_cpp_clang_tidy_hicpp_use_noexcept_highlighting = none -resharper_cpp_clang_tidy_hicpp_use_nullptr_highlighting = none -resharper_cpp_clang_tidy_hicpp_use_override_highlighting = none -resharper_cpp_clang_tidy_hicpp_vararg_highlighting = none -resharper_cpp_clang_tidy_highlighting_highlighting = suggestion -resharper_cpp_clang_tidy_linuxkernel_must_check_errs_highlighting = warning -resharper_cpp_clang_tidy_llvmlibc_callee_namespace_highlighting = none -resharper_cpp_clang_tidy_llvmlibc_implementation_in_namespace_highlighting = none -resharper_cpp_clang_tidy_llvmlibc_restrict_system_libc_headers_highlighting = none -resharper_cpp_clang_tidy_llvm_else_after_return_highlighting = none -resharper_cpp_clang_tidy_llvm_header_guard_highlighting = none -resharper_cpp_clang_tidy_llvm_include_order_highlighting = none -resharper_cpp_clang_tidy_llvm_namespace_comment_highlighting = none -resharper_cpp_clang_tidy_llvm_prefer_isa_or_dyn_cast_in_conditionals_highlighting = none -resharper_cpp_clang_tidy_llvm_prefer_register_over_unsigned_highlighting = suggestion -resharper_cpp_clang_tidy_llvm_qualified_auto_highlighting = none -resharper_cpp_clang_tidy_llvm_twine_local_highlighting = none -resharper_cpp_clang_tidy_misc_confusable_identifiers_highlighting = warning -resharper_cpp_clang_tidy_misc_const_correctness_highlighting = none -resharper_cpp_clang_tidy_misc_definitions_in_headers_highlighting = none -resharper_cpp_clang_tidy_misc_misleading_bidirectional_highlighting = warning -resharper_cpp_clang_tidy_misc_misleading_identifier_highlighting = warning -resharper_cpp_clang_tidy_misc_misplaced_const_highlighting = none -resharper_cpp_clang_tidy_misc_new_delete_overloads_highlighting = warning -resharper_cpp_clang_tidy_misc_non_copyable_objects_highlighting = warning -resharper_cpp_clang_tidy_misc_non_private_member_variables_in_classes_highlighting = none -resharper_cpp_clang_tidy_misc_no_recursion_highlighting = none -resharper_cpp_clang_tidy_misc_redundant_expression_highlighting = warning -resharper_cpp_clang_tidy_misc_static_assert_highlighting = suggestion -resharper_cpp_clang_tidy_misc_throw_by_value_catch_by_reference_highlighting = warning -resharper_cpp_clang_tidy_misc_unconventional_assign_operator_highlighting = warning -resharper_cpp_clang_tidy_misc_uniqueptr_reset_release_highlighting = suggestion -resharper_cpp_clang_tidy_misc_unused_alias_decls_highlighting = suggestion -resharper_cpp_clang_tidy_misc_unused_parameters_highlighting = none -resharper_cpp_clang_tidy_misc_unused_using_decls_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_avoid_bind_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_avoid_c_arrays_highlighting = none -resharper_cpp_clang_tidy_modernize_concat_nested_namespaces_highlighting = none -resharper_cpp_clang_tidy_modernize_deprecated_headers_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_deprecated_ios_base_aliases_highlighting = warning -resharper_cpp_clang_tidy_modernize_loop_convert_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_macro_to_enum_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_make_shared_highlighting = none -resharper_cpp_clang_tidy_modernize_make_unique_highlighting = none -resharper_cpp_clang_tidy_modernize_pass_by_value_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_raw_string_literal_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_redundant_void_arg_highlighting = none -resharper_cpp_clang_tidy_modernize_replace_auto_ptr_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_replace_disallow_copy_and_assign_macro_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_replace_random_shuffle_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_return_braced_init_list_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_shrink_to_fit_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_unary_static_assert_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_auto_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_bool_literals_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_default_member_init_highlighting = none -resharper_cpp_clang_tidy_modernize_use_emplace_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_equals_default_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_equals_delete_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_nodiscard_highlighting = hint -resharper_cpp_clang_tidy_modernize_use_noexcept_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_nullptr_highlighting = none -resharper_cpp_clang_tidy_modernize_use_override_highlighting = none -resharper_cpp_clang_tidy_modernize_use_trailing_return_type_highlighting = none -resharper_cpp_clang_tidy_modernize_use_transparent_functors_highlighting = suggestion -resharper_cpp_clang_tidy_modernize_use_uncaught_exceptions_highlighting = warning -resharper_cpp_clang_tidy_modernize_use_using_highlighting = none -resharper_cpp_clang_tidy_mpi_buffer_deref_highlighting = warning -resharper_cpp_clang_tidy_mpi_type_mismatch_highlighting = warning -resharper_cpp_clang_tidy_objc_assert_equals_highlighting = warning -resharper_cpp_clang_tidy_objc_avoid_nserror_init_highlighting = warning -resharper_cpp_clang_tidy_objc_dealloc_in_category_highlighting = warning -resharper_cpp_clang_tidy_objc_forbidden_subclassing_highlighting = warning -resharper_cpp_clang_tidy_objc_missing_hash_highlighting = warning -resharper_cpp_clang_tidy_objc_nsinvocation_argument_lifetime_highlighting = warning -resharper_cpp_clang_tidy_objc_property_declaration_highlighting = warning -resharper_cpp_clang_tidy_objc_super_self_highlighting = warning -resharper_cpp_clang_tidy_openmp_exception_escape_highlighting = warning -resharper_cpp_clang_tidy_openmp_use_default_none_highlighting = warning -resharper_cpp_clang_tidy_performance_faster_string_find_highlighting = suggestion -resharper_cpp_clang_tidy_performance_for_range_copy_highlighting = suggestion -resharper_cpp_clang_tidy_performance_implicit_conversion_in_loop_highlighting = suggestion -resharper_cpp_clang_tidy_performance_inefficient_algorithm_highlighting = suggestion -resharper_cpp_clang_tidy_performance_inefficient_string_concatenation_highlighting = suggestion -resharper_cpp_clang_tidy_performance_inefficient_vector_operation_highlighting = suggestion -resharper_cpp_clang_tidy_performance_move_constructor_init_highlighting = warning -resharper_cpp_clang_tidy_performance_move_const_arg_highlighting = suggestion -resharper_cpp_clang_tidy_performance_noexcept_move_constructor_highlighting = none -resharper_cpp_clang_tidy_performance_no_automatic_move_highlighting = warning -resharper_cpp_clang_tidy_performance_no_int_to_ptr_highlighting = warning -resharper_cpp_clang_tidy_performance_trivially_destructible_highlighting = suggestion -resharper_cpp_clang_tidy_performance_type_promotion_in_math_fn_highlighting = suggestion -resharper_cpp_clang_tidy_performance_unnecessary_copy_initialization_highlighting = suggestion -resharper_cpp_clang_tidy_performance_unnecessary_value_param_highlighting = suggestion -resharper_cpp_clang_tidy_portability_restrict_system_includes_highlighting = none -resharper_cpp_clang_tidy_portability_simd_intrinsics_highlighting = none -resharper_cpp_clang_tidy_portability_std_allocator_const_highlighting = warning -resharper_cpp_clang_tidy_readability_avoid_const_params_in_decls_highlighting = none -resharper_cpp_clang_tidy_readability_braces_around_statements_highlighting = none -resharper_cpp_clang_tidy_readability_const_return_type_highlighting = none -resharper_cpp_clang_tidy_readability_container_contains_highlighting = none -resharper_cpp_clang_tidy_readability_container_data_pointer_highlighting = suggestion -resharper_cpp_clang_tidy_readability_container_size_empty_highlighting = suggestion -resharper_cpp_clang_tidy_readability_convert_member_functions_to_static_highlighting = none -resharper_cpp_clang_tidy_readability_delete_null_pointer_highlighting = suggestion -resharper_cpp_clang_tidy_readability_duplicate_include_highlighting = none -resharper_cpp_clang_tidy_readability_else_after_return_highlighting = none -resharper_cpp_clang_tidy_readability_function_cognitive_complexity_highlighting = none -resharper_cpp_clang_tidy_readability_function_size_highlighting = none -resharper_cpp_clang_tidy_readability_identifier_length_highlighting = none -resharper_cpp_clang_tidy_readability_identifier_naming_highlighting = none -resharper_cpp_clang_tidy_readability_implicit_bool_conversion_highlighting = none -resharper_cpp_clang_tidy_readability_inconsistent_declaration_parameter_name_highlighting = suggestion -resharper_cpp_clang_tidy_readability_isolate_declaration_highlighting = none -resharper_cpp_clang_tidy_readability_magic_numbers_highlighting = none -resharper_cpp_clang_tidy_readability_make_member_function_const_highlighting = none -resharper_cpp_clang_tidy_readability_misleading_indentation_highlighting = none -resharper_cpp_clang_tidy_readability_misplaced_array_index_highlighting = suggestion -resharper_cpp_clang_tidy_readability_named_parameter_highlighting = none -resharper_cpp_clang_tidy_readability_non_const_parameter_highlighting = none -resharper_cpp_clang_tidy_readability_qualified_auto_highlighting = none -resharper_cpp_clang_tidy_readability_redundant_access_specifiers_highlighting = none -resharper_cpp_clang_tidy_readability_redundant_control_flow_highlighting = none -resharper_cpp_clang_tidy_readability_redundant_declaration_highlighting = suggestion -resharper_cpp_clang_tidy_readability_redundant_function_ptr_dereference_highlighting = suggestion -resharper_cpp_clang_tidy_readability_redundant_member_init_highlighting = none -resharper_cpp_clang_tidy_readability_redundant_preprocessor_highlighting = warning -resharper_cpp_clang_tidy_readability_redundant_smartptr_get_highlighting = suggestion -resharper_cpp_clang_tidy_readability_redundant_string_cstr_highlighting = suggestion -resharper_cpp_clang_tidy_readability_redundant_string_init_highlighting = suggestion -resharper_cpp_clang_tidy_readability_simplify_boolean_expr_highlighting = none -resharper_cpp_clang_tidy_readability_simplify_subscript_expr_highlighting = warning -resharper_cpp_clang_tidy_readability_static_accessed_through_instance_highlighting = suggestion -resharper_cpp_clang_tidy_readability_static_definition_in_anonymous_namespace_highlighting = none -resharper_cpp_clang_tidy_readability_string_compare_highlighting = warning -resharper_cpp_clang_tidy_readability_suspicious_call_argument_highlighting = warning -resharper_cpp_clang_tidy_readability_uniqueptr_delete_release_highlighting = suggestion -resharper_cpp_clang_tidy_readability_uppercase_literal_suffix_highlighting = none -resharper_cpp_clang_tidy_readability_use_anyofallof_highlighting = suggestion -resharper_cpp_clang_tidy_zircon_temporary_objects_highlighting = none -resharper_cpp_class_can_be_final_highlighting = hint -resharper_cpp_class_disallow_lazy_merging_highlighting = warning -resharper_cpp_class_is_incomplete_highlighting = warning -resharper_cpp_class_needs_constructor_because_of_uninitialized_member_highlighting = warning -resharper_cpp_class_never_used_highlighting = warning -resharper_cpp_compile_time_constant_can_be_replaced_with_boolean_constant_highlighting = suggestion -resharper_cpp_const_parameter_in_declaration_highlighting = suggestion -resharper_cpp_const_value_function_return_type_highlighting = suggestion -resharper_cpp_coroutine_call_resolve_error_highlighting = warning -resharper_cpp_cv_qualifier_can_not_be_applied_to_reference_highlighting = warning -resharper_cpp_c_style_cast_highlighting = suggestion -resharper_cpp_declaration_hides_local_highlighting = warning -resharper_cpp_declaration_hides_uncaptured_local_highlighting = hint -resharper_cpp_declaration_specifier_without_declarators_highlighting = warning -resharper_cpp_declarator_disambiguated_as_function_highlighting = warning -resharper_cpp_declarator_never_used_highlighting = warning -resharper_cpp_declarator_used_before_initialization_highlighting = error -resharper_cpp_defaulted_special_member_function_is_implicitly_deleted_highlighting = warning -resharper_cpp_default_case_not_handled_in_switch_statement_highlighting = warning -resharper_cpp_default_initialization_with_no_user_constructor_highlighting = warning -resharper_cpp_default_is_used_as_identifier_highlighting = warning -resharper_cpp_deleting_void_pointer_highlighting = warning -resharper_cpp_dependent_template_without_template_keyword_highlighting = warning -resharper_cpp_dependent_type_without_typename_keyword_highlighting = warning -resharper_cpp_deprecated_entity_highlighting = warning -resharper_cpp_deprecated_register_storage_class_specifier_highlighting = warning -resharper_cpp_dereference_operator_limit_exceeded_highlighting = warning -resharper_cpp_discarded_postfix_operator_result_highlighting = suggestion -resharper_cpp_doxygen_syntax_error_highlighting = warning -resharper_cpp_doxygen_undocumented_parameter_highlighting = suggestion -resharper_cpp_doxygen_unresolved_reference_highlighting = warning -resharper_cpp_empty_declaration_highlighting = warning -resharper_cpp_enforce_cv_qualifiers_order_highlighting = none -resharper_cpp_enforce_cv_qualifiers_placement_highlighting = none -resharper_cpp_enforce_do_statement_braces_highlighting = none -resharper_cpp_enforce_for_statement_braces_highlighting = none -resharper_cpp_enforce_function_declaration_style_highlighting = none -resharper_cpp_enforce_if_statement_braces_highlighting = none -resharper_cpp_enforce_nested_namespaces_style_highlighting = hint -resharper_cpp_enforce_overriding_destructor_style_highlighting = suggestion -resharper_cpp_enforce_overriding_function_style_highlighting = suggestion -resharper_cpp_enforce_type_alias_code_style_highlighting = none -resharper_cpp_enforce_while_statement_braces_highlighting = none -resharper_cpp_entity_assigned_but_no_read_highlighting = warning -resharper_cpp_entity_used_only_in_unevaluated_context_highlighting = warning -resharper_cpp_enumerator_never_used_highlighting = warning -resharper_cpp_equal_operands_in_binary_expression_highlighting = warning -resharper_cpp_explicit_specialization_in_non_namespace_scope_highlighting = warning -resharper_cpp_expression_without_side_effects_highlighting = warning -resharper_cpp_final_function_in_final_class_highlighting = suggestion -resharper_cpp_final_non_overriding_virtual_function_highlighting = suggestion -resharper_cpp_for_loop_can_be_replaced_with_while_highlighting = suggestion -resharper_cpp_functional_style_cast_highlighting = suggestion -resharper_cpp_function_doesnt_return_value_highlighting = warning -resharper_cpp_function_is_not_implemented_highlighting = warning -resharper_cpp_function_result_should_be_used_highlighting = hint -resharper_cpp_header_has_been_already_included_highlighting = hint -resharper_cpp_hidden_function_highlighting = warning -resharper_cpp_hiding_function_highlighting = warning -resharper_cpp_identical_operands_in_binary_expression_highlighting = warning -resharper_cpp_if_can_be_replaced_by_constexpr_if_highlighting = suggestion -resharper_cpp_implicit_default_constructor_not_available_highlighting = warning -resharper_cpp_incompatible_pointer_conversion_highlighting = warning -resharper_cpp_incomplete_switch_statement_highlighting = warning -resharper_cpp_inconsistent_naming_highlighting = hint -resharper_cpp_incorrect_blank_lines_near_braces_highlighting = none -resharper_cpp_initialized_value_is_always_rewritten_highlighting = warning -resharper_cpp_integral_to_pointer_conversion_highlighting = warning -resharper_cpp_invalid_line_continuation_highlighting = warning -resharper_cpp_join_declaration_and_assignment_highlighting = suggestion -resharper_cpp_lambda_capture_never_used_highlighting = warning -resharper_cpp_local_variable_may_be_const_highlighting = suggestion -resharper_cpp_local_variable_might_not_be_initialized_highlighting = warning -resharper_cpp_local_variable_with_non_trivial_dtor_is_never_used_highlighting = none -resharper_cpp_long_float_highlighting = warning -resharper_cpp_member_function_may_be_const_highlighting = suggestion -resharper_cpp_member_function_may_be_static_highlighting = suggestion -resharper_cpp_member_initializers_order_highlighting = suggestion -resharper_cpp_mismatched_class_tags_highlighting = warning -resharper_cpp_missing_blank_lines_highlighting = none -resharper_cpp_missing_include_guard_highlighting = warning -resharper_cpp_missing_indent_highlighting = none -resharper_cpp_missing_keyword_throw_highlighting = warning -resharper_cpp_missing_linebreak_highlighting = none -resharper_cpp_missing_space_highlighting = none -resharper_cpp_ms_ext_address_of_class_r_value_highlighting = warning -resharper_cpp_ms_ext_binding_r_value_to_lvalue_reference_highlighting = warning -resharper_cpp_ms_ext_copy_elision_in_copy_init_declarator_highlighting = warning -resharper_cpp_ms_ext_double_user_conversion_in_copy_init_highlighting = warning -resharper_cpp_ms_ext_not_initialized_static_const_local_var_highlighting = warning -resharper_cpp_ms_ext_reinterpret_cast_from_nullptr_highlighting = warning -resharper_cpp_multiple_spaces_highlighting = none -resharper_cpp_must_be_public_virtual_to_implement_interface_highlighting = warning -resharper_cpp_mutable_specifier_on_reference_member_highlighting = warning -resharper_cpp_nodiscard_function_without_return_value_highlighting = warning -resharper_cpp_non_exception_safe_resource_acquisition_highlighting = hint -resharper_cpp_non_explicit_conversion_operator_highlighting = hint -resharper_cpp_non_explicit_converting_constructor_highlighting = hint -resharper_cpp_non_inline_function_definition_in_header_file_highlighting = warning -resharper_cpp_non_inline_variable_definition_in_header_file_highlighting = warning -resharper_cpp_not_all_paths_return_value_highlighting = warning -resharper_cpp_no_discard_expression_highlighting = warning -resharper_cpp_object_member_might_not_be_initialized_highlighting = warning -resharper_cpp_outdent_is_off_prev_level_highlighting = none -resharper_cpp_out_parameter_must_be_written_highlighting = warning -resharper_cpp_parameter_may_be_const_highlighting = hint -resharper_cpp_parameter_may_be_const_ptr_or_ref_highlighting = suggestion -resharper_cpp_parameter_names_mismatch_highlighting = hint -resharper_cpp_parameter_never_used_highlighting = hint -resharper_cpp_parameter_value_is_reassigned_highlighting = warning -resharper_cpp_pass_value_parameter_by_const_reference_highlighting = suggestion -resharper_cpp_pointer_conversion_drops_qualifiers_highlighting = warning -resharper_cpp_pointer_to_integral_conversion_highlighting = warning -resharper_cpp_polymorphic_class_with_non_virtual_public_destructor_highlighting = warning -resharper_cpp_possibly_erroneous_empty_statements_highlighting = warning -resharper_cpp_possibly_uninitialized_member_highlighting = warning -resharper_cpp_possibly_unintended_object_slicing_highlighting = warning -resharper_cpp_precompiled_header_is_not_included_highlighting = error -resharper_cpp_precompiled_header_not_found_highlighting = error -resharper_cpp_printf_bad_format_highlighting = warning -resharper_cpp_printf_extra_arg_highlighting = warning -resharper_cpp_printf_missed_arg_highlighting = error -resharper_cpp_printf_risky_format_highlighting = warning -resharper_cpp_private_special_member_function_is_not_implemented_highlighting = warning -resharper_cpp_range_based_for_incompatible_reference_highlighting = warning -resharper_cpp_redefinition_of_default_argument_in_override_function_highlighting = warning -resharper_cpp_redundant_access_specifier_highlighting = hint -resharper_cpp_redundant_base_class_access_specifier_highlighting = hint -resharper_cpp_redundant_base_class_initializer_highlighting = suggestion -resharper_cpp_redundant_blank_lines_highlighting = none -resharper_cpp_redundant_boolean_expression_argument_highlighting = warning -resharper_cpp_redundant_cast_expression_highlighting = hint -resharper_cpp_redundant_complexity_in_comparison_highlighting = suggestion -resharper_cpp_redundant_const_specifier_highlighting = hint -resharper_cpp_redundant_control_flow_jump_highlighting = hint -resharper_cpp_redundant_elaborated_type_specifier_highlighting = hint -resharper_cpp_redundant_else_keyword_highlighting = hint -resharper_cpp_redundant_else_keyword_inside_compound_statement_highlighting = hint -resharper_cpp_redundant_empty_declaration_highlighting = hint -resharper_cpp_redundant_empty_statement_highlighting = hint -resharper_cpp_redundant_inline_specifier_highlighting = hint -resharper_cpp_redundant_lambda_parameter_list_highlighting = hint -resharper_cpp_redundant_linebreak_highlighting = none -resharper_cpp_redundant_member_initializer_highlighting = suggestion -resharper_cpp_redundant_namespace_definition_highlighting = suggestion -resharper_cpp_redundant_parentheses_highlighting = hint -resharper_cpp_redundant_qualifier_highlighting = hint -resharper_cpp_redundant_space_highlighting = none -resharper_cpp_redundant_static_specifier_on_member_allocation_function_highlighting = hint -resharper_cpp_redundant_template_arguments_highlighting = hint -resharper_cpp_redundant_template_keyword_highlighting = warning -resharper_cpp_redundant_typename_keyword_highlighting = warning -resharper_cpp_redundant_void_argument_list_highlighting = suggestion -resharper_cpp_reinterpret_cast_from_void_ptr_highlighting = suggestion -resharper_cpp_remove_redundant_braces_highlighting = none -resharper_cpp_replace_memset_with_zero_initialization_highlighting = suggestion -resharper_cpp_replace_tie_with_structured_binding_highlighting = suggestion -resharper_cpp_return_no_value_in_non_void_function_highlighting = warning -resharper_cpp_smart_pointer_vs_make_function_highlighting = suggestion -resharper_cpp_some_object_members_might_not_be_initialized_highlighting = warning -resharper_cpp_special_function_without_noexcept_specification_highlighting = warning -resharper_cpp_static_data_member_in_unnamed_struct_highlighting = warning -resharper_cpp_static_specifier_on_anonymous_namespace_member_highlighting = suggestion -resharper_cpp_string_literal_to_char_pointer_conversion_highlighting = warning -resharper_cpp_tabs_and_spaces_mismatch_highlighting = none -resharper_cpp_tabs_are_disallowed_highlighting = none -resharper_cpp_tabs_outside_indent_highlighting = none -resharper_cpp_template_arguments_can_be_deduced_highlighting = hint -resharper_cpp_template_parameter_never_used_highlighting = hint -resharper_cpp_template_parameter_shadowing_highlighting = warning -resharper_cpp_this_arg_member_func_delegate_ctor_is_unsuported_by_dot_net_core_highlighting = none -resharper_cpp_throw_expression_can_be_replaced_with_rethrow_highlighting = warning -resharper_cpp_too_wide_scope_highlighting = suggestion -resharper_cpp_too_wide_scope_init_statement_highlighting = hint -resharper_cpp_type_alias_never_used_highlighting = warning -resharper_cpp_ue4_blueprint_callable_function_may_be_const_highlighting = hint -resharper_cpp_ue4_blueprint_callable_function_may_be_static_highlighting = hint -resharper_cpp_ue4_coding_standard_naming_violation_warning_highlighting = hint -resharper_cpp_ue4_coding_standard_u_class_naming_violation_error_highlighting = error -resharper_cpp_ue4_probable_memory_issues_with_u_objects_in_container_highlighting = warning -resharper_cpp_ue4_probable_memory_issues_with_u_object_highlighting = warning -resharper_cpp_ue_blueprint_callable_function_unused_highlighting = warning -resharper_cpp_ue_blueprint_implementable_event_not_implemented_highlighting = warning -resharper_cpp_ue_incorrect_engine_directory_highlighting = error -resharper_cpp_ue_non_existent_input_action_highlighting = warning -resharper_cpp_ue_non_existent_input_axis_highlighting = warning -resharper_cpp_ue_source_file_without_predefined_macros_highlighting = warning -resharper_cpp_ue_source_file_without_standard_library_highlighting = error -resharper_cpp_ue_version_file_doesnt_exist_highlighting = error -resharper_cpp_uninitialized_dependent_base_class_highlighting = warning -resharper_cpp_uninitialized_non_static_data_member_highlighting = warning -resharper_cpp_union_member_of_reference_type_highlighting = warning -resharper_cpp_unnamed_namespace_in_header_file_highlighting = warning -resharper_cpp_unnecessary_whitespace_highlighting = none -resharper_cpp_unreachable_code_highlighting = warning -resharper_cpp_unsigned_zero_comparison_highlighting = warning -resharper_cpp_unused_include_directive_highlighting = warning -resharper_cpp_user_defined_literal_suffix_does_not_start_with_underscore_highlighting = warning -resharper_cpp_use_algorithm_with_count_highlighting = suggestion -resharper_cpp_use_associative_contains_highlighting = suggestion -resharper_cpp_use_auto_for_numeric_highlighting = hint -resharper_cpp_use_auto_highlighting = hint -resharper_cpp_use_elements_view_highlighting = suggestion -resharper_cpp_use_erase_algorithm_highlighting = suggestion -resharper_cpp_use_familiar_template_syntax_for_generic_lambdas_highlighting = suggestion -resharper_cpp_use_of_undeclared_class_highlighting = hint -resharper_cpp_use_range_algorithm_highlighting = suggestion -resharper_cpp_use_std_size_highlighting = suggestion -resharper_cpp_use_structured_binding_highlighting = hint -resharper_cpp_use_type_trait_alias_highlighting = suggestion -resharper_cpp_using_result_of_assignment_as_condition_highlighting = warning -resharper_cpp_u_function_macro_call_has_no_effect_highlighting = warning -resharper_cpp_u_property_macro_call_has_no_effect_highlighting = warning -resharper_cpp_variable_can_be_made_constexpr_highlighting = suggestion -resharper_cpp_virtual_function_call_inside_ctor_highlighting = warning -resharper_cpp_virtual_function_in_final_class_highlighting = warning -resharper_cpp_volatile_parameter_in_declaration_highlighting = suggestion -resharper_cpp_wrong_includes_order_highlighting = hint -resharper_cpp_wrong_indent_size_highlighting = none -resharper_cpp_wrong_slashes_in_include_directive_highlighting = hint -resharper_cpp_zero_constant_can_be_replaced_with_nullptr_highlighting = suggestion -resharper_cpp_zero_valued_expression_used_as_null_pointer_highlighting = warning -resharper_c_declaration_with_implicit_int_type_highlighting = warning +public virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualresharper_c_declaration_with_implicit_int_type_highlighting = warning resharper_c_sharp_build_cs_invalid_module_name_highlighting = warning resharper_c_sharp_missing_plugin_dependency_highlighting = warning resharper_default_value_attribute_for_optional_parameter_highlighting = warning @@ -3285,83 +1717,7 @@ resharper_value_parameter_not_used_highlighting = warning resharper_value_range_attribute_violation_highlighting = warning resharper_variable_can_be_not_nullable_highlighting = warning resharper_variable_hides_outer_variable_highlighting = warning -resharper_vb_check_for_reference_equality_instead_1_highlighting = suggestion -resharper_vb_check_for_reference_equality_instead_2_highlighting = suggestion -resharper_vb_possible_mistaken_argument_highlighting = warning -resharper_vb_possible_mistaken_call_to_get_type_1_highlighting = warning -resharper_vb_possible_mistaken_call_to_get_type_2_highlighting = warning -resharper_vb_remove_to_list_1_highlighting = suggestion -resharper_vb_remove_to_list_2_highlighting = suggestion -resharper_vb_replace_with_first_or_default_highlighting = suggestion -resharper_vb_replace_with_last_or_default_highlighting = suggestion -resharper_vb_replace_with_of_type_1_highlighting = suggestion -resharper_vb_replace_with_of_type_2_highlighting = suggestion -resharper_vb_replace_with_of_type_any_1_highlighting = suggestion -resharper_vb_replace_with_of_type_any_2_highlighting = suggestion -resharper_vb_replace_with_of_type_count_1_highlighting = suggestion -resharper_vb_replace_with_of_type_count_2_highlighting = suggestion -resharper_vb_replace_with_of_type_first_1_highlighting = suggestion -resharper_vb_replace_with_of_type_first_2_highlighting = suggestion -resharper_vb_replace_with_of_type_first_or_default_1_highlighting = suggestion -resharper_vb_replace_with_of_type_first_or_default_2_highlighting = suggestion -resharper_vb_replace_with_of_type_last_1_highlighting = suggestion -resharper_vb_replace_with_of_type_last_2_highlighting = suggestion -resharper_vb_replace_with_of_type_last_or_default_1_highlighting = suggestion -resharper_vb_replace_with_of_type_last_or_default_2_highlighting = suggestion -resharper_vb_replace_with_of_type_single_1_highlighting = suggestion -resharper_vb_replace_with_of_type_single_2_highlighting = suggestion -resharper_vb_replace_with_of_type_single_or_default_1_highlighting = suggestion -resharper_vb_replace_with_of_type_single_or_default_2_highlighting = suggestion -resharper_vb_replace_with_of_type_where_highlighting = suggestion -resharper_vb_replace_with_single_assignment_1_highlighting = suggestion -resharper_vb_replace_with_single_assignment_2_highlighting = suggestion -resharper_vb_replace_with_single_call_to_any_highlighting = suggestion -resharper_vb_replace_with_single_call_to_count_highlighting = suggestion -resharper_vb_replace_with_single_call_to_first_highlighting = suggestion -resharper_vb_replace_with_single_call_to_first_or_default_highlighting = suggestion -resharper_vb_replace_with_single_call_to_last_highlighting = suggestion -resharper_vb_replace_with_single_call_to_last_or_default_highlighting = suggestion -resharper_vb_replace_with_single_call_to_single_highlighting = suggestion -resharper_vb_replace_with_single_call_to_single_or_default_highlighting = suggestion -resharper_vb_replace_with_single_or_default_highlighting = suggestion -resharper_vb_simplify_linq_expression_10_highlighting = hint -resharper_vb_simplify_linq_expression_1_highlighting = suggestion -resharper_vb_simplify_linq_expression_2_highlighting = suggestion -resharper_vb_simplify_linq_expression_3_highlighting = suggestion -resharper_vb_simplify_linq_expression_4_highlighting = suggestion -resharper_vb_simplify_linq_expression_5_highlighting = suggestion -resharper_vb_simplify_linq_expression_6_highlighting = suggestion -resharper_vb_simplify_linq_expression_7_highlighting = hint -resharper_vb_simplify_linq_expression_8_highlighting = hint -resharper_vb_simplify_linq_expression_9_highlighting = hint -resharper_vb_string_compare_is_culture_specific_1_highlighting = warning -resharper_vb_string_compare_is_culture_specific_2_highlighting = warning -resharper_vb_string_compare_is_culture_specific_3_highlighting = warning -resharper_vb_string_compare_is_culture_specific_4_highlighting = warning -resharper_vb_string_compare_is_culture_specific_5_highlighting = warning -resharper_vb_string_compare_is_culture_specific_6_highlighting = warning -resharper_vb_string_compare_to_is_culture_specific_highlighting = warning -resharper_vb_string_ends_with_is_culture_specific_highlighting = none -resharper_vb_string_index_of_is_culture_specific_1_highlighting = warning -resharper_vb_string_index_of_is_culture_specific_2_highlighting = warning -resharper_vb_string_index_of_is_culture_specific_3_highlighting = warning -resharper_vb_string_last_index_of_is_culture_specific_1_highlighting = warning -resharper_vb_string_last_index_of_is_culture_specific_2_highlighting = warning -resharper_vb_string_last_index_of_is_culture_specific_3_highlighting = warning -resharper_vb_string_starts_with_is_culture_specific_highlighting = none -resharper_vb_unreachable_code_highlighting = warning -resharper_vb_use_array_creation_expression_1_highlighting = suggestion -resharper_vb_use_array_creation_expression_2_highlighting = suggestion -resharper_vb_use_first_instead_highlighting = warning -resharper_vb_use_method_any_1_highlighting = suggestion -resharper_vb_use_method_any_2_highlighting = suggestion -resharper_vb_use_method_any_3_highlighting = suggestion -resharper_vb_use_method_any_4_highlighting = suggestion -resharper_vb_use_method_any_5_highlighting = suggestion -resharper_vb_use_method_is_instance_of_type_highlighting = suggestion -resharper_vb_use_type_of_is_operator_1_highlighting = suggestion -resharper_vb_use_type_of_is_operator_2_highlighting = suggestion -resharper_virtual_member_call_in_constructor_highlighting = warning +public virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualpublic virtualresharper_virtual_member_call_in_constructor_highlighting = warning resharper_virtual_member_never_overridden_global_highlighting = suggestion resharper_virtual_member_never_overridden_local_highlighting = suggestion resharper_void_method_with_must_use_return_value_attribute_highlighting = warning @@ -3438,16 +1794,3 @@ resharper_xaml_xaml_xamarin_forms_data_type_and_binding_context_type_mismatched_ resharper_xaml_x_key_attribute_disallowed_highlighting = error resharper_xunit_xunit_test_with_console_output_highlighting = warning resharper_zero_index_from_end_highlighting = warning - -[{*.har,*.jsb2,*.jsb3,*.json,.babelrc,.eslintrc,.stylelintrc,bowerrc,jest.config}] -indent_style = space -indent_size = 2 - -[*.js.map] -indent_style = space -indent_size = 2 - -[*.{appxmanifest,asax,ascx,aspx,axaml,build,cg,cginc,compute,cs,cshtml,dtd,fx,fxh,hlsl,hlsli,hlslinc,master,nuspec,paml,razor,resw,resx,skin,usf,ush,vb,xaml,xamlx,xoml,xsd}] -indent_style = space -indent_size = 4 -tab_width = 4 diff --git a/.gitignore b/.gitignore index 5350fd3..ea15c2f 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,10 @@ matrix-sync.json /patches/ MatrixRoomUtils.Bot/bot_data/ appsettings.Local*.json +nixpkgs/ + +test.tsv +test-proxy.tsv +homeservers.txt +LoginPayload.txt +LoginPayload.txt.old diff --git a/.gitmodules b/.gitmodules index 01f5add..1abc4e3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "MxApiExtensions"] path = MxApiExtensions url = https://git.rory.gay/matrix/MxApiExtensions.git +[submodule "ArcaneLibs"] + path = ArcaneLibs + url = https://github.com/TheArcaneBrony/ArcaneLibs.git diff --git a/.idea/.idea.MatrixRoomUtils/.idea/codeStyles/codeStyleConfig.xml b/.idea/.idea.MatrixRoomUtils/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..a55e7a1 --- /dev/null +++ b/.idea/.idea.MatrixRoomUtils/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/.idea.MatrixRoomUtils/.idea/vcs.xml b/.idea/.idea.MatrixRoomUtils/.idea/vcs.xml index 4720c89..94a25f7 100644 --- a/.idea/.idea.MatrixRoomUtils/.idea/vcs.xml +++ b/.idea/.idea.MatrixRoomUtils/.idea/vcs.xml @@ -2,6 +2,5 @@ - \ No newline at end of file diff --git a/ArcaneLibs b/ArcaneLibs new file mode 160000 index 0000000..78587a5 --- /dev/null +++ b/ArcaneLibs @@ -0,0 +1 @@ +Subproject commit 78587a5303754af87cdd999b7514e42b081aaceb diff --git a/LibMatrix b/LibMatrix index cb8846a..6bd0224 160000 --- a/LibMatrix +++ b/LibMatrix @@ -1 +1 @@ -Subproject commit cb8846a7a3310f8513989da5aadb5202f048a1b3 +Subproject commit 6bd02248ccfbcb46960a6f39eaad23888d190eb5 diff --git a/MatrixRoomUtils.Desktop/App.axaml.cs b/MatrixRoomUtils.Desktop/App.axaml.cs index e0b50a5..33f2c13 100644 --- a/MatrixRoomUtils.Desktop/App.axaml.cs +++ b/MatrixRoomUtils.Desktop/App.axaml.cs @@ -4,7 +4,6 @@ using Avalonia.Markup.Xaml; using LibMatrix.Services; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; -using Sentry; namespace MatrixRoomUtils.Desktop; diff --git a/MatrixRoomUtils.Desktop/Components/RoomListEntry.axaml.cs b/MatrixRoomUtils.Desktop/Components/RoomListEntry.axaml.cs index 359deb3..6cdb767 100644 --- a/MatrixRoomUtils.Desktop/Components/RoomListEntry.axaml.cs +++ b/MatrixRoomUtils.Desktop/Components/RoomListEntry.axaml.cs @@ -28,7 +28,7 @@ public partial class RoomListEntry : UserControl { private async Task GetRoomName() { try { var nameEvent = await _roomInfo.GetStateEvent("m.room.name"); - if (nameEvent?.TypedContent is RoomNameEventData nameData) + if (nameEvent?.TypedContent is RoomNameEventContent nameData) RoomName.Content = nameData.Name; } catch (MatrixException e) { @@ -40,7 +40,7 @@ public partial class RoomListEntry : UserControl { private async Task GetRoomIcon() { try { var avatarEvent = await _roomInfo.GetStateEvent("m.room.avatar"); - if (avatarEvent?.TypedContent is RoomAvatarEventData avatarData) { + if (avatarEvent?.TypedContent is RoomAvatarEventContent avatarData) { var mxcUrl = avatarData.Url; await using var svc = _serviceScopeFactory.CreateAsyncScope(); var hs = await svc.ServiceProvider.GetService().GetCurrentSessionOrPrompt(); diff --git a/MatrixRoomUtils.Desktop/FileStorageProvider.cs b/MatrixRoomUtils.Desktop/FileStorageProvider.cs index b3850b0..7f73cf3 100644 --- a/MatrixRoomUtils.Desktop/FileStorageProvider.cs +++ b/MatrixRoomUtils.Desktop/FileStorageProvider.cs @@ -1,4 +1,5 @@ using System.Text.Json; +using ArcaneLibs.Extensions; using LibMatrix.Extensions; using LibMatrix.Interfaces.Services; using Microsoft.Extensions.Logging; diff --git a/MatrixRoomUtils.Desktop/MRUStorageWrapper.cs b/MatrixRoomUtils.Desktop/MRUStorageWrapper.cs index 2243092..bc01774 100644 --- a/MatrixRoomUtils.Desktop/MRUStorageWrapper.cs +++ b/MatrixRoomUtils.Desktop/MRUStorageWrapper.cs @@ -1,4 +1,5 @@ using LibMatrix; +using LibMatrix.Homeservers; using LibMatrix.Responses; using LibMatrix.Services; @@ -44,7 +45,7 @@ public class MRUStorageWrapper(TieredStorageService storageService, HomeserverPr await SetCurrentToken(loginResponse); } - private async Task GetCurrentSession() { + private async Task GetCurrentSession() { var token = await GetCurrentToken(); if (token == null) { return null; @@ -53,8 +54,8 @@ public class MRUStorageWrapper(TieredStorageService storageService, HomeserverPr return await homeserverProviderService.GetAuthenticatedWithToken(token.Homeserver, token.AccessToken); } - public async Task GetCurrentSessionOrPrompt() { - AuthenticatedHomeServer? session = null; + public async Task GetCurrentSessionOrPrompt() { + AuthenticatedHomeserverGeneric? session = null; try { //catch if the token is invalid diff --git a/MatrixRoomUtils.Desktop/MainWindow.axaml.cs b/MatrixRoomUtils.Desktop/MainWindow.axaml.cs index 135542b..0bed93d 100644 --- a/MatrixRoomUtils.Desktop/MainWindow.axaml.cs +++ b/MatrixRoomUtils.Desktop/MainWindow.axaml.cs @@ -1,5 +1,4 @@ using Avalonia.Controls; -using Avalonia.Data; using Avalonia.Interactivity; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; diff --git a/MatrixRoomUtils.Desktop/MatrixRoomUtils.Desktop.csproj b/MatrixRoomUtils.Desktop/MatrixRoomUtils.Desktop.csproj index 4dc9558..d21b5fe 100644 --- a/MatrixRoomUtils.Desktop/MatrixRoomUtils.Desktop.csproj +++ b/MatrixRoomUtils.Desktop/MatrixRoomUtils.Desktop.csproj @@ -20,13 +20,13 @@ - - - - + + + + - - + + @@ -35,7 +35,6 @@ - diff --git a/MatrixRoomUtils.Desktop/RoomInfo.cs b/MatrixRoomUtils.Desktop/RoomInfo.cs index 4e76247..ebd80ab 100644 --- a/MatrixRoomUtils.Desktop/RoomInfo.cs +++ b/MatrixRoomUtils.Desktop/RoomInfo.cs @@ -1,4 +1,5 @@ using LibMatrix; +using LibMatrix.Interfaces; using LibMatrix.Responses; using LibMatrix.RoomTypes; @@ -23,7 +24,7 @@ public class RoomInfo { StateKey = stateKey }; try { - @event.TypedContent = await Room.GetStateAsync(type, stateKey); + @event.TypedContent = await Room.GetStateAsync(type, stateKey); } catch (MatrixException e) { if (e is { ErrorCode: "M_NOT_FOUND" }) @event.TypedContent = default!; diff --git a/MatrixRoomUtils.Web.Server/MatrixRoomUtils.Web.Server.csproj b/MatrixRoomUtils.Web.Server/MatrixRoomUtils.Web.Server.csproj index f89a603..e7ea9aa 100644 --- a/MatrixRoomUtils.Web.Server/MatrixRoomUtils.Web.Server.csproj +++ b/MatrixRoomUtils.Web.Server/MatrixRoomUtils.Web.Server.csproj @@ -4,6 +4,7 @@ net7.0 enable enable + preview diff --git a/MatrixRoomUtils.Web/Classes/MRUStorageWrapper.cs b/MatrixRoomUtils.Web/Classes/MRUStorageWrapper.cs index 14625fd..8ea85e9 100644 --- a/MatrixRoomUtils.Web/Classes/MRUStorageWrapper.cs +++ b/MatrixRoomUtils.Web/Classes/MRUStorageWrapper.cs @@ -1,4 +1,5 @@ using LibMatrix; +using LibMatrix.Homeservers; using LibMatrix.Responses; using LibMatrix.Services; using Microsoft.AspNetCore.Components; @@ -20,13 +21,13 @@ public class MRUStorageWrapper { _navigationManager = navigationManager; } - public async Task?> GetAllTokens() { - return await _storageService.DataStorageProvider.LoadObjectAsync>("mru.tokens") ?? - new List(); + public async Task?> GetAllTokens() { + return await _storageService.DataStorageProvider.LoadObjectAsync>("mru.tokens") ?? + new List(); } - public async Task GetCurrentToken() { - var currentToken = await _storageService.DataStorageProvider.LoadObjectAsync("token"); + public async Task GetCurrentToken() { + var currentToken = await _storageService.DataStorageProvider.LoadObjectAsync("token"); var allTokens = await GetAllTokens(); if (allTokens is null or { Count: 0 }) { await SetCurrentToken(null); @@ -44,14 +45,14 @@ public class MRUStorageWrapper { return currentToken; } - public async Task AddToken(LoginResponse loginResponse) { - var tokens = await GetAllTokens() ?? new List(); + public async Task AddToken(UserAuth UserAuth) { + var tokens = await GetAllTokens() ?? new List(); - tokens.Add(loginResponse); + tokens.Add(UserAuth); await _storageService.DataStorageProvider.SaveObjectAsync("mru.tokens", tokens); } - private async Task GetCurrentSession() { + private async Task GetCurrentSession() { var token = await GetCurrentToken(); if (token == null) { return null; @@ -60,8 +61,8 @@ public class MRUStorageWrapper { return await _homeserverProviderService.GetAuthenticatedWithToken(token.Homeserver, token.AccessToken); } - public async Task GetCurrentSessionOrNavigate() { - AuthenticatedHomeServer? session = null; + public async Task GetCurrentSessionOrNavigate() { + AuthenticatedHomeserverGeneric? session = null; try { //catch if the token is invalid @@ -94,7 +95,7 @@ public class MRUStorageWrapper { public bool EnablePortableDevtools { get; set; } } - public async Task RemoveToken(LoginResponse auth) { + public async Task RemoveToken(UserAuth auth) { var tokens = await GetAllTokens(); if (tokens == null) { return; @@ -104,5 +105,5 @@ public class MRUStorageWrapper { await _storageService.DataStorageProvider.SaveObjectAsync("mru.tokens", tokens); } - public async Task SetCurrentToken(LoginResponse? auth) => await _storageService.DataStorageProvider.SaveObjectAsync("token", auth); + public async Task SetCurrentToken(UserAuth? auth) => await _storageService.DataStorageProvider.SaveObjectAsync("token", auth); } diff --git a/MatrixRoomUtils.Web/Classes/RoomCreationTemplates/DefaultRoomCreationTemplate.cs b/MatrixRoomUtils.Web/Classes/RoomCreationTemplates/DefaultRoomCreationTemplate.cs index bb2eab9..3f67f33 100644 --- a/MatrixRoomUtils.Web/Classes/RoomCreationTemplates/DefaultRoomCreationTemplate.cs +++ b/MatrixRoomUtils.Web/Classes/RoomCreationTemplates/DefaultRoomCreationTemplate.cs @@ -2,7 +2,6 @@ using System.Text.Json.Nodes; using LibMatrix; using LibMatrix.Responses; using LibMatrix.StateEventTypes.Spec; -using LibMatrix.StateEventTypes; namespace MatrixRoomUtils.Web.Classes.RoomCreationTemplates; @@ -16,39 +15,39 @@ public class DefaultRoomCreationTemplate : IRoomCreationTemplate { InitialState = new List { new() { Type = "m.room.history_visibility", - TypedContent = new { - history_visibility = "world_readable" + TypedContent = new HistoryVisibilityEventContent() { + HistoryVisibility = "world_readable" } }, new() { Type = "m.room.guest_access", - TypedContent = new GuestAccessEventData { + TypedContent = new GuestAccessEventContent { GuestAccess = "can_join" } }, new() { Type = "m.room.join_rules", - TypedContent = new JoinRulesEventData { + TypedContent = new JoinRulesEventContent { JoinRule = "public" } }, new() { Type = "m.room.server_acl", - TypedContent = new { - allow = new[] { "*" }, - deny = Array.Empty(), - allow_ip_literals = false + TypedContent = new ServerACLEventContent() { + Allow = new List() { "*" }, + Deny = new List(), + AllowIpLiterals = false } }, new() { Type = "m.room.avatar", - TypedContent = new RoomAvatarEventData { + TypedContent = new RoomAvatarEventContent { Url = "mxc://feline.support/UKNhEyrVsrAbYteVvZloZcFj" } } }, Visibility = "public", - PowerLevelContentOverride = new RoomPowerLevelEventData { + PowerLevelContentOverride = new RoomPowerLevelEventContent { UsersDefault = 0, EventsDefault = 100, StateDefault = 50, @@ -56,10 +55,10 @@ public class DefaultRoomCreationTemplate : IRoomCreationTemplate { Redact = 50, Kick = 50, Ban = 50, - NotificationsPl = new RoomPowerLevelEventData.NotificationsPL { + NotificationsPl = new RoomPowerLevelEventContent.NotificationsPL { Room = 50 }, - Events = new Dictionary { + Events = new() { { "im.vector.modular.widgets", 50 }, { "io.element.voice_broadcast_info", 50 }, { "m.reaction", 100 }, @@ -78,7 +77,7 @@ public class DefaultRoomCreationTemplate : IRoomCreationTemplate { { "org.matrix.msc3401.call", 50 }, { "org.matrix.msc3401.call.member", 50 } }, - Users = new Dictionary { + Users = new() { // { RuntimeCache.CurrentHomeServer.UserId, 100 } //TODO: re-implement this } diff --git a/MatrixRoomUtils.Web/Classes/RoomInfo.cs b/MatrixRoomUtils.Web/Classes/RoomInfo.cs index 111bfe0..0e21871 100644 --- a/MatrixRoomUtils.Web/Classes/RoomInfo.cs +++ b/MatrixRoomUtils.Web/Classes/RoomInfo.cs @@ -1,4 +1,5 @@ using LibMatrix; +using LibMatrix.Interfaces; using LibMatrix.Responses; using LibMatrix.RoomTypes; @@ -17,7 +18,7 @@ public class RoomInfo { StateKey = stateKey }; try { - @event.TypedContent = await Room.GetStateAsync(type, stateKey); + @event.TypedContent = await Room.GetStateAsync(type, stateKey); } catch (MatrixException e) { if (e is { ErrorCode: "M_NOT_FOUND" }) @event.TypedContent = default!; diff --git a/MatrixRoomUtils.Web/Classes/UserAuth.cs b/MatrixRoomUtils.Web/Classes/UserAuth.cs new file mode 100644 index 0000000..e6f0954 --- /dev/null +++ b/MatrixRoomUtils.Web/Classes/UserAuth.cs @@ -0,0 +1,15 @@ +using LibMatrix.Responses; + +namespace MatrixRoomUtils.Web.Classes; + +public class UserAuth : LoginResponse { + public UserAuth() { } + public UserAuth(LoginResponse login) { + Homeserver = login.Homeserver; + UserId = login.UserId; + AccessToken = login.AccessToken; + DeviceId = login.DeviceId; + } + + public string? Proxy { get; set; } +} diff --git a/MatrixRoomUtils.Web/MatrixRoomUtils.Web.csproj b/MatrixRoomUtils.Web/MatrixRoomUtils.Web.csproj index fce3cfd..3c8d362 100644 --- a/MatrixRoomUtils.Web/MatrixRoomUtils.Web.csproj +++ b/MatrixRoomUtils.Web/MatrixRoomUtils.Web.csproj @@ -5,17 +5,23 @@ enable enable true + true + preview - - + + + + + + diff --git a/MatrixRoomUtils.Web/Pages/About.razor b/MatrixRoomUtils.Web/Pages/About.razor index 48c7686..17ed04a 100644 --- a/MatrixRoomUtils.Web/Pages/About.razor +++ b/MatrixRoomUtils.Web/Pages/About.razor @@ -1,6 +1,5 @@ @page "/About" @using System.Net -@using System.Net.Sockets @inject NavigationManager NavigationManager @inject ILocalStorageService LocalStorage diff --git a/MatrixRoomUtils.Web/Pages/DebugTools.razor b/MatrixRoomUtils.Web/Pages/DebugTools.razor index afb1da2..5d47277 100644 --- a/MatrixRoomUtils.Web/Pages/DebugTools.razor +++ b/MatrixRoomUtils.Web/Pages/DebugTools.razor @@ -1,7 +1,9 @@ @page "/Debug" @using System.Reflection +@using ArcaneLibs.Extensions +@using LibMatrix @using LibMatrix.Extensions -@using LibMatrix.Interfaces +@using LibMatrix.Homeservers @inject ILocalStorageService LocalStorage @inject NavigationManager NavigationManager

Debug Tools

@@ -50,7 +52,7 @@ else { string get_request_result { get; set; } = ""; private async Task SendGetRequest() { - var field = typeof(IHomeServer).GetRuntimeFields().First(x => x.ToString().Contains("<_httpClient>k__BackingField")); + var field = typeof(RemoteHomeServer).GetRuntimeFields().First(x => x.ToString().Contains("<_httpClient>k__BackingField")); var hs = await MRUStorage.GetCurrentSessionOrNavigate(); if (hs == null) return; var httpClient = field.GetValue(hs) as MatrixHttpClient; diff --git a/MatrixRoomUtils.Web/Pages/DevOptions.razor b/MatrixRoomUtils.Web/Pages/DevOptions.razor index bf499a3..8511a26 100644 --- a/MatrixRoomUtils.Web/Pages/DevOptions.razor +++ b/MatrixRoomUtils.Web/Pages/DevOptions.razor @@ -1,5 +1,6 @@ @page "/DevOptions" @using LibMatrix.Extensions +@using ArcaneLibs.Extensions @inject NavigationManager NavigationManager @inject ILocalStorageService LocalStorage diff --git a/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor b/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor index 679f324..a4f9d97 100644 --- a/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor +++ b/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor @@ -1,8 +1,10 @@ @page "/HSAdmin/RoomQuery" -@using MatrixRoomUtils.Web.Shared.SimpleComponents @using LibMatrix.Responses.Admin @using LibMatrix.Filters @using LibMatrix.Extensions +@using LibMatrix +@using LibMatrix.Homeservers +@using ArcaneLibs.Extensions

Homeserver Administration - Room Query

@@ -168,15 +170,17 @@ private async Task Search() { Results.Clear(); var hs = await MRUStorage.GetCurrentSessionOrNavigate(); - if (hs is null) return; - var searchRooms = hs.Admin.SearchRoomsAsync(orderBy: OrderBy!, dir: Ascending ? "f" : "b", searchTerm: SearchTerm, localFilter: Filter).GetAsyncEnumerator(); - while (await searchRooms.MoveNextAsync()) { - var room = searchRooms.Current; - Console.WriteLine("Hit: " + room.ToJson(false)); - Results.Add(room); - if (Results.Count % 10 == 0) - StateHasChanged(); + if (hs is AuthenticatedHomeserverSynapse synapse) { + var searchRooms = synapse.Admin.SearchRoomsAsync(orderBy: OrderBy!, dir: Ascending ? "f" : "b", searchTerm: SearchTerm, localFilter: Filter).GetAsyncEnumerator(); + while (await searchRooms.MoveNextAsync()) { + var room = searchRooms.Current; + Console.WriteLine("Hit: " + room.ToJson(false)); + Results.Add(room); + if (Results.Count % 10 == 0) + StateHasChanged(); + } } + } private readonly Dictionary validOrderBy = new() { diff --git a/MatrixRoomUtils.Web/Pages/Index.razor b/MatrixRoomUtils.Web/Pages/Index.razor index 1004ee3..e02c733 100644 --- a/MatrixRoomUtils.Web/Pages/Index.razor +++ b/MatrixRoomUtils.Web/Pages/Index.razor @@ -1,8 +1,9 @@ @page "/" -@using MatrixRoomUtils.Web.Shared.SimpleComponents @using LibMatrix.Responses @using LibMatrix @using LibMatrix.Helpers +@using LibMatrix.Homeservers +@using ArcaneLibs.Extensions Index @@ -13,25 +14,38 @@ Small collection of tools to do not-so-everyday things.
Signed in accounts - Add new account

- @foreach (var (auth, user) in _users.OrderByDescending(x=>x.Value.RoomCount)) { - var _auth = auth; -
- -

- - @user.DisplayName on @_auth.Homeserver - Remove + + @foreach (var (auth, user) in _users.OrderByDescending(x => x.Value.RoomCount)) { + var _auth = auth; + + + + + @* *@ + + } +
+ + +

+ Manage + Remove +

+

@code { - private Dictionary _users = new(); + private Dictionary _users = new(); protected override async Task OnInitializedAsync() { _currentSession = await MRUStorage.GetCurrentToken(); @@ -39,13 +53,13 @@ Small collection of tools to do not-so-everyday things. var tokens = await MRUStorage.GetAllTokens(); var profileTasks = tokens.Select(async token => { UserInfo userInfo = new(); - AuthenticatedHomeServer hs; + AuthenticatedHomeserverGeneric hs; try { hs = await HomeserverProvider.GetAuthenticatedWithToken(token.Homeserver, token.AccessToken); } catch (MatrixException e) { if (e.ErrorCode == "M_UNKNOWN_TOKEN") { - NavigationManager.NavigateTo("/InvalidSession?ctx="+token.AccessToken); + NavigationManager.NavigateTo("/InvalidSession?ctx=" + token.AccessToken); return; } throw; @@ -53,6 +67,7 @@ Small collection of tools to do not-so-everyday things. var roomCountTask = hs.GetJoinedRooms(); var profile = await hs.GetProfile(hs.WhoAmI.UserId); userInfo.DisplayName = profile.DisplayName ?? hs.WhoAmI.UserId; + Console.WriteLine(profile.ToJson()); userInfo.AvatarUrl = MediaResolver.ResolveMediaUri(hs.FullHomeServerDomain, profile.AvatarUrl ?? "https://api.dicebear.com/6.x/identicon/svg?seed=" + hs.WhoAmI.UserId @@ -71,7 +86,7 @@ Small collection of tools to do not-so-everyday things. internal int RoomCount { get; set; } } - private async Task RemoveUser(LoginResponse auth) { + private async Task RemoveUser(UserAuth auth) { await MRUStorage.RemoveToken(auth); if ((await MRUStorage.GetCurrentToken()).AccessToken == auth.AccessToken) MRUStorage.SetCurrentToken((await MRUStorage.GetAllTokens()).FirstOrDefault()); @@ -80,8 +95,8 @@ Small collection of tools to do not-so-everyday things. private LoginResponse _currentSession; - private async Task SwitchSession(LoginResponse auth) { - Console.WriteLine($"Switching to {auth.Homeserver} {auth.AccessToken} {auth.UserId}"); + private async Task SwitchSession(UserAuth auth) { + Console.WriteLine($"Switching to {auth.Homeserver} {auth.UserId} via {auth.Proxy}"); await MRUStorage.SetCurrentToken(auth); await OnInitializedAsync(); } diff --git a/MatrixRoomUtils.Web/Pages/Index.razor.css b/MatrixRoomUtils.Web/Pages/Index.razor.css new file mode 100644 index 0000000..c6b7bd7 --- /dev/null +++ b/MatrixRoomUtils.Web/Pages/Index.razor.css @@ -0,0 +1,25 @@ +.user-entry { + margin-bottom: 1em; +} + +.avatar { + width: 4em; + height: 4em; + border-radius: 50%; + margin-right: 0.5em; + vertical-align: middle; +} + +.user-entry > td { + margin-right: 0.5em; + vertical-align: middle; +} + +.user-info { + margin-bottom: 0.5em; + display: inline-block; + vertical-align: middle; +} +.user-info > p { + margin: 0; +} diff --git a/MatrixRoomUtils.Web/Pages/InvalidSession.razor b/MatrixRoomUtils.Web/Pages/InvalidSession.razor index f555be5..310abb1 100644 --- a/MatrixRoomUtils.Web/Pages/InvalidSession.razor +++ b/MatrixRoomUtils.Web/Pages/InvalidSession.razor @@ -1,5 +1,4 @@ @page "/InvalidSession" -@using MatrixRoomUtils.Web.Shared.SimpleComponents @using LibMatrix.Responses @using LibMatrix @@ -33,7 +32,7 @@ else { [SupplyParameterFromQuery(Name = "ctx")] public string Context { get; set; } - private LoginResponse? _login { get; set; } + private UserAuth? _login { get; set; } private bool _showRefreshDialog { get; set; } @@ -70,7 +69,7 @@ else { await Task.CompletedTask; } - private async Task SwitchSession(LoginResponse auth) { + private async Task SwitchSession(UserAuth auth) { Console.WriteLine($"Switching to {auth.Homeserver} {auth.AccessToken} {auth.UserId}"); await MRUStorage.SetCurrentToken(auth); await OnInitializedAsync(); @@ -79,7 +78,7 @@ else { private async Task TryLogin() { if(_login is null) throw new NullReferenceException("Login is null!"); try { - var result = await HomeserverProvider.Login(_login.Homeserver, _login.UserId, _password); + var result = new UserAuth(await HomeserverProvider.Login(_login.Homeserver, _login.UserId, _password)); if (result is null) { Console.WriteLine($"Failed to login to {_login.Homeserver} as {_login.UserId}!"); return; diff --git a/MatrixRoomUtils.Web/Pages/KnownHomeserverList.razor b/MatrixRoomUtils.Web/Pages/KnownHomeserverList.razor index 22a004d..4cd2032 100644 --- a/MatrixRoomUtils.Web/Pages/KnownHomeserverList.razor +++ b/MatrixRoomUtils.Web/Pages/KnownHomeserverList.razor @@ -1,10 +1,10 @@ @page "/KnownHomeserverList" -@using System.Text.Json @using System.Diagnostics +@using ArcaneLibs.Extensions @using LibMatrix @using LibMatrix.Extensions +@using LibMatrix.Homeservers @using LibMatrix.RoomTypes -@using LibMatrix.StateEventTypes

Known Homeserver List


@@ -36,7 +36,7 @@ else { List HomeServers = new(); bool IsFinished { get; set; } HomeServerInfoQueryProgress QueryProgress { get; set; } = new(); - AuthenticatedHomeServer hs { get; set; } + AuthenticatedHomeserverGeneric hs { get; set; } protected override async Task OnInitializedAsync() { hs = await MRUStorage.GetCurrentSessionOrNavigate(); if (hs is null) return; @@ -91,7 +91,7 @@ else { - // states.RemoveAll(x => x.Type != "m.room.member" || (x.TypedContent as RoomMemberEventData).Membership != "join"); + // states.RemoveAll(x => x.Type != "m.room.member" || (x.TypedContent as RoomMemberEventContent).Membership != "join"); // Console.WriteLine($"Room {room.RoomId} has {states.Count} members"); // if (states.Count > memberLimit) { // Console.WriteLine("Skipping!"); diff --git a/MatrixRoomUtils.Web/Pages/LoginPage.razor b/MatrixRoomUtils.Web/Pages/LoginPage.razor index 9730cbe..a6ce469 100644 --- a/MatrixRoomUtils.Web/Pages/LoginPage.razor +++ b/MatrixRoomUtils.Web/Pages/LoginPage.razor @@ -1,7 +1,6 @@ @page "/Login" @using System.Text.Json @using LibMatrix.Responses -@using MatrixRoomUtils.Web.Shared.SimpleComponents @inject ILocalStorageService LocalStorage @inject IJSRuntime JsRuntime

Login

@@ -12,6 +11,8 @@ -->: + via + @@ -29,13 +30,27 @@ Username Homeserver + Password + Proxy - @foreach (var (homeserver, username, password) in records) { - var record = (homeserver, username, password); - - @username - @homeserver - Remove + @foreach (var record in records) { + var r = record; + + + + + + + + + + + + + + + Remove + } @@ -45,17 +60,19 @@ @code { - readonly List<(string homeserver, string username, string password)> records = new(); - (string homeserver, string username, string password) newRecordInput = ("", "", ""); + readonly List<(string homeserver, string username, string password, string? proxy)> records = new(); + (string homeserver, string username, string password, string? proxy) newRecordInput = ("", "", "", null); - List LoggedInSessions { get; set; } = new(); + List? LoggedInSessions { get; set; } = new(); async Task Login() { var loginTasks = records.Select(async record => { - var (homeserver, username, password) = record; - if (LoggedInSessions.Any(x => x.UserId == $"@{username}:{homeserver}")) return; + var (homeserver, username, password, proxy) = record; + if (LoggedInSessions.Any(x => x.UserId == $"@{username}:{homeserver}" && x.Proxy == proxy)) return; try { - var result = await HomeserverProvider.Login(homeserver, username, password); + var result = new UserAuth(await HomeserverProvider.Login(homeserver, username, password, proxy)) { + Proxy = proxy + }; if (result == null) { Console.WriteLine($"Failed to login to {homeserver} as {username}!"); return; @@ -81,20 +98,21 @@ })); await using var rs = obj.File.OpenReadStream(); using var sr = new StreamReader(rs); - var TsvData = await sr.ReadToEndAsync(); + var tsvData = await sr.ReadToEndAsync(); records.Clear(); - foreach (var line in TsvData.Split('\n')) { - var parts = line.Split('\t'); - if (parts.Length != 3) + foreach (var line in tsvData.Split('\n')) { + string?[] parts = line.Split('\t'); + if (parts.Length < 3) continue; - records.Add((parts[0], parts[1], parts[2])); + string? via = parts.Length > 3 ? parts[3] : null; + records.Add((parts[0], parts[1], parts[2], via)); } } private async Task AddRecord() { LoggedInSessions = await MRUStorage.GetAllTokens(); records.Add(newRecordInput); - newRecordInput = ("", "", ""); + newRecordInput = ("", "", "", null); } } diff --git a/MatrixRoomUtils.Web/Pages/MediaLocator.razor b/MatrixRoomUtils.Web/Pages/MediaLocator.razor index af6e67a..42c7b8e 100644 --- a/MatrixRoomUtils.Web/Pages/MediaLocator.razor +++ b/MatrixRoomUtils.Web/Pages/MediaLocator.razor @@ -1,5 +1,6 @@ @page "/MediaLocator" @using LibMatrix +@using LibMatrix.Homeservers @inject HttpClient Http

Media locator


diff --git a/MatrixRoomUtils.Web/Pages/ModalTest.razor b/MatrixRoomUtils.Web/Pages/ModalTest.razor index 2b1c9bc..1d14005 100644 --- a/MatrixRoomUtils.Web/Pages/ModalTest.razor +++ b/MatrixRoomUtils.Web/Pages/ModalTest.razor @@ -10,7 +10,7 @@ @for (var j = 0; j < i1; j++) {

@j

- } + }
} @@ -70,7 +70,7 @@ } if(_windowInfos.Count > 750) multiplier = 2; if(_windowInfos.Count > 1500) multiplier = 3; - + } await base.OnInitializedAsync(); diff --git a/MatrixRoomUtils.Web/Pages/Rooms/Create.razor b/MatrixRoomUtils.Web/Pages/Rooms/Create.razor index 3b7d000..c6fd5b6 100644 --- a/MatrixRoomUtils.Web/Pages/Rooms/Create.razor +++ b/MatrixRoomUtils.Web/Pages/Rooms/Create.razor @@ -1,15 +1,15 @@ @page "/Rooms/Create" @using System.Text.Json @using System.Reflection +@using ArcaneLibs.Extensions @using LibMatrix @using LibMatrix.Extensions @using LibMatrix.Helpers +@using LibMatrix.Homeservers @using LibMatrix.Responses @using LibMatrix.StateEventTypes.Spec -@using LibMatrix.StateEventTypes @using MatrixRoomUtils.Web.Classes.RoomCreationTemplates @* @* ReSharper disable once RedundantUsingDirective - Must not remove this, Rider marks this as "unused" when it's not */ *@ -@using MatrixRoomUtils.Web.Shared.SimpleComponents

Room Manager - Create Room

@@ -135,7 +135,7 @@ } else {
- @((creationEvent["m.room.server_acls"].TypedContent as ServerACLEventData).Allow.Count) allow rules + @((creationEvent["m.room.server_acls"].TypedContent as ServerACLEventContent).Allow.Count) allow rules @* *@
} @@ -145,7 +145,7 @@ } else {
- @((creationEvent["m.room.server_acls"].TypedContent as ServerACLEventData).Deny.Count) deny rules + @((creationEvent["m.room.server_acls"].TypedContent as ServerACLEventContent).Deny.Count) deny rules @* *@
} @@ -251,14 +251,14 @@ private CreateRoomRequest? creationEvent { get; set; } private Dictionary? Presets { get; set; } = new(); - private AuthenticatedHomeServer? HomeServer { get; set; } + private AuthenticatedHomeserverGeneric? HomeServer { get; set; } private MatrixException? _matrixException { get; set; } - private HistoryVisibilityEventData? historyVisibility => creationEvent?["m.room.history_visibility"].TypedContent as HistoryVisibilityEventData; - private GuestAccessEventData? guestAccessEvent => creationEvent?["m.room.guest_access"].TypedContent as GuestAccessEventData; - private ServerACLEventData? serverAcl => creationEvent?["m.room.server_acls"].TypedContent as ServerACLEventData; - private RoomAvatarEventData? roomAvatarEvent => creationEvent?["m.room.avatar"].TypedContent as RoomAvatarEventData; + private HistoryVisibilityEventContent? historyVisibility => creationEvent?["m.room.history_visibility"].TypedContent as HistoryVisibilityEventContent; + private GuestAccessEventContent? guestAccessEvent => creationEvent?["m.room.guest_access"].TypedContent as GuestAccessEventContent; + private ServerACLEventContent? serverAcl => creationEvent?["m.room.server_acls"].TypedContent as ServerACLEventContent; + private RoomAvatarEventContent? roomAvatarEvent => creationEvent?["m.room.avatar"].TypedContent as RoomAvatarEventContent; protected override async Task OnInitializedAsync() { HomeServer = await MRUStorage.GetCurrentSessionOrNavigate(); @@ -284,7 +284,7 @@ private async Task RoomIconFilePicked(InputFileChangeEventArgs obj) { var res = await HomeServer.UploadFile(obj.File.Name, obj.File.OpenReadStream(), obj.File.ContentType); Console.WriteLine(res); - (creationEvent["m.room.avatar"].TypedContent as RoomAvatarEventData).Url = res; + (creationEvent["m.room.avatar"].TypedContent as RoomAvatarEventContent).Url = res; StateHasChanged(); } @@ -305,7 +305,7 @@ creationEvent.InitialState.Add(new StateEvent { Type = "m.room.member", StateKey = mxid, - TypedContent = new RoomMemberEventData { + TypedContent = new RoomMemberEventContent { Membership = "invite", Reason = "Automatically invited at room creation time." } diff --git a/MatrixRoomUtils.Web/Pages/Rooms/Index.razor b/MatrixRoomUtils.Web/Pages/Rooms/Index.razor index ad3a714..c2daba7 100644 --- a/MatrixRoomUtils.Web/Pages/Rooms/Index.razor +++ b/MatrixRoomUtils.Web/Pages/Rooms/Index.razor @@ -1,10 +1,10 @@ @page "/Rooms" -@using LibMatrix.StateEventTypes @using LibMatrix.StateEventTypes.Spec @using LibMatrix.Filters @using LibMatrix.Helpers @using LibMatrix.Responses

Room list

+

@Status

@if (RenderContents) { @@ -16,7 +16,7 @@ public List KnownRooms { get; set; } = new(); private List Rooms { get; set; } = new(); - private ProfileResponseEventData GlobalProfile { get; set; } + private ProfileResponseEventContent GlobalProfile { get; set; } private SyncFilter filter = new() { AccountData = new SyncFilter.EventFilter { @@ -93,7 +93,7 @@ if (!roomInfo.StateEvents.Any(x => x.Type == "m.room.name")) { roomInfo.StateEvents.Add(new StateEventResponse { Type = "m.room.name", - TypedContent = new RoomNameEventData { + TypedContent = new RoomNameEventContent { Name = roomInfo.Room.RoomId } }); @@ -101,7 +101,7 @@ if (!roomInfo.StateEvents.Any(x => x.Type == "m.room.avatar")) { roomInfo.StateEvents.Add(new StateEventResponse { Type = "m.room.avatar", - TypedContent = new RoomAvatarEventData { + TypedContent = new RoomAvatarEventContent { } }); @@ -121,7 +121,7 @@ roomInfo.StateEvents.Add(new StateEventResponse { Type = "m.room.member", StateKey = hs.WhoAmI.UserId, - TypedContent = await roomInfo.Room.GetStateAsync("m.room.member", hs.WhoAmI.UserId) ?? new RoomMemberEventData { + TypedContent = await roomInfo.Room.GetStateAsync("m.room.member", hs.WhoAmI.UserId) ?? new RoomMemberEventContent { Membership = "unknown" } }); diff --git a/MatrixRoomUtils.Web/Pages/Rooms/PolicyList.razor b/MatrixRoomUtils.Web/Pages/Rooms/PolicyList.razor index 2b31389..d2b8360 100644 --- a/MatrixRoomUtils.Web/Pages/Rooms/PolicyList.razor +++ b/MatrixRoomUtils.Web/Pages/Rooms/PolicyList.razor @@ -1,11 +1,11 @@ @page "/Rooms/{RoomId}/Policies" -@using LibMatrix.StateEventTypes -@using System.Text.Json @using LibMatrix @using LibMatrix.Extensions @using LibMatrix.Helpers +@using LibMatrix.Homeservers @using LibMatrix.Responses @using LibMatrix.StateEventTypes.Spec +@using ArcaneLibs.Extensions

Policy list editor - Editing @RoomId


@@ -33,8 +33,8 @@ else { - @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.server" && (x.TypedContent as PolicyRuleStateEventData).Entity is not null)) { - var policyData = policyEvent.TypedContent as PolicyRuleStateEventData; + @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.server" && (x.TypedContent as PolicyRuleEventContent).Entity is not null)) { + var policyData = policyEvent.TypedContent as PolicyRuleEventContent; Entity: @policyData.Entity
State: @policyEvent.StateKey @policyData.Reason @@ -59,8 +59,8 @@ else { - @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.server" && (x.TypedContent as PolicyRuleStateEventData).Entity == null)) { - var policyData = policyEvent.TypedContent as PolicyRuleStateEventData; + @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.server" && (x.TypedContent as PolicyRuleEventContent).Entity == null)) { + var policyData = policyEvent.TypedContent as PolicyRuleEventContent; @policyEvent.StateKey @policyEvent.RawContent.ToJson(false, true) @@ -86,8 +86,8 @@ else { - @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.room" && (x.TypedContent as PolicyRuleStateEventData).Entity is not null)) { - var policyData = policyEvent.TypedContent as PolicyRuleStateEventData; + @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.room" && (x.TypedContent as PolicyRuleEventContent).Entity is not null)) { + var policyData = policyEvent.TypedContent as PolicyRuleEventContent; Entity: @policyData.Entity
State: @policyEvent.StateKey @policyData.Reason @@ -111,7 +111,7 @@ else { - @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.room" && (x.TypedContent as PolicyRuleStateEventData).Entity == null)) { + @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.room" && (x.TypedContent as PolicyRuleEventContent).Entity == null)) { @policyEvent.StateKey @policyEvent.RawContent!.ToJson(false, true) @@ -140,8 +140,8 @@ else { - @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.user" && (x.TypedContent as PolicyRuleStateEventData).Entity is not null)) { - var policyData = policyEvent.TypedContent as PolicyRuleStateEventData; + @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.user" && (x.TypedContent as PolicyRuleEventContent).Entity is not null)) { + var policyData = policyEvent.TypedContent as PolicyRuleEventContent; @if (_enableAvatars) { @@ -170,7 +170,7 @@ else { - @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.user" && (x.TypedContent as PolicyRuleStateEventData).Entity == null)) { + @foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.user" && (x.TypedContent as PolicyRuleEventContent).Entity == null)) { @policyEvent.StateKey @policyEvent.RawContent.ToJson(false, true) @@ -245,8 +245,8 @@ else { } private async Task GetAllAvatars() { - foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.user" && (x.TypedContent as PolicyRuleStateEventData).Entity is not null)) { - await GetAvatar((policyEvent.TypedContent as PolicyRuleStateEventData).Entity); + foreach (var policyEvent in PolicyEvents.Where(x => x.Type == "m.policy.rule.user" && (x.TypedContent as PolicyRuleEventContent).Entity is not null)) { + await GetAvatar((policyEvent.TypedContent as PolicyRuleEventContent).Entity); } StateHasChanged(); } diff --git a/MatrixRoomUtils.Web/Pages/Rooms/Space.razor b/MatrixRoomUtils.Web/Pages/Rooms/Space.razor index c37b8ab..ef0ea5a 100644 --- a/MatrixRoomUtils.Web/Pages/Rooms/Space.razor +++ b/MatrixRoomUtils.Web/Pages/Rooms/Space.razor @@ -1,8 +1,8 @@ @page "/Rooms/{RoomId}/Space" -@using System.Text.Json @using LibMatrix.Extensions @using LibMatrix.Responses @using LibMatrix.RoomTypes +@using ArcaneLibs.Extensions

Room manager - Viewing Space

diff --git a/MatrixRoomUtils.Web/Pages/Rooms/StateEditor.razor b/MatrixRoomUtils.Web/Pages/Rooms/StateEditor.razor index ef7cd51..fefcabc 100644 --- a/MatrixRoomUtils.Web/Pages/Rooms/StateEditor.razor +++ b/MatrixRoomUtils.Web/Pages/Rooms/StateEditor.razor @@ -1,8 +1,7 @@ @page "/Rooms/{RoomId}/State/Edit" -@using System.Net.Http.Headers -@using System.Text.Json @using LibMatrix.Extensions @using LibMatrix.Responses +@using ArcaneLibs.Extensions @inject ILocalStorageService LocalStorage @inject NavigationManager NavigationManager

Room state editor - Editing @RoomId

diff --git a/MatrixRoomUtils.Web/Pages/Rooms/StateViewer.razor b/MatrixRoomUtils.Web/Pages/Rooms/StateViewer.razor index 5a48b32..1c3f28b 100644 --- a/MatrixRoomUtils.Web/Pages/Rooms/StateViewer.razor +++ b/MatrixRoomUtils.Web/Pages/Rooms/StateViewer.razor @@ -1,8 +1,7 @@ @page "/Rooms/{RoomId}/State/View" -@using System.Net.Http.Headers -@using System.Text.Json @using LibMatrix.Extensions @using LibMatrix.Responses +@using ArcaneLibs.Extensions @inject ILocalStorageService LocalStorage @inject NavigationManager NavigationManager

Room state viewer - Viewing @RoomId

diff --git a/MatrixRoomUtils.Web/Pages/Rooms/Timeline.razor b/MatrixRoomUtils.Web/Pages/Rooms/Timeline.razor index 4a5298b..2c95c99 100644 --- a/MatrixRoomUtils.Web/Pages/Rooms/Timeline.razor +++ b/MatrixRoomUtils.Web/Pages/Rooms/Timeline.razor @@ -1,6 +1,7 @@ @page "/Rooms/{RoomId}/Timeline" @using MatrixRoomUtils.Web.Shared.TimelineComponents @using LibMatrix +@using LibMatrix.Homeservers @using LibMatrix.Responses @using LibMatrix.StateEventTypes.Spec

RoomManagerTimeline

@@ -23,7 +24,7 @@ private List Messages { get; } = new(); private List Events { get; } = new(); - private AuthenticatedHomeServer? HomeServer { get; set; } + private AuthenticatedHomeserverGeneric? HomeServer { get; set; } protected override async Task OnInitializedAsync() { Console.WriteLine("RoomId: " + RoomId); @@ -46,8 +47,9 @@ private StateEventResponse GetProfileEventBefore(StateEventResponse Event) => Events.TakeWhile(x => x != Event).Last(e => e.Type == "m.room.member" && e.StateKey == Event.Sender); private Type ComponentType(StateEvent Event) => Event.TypedContent switch { - RoomMessageEventData => typeof(TimelineMessageItem), - RoomMemberEventData => typeof(TimelineMemberItem), + RoomMessageEventContent => typeof(TimelineMessageItem), + RoomMemberEventContent => typeof(TimelineMemberItem), + RoomCreateEventContent => typeof(TimelineRoomCreateItem), _ => typeof(TimelineUnknownItem) }; diff --git a/MatrixRoomUtils.Web/Pages/SpaceDebug.razor b/MatrixRoomUtils.Web/Pages/SpaceDebug.razor new file mode 100644 index 0000000..c4c4ce8 --- /dev/null +++ b/MatrixRoomUtils.Web/Pages/SpaceDebug.razor @@ -0,0 +1,114 @@ +@page "/SpaceDebug" +@using LibMatrix.StateEventTypes.Spec +@using LibMatrix.RoomTypes +@using LibMatrix.Filters +

SpaceDebug

+
+ +

@Status

+ +Has parent: +
+ +@foreach (var (roomId, parents) in SpaceParents) { +

@roomId's parents

+
    + @foreach (var parent in parents) { +
  • @parent
  • + } +
+} + +Space children: + +@foreach (var (roomId, children) in SpaceChildren) { +

@roomId's children

+
    + @foreach (var child in children) { +
  • @child
  • + } +
+} + +@code { + private string _status = "Loading..."; + + public string Status { + get => _status; + set { + _status = value; + StateHasChanged(); + } + } + + public Dictionary> SpaceChildren { get; set; } = new(); + public Dictionary> SpaceParents { get; set; } = new(); + + protected override async Task OnInitializedAsync() { + Status = "Getting homeserver..."; + var hs = await MRUStorage.GetCurrentSessionOrNavigate(); + if (hs is null) return; + + Status = "Syncing..."; + string nextBatch = null; + while (nextBatch != "end") { + var sync = await hs.SyncHelper.Sync(since: nextBatch, filter: new SyncFilter() { + Presence = new(0), + Room = new() { + AccountData = new(limit: 0), + Ephemeral = new(limit: 0), + State = new(limit: 1000, types: new() { "m.space.child", "m.space.parent" }), + Timeline = new(limit: 0) + }, + AccountData = new(limit: 0) + }); + + if (sync is null) { + Status = "Sync failed"; + continue; + } + + if (sync.Rooms is null) { + Status = "No rooms in sync..."; + nextBatch = "end"; + continue; + } + + if (sync.Rooms.Join is null) { + Status = "No joined rooms in sync..."; + nextBatch = "end"; + continue; + } + + if (sync.Rooms.Join.Count == 0) { + Status = "Joined rooms list was empty..."; + nextBatch = "end"; + continue; + } + + nextBatch = sync.NextBatch; + foreach (var (roomId, data) in sync.Rooms!.Join!) { + data.State?.Events?.ForEach(e => { + if (e.Type == "m.space.child") { + if (!SpaceChildren.ContainsKey(roomId)) SpaceChildren[roomId] = new(); + if (e.RawContent is null) e.StateKey += " (null)"; + else if (e.RawContent.Count == 0) e.StateKey += " (empty)"; + SpaceChildren[roomId].Add(e.StateKey); + } + if (e.Type == "m.space.parent") { + if (!SpaceParents.ContainsKey(roomId)) SpaceParents[roomId] = new(); + if (e.RawContent is null) e.StateKey += " (null)"; + else if (e.RawContent.Count == 0) e.StateKey += " (empty)"; + SpaceParents[roomId].Add(e.StateKey); + } + }); + } + Status = $"Synced {sync.Rooms.Join.Count} rooms, found {SpaceChildren.Count} spaces, {SpaceParents.Count} parents"; + } + Status = $"Synced: found {SpaceChildren.Count}->{SpaceChildren.Sum(x => x.Value.Count)} spaces, {SpaceParents.Count}->{SpaceParents.Sum(x => x.Value.Count)} parents!"; + + await base.OnInitializedAsync(); + } + + +} diff --git a/MatrixRoomUtils.Web/Shared/InlineUserItem.razor b/MatrixRoomUtils.Web/Shared/InlineUserItem.razor index db66309..af2fa29 100644 --- a/MatrixRoomUtils.Web/Shared/InlineUserItem.razor +++ b/MatrixRoomUtils.Web/Shared/InlineUserItem.razor @@ -2,6 +2,7 @@ @using LibMatrix.StateEventTypes.Spec @using LibMatrix @using LibMatrix.Helpers +@using LibMatrix.Homeservers
@ProfileName @@ -20,10 +21,10 @@ public RenderFragment? ChildContent { get; set; } [Parameter] - public ProfileResponseEventData User { get; set; } + public ProfileResponseEventContent User { get; set; } [Parameter] - public ProfileResponseEventData MemberEvent { get; set; } + public ProfileResponseEventContent MemberEvent { get; set; } [Parameter] public string? UserId { get; set; } @@ -35,7 +36,7 @@ public string? ProfileName { get; set; } = null; [Parameter] - public AuthenticatedHomeServer? HomeServer { get; set; } + public AuthenticatedHomeserverGeneric? HomeServer { get; set; } private static SemaphoreSlim _semaphoreSlim = new(128); @@ -50,7 +51,7 @@ throw new ArgumentNullException(nameof(UserId)); if (MemberEvent != null) { - User = new ProfileResponseEventData { + User = new ProfileResponseEventContent { AvatarUrl = MemberEvent.AvatarUrl, DisplayName = MemberEvent.DisplayName }; diff --git a/MatrixRoomUtils.Web/Shared/ModalWindow.razor b/MatrixRoomUtils.Web/Shared/ModalWindow.razor deleted file mode 100644 index beb7198..0000000 --- a/MatrixRoomUtils.Web/Shared/ModalWindow.razor +++ /dev/null @@ -1,86 +0,0 @@ -@using LibMatrix.Extensions -
-
- @Title - - -
-
- @ChildContent -
-
- -@code { - - [Parameter] - public RenderFragment? ChildContent { get; set; } - - [Parameter] - public string Title { get; set; } = "Untitled window"; - - [Parameter] - public double X { get; set; } = 60; - - [Parameter] - public double Y { get; set; } = 60; - - [Parameter] - public double MinWidth { get; set; } = 100; - - [Parameter] - public Action OnCloseClicked { get; set; } - - [Parameter] - public bool Collapsed { get; set; } = false; - - private ElementReference _titleRef; - - private double _x = 60; - private double _y = 60; - - protected override async Task OnInitializedAsync() { - _x = X; - _y = Y; - await base.OnInitializedAsync(); - } - - protected override async Task OnAfterRenderAsync(bool firstRender) { - //set minwidth to title width - MinWidth = await JSRuntime.InvokeAsync("getWidth", _titleRef) + 75; - await base.OnAfterRenderAsync(firstRender); - } - - private void WindowDrag(DragEventArgs obj) { - Console.WriteLine("Drag: " + obj.ToJson()); - - _x += obj.MovementX; - _y += obj.MovementY; - - StateHasChanged(); - } - - private bool isDragging = false; - private double dragX = 0; - private double dragY = 0; - - private void MouseDown(MouseEventArgs obj) { - isDragging = true; - dragX = obj.ClientX; - dragY = obj.ClientY; - } - - private void MouseUp(MouseEventArgs obj) { - isDragging = false; - } - - private void MouseMove(MouseEventArgs obj) { - if (!isDragging) return; - - _x += obj.ClientX - dragX; - _y += obj.ClientY - dragY; - dragX = obj.ClientX; - dragY = obj.ClientY; - StateHasChanged(); - } - -} diff --git a/MatrixRoomUtils.Web/Shared/ModalWindow.razor.css b/MatrixRoomUtils.Web/Shared/ModalWindow.razor.css deleted file mode 100644 index 6d08114..0000000 --- a/MatrixRoomUtils.Web/Shared/ModalWindow.razor.css +++ /dev/null @@ -1,70 +0,0 @@ -.r-modal { - position: absolute; - width: fit-content; - height: fit-content; - z-index: 1000; -} -.r-modal:hover { - z-index: 1001; -} - -.r-modal > .titlebar { - position: absolute; - display: block; - top: 0; - left: 0; - width: 100%; - height: 25px; - background-color: #000; - user-select: none; -} - -.r-modal > .titlebar > .title { - position: relative; - top: 0; - left: 0; - width: fit-content; - text-wrap: nowrap; - height: 100%; - line-height: 25px; - padding-left: 10px; - color: #fff; -} - -.r-modal > .titlebar > .btnclose { - position: absolute; - top: 0; - right: 0; - width: 25px; - height: 100%; - line-height: 25px; - text-align: center; - color: #fff; - background-color: #111; - cursor: pointer; -} -.r-modal > .titlebar > .btncollapse { - position: absolute; - top: 0; - right: 25px; - width: 25px; - height: 100%; - line-height: 25px; - text-align: center; - color: #fff; - background-color: #111; - cursor: pointer; -} - -.r-modal > .r-modal-content { - position: relative; - top: 25px; - left: 0; - width: fit-content; - height: fit-content; - min-width: 150px; - max-width: 75vw; - max-height: 75vh; - overflow: auto; - background-color: #111; -} diff --git a/MatrixRoomUtils.Web/Shared/RoomList.razor b/MatrixRoomUtils.Web/Shared/RoomList.razor index 3b057a4..b0548cb 100644 --- a/MatrixRoomUtils.Web/Shared/RoomList.razor +++ b/MatrixRoomUtils.Web/Shared/RoomList.razor @@ -3,6 +3,7 @@ @using LibMatrix.StateEventTypes.Spec @using LibMatrix @using LibMatrix.Extensions +@using ArcaneLibs.Extensions @if(Rooms.Count != RoomsWithTypes.Sum(x=>x.Value.Count)) {

Fetching room details... @RoomsWithTypes.Sum(x=>x.Value.Count) out of @Rooms.Count done!

@foreach (var category in RoomsWithTypes.OrderBy(x => x.Value.Count)) { @@ -20,7 +21,7 @@ else { [Parameter] public List Rooms { get; set; } [Parameter] - public ProfileResponseEventData? GlobalProfile { get; set; } + public ProfileResponseEventContent? GlobalProfile { get; set; } Dictionary> RoomsWithTypes = new(); @@ -51,7 +52,7 @@ else { await _semaphoreSlim.WaitAsync(); string roomType; try { - var createEvent = (await room.GetStateEvent("m.room.create")).TypedContent as RoomCreateEventData; + var createEvent = (await room.GetStateEvent("m.room.create")).TypedContent as RoomCreateEventContent; roomType = GetRoomTypeName(createEvent.Type); if (roomType == "Room") { diff --git a/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListCategory.razor b/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListCategory.razor index 381ecd1..d717186 100644 --- a/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListCategory.razor +++ b/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListCategory.razor @@ -2,18 +2,19 @@ @using MatrixRoomUtils.Web.Classes.Constants @using LibMatrix.StateEventTypes.Spec @using LibMatrix +@using LibMatrix.Homeservers
@roomType (@rooms.Count) @foreach (var room in rooms) {
@* @if (RoomVersionDangerLevel(room) != 0 && *@ - @* (room.StateEvents.FirstOrDefault(x=>x.Type == "m.room.power_levels")?.TypedContent is RoomPowerLevelEventData powerLevels && powerLevels.UserHasPermission(HomeServer.UserId, "m.room.tombstone"))) { *@ + @* (room.StateEvents.FirstOrDefault(x=>x.Type == "m.room.power_levels")?.TypedContent is RoomPowerLevelEventContent powerLevels && powerLevels.UserHasPermission(HomeServer.UserId, "m.room.tombstone"))) { *@ @* Upgrade room *@ @* } *@ - View timeline - View state - Edit state + View timeline + View state + Edit state @if (roomType == "Space") { @@ -29,10 +30,10 @@ public KeyValuePair> Category { get; set; } [Parameter] - public ProfileResponseEventData? GlobalProfile { get; set; } + public ProfileResponseEventContent? GlobalProfile { get; set; } [CascadingParameter] - public AuthenticatedHomeServer HomeServer { get; set; } = null!; + public AuthenticatedHomeserverGeneric Homeserver { get; set; } = null!; private string roomType => Category.Key; private List rooms => Category.Value; @@ -40,7 +41,7 @@ private int RoomVersionDangerLevel(RoomInfo room) { var roomVersion = room.StateEvents.FirstOrDefault(x => x.Type == "m.room.create"); if (roomVersion is null) return 0; - return roomVersion.TypedContent is not RoomCreateEventData roomVersionContent ? 0 + return roomVersion.TypedContent is not RoomCreateEventContent roomVersionContent ? 0 : RoomConstants.DangerousRoomVersions.Contains(roomVersionContent.RoomVersion) ? 2 : roomVersionContent.RoomVersion != RoomConstants.RecommendedRoomVersion ? 1 : 0; } diff --git a/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListSpace.razor b/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListSpace.razor index 0867b48..1b54577 100644 --- a/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListSpace.razor +++ b/MatrixRoomUtils.Web/Shared/RoomListComponents/RoomListSpace.razor @@ -30,7 +30,7 @@ protected override async Task OnInitializedAsync() { if (Breadcrumbs == null) throw new ArgumentNullException(nameof(Breadcrumbs)); await Task.Delay(Random.Shared.Next(1000, 10000)); - var rooms = Space.Room.AsSpace.GetRoomsAsync(); + var rooms = Space.Room.AsSpace.GetChildrenAsync(); await foreach (var room in rooms) { if (Breadcrumbs.Contains(room.RoomId)) continue; var roomInfo = KnownRooms.FirstOrDefault(x => x.Room.RoomId == room.RoomId); diff --git a/MatrixRoomUtils.Web/Shared/RoomListItem.razor b/MatrixRoomUtils.Web/Shared/RoomListItem.razor index 79844ef..b74643b 100644 --- a/MatrixRoomUtils.Web/Shared/RoomListItem.razor +++ b/MatrixRoomUtils.Web/Shared/RoomListItem.razor @@ -1,6 +1,7 @@ @using System.Text.Json @using LibMatrix @using LibMatrix.Helpers +@using LibMatrix.Homeservers @using LibMatrix.RoomTypes @using LibMatrix.StateEventTypes.Spec @using LibMatrix.StateEventTypes @@ -44,10 +45,10 @@ public bool ShowOwnProfile { get; set; } = false; [Parameter] - public RoomMemberEventData? OwnMemberState { get; set; } + public RoomMemberEventContent? OwnMemberState { get; set; } [CascadingParameter] - public ProfileResponseEventData? GlobalProfile { get; set; } + public ProfileResponseEventContent? GlobalProfile { get; set; } private string? roomName { get; set; } @@ -57,7 +58,7 @@ private bool hasDangerousRoomVersion { get; set; } = false; private static SemaphoreSlim _semaphoreSlim = new(8); - private static AuthenticatedHomeServer? hs { get; set; } + private static AuthenticatedHomeserverGeneric? hs { get; set; } protected override async Task OnInitializedAsync() { await base.OnInitializedAsync(); @@ -102,7 +103,7 @@ private async Task LoadOwnProfile() { if (!ShowOwnProfile) return; try { - OwnMemberState ??= (await RoomInfo.GetStateEvent("m.room.member", hs.UserId)).TypedContent as RoomMemberEventData; + OwnMemberState ??= (await RoomInfo.GetStateEvent("m.room.member", hs.UserId)).TypedContent as RoomMemberEventContent; GlobalProfile ??= await hs.GetProfile(hs.UserId); } catch (MatrixException e) { @@ -117,7 +118,7 @@ } private async Task CheckRoomVersion() { - var ce = (await RoomInfo.GetStateEvent("m.room.create")).TypedContent as RoomCreateEventData; + var ce = (await RoomInfo.GetStateEvent("m.room.create")).TypedContent as RoomCreateEventContent; if (int.TryParse(ce.RoomVersion, out var rv)) { if (rv < 10) hasOldRoomVersion = true; @@ -133,9 +134,9 @@ private async Task GetRoomInfo() { try { - roomName ??= ((await RoomInfo.GetStateEvent("m.room.name"))?.TypedContent as RoomNameEventData)?.Name ?? RoomId; + roomName ??= ((await RoomInfo.GetStateEvent("m.room.name"))?.TypedContent as RoomNameEventContent)?.Name ?? RoomId; - var state = (await RoomInfo.GetStateEvent("m.room.avatar")).TypedContent as RoomAvatarEventData; + var state = (await RoomInfo.GetStateEvent("m.room.avatar")).TypedContent as RoomAvatarEventContent; if (state?.Url is { } url) { roomIcon = MediaResolver.ResolveMediaUri(hs.FullHomeServerDomain, url); // Console.WriteLine($"Got avatar for room {RoomId}: {roomIcon} ({url})"); diff --git a/MatrixRoomUtils.Web/Shared/SimpleComponents/DictionaryEditor.razor b/MatrixRoomUtils.Web/Shared/SimpleComponents/DictionaryEditor.razor deleted file mode 100644 index afd1fdc..0000000 --- a/MatrixRoomUtils.Web/Shared/SimpleComponents/DictionaryEditor.razor +++ /dev/null @@ -1,38 +0,0 @@ -@using LibMatrix.Extensions - - @foreach (var i in Items.Keys) { - var key = i; - - -
- } -
- - -@code { - - [Parameter] - public Dictionary Items { get; set; } = new(); - - [Parameter] - [EditorRequired] - public EventCallback ItemsChanged { get; set; } - - [Parameter] - public Func? KeyFormatter { get; set; } - - [Parameter] - public Action? OnFocusLost { get; set; } - - protected override Task OnInitializedAsync() { - Console.WriteLine($"DictionaryEditor initialized with {Items.Count} items: {Items.ToJson()}"); - return base.OnInitializedAsync(); - } - - private void inputChanged(ChangeEventArgs obj, string key) { - Console.WriteLine($"StringListEditor inputChanged {key} {obj.Value}"); - Items[key] = obj.Value.ToString(); - ItemsChanged.InvokeAsync(); - } - -} diff --git a/MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor b/MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor deleted file mode 100644 index 966c44d..0000000 --- a/MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor +++ /dev/null @@ -1,29 +0,0 @@ -@inject IJSRuntime JsRuntime -@if (isVisible) { - -} -else { - @(Formatter?.Invoke(Value) ?? (IsPassword ? string.Join("", Value.Select(x => '*')) : Value)) -} - -@code { - - [Parameter] - public string Value { get; set; } - - [Parameter] - public bool IsPassword { get; set; } = false; - - [Parameter] - public EventCallback ValueChanged { get; set; } - - [Parameter] - public Func? Formatter { get; set; } - - private bool isVisible { get; set; } = false; - - private ElementReference elementToFocus; - - protected override async Task OnAfterRenderAsync(bool firstRender) => await JsRuntime.InvokeVoidAsync("BlazorFocusElement", elementToFocus); - -} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor.css b/MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor.css deleted file mode 100644 index 01b2c6f..0000000 --- a/MatrixRoomUtils.Web/Shared/SimpleComponents/FancyTextBox.razor.css +++ /dev/null @@ -1,5 +0,0 @@ -.fancy-textbox-inline { - border-bottom: #ccc solid 1px; - height: 1.4em; - display: inline-block; -} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/Shared/SimpleComponents/LinkButton.razor b/MatrixRoomUtils.Web/Shared/SimpleComponents/LinkButton.razor deleted file mode 100644 index b800989..0000000 --- a/MatrixRoomUtils.Web/Shared/SimpleComponents/LinkButton.razor +++ /dev/null @@ -1,20 +0,0 @@ - - @ChildContent - - -@code { - - [Parameter] - public string? href { get; set; } - - [Parameter] - public RenderFragment ChildContent { get; set; } - - [Parameter] - public string? Color { get; set; } - - [Parameter] - public Func? OnClick { get; set; } - -} diff --git a/MatrixRoomUtils.Web/Shared/SimpleComponents/StringListEditor.razor b/MatrixRoomUtils.Web/Shared/SimpleComponents/StringListEditor.razor deleted file mode 100644 index 2bd6ed5..0000000 --- a/MatrixRoomUtils.Web/Shared/SimpleComponents/StringListEditor.razor +++ /dev/null @@ -1,29 +0,0 @@ -@for (var i = 0; i < Items.Count; i++) { - var self = i; - - -
-} - - -@code { - - [Parameter] - public List Items { get; set; } = new(); - - [Parameter] - [EditorRequired] - public EventCallback ItemsChanged { get; set; } - - protected override Task OnInitializedAsync() { - Console.WriteLine($"StringListEditor initialized with {Items.Count} items: {string.Join(",", Items)}"); - return base.OnInitializedAsync(); - } - - private void inputChanged(string obj, int i) { - Console.WriteLine($"StringListEditor inputChanged {i} {obj}"); - Items[i] = obj; - ItemsChanged.InvokeAsync(); - } - -} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/Shared/SimpleComponents/ToggleSlider.razor b/MatrixRoomUtils.Web/Shared/SimpleComponents/ToggleSlider.razor deleted file mode 100644 index 1a38e26..0000000 --- a/MatrixRoomUtils.Web/Shared/SimpleComponents/ToggleSlider.razor +++ /dev/null @@ -1,72 +0,0 @@ -@ChildContent - -
- -
- - - -@code { - - [Parameter] - public RenderFragment? ChildContent { get; set; } - - [Parameter] - public bool Value { get; set; } - - [Parameter] - public EventCallback ValueChanged { get; set; } - -} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/Shared/TimelineComponents/BaseTimelineItem.razor b/MatrixRoomUtils.Web/Shared/TimelineComponents/BaseTimelineItem.razor index 5172fa4..e4ee873 100644 --- a/MatrixRoomUtils.Web/Shared/TimelineComponents/BaseTimelineItem.razor +++ b/MatrixRoomUtils.Web/Shared/TimelineComponents/BaseTimelineItem.razor @@ -1,5 +1,6 @@ @using LibMatrix.Responses @using LibMatrix +@using LibMatrix.Homeservers

BaseTimelineItem

@code { @@ -11,6 +12,6 @@ public List Events { get; set; } [Parameter] - public AuthenticatedHomeServer HomeServer { get; set; } + public AuthenticatedHomeserverGeneric Homeserver { get; set; } } diff --git a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMemberItem.razor b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMemberItem.razor index d67fdab..c450211 100644 --- a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMemberItem.razor +++ b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMemberItem.razor @@ -1,6 +1,6 @@ -@using LibMatrix.StateEventTypes @using LibMatrix.StateEventTypes.Spec @using LibMatrix.Extensions +@using ArcaneLibs.Extensions @inherits BaseTimelineItem @if (roomMemberData is not null) { @@ -15,7 +15,7 @@ @Event.StateKey changed their display name to @(roomMemberData.Displayname ?? Event.Sender) break; case "join": - joined + joined break; case "leave": @Event.StateKey left @@ -26,8 +26,8 @@ default: @Event.StateKey has an unknown state:
-        @Event.ToJson()
-    
+ @Event.ToJson() + break; } } @@ -42,6 +42,6 @@ else { @code { - private RoomMemberEventData? roomMemberData => Event.TypedContent as RoomMemberEventData; + private RoomMemberEventContent? roomMemberData => Event.TypedContent as RoomMemberEventContent; } diff --git a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor index 13cce88..5dd87e0 100644 --- a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor +++ b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor @@ -1,4 +1,5 @@ @using LibMatrix.Extensions +@using ArcaneLibs.Extensions @inherits BaseTimelineItem
diff --git a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineRoomCreateItem.razor b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineRoomCreateItem.razor
index 8053a47..9c48455 100644
--- a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineRoomCreateItem.razor
+++ b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineRoomCreateItem.razor
@@ -1,10 +1,11 @@
 @using LibMatrix.StateEventTypes.Spec
 @using LibMatrix.Extensions
+@using ArcaneLibs.Extensions
 @inherits BaseTimelineItem
 
 

@Event.Sender created the room with room version @CreationEventContent.RoomVersion - @CreationEventContent.Federate ? "and" : "without" federating with other servers.
+ @(CreationEventContent.Federate ?? false ? "and" : "without") federating with other servers.
This room is of type @(CreationEventContent.Type ?? "Untyped room (usually a chat room)")

@@ -13,6 +14,6 @@
 
 @code {
 
-    private RoomCreateEventData CreationEventContent => Event.TypedContent as RoomCreateEventData;
+    private RoomCreateEventContent CreationEventContent => Event.TypedContent as RoomCreateEventContent;
 
 }
diff --git a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineUnknownItem.razor b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineUnknownItem.razor
index 8166f8a..69845d9 100644
--- a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineUnknownItem.razor
+++ b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineUnknownItem.razor
@@ -1,4 +1,5 @@
 @using LibMatrix.Extensions
+@using ArcaneLibs.Extensions
 @inherits BaseTimelineItem
 
 
diff --git a/MatrixRoomUtils.Web/Shared/UserListItem.razor b/MatrixRoomUtils.Web/Shared/UserListItem.razor index a85a68d..7a55380 100644 --- a/MatrixRoomUtils.Web/Shared/UserListItem.razor +++ b/MatrixRoomUtils.Web/Shared/UserListItem.razor @@ -19,7 +19,7 @@ public RenderFragment? ChildContent { get; set; } [Parameter] - public ProfileResponseEventData User { get; set; } + public ProfileResponseEventContent User { get; set; } [Parameter] public string UserId { get; set; } diff --git a/MatrixRoomUtils.Web/_Imports.razor b/MatrixRoomUtils.Web/_Imports.razor index cb08515..a92153d 100644 --- a/MatrixRoomUtils.Web/_Imports.razor +++ b/MatrixRoomUtils.Web/_Imports.razor @@ -12,7 +12,7 @@ @using MatrixRoomUtils.Web.Classes @using MatrixRoomUtils.Web.Shared -@using LinkButton = MatrixRoomUtils.Web.Shared.SimpleComponents.LinkButton +@using ArcaneLibs.Blazor.Components @inject NavigationManager NavigationManager @inject MRUStorageWrapper MRUStorage diff --git a/MatrixRoomUtils.sln b/MatrixRoomUtils.sln index e852d18..e29944e 100755 --- a/MatrixRoomUtils.sln +++ b/MatrixRoomUtils.sln @@ -1,7 +1,5 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MatrixRoomUtils", "MatrixRoomUtils\MatrixRoomUtils.csproj", "{244E90FE-EE26-4F78-86EB-27529AE48905}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MatrixRoomUtils.Web", "MatrixRoomUtils.Web\MatrixRoomUtils.Web.csproj", "{D38DA95D-DD83-4340-96A4-6F59FC6AE3D9}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MatrixRoomUtils.Web.Server", "MatrixRoomUtils.Web.Server\MatrixRoomUtils.Web.Server.csproj", "{F997F26F-2EC1-4D18-B3DD-C46FB2AD65C0}" @@ -12,24 +10,44 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "LibMatrix", "LibMatrix", "{ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibMatrix", "LibMatrix\LibMatrix\LibMatrix.csproj", "{F4E241C3-0300-4B87-8707-BCBDEF1F0185}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibMatrix.ExampleBot", "LibMatrix\LibMatrix.ExampleBot\LibMatrix.ExampleBot.csproj", "{4E72793A-AFAD-4E46-B406-2DF1E49994C6}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibMatrix.DebugDataValidationApi", "LibMatrix\LibMatrix.DebugDataValidationApi\LibMatrix.DebugDataValidationApi.csproj", "{7762FD80-E7AA-409D-A465-CF208EA4BC53}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MxApiExtensions", "MxApiExtensions", "{F1376F9A-FB65-4E60-BB9A-62A64F741FF4}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MxApiExtensions", "MxApiExtensions\MxApiExtensions\MxApiExtensions.csproj", "{41200A7B-D2DB-4656-B66B-5206A63B367A}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ArcaneLibs", "ArcaneLibs", "{B00C5CB6-6200-4B41-96BE-C6EAF1085A14}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ArcaneLibs", "ArcaneLibs\ArcaneLibs\ArcaneLibs.csproj", "{B00E29F5-1ED8-40A0-A70D-DE9F23FC572F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ArcaneLibs.Blazor.Components", "ArcaneLibs\ArcaneLibs.Blazor.Components\ArcaneLibs.Blazor.Components.csproj", "{2D6F31D7-3139-44EC-9D11-486282DD4ED1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MxApiExtensions.Classes", "MxApiExtensions\MxApiExtensions.Classes\MxApiExtensions.Classes.csproj", "{99C016AA-AFBA-4D32-A687-D1FABC0F5212}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MxApiExtensions.Classes.LibMatrix", "MxApiExtensions\MxApiExtensions.Classes.LibMatrix\MxApiExtensions.Classes.LibMatrix.csproj", "{C298E274-5D6C-47C8-9B71-A6B34D0195A3}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ExampleBots", "ExampleBots", "{3E0FDE30-8DA8-4E65-A3C6-AA53B5BC70A2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibMatrix.ExampleBot", "LibMatrix\ExampleBots\LibMatrix.ExampleBot\LibMatrix.ExampleBot.csproj", "{2CB12623-4918-4176-9B4A-88D846CCD3ED}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MediaModeratorPoC", "LibMatrix\ExampleBots\MediaModeratorPoC\MediaModeratorPoC.csproj", "{48DBB05F-B007-4B24-89B3-3CC177C79007}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Utilities", "Utilities", "{A4BCBF5F-4936-44B9-BAB3-FAF240BDF40D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibMatrix.DebugDataValidationApi", "LibMatrix\Utilities\LibMatrix.DebugDataValidationApi\LibMatrix.DebugDataValidationApi.csproj", "{5DEF66C8-B931-435F-B4B5-E1858590D52E}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibMatrix.Utilities.Bot", "LibMatrix\Utilities\LibMatrix.Utilities.Bot\LibMatrix.Utilities.Bot.csproj", "{D8E5C678-3BE5-470C-A3A5-B5D525FC2012}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PluralContactBotPoC", "LibMatrix\ExampleBots\PluralContactBotPoC\PluralContactBotPoC.csproj", "{95052EE6-7513-46FB-91BD-EE82026B42F1}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{7D2C9959-8309-4110-A67F-DEE64E97C1D8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibMatrix.Tests", "LibMatrix\Tests\LibMatrix.Tests\LibMatrix.Tests.csproj", "{E37B78F1-D7A5-4F79-ADBA-E12DF7D0F881}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {244E90FE-EE26-4F78-86EB-27529AE48905}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {244E90FE-EE26-4F78-86EB-27529AE48905}.Debug|Any CPU.Build.0 = Debug|Any CPU - {244E90FE-EE26-4F78-86EB-27529AE48905}.Release|Any CPU.ActiveCfg = Release|Any CPU - {244E90FE-EE26-4F78-86EB-27529AE48905}.Release|Any CPU.Build.0 = Release|Any CPU {D38DA95D-DD83-4340-96A4-6F59FC6AE3D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D38DA95D-DD83-4340-96A4-6F59FC6AE3D9}.Debug|Any CPU.Build.0 = Debug|Any CPU {D38DA95D-DD83-4340-96A4-6F59FC6AE3D9}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -46,23 +64,66 @@ Global {F4E241C3-0300-4B87-8707-BCBDEF1F0185}.Debug|Any CPU.Build.0 = Debug|Any CPU {F4E241C3-0300-4B87-8707-BCBDEF1F0185}.Release|Any CPU.ActiveCfg = Release|Any CPU {F4E241C3-0300-4B87-8707-BCBDEF1F0185}.Release|Any CPU.Build.0 = Release|Any CPU - {4E72793A-AFAD-4E46-B406-2DF1E49994C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4E72793A-AFAD-4E46-B406-2DF1E49994C6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4E72793A-AFAD-4E46-B406-2DF1E49994C6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4E72793A-AFAD-4E46-B406-2DF1E49994C6}.Release|Any CPU.Build.0 = Release|Any CPU - {7762FD80-E7AA-409D-A465-CF208EA4BC53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7762FD80-E7AA-409D-A465-CF208EA4BC53}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7762FD80-E7AA-409D-A465-CF208EA4BC53}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7762FD80-E7AA-409D-A465-CF208EA4BC53}.Release|Any CPU.Build.0 = Release|Any CPU {41200A7B-D2DB-4656-B66B-5206A63B367A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {41200A7B-D2DB-4656-B66B-5206A63B367A}.Debug|Any CPU.Build.0 = Debug|Any CPU {41200A7B-D2DB-4656-B66B-5206A63B367A}.Release|Any CPU.ActiveCfg = Release|Any CPU {41200A7B-D2DB-4656-B66B-5206A63B367A}.Release|Any CPU.Build.0 = Release|Any CPU + {B00E29F5-1ED8-40A0-A70D-DE9F23FC572F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B00E29F5-1ED8-40A0-A70D-DE9F23FC572F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B00E29F5-1ED8-40A0-A70D-DE9F23FC572F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B00E29F5-1ED8-40A0-A70D-DE9F23FC572F}.Release|Any CPU.Build.0 = Release|Any CPU + {2D6F31D7-3139-44EC-9D11-486282DD4ED1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2D6F31D7-3139-44EC-9D11-486282DD4ED1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2D6F31D7-3139-44EC-9D11-486282DD4ED1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2D6F31D7-3139-44EC-9D11-486282DD4ED1}.Release|Any CPU.Build.0 = Release|Any CPU + {99C016AA-AFBA-4D32-A687-D1FABC0F5212}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {99C016AA-AFBA-4D32-A687-D1FABC0F5212}.Debug|Any CPU.Build.0 = Debug|Any CPU + {99C016AA-AFBA-4D32-A687-D1FABC0F5212}.Release|Any CPU.ActiveCfg = Release|Any CPU + {99C016AA-AFBA-4D32-A687-D1FABC0F5212}.Release|Any CPU.Build.0 = Release|Any CPU + {C298E274-5D6C-47C8-9B71-A6B34D0195A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C298E274-5D6C-47C8-9B71-A6B34D0195A3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C298E274-5D6C-47C8-9B71-A6B34D0195A3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C298E274-5D6C-47C8-9B71-A6B34D0195A3}.Release|Any CPU.Build.0 = Release|Any CPU + {2CB12623-4918-4176-9B4A-88D846CCD3ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2CB12623-4918-4176-9B4A-88D846CCD3ED}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2CB12623-4918-4176-9B4A-88D846CCD3ED}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2CB12623-4918-4176-9B4A-88D846CCD3ED}.Release|Any CPU.Build.0 = Release|Any CPU + {48DBB05F-B007-4B24-89B3-3CC177C79007}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {48DBB05F-B007-4B24-89B3-3CC177C79007}.Debug|Any CPU.Build.0 = Debug|Any CPU + {48DBB05F-B007-4B24-89B3-3CC177C79007}.Release|Any CPU.ActiveCfg = Release|Any CPU + {48DBB05F-B007-4B24-89B3-3CC177C79007}.Release|Any CPU.Build.0 = Release|Any CPU + {5DEF66C8-B931-435F-B4B5-E1858590D52E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5DEF66C8-B931-435F-B4B5-E1858590D52E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5DEF66C8-B931-435F-B4B5-E1858590D52E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5DEF66C8-B931-435F-B4B5-E1858590D52E}.Release|Any CPU.Build.0 = Release|Any CPU + {D8E5C678-3BE5-470C-A3A5-B5D525FC2012}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D8E5C678-3BE5-470C-A3A5-B5D525FC2012}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D8E5C678-3BE5-470C-A3A5-B5D525FC2012}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D8E5C678-3BE5-470C-A3A5-B5D525FC2012}.Release|Any CPU.Build.0 = Release|Any CPU + {95052EE6-7513-46FB-91BD-EE82026B42F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {95052EE6-7513-46FB-91BD-EE82026B42F1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {95052EE6-7513-46FB-91BD-EE82026B42F1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {95052EE6-7513-46FB-91BD-EE82026B42F1}.Release|Any CPU.Build.0 = Release|Any CPU + {E37B78F1-D7A5-4F79-ADBA-E12DF7D0F881}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E37B78F1-D7A5-4F79-ADBA-E12DF7D0F881}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E37B78F1-D7A5-4F79-ADBA-E12DF7D0F881}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E37B78F1-D7A5-4F79-ADBA-E12DF7D0F881}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(NestedProjects) = preSolution {F4E241C3-0300-4B87-8707-BCBDEF1F0185} = {8F4F6BEC-0C66-486B-A21A-1C35B2EDAD33} - {4E72793A-AFAD-4E46-B406-2DF1E49994C6} = {8F4F6BEC-0C66-486B-A21A-1C35B2EDAD33} - {7762FD80-E7AA-409D-A465-CF208EA4BC53} = {8F4F6BEC-0C66-486B-A21A-1C35B2EDAD33} {41200A7B-D2DB-4656-B66B-5206A63B367A} = {F1376F9A-FB65-4E60-BB9A-62A64F741FF4} + {B00E29F5-1ED8-40A0-A70D-DE9F23FC572F} = {B00C5CB6-6200-4B41-96BE-C6EAF1085A14} + {2D6F31D7-3139-44EC-9D11-486282DD4ED1} = {B00C5CB6-6200-4B41-96BE-C6EAF1085A14} + {99C016AA-AFBA-4D32-A687-D1FABC0F5212} = {F1376F9A-FB65-4E60-BB9A-62A64F741FF4} + {C298E274-5D6C-47C8-9B71-A6B34D0195A3} = {F1376F9A-FB65-4E60-BB9A-62A64F741FF4} + {3E0FDE30-8DA8-4E65-A3C6-AA53B5BC70A2} = {8F4F6BEC-0C66-486B-A21A-1C35B2EDAD33} + {2CB12623-4918-4176-9B4A-88D846CCD3ED} = {3E0FDE30-8DA8-4E65-A3C6-AA53B5BC70A2} + {48DBB05F-B007-4B24-89B3-3CC177C79007} = {3E0FDE30-8DA8-4E65-A3C6-AA53B5BC70A2} + {A4BCBF5F-4936-44B9-BAB3-FAF240BDF40D} = {8F4F6BEC-0C66-486B-A21A-1C35B2EDAD33} + {5DEF66C8-B931-435F-B4B5-E1858590D52E} = {A4BCBF5F-4936-44B9-BAB3-FAF240BDF40D} + {D8E5C678-3BE5-470C-A3A5-B5D525FC2012} = {A4BCBF5F-4936-44B9-BAB3-FAF240BDF40D} + {95052EE6-7513-46FB-91BD-EE82026B42F1} = {3E0FDE30-8DA8-4E65-A3C6-AA53B5BC70A2} + {7D2C9959-8309-4110-A67F-DEE64E97C1D8} = {8F4F6BEC-0C66-486B-A21A-1C35B2EDAD33} + {E37B78F1-D7A5-4F79-ADBA-E12DF7D0F881} = {7D2C9959-8309-4110-A67F-DEE64E97C1D8} EndGlobalSection EndGlobal diff --git a/MatrixRoomUtils.sln.DotSettings.user b/MatrixRoomUtils.sln.DotSettings.user index 8f91cef..67b8278 100644 --- a/MatrixRoomUtils.sln.DotSettings.user +++ b/MatrixRoomUtils.sln.DotSettings.user @@ -1,5 +1,9 @@  - ShowAndRun + + DoNotShowAndRun + 0 + 0 + 0 12 True No @@ -26,6 +30,7 @@ + \ No newline at end of file diff --git a/MxApiExtensions b/MxApiExtensions index 8253ca8..143b7fb 160000 --- a/MxApiExtensions +++ b/MxApiExtensions @@ -1 +1 @@ -Subproject commit 8253ca8cb96154f95854b1c1e5dd3ba53f41e5ec +Subproject commit 143b7fb859d97e815ed5340a1889db93e17a762e diff --git a/deploy.sh b/deploy.sh index 66182a4..ea42481 100755 --- a/deploy.sh +++ b/deploy.sh @@ -17,7 +17,7 @@ tar cf - ./ | xz -z -9 - > $BASE_DIR/MRU-BIN.tar.xz #rsync -raP $BASE_DIR/MRU-BIN.tar.xz rory.gay:/data/nginx/html_mru/MRU-BIN.tar.xz rm -rf $BASE_DIR/MRU-BIN.tar.xz cd $BASE_DIR -git clone .git -b `git branch --show-current` src +git clone .git -b `git branch --show-current` src --recursive rm -rf src/.git tar cf - src/ | xz -z -9 - > MRU-SRC.tar.xz rsync -raP $BASE_DIR/MRU-SRC.tar.xz rory.gay:/data/nginx/html_mru/MRU-SRC.tar.xz diff --git a/flake.lock b/flake.lock index c6625fe..ea17330 100644 --- a/flake.lock +++ b/flake.lock @@ -20,18 +20,14 @@ }, "nixpkgs": { "locked": { - "lastModified": 1691899779, - "narHash": "sha256-IBf4KVr/UQJlzrqB2/IHtlvmwsvyIVLPerSzCPU/6Xk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "100a1550b0e7a64b960c625b656f9229bdef5f87", - "type": "github" + "lastModified": 1692446604, + "narHash": "sha256-3VBMD9VXzB1KP1lx4KGq5E+g0ugo6vpR0VSNT47nPMM=", + "path": "/home/root@Rory/git/Matrix/MatrixRoomUtils/nixpkgs", + "type": "path" }, "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" + "path": "/home/root@Rory/git/Matrix/MatrixRoomUtils/nixpkgs", + "type": "path" } }, "root": { diff --git a/flake.nix b/flake.nix index 47ab31d..2e7409b 100644 --- a/flake.nix +++ b/flake.nix @@ -1,5 +1,6 @@ { - inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; + #inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; + inputs.nixpkgs.url = "path:/home/root@Rory/git/Matrix/MatrixRoomUtils/nixpkgs"; inputs.flake-utils.url = "github:numtide/flake-utils"; outputs = { self, nixpkgs, flake-utils }: @@ -8,22 +9,6 @@ in { packages.x86_64-linux = { - bots = pkgs.buildDotnetModule rec { - pname = "botcore-v${version}"; - version = "4"; - dotnet-sdk = pkgs.dotnet-sdk_7; - dotnet-runtime = pkgs.dotnet-runtime_7; - src = ./.; - projectFile = [ - "BotCore.Runner/BotCore.Runner.csproj" - "BotCore.SystemdServiceInvoker/BotCore.SystemdServiceInvoker.csproj" - ]; - runtimeDeps = with pkgs; [ yt-dlp ]; - nugetDeps = ./deps.nix; - #nativeBuildInputs = with pkgs; [ - # pkg-config - #]; - }; web = pkgs.buildDotnetModule rec { pname = "MatrixRoomUtils.Web-v${version}"; version = "1"; @@ -38,98 +23,6 @@ # pkg-config #]; }; - dataupdater = pkgs.buildDotnetModule rec { - pname = "botcore-v${version}"; - version = "4"; - dotnet-sdk = pkgs.dotnet-sdk_7; - dotnet-runtime = pkgs.dotnet-runtime_7; - src = ./.; - projectFile = [ - "BotCore.DataUpdater/BotCore.DataUpdater.csproj" - ]; - nugetDeps = ./deps.nix; - #nativeBuildInputs = with pkgs; [ - # pkg-config - #]; - }; - all = pkgs.buildDotnetModule rec { - pname = "botcore-v${version}"; - version = "4"; - dotnet-sdk = pkgs.dotnet-sdk_7; - dotnet-runtime = pkgs.dotnet-runtime_7; - src = ./.; - projectFile = "DiscordBots.sln"; - nugetDeps = ./deps.nix; - #nativeBuildInputs = with pkgs; [ - # pkg-config - #]; - }; - }; - modules = { - users = { - users.users.botcore = { - isSystemUser = true; - home = "/var/lib/botcore"; - createHome = true; - group = "botcore"; - extraGroups = [ "video" ]; - }; - users.groups.botcore = {}; - security.polkit.extraConfig = '' - polkit.addRule(function(action, subject) { - if (action.id == "org.freedesktop.systemd1.manage-units" && - action.lookup("unit").startsWith("botcore.") && - subject.user == "botcore") { - return polkit.Result.YES; - } - }); - ''; - }; - bots = { - systemd.services = { - "botcore.bot@" = { - serviceConfig = { - ExecStart = "${self.packages.x86_64-linux.bots}/bin/BotCore.Runner %i"; - Restart = "always"; - RestartSec = "5"; - User = "botcore"; - }; - }; - "botcore.systemdserviceinvoker" = { - wantedBy = [ "multi-user.target" ]; - serviceConfig = { - ExecStart = "${self.packages.x86_64-linux.bots}/bin/BotCore.SystemdServiceInvoker"; - User = "botcore"; - }; - }; - }; - }; - frontend = { - systemd.services = { - "botcore.web" = { - wantedBy = [ "multi-user.target" ]; - serviceConfig = { - ExecStart = "${self.packages.x86_64-linux.frontend}/bin/BotCore.Web.Legacy"; - Restart = "always"; - RestartSec = "5"; - User = "botcore"; - }; - }; - }; - }; - dataupdater = { - systemd.services = { - "botcore.dataupdater" = { - wantedBy = [ "multi-user.target" ]; - serviceConfig = { - ExecStart = "${self.packages.x86_64-linux.dataupdater}/bin/BotCore.DataUpdater"; - Restart = "always"; - RestartSec = "15min"; - User = "botcore"; - }; - }; - }; - }; }; }; } -- cgit 1.4.1