From cd4931c63cc712beab5eaab935a3541ef0895d66 Mon Sep 17 00:00:00 2001 From: Casper Warden <216465704+casperwardensl@users.noreply.github.com> Date: Sat, 4 Nov 2023 18:13:55 +0000 Subject: [PATCH] Don't error out if EnvironmentSettings cap is unavailable --- .editorconfig | 196 ++++++++++++++++-------------------------- lib/classes/Region.ts | 121 ++++++++++++++------------ package.json | 2 +- 3 files changed, 138 insertions(+), 181 deletions(-) diff --git a/.editorconfig b/.editorconfig index c4575bd..6961f8e 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,17 +1,18 @@ [*] charset = utf-8 -end_of_line = crlf +end_of_line = lf indent_size = 4 indent_style = space insert_final_newline = true max_line_length = 120 tab_width = 4 +trim_trailing_whitespace = true ij_continuation_indent_size = 8 ij_formatter_off_tag = @formatter:off ij_formatter_on_tag = @formatter:on -ij_formatter_tags_enabled = false +ij_formatter_tags_enabled = true ij_smart_tabs = false -ij_visual_guides = none +ij_visual_guides = ij_wrap_on_typing = false [*.blade.php] @@ -21,6 +22,7 @@ ij_blade_keep_indents_on_empty_lines = false ij_css_align_closing_brace_with_properties = false ij_css_blank_lines_around_nested_selector = 1 ij_css_blank_lines_between_blocks = 1 +ij_css_block_comment_add_space = false ij_css_brace_placement = end_of_line ij_css_enforce_quotes_on_format = false ij_css_hex_color_long_format = false @@ -40,15 +42,12 @@ ij_css_value_alignment = do_not_align indent_size = 2 ij_gherkin_keep_indents_on_empty_lines = false -[*.haml] -indent_size = 2 -ij_haml_keep_indents_on_empty_lines = false - [*.less] indent_size = 2 ij_less_align_closing_brace_with_properties = false ij_less_blank_lines_around_nested_selector = 1 ij_less_blank_lines_between_blocks = 1 +ij_less_block_comment_add_space = false ij_less_brace_placement = 0 ij_less_enforce_quotes_on_format = false ij_less_hex_color_long_format = false @@ -58,6 +57,8 @@ ij_less_hex_color_upper_case = false ij_less_keep_blank_lines_in_code = 2 ij_less_keep_indents_on_empty_lines = false ij_less_keep_single_line_blocks = false +ij_less_line_comment_add_space = false +ij_less_line_comment_at_first_column = false ij_less_properties_order = font,font-family,font-size,font-weight,font-style,font-variant,font-size-adjust,font-stretch,line-height,position,z-index,top,right,bottom,left,display,visibility,float,clear,overflow,overflow-x,overflow-y,clip,zoom,align-content,align-items,align-self,flex,flex-flow,flex-basis,flex-direction,flex-grow,flex-shrink,flex-wrap,justify-content,order,box-sizing,width,min-width,max-width,height,min-height,max-height,margin,margin-top,margin-right,margin-bottom,margin-left,padding,padding-top,padding-right,padding-bottom,padding-left,table-layout,empty-cells,caption-side,border-spacing,border-collapse,list-style,list-style-position,list-style-type,list-style-image,content,quotes,counter-reset,counter-increment,resize,cursor,user-select,nav-index,nav-up,nav-right,nav-down,nav-left,transition,transition-delay,transition-timing-function,transition-duration,transition-property,transform,transform-origin,animation,animation-name,animation-duration,animation-play-state,animation-timing-function,animation-delay,animation-iteration-count,animation-direction,text-align,text-align-last,vertical-align,white-space,text-decoration,text-emphasis,text-emphasis-color,text-emphasis-style,text-emphasis-position,text-indent,text-justify,letter-spacing,word-spacing,text-outline,text-transform,text-wrap,text-overflow,text-overflow-ellipsis,text-overflow-mode,word-wrap,word-break,tab-size,hyphens,pointer-events,opacity,color,border,border-width,border-style,border-color,border-top,border-top-width,border-top-style,border-top-color,border-right,border-right-width,border-right-style,border-right-color,border-bottom,border-bottom-width,border-bottom-style,border-bottom-color,border-left,border-left-width,border-left-style,border-left-color,border-radius,border-top-left-radius,border-top-right-radius,border-bottom-right-radius,border-bottom-left-radius,border-image,border-image-source,border-image-slice,border-image-width,border-image-outset,border-image-repeat,outline,outline-width,outline-style,outline-color,outline-offset,background,background-color,background-image,background-repeat,background-attachment,background-position,background-position-x,background-position-y,background-clip,background-origin,background-size,box-decoration-break,box-shadow,text-shadow ij_less_space_after_colon = true ij_less_space_before_opening_brace = true @@ -78,6 +79,8 @@ ij_sass_hex_color_upper_case = false ij_sass_keep_blank_lines_in_code = 2 ij_sass_keep_indents_on_empty_lines = false ij_sass_keep_single_line_blocks = false +ij_sass_line_comment_add_space = false +ij_sass_line_comment_at_first_column = false ij_sass_properties_order = font,font-family,font-size,font-weight,font-style,font-variant,font-size-adjust,font-stretch,line-height,position,z-index,top,right,bottom,left,display,visibility,float,clear,overflow,overflow-x,overflow-y,clip,zoom,align-content,align-items,align-self,flex,flex-flow,flex-basis,flex-direction,flex-grow,flex-shrink,flex-wrap,justify-content,order,box-sizing,width,min-width,max-width,height,min-height,max-height,margin,margin-top,margin-right,margin-bottom,margin-left,padding,padding-top,padding-right,padding-bottom,padding-left,table-layout,empty-cells,caption-side,border-spacing,border-collapse,list-style,list-style-position,list-style-type,list-style-image,content,quotes,counter-reset,counter-increment,resize,cursor,user-select,nav-index,nav-up,nav-right,nav-down,nav-left,transition,transition-delay,transition-timing-function,transition-duration,transition-property,transform,transform-origin,animation,animation-name,animation-duration,animation-play-state,animation-timing-function,animation-delay,animation-iteration-count,animation-direction,text-align,text-align-last,vertical-align,white-space,text-decoration,text-emphasis,text-emphasis-color,text-emphasis-style,text-emphasis-position,text-indent,text-justify,letter-spacing,word-spacing,text-outline,text-transform,text-wrap,text-overflow,text-overflow-ellipsis,text-overflow-mode,word-wrap,word-break,tab-size,hyphens,pointer-events,opacity,color,border,border-width,border-style,border-color,border-top,border-top-width,border-top-style,border-top-color,border-right,border-right-width,border-right-style,border-right-color,border-bottom,border-bottom-width,border-bottom-style,border-bottom-color,border-left,border-left-width,border-left-style,border-left-color,border-radius,border-top-left-radius,border-top-right-radius,border-bottom-right-radius,border-bottom-left-radius,border-image,border-image-source,border-image-slice,border-image-width,border-image-outset,border-image-repeat,outline,outline-width,outline-style,outline-color,outline-offset,background,background-color,background-image,background-repeat,background-attachment,background-position,background-position-x,background-position-y,background-clip,background-origin,background-size,box-decoration-break,box-shadow,text-shadow ij_sass_space_after_colon = true ij_sass_space_before_opening_brace = true @@ -89,6 +92,7 @@ indent_size = 2 ij_scss_align_closing_brace_with_properties = false ij_scss_blank_lines_around_nested_selector = 1 ij_scss_blank_lines_between_blocks = 1 +ij_scss_block_comment_add_space = false ij_scss_brace_placement = 0 ij_scss_enforce_quotes_on_format = false ij_scss_hex_color_long_format = false @@ -98,6 +102,8 @@ ij_scss_hex_color_upper_case = false ij_scss_keep_blank_lines_in_code = 2 ij_scss_keep_indents_on_empty_lines = false ij_scss_keep_single_line_blocks = false +ij_scss_line_comment_add_space = false +ij_scss_line_comment_at_first_column = false ij_scss_properties_order = font,font-family,font-size,font-weight,font-style,font-variant,font-size-adjust,font-stretch,line-height,position,z-index,top,right,bottom,left,display,visibility,float,clear,overflow,overflow-x,overflow-y,clip,zoom,align-content,align-items,align-self,flex,flex-flow,flex-basis,flex-direction,flex-grow,flex-shrink,flex-wrap,justify-content,order,box-sizing,width,min-width,max-width,height,min-height,max-height,margin,margin-top,margin-right,margin-bottom,margin-left,padding,padding-top,padding-right,padding-bottom,padding-left,table-layout,empty-cells,caption-side,border-spacing,border-collapse,list-style,list-style-position,list-style-type,list-style-image,content,quotes,counter-reset,counter-increment,resize,cursor,user-select,nav-index,nav-up,nav-right,nav-down,nav-left,transition,transition-delay,transition-timing-function,transition-duration,transition-property,transform,transform-origin,animation,animation-name,animation-duration,animation-play-state,animation-timing-function,animation-delay,animation-iteration-count,animation-direction,text-align,text-align-last,vertical-align,white-space,text-decoration,text-emphasis,text-emphasis-color,text-emphasis-style,text-emphasis-position,text-indent,text-justify,letter-spacing,word-spacing,text-outline,text-transform,text-wrap,text-overflow,text-overflow-ellipsis,text-overflow-mode,word-wrap,word-break,tab-size,hyphens,pointer-events,opacity,color,border,border-width,border-style,border-color,border-top,border-top-width,border-top-style,border-top-color,border-right,border-right-width,border-right-style,border-right-color,border-bottom,border-bottom-width,border-bottom-style,border-bottom-color,border-left,border-left-width,border-left-style,border-left-color,border-radius,border-top-left-radius,border-top-right-radius,border-bottom-right-radius,border-bottom-left-radius,border-image,border-image-source,border-image-slice,border-image-width,border-image-outset,border-image-repeat,outline,outline-width,outline-style,outline-color,outline-offset,background,background-color,background-image,background-repeat,background-attachment,background-position,background-position-x,background-position-y,background-clip,background-origin,background-size,box-decoration-break,box-shadow,text-shadow ij_scss_space_after_colon = true ij_scss_space_before_opening_brace = true @@ -120,7 +126,6 @@ ij_vue_interpolation_new_line_before_end_delimiter = true ij_vue_interpolation_wrap = off ij_vue_keep_indents_on_empty_lines = false ij_vue_spaces_within_interpolation_expressions = true -ij_vue_uniform_indent = true [.editorconfig] ij_editorconfig_align_group_field_declarations = false @@ -134,6 +139,7 @@ ij_editorconfig_spaces_around_assignment_operators = true ij_xml_align_attributes = true ij_xml_align_text = false ij_xml_attribute_wrap = normal +ij_xml_block_comment_add_space = false ij_xml_block_comment_at_first_column = true ij_xml_keep_blank_lines = 2 ij_xml_keep_indents_on_empty_lines = false @@ -148,7 +154,7 @@ ij_xml_space_around_equals_in_attribute = false ij_xml_space_inside_empty_tag = false ij_xml_text_wrap = normal -[{*.ats,*.ts}] +[{*.ats,*.cts,*.mts,*.ts}] ij_continuation_indent_size = 4 ij_typescript_align_imports = false ij_typescript_align_multiline_array_initializer_expression = false @@ -177,6 +183,8 @@ ij_typescript_blank_lines_around_function = 1 ij_typescript_blank_lines_around_method = 1 ij_typescript_blank_lines_around_method_in_interface = 1 ij_typescript_block_brace_style = next_line +ij_typescript_block_comment_add_space = false +ij_typescript_block_comment_at_first_column = true ij_typescript_call_parameters_new_line_after_left_paren = false ij_typescript_call_parameters_right_paren_on_new_line = false ij_typescript_call_parameters_wrap = off @@ -184,9 +192,10 @@ ij_typescript_catch_on_new_line = true ij_typescript_chained_call_dot_on_new_line = true ij_typescript_class_brace_style = next_line ij_typescript_comma_on_new_line = false -ij_typescript_do_while_brace_force = never +ij_typescript_do_while_brace_force = always ij_typescript_else_on_new_line = true -ij_typescript_enforce_trailing_comma = keep +ij_typescript_enforce_trailing_comma = whenmultiline +ij_typescript_enum_constants_wrap = on_every_item ij_typescript_extends_keyword_wrap = off ij_typescript_extends_list_wrap = off ij_typescript_field_prefix = _ @@ -199,11 +208,11 @@ ij_typescript_for_statement_wrap = off ij_typescript_force_quote_style = true ij_typescript_force_semicolon_style = false ij_typescript_function_expression_brace_style = next_line -ij_typescript_if_brace_force = always +ij_typescript_if_brace_force = never ij_typescript_import_merge_members = global ij_typescript_import_prefer_absolute_path = global ij_typescript_import_sort_members = true -ij_typescript_import_sort_module_name = true +ij_typescript_import_sort_module_name = false ij_typescript_import_use_node_resolution = true ij_typescript_imports_wrap = on_every_item ij_typescript_indent_case_from_switch = true @@ -225,14 +234,16 @@ ij_typescript_method_parameters_new_line_after_left_paren = false ij_typescript_method_parameters_right_paren_on_new_line = false ij_typescript_method_parameters_wrap = off ij_typescript_object_literal_wrap = on_every_item +ij_typescript_object_types_wrap = on_every_item ij_typescript_parentheses_expression_new_line_after_left_paren = false ij_typescript_parentheses_expression_right_paren_on_new_line = false ij_typescript_place_assignment_sign_on_next_line = false ij_typescript_prefer_as_type_cast = true -ij_typescript_prefer_explicit_types_function_expression_returns = true -ij_typescript_prefer_explicit_types_function_returns = true -ij_typescript_prefer_explicit_types_vars_fields = true +ij_typescript_prefer_explicit_types_function_expression_returns = false +ij_typescript_prefer_explicit_types_function_returns = false +ij_typescript_prefer_explicit_types_vars_fields = false ij_typescript_prefer_parameters_wrap = false +ij_typescript_property_prefix = ij_typescript_reformat_c_style_comments = false ij_typescript_space_after_colon = true ij_typescript_space_after_comma = true @@ -242,7 +253,7 @@ ij_typescript_space_after_property_colon = true ij_typescript_space_after_quest = true ij_typescript_space_after_type_colon = true ij_typescript_space_after_unary_not = false -ij_typescript_space_before_async_arrow_lparen = true +ij_typescript_space_before_async_arrow_lparen = false ij_typescript_space_before_catch_keyword = true ij_typescript_space_before_catch_left_brace = true ij_typescript_space_before_catch_parentheses = true @@ -307,13 +318,13 @@ ij_typescript_ternary_operation_wrap = off ij_typescript_union_types_wrap = on_every_item ij_typescript_use_chained_calls_group_indents = false ij_typescript_use_double_quotes = false -ij_typescript_use_explicit_js_extension = global +ij_typescript_use_explicit_js_extension = auto ij_typescript_use_path_mapping = always ij_typescript_use_public_modifier = true ij_typescript_use_semicolon_after_statement = true ij_typescript_var_declaration_wrap = normal ij_typescript_while_brace_force = always -ij_typescript_while_on_new_line = false +ij_typescript_while_on_new_line = true ij_typescript_wrap_comments = false [{*.bash,*.sh,*.zsh}] @@ -324,6 +335,7 @@ ij_shell_keep_column_alignment_padding = false ij_shell_minify_program = false ij_shell_redirect_followed_by_space = false ij_shell_switch_cases_indented = false +ij_shell_use_unix_line_separator = true [{*.cjs,*.js}] ij_continuation_indent_size = 4 @@ -338,7 +350,7 @@ ij_javascript_align_multiline_parameters_in_calls = false ij_javascript_align_multiline_ternary_operation = true ij_javascript_align_object_properties = 1 ij_javascript_align_union_types = false -ij_javascript_align_var_statements = 0 +ij_javascript_align_var_statements = 2 ij_javascript_array_initializer_new_line_after_left_brace = false ij_javascript_array_initializer_right_brace_on_new_line = false ij_javascript_array_initializer_wrap = on_every_item @@ -352,12 +364,14 @@ ij_javascript_blank_lines_around_field = 0 ij_javascript_blank_lines_around_function = 1 ij_javascript_blank_lines_around_method = 1 ij_javascript_block_brace_style = next_line +ij_javascript_block_comment_add_space = false +ij_javascript_block_comment_at_first_column = true ij_javascript_call_parameters_new_line_after_left_paren = false ij_javascript_call_parameters_right_paren_on_new_line = false ij_javascript_call_parameters_wrap = off ij_javascript_catch_on_new_line = true ij_javascript_chained_call_dot_on_new_line = true -ij_javascript_class_brace_style = end_of_line +ij_javascript_class_brace_style = next_line ij_javascript_comma_on_new_line = false ij_javascript_do_while_brace_force = if_multiline ij_javascript_else_on_new_line = true @@ -373,7 +387,7 @@ ij_javascript_for_statement_right_paren_on_new_line = false ij_javascript_for_statement_wrap = off ij_javascript_force_quote_style = false ij_javascript_force_semicolon_style = false -ij_javascript_function_expression_brace_style = end_of_line +ij_javascript_function_expression_brace_style = next_line ij_javascript_if_brace_force = if_multiline ij_javascript_import_merge_members = global ij_javascript_import_prefer_absolute_path = global @@ -399,6 +413,7 @@ ij_javascript_method_parameters_new_line_after_left_paren = false ij_javascript_method_parameters_right_paren_on_new_line = false ij_javascript_method_parameters_wrap = off ij_javascript_object_literal_wrap = on_every_item +ij_javascript_object_types_wrap = on_every_item ij_javascript_parentheses_expression_new_line_after_left_paren = false ij_javascript_parentheses_expression_right_paren_on_new_line = false ij_javascript_place_assignment_sign_on_next_line = false @@ -407,6 +422,7 @@ ij_javascript_prefer_explicit_types_function_expression_returns = false ij_javascript_prefer_explicit_types_function_returns = false ij_javascript_prefer_explicit_types_vars_fields = false ij_javascript_prefer_parameters_wrap = false +ij_javascript_property_prefix = ij_javascript_reformat_c_style_comments = false ij_javascript_space_after_colon = true ij_javascript_space_after_comma = true @@ -481,7 +497,7 @@ ij_javascript_ternary_operation_wrap = off ij_javascript_union_types_wrap = on_every_item ij_javascript_use_chained_calls_group_indents = false ij_javascript_use_double_quotes = true -ij_javascript_use_explicit_js_extension = global +ij_javascript_use_explicit_js_extension = auto ij_javascript_use_path_mapping = always ij_javascript_use_public_modifier = false ij_javascript_use_semicolon_after_statement = true @@ -490,110 +506,15 @@ ij_javascript_while_brace_force = if_multiline ij_javascript_while_on_new_line = true ij_javascript_wrap_comments = false -[{*.cjsx,*.coffee}] -indent_size = 2 -tab_width = 2 -ij_continuation_indent_size = 2 -ij_coffeescript_align_function_body = false -ij_coffeescript_align_imports = false -ij_coffeescript_align_multiline_array_initializer_expression = true -ij_coffeescript_align_multiline_parameters = true -ij_coffeescript_align_multiline_parameters_in_calls = false -ij_coffeescript_align_object_properties = 0 -ij_coffeescript_align_union_types = false -ij_coffeescript_align_var_statements = 0 -ij_coffeescript_array_initializer_new_line_after_left_brace = false -ij_coffeescript_array_initializer_right_brace_on_new_line = false -ij_coffeescript_array_initializer_wrap = normal -ij_coffeescript_blacklist_imports = rxjs/Rx,node_modules/**,**/node_modules/**,@angular/material,@angular/material/typings/** -ij_coffeescript_blank_lines_around_function = 1 -ij_coffeescript_call_parameters_new_line_after_left_paren = false -ij_coffeescript_call_parameters_right_paren_on_new_line = false -ij_coffeescript_call_parameters_wrap = normal -ij_coffeescript_chained_call_dot_on_new_line = true -ij_coffeescript_comma_on_new_line = false -ij_coffeescript_enforce_trailing_comma = keep -ij_coffeescript_field_prefix = _ -ij_coffeescript_file_name_style = relaxed -ij_coffeescript_force_quote_style = false -ij_coffeescript_force_semicolon_style = false -ij_coffeescript_function_expression_brace_style = end_of_line -ij_coffeescript_import_merge_members = global -ij_coffeescript_import_prefer_absolute_path = global -ij_coffeescript_import_sort_members = true -ij_coffeescript_import_sort_module_name = false -ij_coffeescript_import_use_node_resolution = true -ij_coffeescript_imports_wrap = on_every_item -ij_coffeescript_indent_chained_calls = true -ij_coffeescript_indent_package_children = 0 -ij_coffeescript_jsx_attribute_value = braces -ij_coffeescript_keep_blank_lines_in_code = 2 -ij_coffeescript_keep_first_column_comment = true -ij_coffeescript_keep_indents_on_empty_lines = false -ij_coffeescript_keep_line_breaks = true -ij_coffeescript_keep_simple_methods_in_one_line = false -ij_coffeescript_method_parameters_new_line_after_left_paren = false -ij_coffeescript_method_parameters_right_paren_on_new_line = false -ij_coffeescript_method_parameters_wrap = off -ij_coffeescript_object_literal_wrap = on_every_item -ij_coffeescript_prefer_as_type_cast = false -ij_coffeescript_prefer_explicit_types_function_expression_returns = false -ij_coffeescript_prefer_explicit_types_function_returns = false -ij_coffeescript_prefer_explicit_types_vars_fields = false -ij_coffeescript_reformat_c_style_comments = false -ij_coffeescript_space_after_comma = true -ij_coffeescript_space_after_dots_in_rest_parameter = false -ij_coffeescript_space_after_generator_mult = true -ij_coffeescript_space_after_property_colon = true -ij_coffeescript_space_after_type_colon = true -ij_coffeescript_space_after_unary_not = false -ij_coffeescript_space_before_async_arrow_lparen = true -ij_coffeescript_space_before_class_lbrace = true -ij_coffeescript_space_before_comma = false -ij_coffeescript_space_before_function_left_parenth = true -ij_coffeescript_space_before_generator_mult = false -ij_coffeescript_space_before_property_colon = false -ij_coffeescript_space_before_type_colon = false -ij_coffeescript_space_before_unary_not = false -ij_coffeescript_spaces_around_additive_operators = true -ij_coffeescript_spaces_around_arrow_function_operator = true -ij_coffeescript_spaces_around_assignment_operators = true -ij_coffeescript_spaces_around_bitwise_operators = true -ij_coffeescript_spaces_around_equality_operators = true -ij_coffeescript_spaces_around_logical_operators = true -ij_coffeescript_spaces_around_multiplicative_operators = true -ij_coffeescript_spaces_around_relational_operators = true -ij_coffeescript_spaces_around_shift_operators = true -ij_coffeescript_spaces_around_unary_operator = false -ij_coffeescript_spaces_within_array_initializer_braces = false -ij_coffeescript_spaces_within_array_initializer_brackets = false -ij_coffeescript_spaces_within_imports = false -ij_coffeescript_spaces_within_index_brackets = false -ij_coffeescript_spaces_within_interpolation_expressions = false -ij_coffeescript_spaces_within_method_call_parentheses = false -ij_coffeescript_spaces_within_method_parentheses = false -ij_coffeescript_spaces_within_object_braces = false -ij_coffeescript_spaces_within_object_literal_braces = false -ij_coffeescript_spaces_within_object_type_braces = true -ij_coffeescript_spaces_within_range_brackets = false -ij_coffeescript_spaces_within_type_assertion = false -ij_coffeescript_spaces_within_union_types = true -ij_coffeescript_union_types_wrap = on_every_item -ij_coffeescript_use_chained_calls_group_indents = false -ij_coffeescript_use_double_quotes = true -ij_coffeescript_use_explicit_js_extension = global -ij_coffeescript_use_path_mapping = always -ij_coffeescript_use_public_modifier = false -ij_coffeescript_use_semicolon_after_statement = false -ij_coffeescript_var_declaration_wrap = normal - [{*.ctp,*.hphp,*.inc,*.module,*.php,*.php4,*.php5,*.phtml}] ij_continuation_indent_size = 4 ij_php_align_assignments = false ij_php_align_class_constants = true +ij_php_align_enum_cases = false ij_php_align_group_field_declarations = true ij_php_align_inline_comments = false ij_php_align_key_value_pairs = true +ij_php_align_match_arm_bodies = false ij_php_align_multiline_array_initializer_expression = true ij_php_align_multiline_binary_operation = false ij_php_align_multiline_chained_methods = false @@ -602,6 +523,7 @@ ij_php_align_multiline_for = true ij_php_align_multiline_parameters = true ij_php_align_multiline_parameters_in_calls = false ij_php_align_multiline_ternary_operation = false +ij_php_align_named_arguments = false ij_php_align_phpdoc_comments = false ij_php_align_phpdoc_param_names = false ij_php_anonymous_brace_style = end_of_line @@ -621,6 +543,7 @@ ij_php_blank_lines_after_opening_tag = 0 ij_php_blank_lines_after_package = 0 ij_php_blank_lines_around_class = 1 ij_php_blank_lines_around_constants = 0 +ij_php_blank_lines_around_enum_cases = 0 ij_php_blank_lines_around_field = 0 ij_php_blank_lines_around_method = 1 ij_php_blank_lines_before_class_end = 0 @@ -636,7 +559,11 @@ ij_php_call_parameters_wrap = off ij_php_catch_on_new_line = true ij_php_category_weight = 28 ij_php_class_brace_style = next_line +ij_php_comma_after_last_argument = false ij_php_comma_after_last_array_element = false +ij_php_comma_after_last_closure_use_var = false +ij_php_comma_after_last_match_arm = false +ij_php_comma_after_last_parameter = false ij_php_concat_spaces = true ij_php_copyright_weight = 28 ij_php_deprecated_weight = 28 @@ -653,6 +580,7 @@ ij_php_for_brace_force = never ij_php_for_statement_new_line_after_left_paren = false ij_php_for_statement_right_paren_on_new_line = false ij_php_for_statement_wrap = off +ij_php_force_empty_methods_in_one_line = false ij_php_force_short_declaration_array_style = false ij_php_getters_setters_naming_style = camel_case ij_php_getters_setters_order_style = getters_first @@ -721,6 +649,7 @@ ij_php_see_weight = 28 ij_php_since_weight = 28 ij_php_sort_phpdoc_elements = true ij_php_space_after_colon = true +ij_php_space_after_colon_in_enum_backed_type = true ij_php_space_after_colon_in_named_argument = true ij_php_space_after_colon_in_return_type = true ij_php_space_after_comma = true @@ -735,6 +664,7 @@ ij_php_space_before_catch_parentheses = true ij_php_space_before_class_left_brace = true ij_php_space_before_closure_left_parenthesis = true ij_php_space_before_colon = true +ij_php_space_before_colon_in_enum_backed_type = false ij_php_space_before_colon_in_named_argument = false ij_php_space_before_colon_in_return_type = false ij_php_space_before_comma = false @@ -770,6 +700,7 @@ ij_php_spaces_around_equality_operators = true ij_php_spaces_around_logical_operators = true ij_php_spaces_around_multiplicative_operators = true ij_php_spaces_around_null_coalesce_operator = true +ij_php_spaces_around_pipe_in_union_type = false ij_php_spaces_around_relational_operators = true ij_php_spaces_around_shift_operators = true ij_php_spaces_around_unary_operator = false @@ -791,6 +722,7 @@ ij_php_ternary_operation_signs_on_next_line = false ij_php_ternary_operation_wrap = off ij_php_throws_weight = 2 ij_php_todo_weight = 28 +ij_php_treat_multiline_arrays_and_lambdas_multiline = false ij_php_unknown_tag_weight = 28 ij_php_upper_case_boolean_const = true ij_php_upper_case_null_const = true @@ -801,14 +733,17 @@ ij_php_version_weight = 28 ij_php_while_brace_force = if_multiline ij_php_while_on_new_line = true -[{*.har,*.jsb2,*.jsb3,*.json,.babelrc,.eslintrc,.stylelintrc,bowerrc,composer.lock,jest.config}] -indent_size = 2 +[{*.har,*.jsb2,*.jsb3,*.json,.babelrc,.eslintrc,.prettierrc,.stylelintrc,bowerrc,composer.lock,jest.config}] +ij_json_array_wrapping = split_into_lines ij_json_keep_blank_lines_in_code = 0 ij_json_keep_indents_on_empty_lines = false ij_json_keep_line_breaks = true +ij_json_keep_trailing_comma = false +ij_json_object_wrapping = split_into_lines +ij_json_property_alignment = do_not_align ij_json_space_after_colon = true ij_json_space_after_comma = true -ij_json_space_before_colon = true +ij_json_space_before_colon = false ij_json_space_before_comma = false ij_json_spaces_within_braces = false ij_json_spaces_within_brackets = false @@ -819,6 +754,7 @@ ij_html_add_new_line_before_tags = body,div,p,form,h1,h2,h3 ij_html_align_attributes = true ij_html_align_text = false ij_html_attribute_wrap = normal +ij_html_block_comment_add_space = false ij_html_block_comment_at_first_column = true ij_html_do_not_align_children_of_min_lines = 0 ij_html_do_not_break_if_inline_tags = title,h1,h2,h3,h4,h5,h6,p @@ -840,20 +776,32 @@ ij_html_space_after_tag_name = false ij_html_space_around_equality_in_attribute = false ij_html_space_inside_empty_tag = false ij_html_text_wrap = normal -ij_html_uniform_ident = false + +[{*.http,*.rest}] +indent_size = 0 +ij_continuation_indent_size = 4 +ij_http-request_call_parameters_wrap = normal +ij_http-request_method_parameters_wrap = split_into_lines +ij_http-request_space_before_comma = true +ij_http-request_spaces_around_assignment_operators = true [{*.markdown,*.md}] ij_markdown_force_one_space_after_blockquote_symbol = true ij_markdown_force_one_space_after_header_symbol = true ij_markdown_force_one_space_after_list_bullet = true ij_markdown_force_one_space_between_words = true +ij_markdown_format_tables = true +ij_markdown_insert_quote_arrows_on_wrap = true ij_markdown_keep_indents_on_empty_lines = false +ij_markdown_keep_line_breaks_inside_text_blocks = true ij_markdown_max_lines_around_block_elements = 1 ij_markdown_max_lines_around_header = 1 ij_markdown_max_lines_between_paragraphs = 1 ij_markdown_min_lines_around_block_elements = 1 ij_markdown_min_lines_around_header = 1 ij_markdown_min_lines_between_paragraphs = 1 +ij_markdown_wrap_text_if_long = true +ij_markdown_wrap_text_inside_blockquotes = true [{*.yaml,*.yml}] indent_size = 2 diff --git a/lib/classes/Region.ts b/lib/classes/Region.ts index 9b7859f..0f96fc8 100644 --- a/lib/classes/Region.ts +++ b/lib/classes/Region.ts @@ -54,6 +54,7 @@ import { CoarseLocationUpdateMessage } from './messages/CoarseLocationUpdate'; import { Avatar } from './public/Avatar'; import { MoneyBalanceReplyMessage } from './messages/MoneyBalanceReply'; import { BalanceUpdatedEvent } from '../events/BalanceUpdatedEvent'; +import { Logger } from './Logger'; export class Region { @@ -608,7 +609,7 @@ export class Region const block = data.readUInt8(x); this.parcelOverlay.push({ landType: block & 0xF, - landFlags: block & ~ 0xF, + landFlags: block & ~0xF, parcelID: -1 }); } @@ -960,7 +961,7 @@ export class Region private fillParcel(parcelID: number, x: number, y: number): void { - if ( x < 0 || y < 0 || x > 63 || y > 63) + if (x < 0 || y < 0 || x > 63 || y > 63) { return; } @@ -1232,6 +1233,7 @@ export class Region } this.caps = new Caps(this.agent, seedURL, this.clientEvents); } + async handshake(handshake: RegionHandshakeMessage): Promise { this.regionName = Utils.BufferToStringSimple(handshake.RegionInfo.SimName); @@ -1266,7 +1268,6 @@ export class Region this.productName = Utils.BufferToStringSimple(handshake.RegionInfo3.ProductName); - const request: RequestRegionInfoMessage = new RequestRegionInfoMessage(); request.AgentData = { AgentID: this.agent.agentID, @@ -1339,68 +1340,76 @@ export class Region }; await this.caps.waitForSeedCapability(); - const response = await this.caps.capsGetXML('EnvironmentSettings'); - if (response.length >= 4) + + try { - if (Array.isArray(response[1]) && typeof response[2] === 'object' && typeof response[3] === 'object') + const response = await this.caps.capsGetXML('EnvironmentSettings'); + if (response.length >= 4) { - for (const kf of response[1]) + if (Array.isArray(response[1]) && typeof response[2] === 'object' && typeof response[3] === 'object') { - this.environment.dayCycleKeyframes.push({ - time: kf[0], - preset: kf[1] - }); - } - for (const presetKey of Object.keys(response[2])) - { - const preset = response[2][presetKey]; - this.environment.skyPresets[presetKey] = new class implements SkyPreset + for (const kf of response[1]) { - ambient = new Vector4(preset['ambient']); - blueDensity = new Vector4(preset['blue_density']); - blueHorizon = new Vector4(preset['blue_horizon']); - cloudColor = new Color4(preset['cloud_color']); - cloudPosDensity1 = new Vector4(preset['cloud_pos_density1']); - cloudPosDensity2 = new Vector4(preset['cloud_pos_density2']); - cloudScale = new Vector4(preset['cloud_scale']); - cloudScrollRate = new Vector2(preset['cloud_scroll_rate']); - cloudShadow = new Vector4(preset['cloud_shadow']); - densityMultiplier = new Vector4(preset['density_multiplier']); - distanceMultiplier = new Vector4(preset['distance_multiplier']); - eastAngle = preset['east_angle']; - enableCloudScroll = { - x: preset['enable_cloud_scroll'][0], - y: preset['enable_cloud_scroll'][1] + this.environment.dayCycleKeyframes.push({ + time: kf[0], + preset: kf[1] + }); + } + for (const presetKey of Object.keys(response[2])) + { + const preset = response[2][presetKey]; + this.environment.skyPresets[presetKey] = new class implements SkyPreset + { + ambient = new Vector4(preset['ambient']); + blueDensity = new Vector4(preset['blue_density']); + blueHorizon = new Vector4(preset['blue_horizon']); + cloudColor = new Color4(preset['cloud_color']); + cloudPosDensity1 = new Vector4(preset['cloud_pos_density1']); + cloudPosDensity2 = new Vector4(preset['cloud_pos_density2']); + cloudScale = new Vector4(preset['cloud_scale']); + cloudScrollRate = new Vector2(preset['cloud_scroll_rate']); + cloudShadow = new Vector4(preset['cloud_shadow']); + densityMultiplier = new Vector4(preset['density_multiplier']); + distanceMultiplier = new Vector4(preset['distance_multiplier']); + eastAngle = preset['east_angle']; + enableCloudScroll = { + x: preset['enable_cloud_scroll'][0], + y: preset['enable_cloud_scroll'][1] + }; + gamma = new Vector4(preset['gamma']); + glow = new Vector4(preset['glow']); + hazeDensity = new Vector4(preset['haze_density']); + hazeHorizon = new Vector4(preset['haze_horizon']); + lightNormal = new Vector4(preset['lightnorm']); + maxY = new Vector4(preset['max_y']); + starBrightness = preset['start_brightness']; + sunAngle = preset['sun_angle']; + sunlightColor = new Color4(preset['sunlight_color']); }; - gamma = new Vector4(preset['gamma']); - glow = new Vector4(preset['glow']); - hazeDensity = new Vector4(preset['haze_density']); - hazeHorizon = new Vector4(preset['haze_horizon']); - lightNormal = new Vector4(preset['lightnorm']); - maxY = new Vector4(preset['max_y']); - starBrightness = preset['start_brightness']; - sunAngle = preset['sun_angle']; - sunlightColor = new Color4(preset['sunlight_color']); + } + const wat = response[3]; + this.environment.water = new class implements WaterPreset + { + blurMultiplier = wat['blurMultiplier']; + fresnelOffset = wat['fresnelOffset']; + fresnelScale = wat['fresnelScale']; + normalScale = new Vector3(wat['normScale']); + normalMap = new UUID(wat['normalMap'].toString()); + scaleAbove = wat['scaleAbove']; + scaleBelow = wat['scaleBelow']; + underWaterFogMod = wat['underWaterFogMod']; + waterFogColor = new Color4(wat['waterFogColor']); + waterFogDensity = wat['waterFogDensity']; + wave1Dir = new Vector2(wat['wave1Dir']); + wave2Dir = new Vector2(wat['wave2Dir']); }; } - const wat = response[3]; - this.environment.water = new class implements WaterPreset - { - blurMultiplier = wat['blurMultiplier']; - fresnelOffset = wat['fresnelOffset']; - fresnelScale = wat['fresnelScale']; - normalScale = new Vector3(wat['normScale']); - normalMap = new UUID(wat['normalMap'].toString()); - scaleAbove = wat['scaleAbove']; - scaleBelow = wat['scaleBelow']; - underWaterFogMod = wat['underWaterFogMod']; - waterFogColor = new Color4(wat['waterFogColor']); - waterFogDensity = wat['waterFogDensity']; - wave1Dir = new Vector2(wat['wave1Dir']); - wave2Dir = new Vector2(wat['wave2Dir']); - }; } } + catch (e) + { + Logger.Warn('Unable to get environment settings from region'); + } this.handshakeComplete = true; this.handshakeCompleteEvent.next(); } diff --git a/package.json b/package.json index a566c82..59688ad 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@caspertech/node-metaverse", - "version": "0.5.54", + "version": "0.5.55", "description": "A node.js interface for Second Life.", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts",